forked from NUDT-compiler/nudt-compiler-cpp
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
56 lines
1.6 KiB
56 lines
1.6 KiB
|
|
// Generated from src/antlr4/SysY.g4 by ANTLR 4.13.2
|
|
|
|
#pragma once
|
|
|
|
|
|
#include "antlr4-runtime.h"
|
|
|
|
|
|
|
|
|
|
class SysYLexer : public antlr4::Lexer {
|
|
public:
|
|
enum {
|
|
Void = 1, Int = 2, Float = 3, Const = 4, If = 5, Else = 6, While = 7,
|
|
Break = 8, Continue = 9, Return = 10, AddOp = 11, SubOp = 12, Assign = 13,
|
|
MulOp = 14, DivOp = 15, ModOp = 16, NotOp = 17, AndOp = 18, OrOp = 19,
|
|
EqOp = 20, NeOp = 21, LtOp = 22, GtOp = 23, LeOp = 24, GeOp = 25, Semi = 26,
|
|
Comma = 27, L_PAREN = 28, R_PAREN = 29, L_BRACE = 30, R_BRACE = 31,
|
|
L_BRACKET = 32, R_BRACKET = 33, Ident = 34, IntConst = 35, FloatConst = 36,
|
|
WS = 37, COMMENT = 38, BLOCK_COMMENT = 39
|
|
};
|
|
|
|
explicit SysYLexer(antlr4::CharStream *input);
|
|
|
|
~SysYLexer() override;
|
|
|
|
|
|
std::string getGrammarFileName() const override;
|
|
|
|
const std::vector<std::string>& getRuleNames() const override;
|
|
|
|
const std::vector<std::string>& getChannelNames() const override;
|
|
|
|
const std::vector<std::string>& getModeNames() const override;
|
|
|
|
const antlr4::dfa::Vocabulary& getVocabulary() const override;
|
|
|
|
antlr4::atn::SerializedATNView getSerializedATN() const override;
|
|
|
|
const antlr4::atn::ATN& getATN() const override;
|
|
|
|
// By default the static state used to implement the lexer 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:
|
|
|
|
// Individual action functions triggered by action() above.
|
|
|
|
// Individual semantic predicate functions triggered by sempred() above.
|
|
|
|
};
|
|
|