共用方式為


ExpressionAntlrLexer class

Extends

Lexer

建構函式

ExpressionAntlrLexer(CharStream)

屬性

ARROW
ASTERISK
channelNames
channelNames
CLOSE_BRACKET
CLOSE_CURLY_BRACKET
CLOSE_SQUARE_BRACKET
COLON
COMMA
DOT
DOUBLE_AND
DOUBLE_EQUAL
DOUBLE_VERTICAL_CYLINDER
ESCAPE_CHARACTER
grammarFileName
IDENTIFIER
ignoreWS
INVALID_TOKEN_DEFAULT_MODE
LESS_OR_EQUAl
LESS_THAN
modeNames
modeNames
MORE_OR_EQUAL
MORE_THAN
NEWLINE
NON
NOT_EQUAL
NULL_COALESCE
NUMBER
OPEN_BRACKET
OPEN_CURLY_BRACKET
OPEN_SQUARE_BRACKET
PERCENT
PLUS
QUESTION_MARK
ruleNames
ruleNames
serializedATN
SINGLE_AND
SLASH
STRING
STRING_INTERPOLATION_MODE
STRING_INTERPOLATION_START
SUBSTRACT
TEMPLATE
TEXT_CONTENT
VOCABULARY
vocabulary
WHITESPACE
XOR

繼承的屬性

atn

取得辨識器用於預測的 serializedATN

channel
charIndex

lookahead 目前字元的索引為何?

charPositionInLine
DEFAULT_MODE
DEFAULT_TOKEN_CHANNEL
EOF
HIDDEN
inputStream

設定 char 數據流並重設 lexer

interpreter

設定辨識器用於預測的 ATN 解釋器。

line
MAX_CHAR_VALUE
MIN_CHAR_VALUE
MORE
parseInfo

如果在剖析/lex 期間進行分析,這會傳回 ParseInfo 物件中辨識器中每個決策的 DecisionInfo 記錄。

SKIP
sourceName
state

指出辨識器已變更與傳入 ATN 狀態一致的內部狀態。 如此一來,我們一律知道我們在 ATN 中的位置,因為剖析器會繼續。 規則內容物件會形成堆疊,讓我們查看叫用規則的堆疊。 結合這一點,而且我們有完整的 ATN 組態資訊。

text

設定此令牌的完整文字;它會抹除任何先前對文字所做的變更。

token

如果發出多個權杖,請覆寫 。

tokenFactory
type

方法

action(RuleContext, number, number)
sempred(RuleContext, number, number)

繼承的方法

addErrorListener(ANTLRErrorListener<number>)
emit()

基於效率考慮,默認不支援每個 nextToken 調用的多個發出。 子類別並覆寫這個方法 nextToken 和 getToken (若要將令牌推送至清單,並從該清單中提取,而不是此實作所做的單一變數)。

emit(Token)

呼叫以自動在最外層語匯規則發出令牌的標準方法。 Token 對象應該指向 char 緩衝區 start。。停。 如果 'text' 中有文字覆寫,請使用它來設定令牌的文字。 覆寫此方法以發出自定義 Token 物件或提供新的處理站。

emitEOF()
getAllTokens()

傳回輸入字元數據流中所有 Token 物件的清單。 強制載入所有令牌。 不包含 EOF 令牌。

getCharErrorDisplay(number)
getErrorDisplay(string | number)
getErrorHeader(RecognitionException)

錯誤標頭是什麼,通常是行/字元位置資訊?

getErrorListenerDispatch()
getErrorListeners()
getRuleIndexMap()

從規則名稱到規則索引取得對應。 用於 XPath 和樹狀結構模式編譯。

getTokenType(string)
getTokenTypeMap()

從令牌名稱取得對應至令牌類型。 用於 XPath 和樹狀結構模式編譯。

mode(number)
more()
nextToken()

從這個來源傳回令牌;亦即,比對 char 數據流上的令牌。

