59 lines
1.7 KiB
C++
59 lines
1.7 KiB
C++
|
|
// Generated from SysY.g4 by ANTLR 4.12.0
|
|
|
|
#pragma once
|
|
|
|
|
|
#include "antlr4-runtime.h"
|
|
|
|
|
|
namespace antlrSysY {
|
|
|
|
|
|
class SysYLexer : public antlr4::Lexer {
|
|
public:
|
|
enum {
|
|
CONST_KW = 1, INT_KW = 2, VOID_KW = 3, IF_KW = 4, ELSE_KW = 5, WHILE_KW = 6,
|
|
BREAK_KW = 7, CONTINUE_KW = 8, RETURN_KW = 9, IDENT = 10, DECIMAL_CONST = 11,
|
|
OCTAL_CONST = 12, HEXADECIMAL_CONST = 13, STRING = 14, PLUS = 15, MINUS = 16,
|
|
NOT = 17, MUL = 18, DIV = 19, MOD = 20, ASSIGN = 21, EQ = 22, NEQ = 23,
|
|
LT = 24, GT = 25, LE = 26, GE = 27, AND = 28, OR = 29, L_PAREN = 30,
|
|
R_PAREN = 31, L_BRACE = 32, R_BRACE = 33, L_BRACKT = 34, R_BRACKT = 35,
|
|
COMMA = 36, SEMICOLON = 37, DOUBLE_QUOTE = 38, WS = 39, LINE_COMMENT = 40,
|
|
MULTILINE_COMMENT = 41
|
|
};
|
|
|
|
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.
|
|
|
|
};
|
|
|
|
} // namespace antlrSysY
|