class qasmParser
#include <qasmParser.h>
class qasmParser: public Parser
{
public:
// enums
enum
{
OPENQASM_KEY = 1,
INCLUDE_KEY = 2,
OPAQUE_KEY = 3,
QREG_KEY = 4,
CREG_KEY = 5,
BARRIER_KEY = 6,
IF_KEY = 7,
MEASURE_KEY = 8,
RESET_KEY = 9,
GATE_KEY = 10,
PI_KEY = 11,
U_GATE_KEY = 12,
CX_GATE_KEY = 13,
ARROW = 14,
EQ = 15,
PLUS = 16,
MINUS = 17,
MUL = 18,
DIV = 19,
COMMA = 20,
SEMI = 21,
LPAREN = 22,
RPAREN = 23,
LBRACKET = 24,
RBRACKET = 25,
LBRACE = 26,
RBRACE = 27,
DQM = 28,
IDENTIFIER = 29,
INTEGER = 30,
DECIMAL = 31,
FILENAME = 32,
REALEXP = 33,
NL = 34,
WS = 35,
LC = 36,
};
enum
{
RuleMainprogram = 0,
RuleHead_decl = 1,
RuleVersion_decl = 2,
RuleInclude_decl = 3,
RuleStatement = 4,
RuleReg_decl = 5,
RuleOpaque_decl = 6,
RuleIf_decl = 7,
RuleBarrier_decl = 8,
RuleGate_decl = 9,
RuleGoplist = 10,
RuleBop = 11,
RuleQop = 12,
RuleUop = 13,
RuleAnylist = 14,
RuleIdlist = 15,
RuleId_index = 16,
RuleArgument = 17,
RuleExplist = 18,
RuleExp = 19,
RuleId = 20,
RuleReal = 21,
RuleInteger = 22,
RuleDecimal = 23,
RuleFilename = 24,
};
// structs
struct Initializer;
// classes
class AnylistContext;
class ArgumentContext;
class Barrier_declContext;
class BopContext;
class DecimalContext;
class ExpContext;
class ExplistContext;
class FilenameContext;
class Gate_declContext;
class GoplistContext;
class Head_declContext;
class IdContext;
class Id_indexContext;
class IdlistContext;
class If_declContext;
class Include_declContext;
class IntegerContext;
class MainprogramContext;
class Opaque_declContext;
class QopContext;
class RealContext;
class Reg_declContext;
class StatementContext;
class UopContext;
class Version_declContext;
// construction
qasmParser(antlr4::TokenStream* input);
// methods
virtual std::string getGrammarFileName() const;
virtual const antlr4::atn::ATN& getATN() const;
virtual const std::vector<std::string>& getTokenNames() const;
virtual const std::vector<std::string>& getRuleNames() const;
virtual antlr4::dfa::Vocabulary& getVocabulary() const;
MainprogramContext* mainprogram();
Head_declContext* head_decl();
Version_declContext* version_decl();
Include_declContext* include_decl();
StatementContext* statement();
Reg_declContext* reg_decl();
Opaque_declContext* opaque_decl();
If_declContext* if_decl();
Barrier_declContext* barrier_decl();
Gate_declContext* gate_decl();
GoplistContext* goplist();
BopContext* bop();
QopContext* qop();
UopContext* uop();
AnylistContext* anylist();
IdlistContext* idlist();
Id_indexContext* id_index();
ArgumentContext* argument();
ExplistContext* explist();
ExpContext* exp();
ExpContext* exp(int precedence);
IdContext* id();
RealContext* real();
IntegerContext* integer();
DecimalContext* decimal();
FilenameContext* filename();
virtual bool sempred(
antlr4::RuleContext* _localctx,
size_t ruleIndex,
size_t predicateIndex
);
bool expSempred(
ExpContext* _localctx,
size_t predicateIndex
);
};