LGTemplateLexer class
- 扩展
-
Lexer
构造函数
LGTemplate |
属性
继承属性
atn | serializedATN获取识别器用于预测的 。 |
channel | |
char |
lookahead 的当前字符的索引是什么? |
char |
|
DEFAULT_MODE | |
DEFAULT_TOKEN_CHANNEL | |
EOF | |
HIDDEN | |
input |
设置字符流并重置 lexer |
interpreter | 设置识别器用于预测的 ATN 解释器。 |
line | |
MAX_CHAR_VALUE | |
MIN_CHAR_VALUE | |
MORE | |
parse |
如果在分析/lex 期间进行分析,这将返回 ParseInfo 对象中识别器中每个决策的 DecisionInfo 记录。 |
SKIP | |
source |
|
state | 指示识别器已更改与传入的 ATN 状态一致的内部状态。 这样,当分析程序进行时,我们始终知道我们在 ATN 中的位置。 规则上下文对象构成了一个堆栈,让我们可以看到调用规则的堆栈。 合并后,我们有了完整的 ATN 配置信息。 |
text | 设置此令牌的完整文本;它会擦除以前对文本所做的任何更改。 |
token | 如果发出多个令牌,则重写。 |
token |
|
type |
方法
action(Rule |
|
sempred(Rule |
继承的方法
add |
|
emit() | 默认情况下,出于效率考虑,不支持每个 nextToken 调用发出多个发出。 子类和重写此方法、nextToken 和 getToken (将令牌推送到列表中并从该列表拉取,而不是单个变量,因为此实现) 。 |
emit(Token) | 调用的标准方法会自动在最外层的词法规则处发出令牌。 令牌对象应指向字符缓冲区 start。。停止。 如果“text”中有文本替代,请使用它来设置令牌的文本。 重写此方法以发出自定义 Token 对象或提供新工厂。 |
emitEOF() | |
get |
返回输入字符流中所有 Token 对象的列表。 强制加载所有令牌。 不包括 EOF 令牌。 |
get |
|
get |
|
get |
什么是错误标头,通常是行/字符位置信息? |
get |
|
get |
|
get |
获取从规则名称到规则索引的映射。 用于 XPath 和树模式编译。 |
get |
|
get |
获取从令牌名称到令牌类型的映射。 用于 XPath 和树模式编译。 |
mode(number) | |
more() | |
next |
从此源返回令牌;即匹配字符流上的标记。 |
notify |
|
pop |
|
precpred(Rule |
|
push |
|
recover(Lexer |
|
recover(Recognition |
Lexers 在匹配令牌后,通常可以匹配词汇中的任何字符,所以做简单的事情,只是杀死一个角色,希望一切成功。如果使用的是片段规则,则可以改用规则调用堆栈来执行复杂的错误恢复。 |
remove |
|
remove |
|
reset() | |
reset(boolean) | |
skip() | 指示词法器跳过为当前词法器规则创建令牌,并查找另一个标记。 nextToken () 知道在标记设置为 SKIP_TOKEN 的情况下,继续查找 lexer 规则何时完成。 回想一下,如果 token==undefined 在任何令牌规则的末尾,它会为你创建一个并发出它。 |
构造函数详细信息
LGTemplateLexer(CharStream)
new LGTemplateLexer(input: CharStream)
参数
- input
-
CharStream
属性详细信息
beginOfStructureProperty
beginOfStructureProperty: boolean = false
属性值
boolean
beginOfTemplateBody
beginOfTemplateBody: boolean = true
属性值
boolean
beginOfTemplateLine
beginOfTemplateLine: boolean = false
属性值
boolean
CASE
public static CASE: 14 = 14
属性值
14
channelNames
public static channelNames: string[] = [
"DEFAULT_TOKEN_CHANNEL", "HIDDEN",
]
属性值
string[]
channelNames
string[] channelNames
属性值
string[]
COMMENTS
public static COMMENTS: 3 = 3
属性值
3
DASH
public static DASH: 4 = 4
属性值
4
DEFAULT
public static DEFAULT: 15 = 15
属性值
15
ELSE
public static ELSE: 12 = 12
属性值
12
ELSEIF
public static ELSEIF: 11 = 11
属性值
11
ESCAPE_CHARACTER
public static ESCAPE_CHARACTER: 16 = 16
属性值
16
ESCAPE_CHARACTER_IN_STRUCTURE_BODY
public static ESCAPE_CHARACTER_IN_STRUCTURE_BODY: 31 = 31
属性值
31
EXPRESSION
public static EXPRESSION: 17 = 17
属性值
17
EXPRESSION_IN_STRUCTURE_BODY
public static EXPRESSION_IN_STRUCTURE_BODY: 32 = 32
属性值
32
grammarFileName
string grammarFileName
属性值
string
IF
public static IF: 10 = 10
属性值
10
ignoreWS
ignoreWS: boolean = true
属性值
boolean
inMultiline
inMultiline: boolean = false
属性值
boolean
inStructuredValue
inStructuredValue: boolean = false
属性值
boolean
INVALID_TOKEN
public static INVALID_TOKEN: 6 = 6
属性值
6
LEFT_SQUARE_BRACKET
public static LEFT_SQUARE_BRACKET: 5 = 5
属性值
5
modeNames
public static modeNames: string[] = [
"DEFAULT_MODE", "NORMAL_TEMPLATE_BODY_MODE", "MULTILINE_MODE", "STRUCTURE_NAME_MODE",
"STRUCTURE_BODY_MODE",
]
属性值
string[]
modeNames
string[] modeNames
属性值
string[]
MULTILINE_MODE
public static MULTILINE_MODE: 2 = 2
属性值
2
MULTILINE_PREFIX
public static MULTILINE_PREFIX: 8 = 8
属性值
8
MULTILINE_SUFFIX
public static MULTILINE_SUFFIX: 19 = 19
属性值
19
NEWLINE
public static NEWLINE: 2 = 2
属性值
2
NEWLINE_IN_BODY
public static NEWLINE_IN_BODY: 9 = 9
属性值
9
NEWLINE_IN_STRUCTURE_NAME
public static NEWLINE_IN_STRUCTURE_NAME: 21 = 21
属性值
21
NORMAL_TEMPLATE_BODY_MODE
public static NORMAL_TEMPLATE_BODY_MODE: 1 = 1
属性值
1
ruleNames
public static ruleNames: string[] = [
"A", "C", "D", "E", "F", "H", "I", "L", "S", "T", "U", "W", "LETTER",
"NUMBER", "WHITESPACE", "STRING_LITERAL", "STRING_INTERPOLATION", "ESCAPE_CHARACTER_FRAGMENT",
"IDENTIFIER", "OBJECT_DEFINITION", "EXPRESSION_FRAGMENT", "NEWLINE_FRAGMENT",
"WS", "NEWLINE", "COMMENTS", "DASH", "LEFT_SQUARE_BRACKET", "INVALID_TOKEN",
"WS_IN_BODY", "MULTILINE_PREFIX", "NEWLINE_IN_BODY", "IF", "ELSEIF", "ELSE",
"SWITCH", "CASE", "DEFAULT", "ESCAPE_CHARACTER", "EXPRESSION", "TEXT",
"MULTILINE_SUFFIX", "MULTILINE_ESCAPE_CHARACTER", "MULTILINE_EXPRESSION",
"MULTILINE_TEXT", "WS_IN_STRUCTURE_NAME", "NEWLINE_IN_STRUCTURE_NAME",
"STRUCTURE_NAME", "TEXT_IN_STRUCTURE_NAME", "STRUCTURED_COMMENTS", "WS_IN_STRUCTURE_BODY",
"STRUCTURED_NEWLINE", "STRUCTURED_BODY_END", "STRUCTURE_IDENTIFIER", "STRUCTURE_EQUALS",
"STRUCTURE_OR_MARK", "ESCAPE_CHARACTER_IN_STRUCTURE_BODY", "EXPRESSION_IN_STRUCTURE_BODY",
"TEXT_IN_STRUCTURE_BODY",
]
属性值
string[]
ruleNames
string[] ruleNames
属性值
string[]
serializedATN
string serializedATN
属性值
string
STRUCTURED_BODY_END
public static STRUCTURED_BODY_END: 27 = 27
属性值
27
STRUCTURED_COMMENTS
public static STRUCTURED_COMMENTS: 24 = 24
属性值
24
STRUCTURED_NEWLINE
public static STRUCTURED_NEWLINE: 26 = 26
属性值
26
STRUCTURE_BODY_MODE
public static STRUCTURE_BODY_MODE: 4 = 4
属性值
4
STRUCTURE_EQUALS
public static STRUCTURE_EQUALS: 29 = 29
属性值
29
STRUCTURE_IDENTIFIER
public static STRUCTURE_IDENTIFIER: 28 = 28
属性值
28
STRUCTURE_NAME
public static STRUCTURE_NAME: 22 = 22
属性值
22
STRUCTURE_NAME_MODE
public static STRUCTURE_NAME_MODE: 3 = 3
属性值
3
STRUCTURE_OR_MARK
public static STRUCTURE_OR_MARK: 30 = 30
属性值
30
SWITCH
public static SWITCH: 13 = 13
属性值
13
TEXT
public static TEXT: 18 = 18
属性值
18
TEXT_IN_STRUCTURE_BODY
public static TEXT_IN_STRUCTURE_BODY: 33 = 33
属性值
33
TEXT_IN_STRUCTURE_NAME
public static TEXT_IN_STRUCTURE_NAME: 23 = 23
属性值
23
VOCABULARY
public static VOCABULARY: Vocabulary = new VocabularyImpl(LGTemplateLexer._LITERAL_NAMES, LGTemplateLexer._SYMBOLIC_NAMES, [])
属性值
Vocabulary
vocabulary
Vocabulary vocabulary
属性值
Vocabulary
WS
public static WS: 1 = 1
属性值
1
WS_IN_BODY
public static WS_IN_BODY: 7 = 7
属性值
7
WS_IN_STRUCTURE_BODY
public static WS_IN_STRUCTURE_BODY: 25 = 25
属性值
25
WS_IN_STRUCTURE_NAME
public static WS_IN_STRUCTURE_NAME: 20 = 20
属性值
20
继承属性详细信息
atn
channel
channel: number
属性值
number
继承自 Lexer.channel
charIndex
lookahead 的当前字符的索引是什么?
charIndex: number
属性值
number
继承自 Lexer.charIndex
charPositionInLine
charPositionInLine: number
属性值
number
继承自 Lexer.charPositionInLine
DEFAULT_MODE
static DEFAULT_MODE: number
属性值
number
继承自 Lexer.DEFAULT_MODE
DEFAULT_TOKEN_CHANNEL
static DEFAULT_TOKEN_CHANNEL: number
属性值
number
继承自 Lexer.DEFAULT_TOKEN_CHANNEL
EOF
static EOF: number
属性值
number
继承自 Recognizer.EOF
HIDDEN
static HIDDEN: number
属性值
number
继承自 Lexer.HIDDEN
inputStream
设置字符流并重置 lexer
inputStream: CharStream
属性值
CharStream
继承自 Lexer.inputStream
interpreter
设置识别器用于预测的 ATN 解释器。
interpreter: LexerATNSimulator
属性值
LexerATNSimulator
继承自 Recognizer.interpreter
line
line: number
属性值
number
继承自 Lexer.line
MAX_CHAR_VALUE
static MAX_CHAR_VALUE: number
属性值
number
继承自 Lexer.MAX_CHAR_VALUE
MIN_CHAR_VALUE
static MIN_CHAR_VALUE: number
属性值
number
继承自 Lexer.MIN_CHAR_VALUE
MORE
static MORE: number
属性值
number
继承自 Lexer.MORE
parseInfo
如果在分析/lex 期间进行分析,这将返回 ParseInfo 对象中识别器中每个决策的 DecisionInfo 记录。
parseInfo: Promise<ParseInfo | undefined>
属性值
Promise<ParseInfo | undefined>
继承自 Recognizer.parseInfo
SKIP
static SKIP: number
属性值
number
继承自 Lexer.SKIP
sourceName
sourceName: string
属性值
string
继承自 Lexer.sourceName
state
指示识别器已更改与传入的 ATN 状态一致的内部状态。 这样,当分析程序进行时,我们始终知道我们在 ATN 中的位置。 规则上下文对象构成了一个堆栈,让我们可以看到调用规则的堆栈。 合并后,我们有了完整的 ATN 配置信息。
state: number
属性值
number
继承自 Recognizer.state
text
设置此令牌的完整文本;它会擦除以前对文本所做的任何更改。
text: string
属性值
string
继承自 Lexer.text
token
如果发出多个令牌,则重写。
token: Token | undefined
属性值
Token | undefined
继承自 Lexer.token
tokenFactory
tokenFactory: TokenFactory
属性值
TokenFactory
继承自 Lexer.tokenFactory
type
type: number
属性值
number
继承自 Lexer.type
方法详细信息
action(RuleContext, number, number)
function action(_localctx: RuleContext, ruleIndex: number, actionIndex: number)
参数
- _localctx
-
RuleContext
- ruleIndex
-
number
- actionIndex
-
number
sempred(RuleContext, number, number)
function sempred(_localctx: RuleContext, ruleIndex: number, predIndex: number): boolean
参数
- _localctx
-
RuleContext
- ruleIndex
-
number
- predIndex
-
number
返回
boolean
继承的方法详细信息
addErrorListener(ANTLRErrorListener<number>)
function addErrorListener(listener: ANTLRErrorListener<number>)
参数
- listener
-
ANTLRErrorListener<number>
继承自 Recognizer.addErrorListener
emit()
默认情况下,出于效率考虑,不支持每个 nextToken 调用发出多个发出。 子类和重写此方法、nextToken 和 getToken (将令牌推送到列表中并从该列表拉取,而不是单个变量,因为此实现) 。
function emit(): Token
返回
Token
继承自 Lexer.emit
emit(Token)
调用的标准方法会自动在最外层的词法规则处发出令牌。 令牌对象应指向字符缓冲区 start。。停止。 如果“text”中有文本替代,请使用它来设置令牌的文本。 重写此方法以发出自定义 Token 对象或提供新工厂。
function emit(token: Token): Token
参数
- token
-
Token
返回
Token
继承自 Lexer.emit
emitEOF()
function emitEOF(): Token
返回
Token
继承自 Lexer.emitEOF
getAllTokens()
返回输入字符流中所有 Token 对象的列表。 强制加载所有令牌。 不包括 EOF 令牌。
function getAllTokens(): Token[]
返回
Token[]
继承自 Lexer.getAllTokens
getCharErrorDisplay(number)
function getCharErrorDisplay(c: number): string
参数
- c
-
number
返回
string
继承自 Lexer.getCharErrorDisplay
getErrorDisplay(string | number)
function getErrorDisplay(s: string | number): string
参数
- s
-
string | number
返回
string
继承自 Lexer.getErrorDisplay
getErrorHeader(RecognitionException)
什么是错误标头,通常是行/字符位置信息?
function getErrorHeader(e: RecognitionException): string
参数
- e
-
RecognitionException
返回
string
继承自 Recognizer.getErrorHeader
getErrorListenerDispatch()
function getErrorListenerDispatch(): ANTLRErrorListener<number>
返回
ANTLRErrorListener<number>
继承自 Recognizer.getErrorListenerDispatch
getErrorListeners()
function getErrorListeners(): Array<ANTLRErrorListener<number>>
返回
Array<ANTLRErrorListener<number>>
继承自 Recognizer.getErrorListeners
getRuleIndexMap()
获取从规则名称到规则索引的映射。 用于 XPath 和树模式编译。
function getRuleIndexMap(): ReadonlyMap<string, number>
返回
ReadonlyMap<string, number>
继承自 Recognizer.getRuleIndexMap
getTokenType(string)
function getTokenType(tokenName: string): number
参数
- tokenName
-
string
返回
number
继承自 Recognizer.getTokenType
getTokenTypeMap()
获取从令牌名称到令牌类型的映射。 用于 XPath 和树模式编译。
function getTokenTypeMap(): ReadonlyMap<string, number>
返回
ReadonlyMap<string, number>
继承自 Recognizer.getTokenTypeMap
mode(number)
function mode(m: number)
参数
- m
-
number
继承自 Lexer.mode
more()
function more()
继承自 Lexer.more
nextToken()
从此源返回令牌;即匹配字符流上的标记。
function nextToken(): Token
返回
Token
继承自 Lexer.nextToken
notifyListeners(LexerNoViableAltException)
function notifyListeners(e: LexerNoViableAltException)
参数
- e
-
LexerNoViableAltException
继承自 Lexer.notifyListeners
popMode()
function popMode(): number
返回
number
继承自 Lexer.popMode
precpred(RuleContext | undefined, number)
function precpred(localctx: RuleContext | undefined, precedence: number): boolean
参数
- localctx
-
RuleContext | undefined
- precedence
-
number
返回
boolean
继承自 Recognizer.precpred
pushMode(number)
function pushMode(m: number)
参数
- m
-
number
继承自 Lexer.pushMode
recover(LexerNoViableAltException)
function recover(re: LexerNoViableAltException)
参数
- re
-
LexerNoViableAltException
继承自 Lexer.recover
recover(RecognitionException)
Lexers 在匹配令牌后,通常可以匹配词汇中的任何字符,所以做简单的事情,只是杀死一个角色,希望一切成功。如果使用的是片段规则,则可以改用规则调用堆栈来执行复杂的错误恢复。
function recover(re: RecognitionException)
参数
- re
-
RecognitionException
继承自 Lexer.recover
removeErrorListener(ANTLRErrorListener<number>)
function removeErrorListener(listener: ANTLRErrorListener<number>)
参数
- listener
-
ANTLRErrorListener<number>
继承自 Recognizer.removeErrorListener
removeErrorListeners()
function removeErrorListeners()
继承自 Recognizer.removeErrorListeners
reset()
function reset()
继承自 Lexer.reset
reset(boolean)
function reset(resetInput: boolean)
参数
- resetInput
-
boolean
继承自 Lexer.reset
skip()
指示词法器跳过为当前词法器规则创建令牌,并查找另一个标记。 nextToken () 知道在标记设置为 SKIP_TOKEN 的情况下,继续查找 lexer 规则何时完成。 回想一下,如果 token==undefined 在任何令牌规则的末尾,它会为你创建一个并发出它。
function skip()
继承自 Lexer.skip