notifyListeners(LexerNoViableAltException)
popMode()
precpred(RuleContext | undefined, number)
pushMode(number)
recover(LexerNoViableAltException)
recover(RecognitionException)

Lexers 在比對令牌之後,通常可以比對任何字元的詞彙,所以做容易的事情,只是殺死一個角色,並希望這一切都能奏效。如果您位於片段規則中,您可以改用規則調用堆疊來執行複雜的錯誤復原。

removeErrorListener(ANTLRErrorListener<number>)
removeErrorListeners()
reset()
reset(boolean)
skip()

指示語匯器略過建立目前語匯器規則的令牌,並尋找另一個令牌。 nextToken() 知道當 lexer 規則完成時,令牌設定為 SKIP_TOKEN。 回想一下,如果 token==undefined 在任何令牌規則結束時,它會為您建立一個令牌,併發出它。

建構函式詳細資料

ExpressionAntlrLexer(CharStream)

new ExpressionAntlrLexer(input: CharStream)

參數

input

CharStream

屬性詳細資料

ARROW

public static ARROW: 27 = 27

屬性值

27

ASTERISK

public static ASTERISK: 6 = 6

屬性值

6

channelNames

public static channelNames: string[] = [
		"DEFAULT_TOKEN_CHANNEL", "HIDDEN",
	]

屬性值

string[]

channelNames

string[] channelNames

屬性值

string[]

CLOSE_BRACKET

public static CLOSE_BRACKET: 19 = 19

屬性值

19

CLOSE_CURLY_BRACKET

public static CLOSE_CURLY_BRACKET: 24 = 24

屬性值

24

CLOSE_SQUARE_BRACKET

public static CLOSE_SQUARE_BRACKET: 22 = 22

屬性值

22

COLON

public static COLON: 26 = 26

屬性值

26

COMMA

public static COMMA: 25 = 25

屬性值

25

DOT

public static DOT: 20 = 20

屬性值

20

DOUBLE_AND

public static DOUBLE_AND: 12 = 12

屬性值

12

DOUBLE_EQUAL

public static DOUBLE_EQUAL: 9 = 9

屬性值

9

DOUBLE_VERTICAL_CYLINDER

public static DOUBLE_VERTICAL_CYLINDER: 13 = 13

屬性值

13

ESCAPE_CHARACTER

public static ESCAPE_CHARACTER: 37 = 37

屬性值

37

grammarFileName

string grammarFileName

屬性值

string

IDENTIFIER

public static IDENTIFIER: 32 = 32

屬性值

32

ignoreWS

ignoreWS: boolean = true

屬性值

boolean

INVALID_TOKEN_DEFAULT_MODE

public static INVALID_TOKEN_DEFAULT_MODE: 35 = 35

屬性值

35

LESS_OR_EQUAl

public static LESS_OR_EQUAl: 16 = 16

屬性值

16

LESS_THAN

public static LESS_THAN: 14 = 14

屬性值

14

modeNames

public static modeNames: string[] = [
		"DEFAULT_MODE", "STRING_INTERPOLATION_MODE",
	]

屬性值

string[]

modeNames

string[] modeNames

屬性值

string[]

MORE_OR_EQUAL

public static MORE_OR_EQUAL: 17 = 17

屬性值

17

MORE_THAN

public static MORE_THAN: 15 = 15

屬性值

15

NEWLINE

public static NEWLINE: 33 = 33

屬性值

33

NON

public static NON: 4 = 4

屬性值

4

NOT_EQUAL

public static NOT_EQUAL: 10 = 10

屬性值

10

NULL_COALESCE

public static NULL_COALESCE: 28 = 28

屬性值

28

NUMBER

public static NUMBER: 30 = 30

屬性值

30

OPEN_BRACKET

public static OPEN_BRACKET: 18 = 18

屬性值

18

OPEN_CURLY_BRACKET

public static OPEN_CURLY_BRACKET: 23 = 23

屬性值

23

OPEN_SQUARE_BRACKET

