共用方式為


LGFileLexer class

Extends

Lexer

建構函式

LGFileLexer(CharStream)

屬性

channelNames
channelNames
COMMENT
ESCAPE_CHARACTER
grammarFileName
IMPORT
INLINE_MULTILINE
INVALID_LINE
modeNames
modeNames
MULTILINE_MODE
MULTILINE_PREFIX
MULTILINE_SUFFIX
MULTILINE_TEXT
NEWLINE
OPTION
ruleNames
ruleNames
serializedATN
startTemplate
TEMPLATE_BODY
TEMPLATE_NAME_LINE
VOCABULARY
vocabulary

繼承的屬性

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 在任何令牌規則結束時,它會為您建立一個令牌,併發出它。

建構函式詳細資料

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

取得辨識器用於預測的 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