LGFileLexer class
- 扩展
-
Lexer
构造函数
LGFile |
属性
继承属性
atn | 获取识别器用于预测的 serializedATN。 |
channel | |
char |
lookahead 当前字符的索引是什么? |
char |
|
DEFAULT_MODE | |
DEFAULT_TOKEN_CHANNEL | |
EOF | |
HIDDEN | |
input |
设置字符流并重置词法器 |
interpreter | 设置识别器用于预测的 ATN 解释器。 |
line | |
MAX_CHAR_VALUE | |
MIN_CHAR_VALUE | |
MORE | |
parse |
如果在分析/词法期间进行分析,这将返回 ParseInfo 对象中识别器中每个决策的 DecisionInfo 记录。 |
SKIP | |
source |
|
state | 指示识别器已更改与传入的 ATN 状态一致的内部状态。 这样,我们总是知道我们在 ATN 中的位置,因为分析器一直在。 规则上下文对象构成一个堆栈,用于查看调用规则的堆栈。 结合这一点,我们已获得完整的 ATN 配置信息。 |
text | 设置此令牌的完整文本;它会擦除以前对文本所做的任何更改。 |
token | 如果发出多个令牌,则重写。 |
token |
|
type |
方法
action(Rule |
|
sempred(Rule |
继承的方法
add |
|
emit() | 默认情况下,由于效率原因,每个 nextToken 调用不支持多个发出。 子类并重写此方法、nextToken 和 getToken(将令牌推送到列表中并从该列表中拉取,而不是像此实现那样的单个变量)。 |
emit(Token) | 调用的标准方法会在最外层的词法规则中自动发出令牌。 标记对象应指向 char 缓冲区 start。。停。 如果“text”中有文本替代,请使用该替代来设置令牌的文本。 重写此方法以发出自定义令牌对象或提供新工厂。 |
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 |
词法师在匹配令牌后,通常可以匹配其词汇中的任何字符,所以做容易的事情,只是杀死一个角色,并希望它一切都能正常工作。如果处于片段规则中,则可以改用规则调用堆栈执行复杂的错误恢复。 |
remove |
|
remove |
|
reset() | |
reset(boolean) | |
skip() | 指示词法器跳过为当前词法器规则创建令牌并查找另一个令牌。 nextToken() 知道,当词法器规则完成时,令牌设置为SKIP_TOKEN。 回想一下,如果 token==undefined 位于任何令牌规则的末尾,它将为你创建一个令牌并发出它。 |
构造函数详细信息
LGFileLexer(CharStream)
new LGFileLexer(input: CharStream)
参数
- input
-
CharStream
属性详细信息
channelNames
public static channelNames: string[] = [
"DEFAULT_TOKEN_CHANNEL", "HIDDEN",
]
属性值
string[]
channelNames
string[] channelNames
属性值
string[]
COMMENT
public static COMMENT: 3 = 3
属性值
3
ESCAPE_CHARACTER
public static ESCAPE_CHARACTER: 11 = 11
属性值
11
grammarFileName
string grammarFileName
属性值
string
IMPORT
public static IMPORT: 4 = 4
属性值
4
INLINE_MULTILINE
public static INLINE_MULTILINE: 6 = 6
属性值
6
INVALID_LINE
public static INVALID_LINE: 9 = 9
属性值
9
modeNames
public static modeNames: string[] = [
"DEFAULT_MODE", "MULTILINE_MODE",
]
属性值
string[]
modeNames
string[] modeNames
属性值
string[]
MULTILINE_MODE
public static MULTILINE_MODE: 1 = 1
属性值
1
MULTILINE_PREFIX
public static MULTILINE_PREFIX: 7 = 7
属性值
7
MULTILINE_SUFFIX
public static MULTILINE_SUFFIX: 10 = 10
属性值
10
MULTILINE_TEXT
public static MULTILINE_TEXT: 12 = 12
属性值
12
NEWLINE
public static NEWLINE: 1 = 1
属性值
1
OPTION
public static OPTION: 2 = 2
属性值
2
ruleNames
public static ruleNames: string[] = [
"WHITESPACE", "NEWLINE", "OPTION", "COMMENT", "IMPORT", "TEMPLATE_NAME_LINE",
"INLINE_MULTILINE", "MULTILINE_PREFIX", "TEMPLATE_BODY", "INVALID_LINE",
"MULTILINE_SUFFIX", "ESCAPE_CHARACTER", "MULTILINE_TEXT",
]
属性值
string[]
ruleNames
string[] ruleNames
属性值
string[]
serializedATN
string serializedATN
属性值
string
startTemplate
startTemplate: boolean = false
属性值
boolean
TEMPLATE_BODY
public static TEMPLATE_BODY: 8 = 8
属性值
8
TEMPLATE_NAME_LINE
public static TEMPLATE_NAME_LINE: 5 = 5
属性值
5
VOCABULARY
public static VOCABULARY: Vocabulary = new VocabularyImpl(LGFileLexer._LITERAL_NAMES, LGFileLexer._SYMBOLIC_NAMES, [])
属性值
Vocabulary
vocabulary
Vocabulary vocabulary
属性值
Vocabulary
继承属性详细信息
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
设置字符流并重置词法器
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
如果在分析/词法期间进行分析,这将返回 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)
调用的标准方法会在最外层的词法规则中自动发出令牌。 标记对象应指向 char 缓冲区 start。。停。 如果“text”中有文本替代,请使用该替代来设置令牌的文本。 重写此方法以发出自定义令牌对象或提供新工厂。
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)
词法师在匹配令牌后,通常可以匹配其词汇中的任何字符,所以做容易的事情,只是杀死一个角色,并希望它一切都能正常工作。如果处于片段规则中,则可以改用规则调用堆栈执行复杂的错误恢复。
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。 回想一下,如果 token==undefined 位于任何令牌规则的末尾,它将为你创建一个令牌并发出它。
function skip()
继承自 Lexer.skip