public static OPEN_SQUARE_BRACKET: 21 = 21

屬性值

21

PERCENT

public static PERCENT: 8 = 8

屬性值

8

PLUS

public static PLUS: 2 = 2

屬性值

2

QUESTION_MARK

public static QUESTION_MARK: 29 = 29

屬性值

29

ruleNames

public static ruleNames: string[] = [
		"LETTER", "DIGIT", "OBJECT_DEFINITION", "STRING_INTERPOLATION_START", 
		"PLUS", "SUBSTRACT", "NON", "XOR", "ASTERISK", "SLASH", "PERCENT", "DOUBLE_EQUAL", 
		"NOT_EQUAL", "SINGLE_AND", "DOUBLE_AND", "DOUBLE_VERTICAL_CYLINDER", "LESS_THAN", 
		"MORE_THAN", "LESS_OR_EQUAl", "MORE_OR_EQUAL", "OPEN_BRACKET", "CLOSE_BRACKET", 
		"DOT", "OPEN_SQUARE_BRACKET", "CLOSE_SQUARE_BRACKET", "OPEN_CURLY_BRACKET", 
		"CLOSE_CURLY_BRACKET", "COMMA", "COLON", "ARROW", "NULL_COALESCE", "QUESTION_MARK", 
		"NUMBER", "WHITESPACE", "IDENTIFIER", "NEWLINE", "STRING", "INVALID_TOKEN_DEFAULT_MODE", 
		"STRING_INTERPOLATION_END", "TEMPLATE", "ESCAPE_CHARACTER", "TEXT_CONTENT",
	]

屬性值

string[]

ruleNames

string[] ruleNames

屬性值

string[]

serializedATN

string serializedATN

屬性值

string

SINGLE_AND

public static SINGLE_AND: 11 = 11

屬性值

11

SLASH

public static SLASH: 7 = 7

屬性值

7

STRING

public static STRING: 34 = 34

屬性值

34

STRING_INTERPOLATION_MODE

public static STRING_INTERPOLATION_MODE: 1 = 1

屬性值

1

STRING_INTERPOLATION_START

public static STRING_INTERPOLATION_START: 1 = 1

屬性值

1

SUBSTRACT

public static SUBSTRACT: 3 = 3

屬性值

3

TEMPLATE

public static TEMPLATE: 36 = 36

屬性值

36

TEXT_CONTENT

public static TEXT_CONTENT: 38 = 38

屬性值

38

VOCABULARY

public static VOCABULARY: Vocabulary = new VocabularyImpl(ExpressionAntlrLexer._LITERAL_NAMES, ExpressionAntlrLexer._SYMBOLIC_NAMES, [])

屬性值

Vocabulary

vocabulary

Vocabulary vocabulary

屬性值

Vocabulary

WHITESPACE

public static WHITESPACE: 31 = 31

屬性值

31

XOR

public static XOR: 5 = 5

屬性值

5

繼承的屬性詳細資料

atn

取得辨識器用於預測的 serializedATN

atn: ATN

屬性值

ATN

繼承自 Recognizer.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

繼承自 辨識器.EOF

HIDDEN

static HIDDEN: number

屬性值

number

繼承自 Lexer.HIDDEN

inputStream

設定 char 數據流並重設 lexer

inputStream: CharStream

屬性值

CharStream

繼承自 Lexer.inputStream

interpreter

設定辨識器用於預測的 ATN 解釋器。

interpreter: LexerATNSimulator

屬性值

LexerATNSimulator

繼承自 Recognizer.解釋器

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)

呼叫以自動在最外層語匯規則發出令牌的標準方法。 Token 對象應該指向 char 緩衝區 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()

從這個來源傳回令牌;亦即,比對 char 數據流上的令牌。

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() 知道當 lexer 規則完成時,令牌設定為 SKIP_TOKEN。 回想一下,如果 token==undefined 在任何令牌規則結束時,它會為您建立一個令牌,併發出它。

function skip()

繼承自 Lexer.skip