// Generated from PauliOperator.g4 by ANTLR 4.7.2 #pragma once #include "antlr4-runtime.h" namespace pauli { class PauliOperatorParser : public antlr4::Parser { public: enum { T__0 = 1, T__1 = 2, T__2 = 3, T__3 = 4, T__4 = 5, T__5 = 6, T__6 = 7, T__7 = 8, T__8 = 9, COMMENT = 10, REAL = 11, INT = 12, WS = 13, EOL = 14 }; enum { RulePauliSrc = 0, RulePlusorminus = 1, RuleTerm = 2, RulePauli = 3, RuleCoeff = 4, RuleComplex = 5, RuleReal = 6, RuleComment = 7 }; PauliOperatorParser(antlr4::TokenStream *input); ~PauliOperatorParser(); virtual std::string getGrammarFileName() const override; virtual const antlr4::atn::ATN& getATN() const override { return _atn; }; virtual const std::vector& getTokenNames() const override { return _tokenNames; }; // deprecated: use vocabulary instead. virtual const std::vector& getRuleNames() const override; virtual antlr4::dfa::Vocabulary& getVocabulary() const override; class PauliSrcContext; class PlusorminusContext; class TermContext; class PauliContext; class CoeffContext; class ComplexContext; class RealContext; class CommentContext; class PauliSrcContext : public antlr4::ParserRuleContext { public: PauliSrcContext(antlr4::ParserRuleContext *parent, size_t invokingState); virtual size_t getRuleIndex() const override; std::vector term(); TermContext* term(size_t i); std::vector plusorminus(); PlusorminusContext* plusorminus(size_t i); virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override; virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override; }; PauliSrcContext* pauliSrc(); class PlusorminusContext : public antlr4::ParserRuleContext { public: PlusorminusContext(antlr4::ParserRuleContext *parent, size_t invokingState); virtual size_t getRuleIndex() const override; virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override; virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override; }; PlusorminusContext* plusorminus(); class TermContext : public antlr4::ParserRuleContext { public: TermContext(antlr4::ParserRuleContext *parent, size_t invokingState); virtual size_t getRuleIndex() const override; CoeffContext *coeff(); std::vector pauli(); PauliContext* pauli(size_t i); virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override; virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override; }; TermContext* term(); class PauliContext : public antlr4::ParserRuleContext { public: PauliContext(antlr4::ParserRuleContext *parent, size_t invokingState); virtual size_t getRuleIndex() const override; antlr4::tree::TerminalNode *INT(); virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override; virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override; }; PauliContext* pauli(); class CoeffContext : public antlr4::ParserRuleContext { public: CoeffContext(antlr4::ParserRuleContext *parent, size_t invokingState); virtual size_t getRuleIndex() const override; ComplexContext *complex(); RealContext *real(); virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override; virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override; }; CoeffContext* coeff(); class ComplexContext : public antlr4::ParserRuleContext { public: ComplexContext(antlr4::ParserRuleContext *parent, size_t invokingState); virtual size_t getRuleIndex() const override; std::vector real(); RealContext* real(size_t i); std::vector INT(); antlr4::tree::TerminalNode* INT(size_t i); virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override; virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override; }; ComplexContext* complex(); class RealContext : public antlr4::ParserRuleContext { public: RealContext(antlr4::ParserRuleContext *parent, size_t invokingState); virtual size_t getRuleIndex() const override; antlr4::tree::TerminalNode *REAL(); virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override; virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override; }; RealContext* real(); class CommentContext : public antlr4::ParserRuleContext { public: CommentContext(antlr4::ParserRuleContext *parent, size_t invokingState); virtual size_t getRuleIndex() const override; antlr4::tree::TerminalNode *COMMENT(); virtual void enterRule(antlr4::tree::ParseTreeListener *listener) override; virtual void exitRule(antlr4::tree::ParseTreeListener *listener) override; }; CommentContext* comment(); private: static std::vector _decisionToDFA; static antlr4::atn::PredictionContextCache _sharedContextCache; static std::vector _ruleNames; static std::vector _tokenNames; static std::vector _literalNames; static std::vector _symbolicNames; static antlr4::dfa::Vocabulary _vocabulary; static antlr4::atn::ATN _atn; static std::vector _serializedATN; struct Initializer { Initializer(); }; static Initializer _init; }; } // namespace pauli