Files
2026-03-06 20:28:31 +01:00

782 lines
27 KiB
C++

// Generated from PromQLParser.g4 by ANTLR 4.13.2
#pragma once
#include "antlr4-runtime.h"
namespace antlr4_grammars {
class PromQLParser : public antlr4::Parser {
public:
enum {
NUMBER = 1, STRING = 2, ADD = 3, SUB = 4, MULT = 5, DIV = 6, MOD = 7,
POW = 8, AND = 9, OR = 10, UNLESS = 11, ATAN2 = 12, EQ = 13, DEQ = 14,
NE = 15, GT = 16, LT = 17, GE = 18, LE = 19, RE = 20, NRE = 21, BY = 22,
WITHOUT = 23, ON = 24, IGNORING = 25, GROUP_LEFT = 26, GROUP_RIGHT = 27,
OFFSET = 28, BOOL = 29, AGGREGATION_OPERATOR = 30, FUNCTION = 31, LEFT_BRACE = 32,
RIGHT_BRACE = 33, LEFT_PAREN = 34, RIGHT_PAREN = 35, LEFT_BRACKET = 36,
RIGHT_BRACKET = 37, COMMA = 38, AT = 39, SUBQUERY_RANGE = 40, SELECTOR_RANGE = 41,
METRIC_NAME = 42, LABEL_NAME = 43, WS = 44, SL_COMMENT = 45
};
enum {
RuleExpression = 0, RuleVectorOperation = 1, RuleUnaryOp = 2, RulePowOp = 3,
RuleMultOp = 4, RuleAddOp = 5, RuleCompareOp = 6, RuleAndUnlessOp = 7,
RuleOrOp = 8, RuleSubqueryOp = 9, RuleOffsetOp = 10, RuleVector = 11,
RuleParens = 12, RuleTimestamp = 13, RuleDuration = 14, RuleOffsetValue = 15,
RuleInstantSelector = 16, RuleLabelMatcher = 17, RuleLabelMatcherOperator = 18,
RuleLabelMatcherList = 19, RuleRangeSelector = 20, RuleSelectorWithOffset = 21,
RuleFunction_ = 22, RuleParameter = 23, RuleParameterList = 24, RuleAggregation = 25,
RuleBy = 26, RuleWithout = 27, RuleGrouping = 28, RuleOn_ = 29, RuleIgnoring = 30,
RuleGroupLeft = 31, RuleGroupRight = 32, RuleLabelName = 33, RuleLabelNameList = 34,
RuleMetricName = 35, RuleKeyword = 36, RuleLiteral = 37
};
explicit PromQLParser(antlr4::TokenStream *input);
PromQLParser(antlr4::TokenStream *input, const antlr4::atn::ParserATNSimulatorOptions &options);
~PromQLParser() override;
std::string getGrammarFileName() const override;
const antlr4::atn::ATN& getATN() const override;
const std::vector<std::string>& getRuleNames() const override;
const antlr4::dfa::Vocabulary& getVocabulary() const override;
antlr4::atn::SerializedATNView getSerializedATN() const override;
class ExpressionContext;
class VectorOperationContext;
class UnaryOpContext;
class PowOpContext;
class MultOpContext;
class AddOpContext;
class CompareOpContext;
class AndUnlessOpContext;
class OrOpContext;
class SubqueryOpContext;
class OffsetOpContext;
class VectorContext;
class ParensContext;
class TimestampContext;
class DurationContext;
class OffsetValueContext;
class InstantSelectorContext;
class LabelMatcherContext;
class LabelMatcherOperatorContext;
class LabelMatcherListContext;
class RangeSelectorContext;
class SelectorWithOffsetContext;
class Function_Context;
class ParameterContext;
class ParameterListContext;
class AggregationContext;
class ByContext;
class WithoutContext;
class GroupingContext;
class On_Context;
class IgnoringContext;
class GroupLeftContext;
class GroupRightContext;
class LabelNameContext;
class LabelNameListContext;
class MetricNameContext;
class KeywordContext;
class LiteralContext;
class ExpressionContext : public antlr4::ParserRuleContext {
public:
ExpressionContext(antlr4::ParserRuleContext *parent, size_t invokingState);
virtual size_t getRuleIndex() const override;
VectorOperationContext *vectorOperation();
antlr4::tree::TerminalNode *EOF();
virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
virtual std::any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
};
ExpressionContext* expression();
class VectorOperationContext : public antlr4::ParserRuleContext {
public:
VectorOperationContext(antlr4::ParserRuleContext *parent, size_t invokingState);
virtual size_t getRuleIndex() const override;
UnaryOpContext *unaryOp();
std::vector<VectorOperationContext *> vectorOperation();
VectorOperationContext* vectorOperation(size_t i);
VectorContext *vector();
PowOpContext *powOp();
MultOpContext *multOp();
AddOpContext *addOp();
CompareOpContext *compareOp();
AndUnlessOpContext *andUnlessOp();
OrOpContext *orOp();
SubqueryOpContext *subqueryOp();
virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
virtual std::any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
};
VectorOperationContext* vectorOperation();
VectorOperationContext* vectorOperation(int precedence);
class UnaryOpContext : public antlr4::ParserRuleContext {
public:
UnaryOpContext(antlr4::ParserRuleContext *parent, size_t invokingState);
virtual size_t getRuleIndex() const override;
antlr4::tree::TerminalNode *ADD();
antlr4::tree::TerminalNode *SUB();
virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
virtual std::any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
};
UnaryOpContext* unaryOp();
class PowOpContext : public antlr4::ParserRuleContext {
public:
PowOpContext(antlr4::ParserRuleContext *parent, size_t invokingState);
virtual size_t getRuleIndex() const override;
antlr4::tree::TerminalNode *POW();
GroupingContext *grouping();
virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
virtual std::any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
};
PowOpContext* powOp();
class MultOpContext : public antlr4::ParserRuleContext {
public:
MultOpContext(antlr4::ParserRuleContext *parent, size_t invokingState);
virtual size_t getRuleIndex() const override;
antlr4::tree::TerminalNode *MULT();
antlr4::tree::TerminalNode *DIV();
antlr4::tree::TerminalNode *MOD();
antlr4::tree::TerminalNode *ATAN2();
GroupingContext *grouping();
virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
virtual std::any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
};
MultOpContext* multOp();
class AddOpContext : public antlr4::ParserRuleContext {
public:
AddOpContext(antlr4::ParserRuleContext *parent, size_t invokingState);
virtual size_t getRuleIndex() const override;
antlr4::tree::TerminalNode *ADD();
antlr4::tree::TerminalNode *SUB();
GroupingContext *grouping();
virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
virtual std::any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
};
AddOpContext* addOp();
class CompareOpContext : public antlr4::ParserRuleContext {
public:
CompareOpContext(antlr4::ParserRuleContext *parent, size_t invokingState);
virtual size_t getRuleIndex() const override;
antlr4::tree::TerminalNode *DEQ();
antlr4::tree::TerminalNode *NE();
antlr4::tree::TerminalNode *GT();
antlr4::tree::TerminalNode *LT();
antlr4::tree::TerminalNode *GE();
antlr4::tree::TerminalNode *LE();
antlr4::tree::TerminalNode *BOOL();
GroupingContext *grouping();
virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
virtual std::any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
};
CompareOpContext* compareOp();
class AndUnlessOpContext : public antlr4::ParserRuleContext {
public:
AndUnlessOpContext(antlr4::ParserRuleContext *parent, size_t invokingState);
virtual size_t getRuleIndex() const override;
antlr4::tree::TerminalNode *AND();
antlr4::tree::TerminalNode *UNLESS();
GroupingContext *grouping();
virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
virtual std::any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
};
AndUnlessOpContext* andUnlessOp();
class OrOpContext : public antlr4::ParserRuleContext {
public:
OrOpContext(antlr4::ParserRuleContext *parent, size_t invokingState);
virtual size_t getRuleIndex() const override;
antlr4::tree::TerminalNode *OR();
GroupingContext *grouping();
virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
virtual std::any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
};
OrOpContext* orOp();
class SubqueryOpContext : public antlr4::ParserRuleContext {
public:
SubqueryOpContext(antlr4::ParserRuleContext *parent, size_t invokingState);
virtual size_t getRuleIndex() const override;
antlr4::tree::TerminalNode *SUBQUERY_RANGE();
OffsetOpContext *offsetOp();
virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
virtual std::any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
};
SubqueryOpContext* subqueryOp();
class OffsetOpContext : public antlr4::ParserRuleContext {
public:
OffsetOpContext(antlr4::ParserRuleContext *parent, size_t invokingState);
virtual size_t getRuleIndex() const override;
antlr4::tree::TerminalNode *AT();
TimestampContext *timestamp();
antlr4::tree::TerminalNode *OFFSET();
OffsetValueContext *offsetValue();
virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
virtual std::any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
};
OffsetOpContext* offsetOp();
class VectorContext : public antlr4::ParserRuleContext {
public:
VectorContext(antlr4::ParserRuleContext *parent, size_t invokingState);
virtual size_t getRuleIndex() const override;
Function_Context *function_();
AggregationContext *aggregation();
InstantSelectorContext *instantSelector();
RangeSelectorContext *rangeSelector();
SelectorWithOffsetContext *selectorWithOffset();
LiteralContext *literal();
ParensContext *parens();
virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
virtual std::any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
};
VectorContext* vector();
class ParensContext : public antlr4::ParserRuleContext {
public:
ParensContext(antlr4::ParserRuleContext *parent, size_t invokingState);
virtual size_t getRuleIndex() const override;
antlr4::tree::TerminalNode *LEFT_PAREN();
VectorOperationContext *vectorOperation();
antlr4::tree::TerminalNode *RIGHT_PAREN();
virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
virtual std::any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
};
ParensContext* parens();
class TimestampContext : public antlr4::ParserRuleContext {
public:
TimestampContext(antlr4::ParserRuleContext *parent, size_t invokingState);
virtual size_t getRuleIndex() const override;
antlr4::tree::TerminalNode *NUMBER();
virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
virtual std::any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
};
TimestampContext* timestamp();
class DurationContext : public antlr4::ParserRuleContext {
public:
DurationContext(antlr4::ParserRuleContext *parent, size_t invokingState);
virtual size_t getRuleIndex() const override;
antlr4::tree::TerminalNode *NUMBER();
virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
virtual std::any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
};
DurationContext* duration();
class OffsetValueContext : public antlr4::ParserRuleContext {
public:
OffsetValueContext(antlr4::ParserRuleContext *parent, size_t invokingState);
virtual size_t getRuleIndex() const override;
antlr4::tree::TerminalNode *NUMBER();
antlr4::tree::TerminalNode *ADD();
antlr4::tree::TerminalNode *SUB();
virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
virtual std::any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
};
OffsetValueContext* offsetValue();
class InstantSelectorContext : public antlr4::ParserRuleContext {
public:
InstantSelectorContext(antlr4::ParserRuleContext *parent, size_t invokingState);
virtual size_t getRuleIndex() const override;
MetricNameContext *metricName();
antlr4::tree::TerminalNode *LEFT_BRACE();
antlr4::tree::TerminalNode *RIGHT_BRACE();
LabelMatcherListContext *labelMatcherList();
virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
virtual std::any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
};
InstantSelectorContext* instantSelector();
class LabelMatcherContext : public antlr4::ParserRuleContext {
public:
LabelMatcherContext(antlr4::ParserRuleContext *parent, size_t invokingState);
virtual size_t getRuleIndex() const override;
LabelNameContext *labelName();
LabelMatcherOperatorContext *labelMatcherOperator();
antlr4::tree::TerminalNode *STRING();
virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
virtual std::any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
};
LabelMatcherContext* labelMatcher();
class LabelMatcherOperatorContext : public antlr4::ParserRuleContext {
public:
LabelMatcherOperatorContext(antlr4::ParserRuleContext *parent, size_t invokingState);
virtual size_t getRuleIndex() const override;
antlr4::tree::TerminalNode *EQ();
antlr4::tree::TerminalNode *NE();
antlr4::tree::TerminalNode *RE();
antlr4::tree::TerminalNode *NRE();
virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
virtual std::any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
};
LabelMatcherOperatorContext* labelMatcherOperator();
class LabelMatcherListContext : public antlr4::ParserRuleContext {
public:
LabelMatcherListContext(antlr4::ParserRuleContext *parent, size_t invokingState);
virtual size_t getRuleIndex() const override;
std::vector<LabelMatcherContext *> labelMatcher();
LabelMatcherContext* labelMatcher(size_t i);
std::vector<antlr4::tree::TerminalNode *> COMMA();
antlr4::tree::TerminalNode* COMMA(size_t i);
virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
virtual std::any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
};
LabelMatcherListContext* labelMatcherList();
class RangeSelectorContext : public antlr4::ParserRuleContext {
public:
RangeSelectorContext(antlr4::ParserRuleContext *parent, size_t invokingState);
virtual size_t getRuleIndex() const override;
InstantSelectorContext *instantSelector();
antlr4::tree::TerminalNode *SELECTOR_RANGE();
virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
virtual std::any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
};
RangeSelectorContext* rangeSelector();
class SelectorWithOffsetContext : public antlr4::ParserRuleContext {
public:
SelectorWithOffsetContext(antlr4::ParserRuleContext *parent, size_t invokingState);
virtual size_t getRuleIndex() const override;
InstantSelectorContext *instantSelector();
OffsetOpContext *offsetOp();
RangeSelectorContext *rangeSelector();
virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
virtual std::any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
};
SelectorWithOffsetContext* selectorWithOffset();
class Function_Context : public antlr4::ParserRuleContext {
public:
Function_Context(antlr4::ParserRuleContext *parent, size_t invokingState);
virtual size_t getRuleIndex() const override;
antlr4::tree::TerminalNode *FUNCTION();
antlr4::tree::TerminalNode *LEFT_PAREN();
antlr4::tree::TerminalNode *RIGHT_PAREN();
std::vector<ParameterContext *> parameter();
ParameterContext* parameter(size_t i);
std::vector<antlr4::tree::TerminalNode *> COMMA();
antlr4::tree::TerminalNode* COMMA(size_t i);
virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
virtual std::any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
};
Function_Context* function_();
class ParameterContext : public antlr4::ParserRuleContext {
public:
ParameterContext(antlr4::ParserRuleContext *parent, size_t invokingState);
virtual size_t getRuleIndex() const override;
LiteralContext *literal();
VectorOperationContext *vectorOperation();
virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
virtual std::any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
};
ParameterContext* parameter();
class ParameterListContext : public antlr4::ParserRuleContext {
public:
ParameterListContext(antlr4::ParserRuleContext *parent, size_t invokingState);
virtual size_t getRuleIndex() const override;
antlr4::tree::TerminalNode *LEFT_PAREN();
antlr4::tree::TerminalNode *RIGHT_PAREN();
std::vector<ParameterContext *> parameter();
ParameterContext* parameter(size_t i);
std::vector<antlr4::tree::TerminalNode *> COMMA();
antlr4::tree::TerminalNode* COMMA(size_t i);
virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
virtual std::any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
};
ParameterListContext* parameterList();
class AggregationContext : public antlr4::ParserRuleContext {
public:
AggregationContext(antlr4::ParserRuleContext *parent, size_t invokingState);
virtual size_t getRuleIndex() const override;
antlr4::tree::TerminalNode *AGGREGATION_OPERATOR();
ParameterListContext *parameterList();
ByContext *by();
WithoutContext *without();
virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
virtual std::any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
};
AggregationContext* aggregation();
class ByContext : public antlr4::ParserRuleContext {
public:
ByContext(antlr4::ParserRuleContext *parent, size_t invokingState);
virtual size_t getRuleIndex() const override;
antlr4::tree::TerminalNode *BY();
LabelNameListContext *labelNameList();
virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
virtual std::any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
};
ByContext* by();
class WithoutContext : public antlr4::ParserRuleContext {
public:
WithoutContext(antlr4::ParserRuleContext *parent, size_t invokingState);
virtual size_t getRuleIndex() const override;
antlr4::tree::TerminalNode *WITHOUT();
LabelNameListContext *labelNameList();
virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
virtual std::any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
};
WithoutContext* without();
class GroupingContext : public antlr4::ParserRuleContext {
public:
GroupingContext(antlr4::ParserRuleContext *parent, size_t invokingState);
virtual size_t getRuleIndex() const override;
On_Context *on_();
IgnoringContext *ignoring();
GroupLeftContext *groupLeft();
GroupRightContext *groupRight();
virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
virtual std::any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
};
GroupingContext* grouping();
class On_Context : public antlr4::ParserRuleContext {
public:
On_Context(antlr4::ParserRuleContext *parent, size_t invokingState);
virtual size_t getRuleIndex() const override;
antlr4::tree::TerminalNode *ON();
LabelNameListContext *labelNameList();
virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
virtual std::any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
};
On_Context* on_();
class IgnoringContext : public antlr4::ParserRuleContext {
public:
IgnoringContext(antlr4::ParserRuleContext *parent, size_t invokingState);
virtual size_t getRuleIndex() const override;
antlr4::tree::TerminalNode *IGNORING();
LabelNameListContext *labelNameList();
virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
virtual std::any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
};
IgnoringContext* ignoring();
class GroupLeftContext : public antlr4::ParserRuleContext {
public:
GroupLeftContext(antlr4::ParserRuleContext *parent, size_t invokingState);
virtual size_t getRuleIndex() const override;
antlr4::tree::TerminalNode *GROUP_LEFT();
LabelNameListContext *labelNameList();
virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
virtual std::any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
};
GroupLeftContext* groupLeft();
class GroupRightContext : public antlr4::ParserRuleContext {
public:
GroupRightContext(antlr4::ParserRuleContext *parent, size_t invokingState);
virtual size_t getRuleIndex() const override;
antlr4::tree::TerminalNode *GROUP_RIGHT();
LabelNameListContext *labelNameList();
virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
virtual std::any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
};
GroupRightContext* groupRight();
class LabelNameContext : public antlr4::ParserRuleContext {
public:
LabelNameContext(antlr4::ParserRuleContext *parent, size_t invokingState);
virtual size_t getRuleIndex() const override;
KeywordContext *keyword();
antlr4::tree::TerminalNode *METRIC_NAME();
antlr4::tree::TerminalNode *LABEL_NAME();
virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
virtual std::any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
};
LabelNameContext* labelName();
class LabelNameListContext : public antlr4::ParserRuleContext {
public:
LabelNameListContext(antlr4::ParserRuleContext *parent, size_t invokingState);
virtual size_t getRuleIndex() const override;
antlr4::tree::TerminalNode *LEFT_PAREN();
antlr4::tree::TerminalNode *RIGHT_PAREN();
std::vector<LabelNameContext *> labelName();
LabelNameContext* labelName(size_t i);
std::vector<antlr4::tree::TerminalNode *> COMMA();
antlr4::tree::TerminalNode* COMMA(size_t i);
virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
virtual std::any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
};
LabelNameListContext* labelNameList();
class MetricNameContext : public antlr4::ParserRuleContext {
public:
MetricNameContext(antlr4::ParserRuleContext *parent, size_t invokingState);
virtual size_t getRuleIndex() const override;
antlr4::tree::TerminalNode *METRIC_NAME();
KeywordContext *keyword();
virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
virtual std::any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
};
MetricNameContext* metricName();
class KeywordContext : public antlr4::ParserRuleContext {
public:
KeywordContext(antlr4::ParserRuleContext *parent, size_t invokingState);
virtual size_t getRuleIndex() const override;
antlr4::tree::TerminalNode *AND();
antlr4::tree::TerminalNode *OR();
antlr4::tree::TerminalNode *UNLESS();
antlr4::tree::TerminalNode *ATAN2();
antlr4::tree::TerminalNode *BY();
antlr4::tree::TerminalNode *WITHOUT();
antlr4::tree::TerminalNode *ON();
antlr4::tree::TerminalNode *IGNORING();
antlr4::tree::TerminalNode *GROUP_LEFT();
antlr4::tree::TerminalNode *GROUP_RIGHT();
antlr4::tree::TerminalNode *OFFSET();
antlr4::tree::TerminalNode *BOOL();
antlr4::tree::TerminalNode *AGGREGATION_OPERATOR();
antlr4::tree::TerminalNode *FUNCTION();
virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
virtual std::any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
};
KeywordContext* keyword();
class LiteralContext : public antlr4::ParserRuleContext {
public:
LiteralContext(antlr4::ParserRuleContext *parent, size_t invokingState);
virtual size_t getRuleIndex() const override;
antlr4::tree::TerminalNode *NUMBER();
antlr4::tree::TerminalNode *STRING();
virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override;
virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override;
virtual std::any accept(antlr4::tree::ParseTreeVisitor *visitor) override;
};
LiteralContext* literal();
bool sempred(antlr4::RuleContext *_localctx, size_t ruleIndex, size_t predicateIndex) override;
bool vectorOperationSempred(VectorOperationContext *_localctx, size_t predicateIndex);
// By default the static state used to implement the parser is lazily initialized during the first
// call to the constructor. You can call this function if you wish to initialize the static state
// ahead of time.
static void initialize();
private:
};
} // namespace antlr4_grammars