58 lines
1.6 KiB
C++
58 lines
1.6 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 = 1, COMMA = 2, SEMICOLON = 3, INT = 4, LBRACKET = 5, RBRACKET = 6,
|
|
ASSIGN = 7, LBRACE = 8, RBRACE = 9, LPAREN = 10, RPAREN = 11, VOID = 12,
|
|
IF = 13, ELSE = 14, WHILE = 15, BREAK = 16, CONTINUE = 17, RETURN = 18,
|
|
ADD = 19, SUB = 20, NOT = 21, MUL = 22, DIV = 23, MOD = 24, LT = 25,
|
|
GT = 26, LE = 27, GE = 28, EQ = 29, NE = 30, AND = 31, OR = 32, DQUOTE = 33,
|
|
IDENT = 34, DECIMAL_CONST = 35, OCTAL_CONST = 36, HEXADECIMAL_CONST = 37,
|
|
WS = 38, SINGLELINE_COMMENT = 39, MULTILINE_COMMENT = 40, StringLiteral = 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
|