LGTemplateLexer class

Extends

Lexer

コンストラクター

LGTemplateLexer(CharStream)

プロパティ

beginOfStructureProperty
beginOfTemplateBody
beginOfTemplateLine
CASE
channelNames
channelNames
COMMENTS
DASH
DEFAULT
ELSE
ELSEIF
ESCAPE_CHARACTER
ESCAPE_CHARACTER_IN_STRUCTURE_BODY
EXPRESSION
EXPRESSION_IN_STRUCTURE_BODY
grammarFileName
IF
ignoreWS
inMultiline
inStructuredValue
INVALID_TOKEN
LEFT_SQUARE_BRACKET
modeNames
modeNames
MULTILINE_MODE
MULTILINE_PREFIX
MULTILINE_SUFFIX
NEWLINE
NEWLINE_IN_BODY
NEWLINE_IN_STRUCTURE_NAME
NORMAL_TEMPLATE_BODY_MODE
ruleNames
ruleNames
serializedATN
STRUCTURED_BODY_END
STRUCTURED_COMMENTS
STRUCTURED_NEWLINE
STRUCTURE_BODY_MODE
STRUCTURE_EQUALS
STRUCTURE_IDENTIFIER
STRUCTURE_NAME
STRUCTURE_NAME_MODE
STRUCTURE_OR_MARK
SWITCH
TEXT
TEXT_IN_STRUCTURE_BODY
TEXT_IN_STRUCTURE_NAME
VOCABULARY
vocabulary
WS
WS_IN_BODY
WS_IN_STRUCTURE_BODY
WS_IN_STRUCTURE_NAME

継承されたプロパティ

atn

予測に serializedATN 認識エンジンによって使用される を取得します。

channel
charIndex

先読みの現在の文字のインデックスは何ですか?

charPositionInLine
DEFAULT_MODE
DEFAULT_TOKEN_CHANNEL
EOF
HIDDEN
inputStream

char ストリームを設定し、lexer をリセットする

interpreter

認識エンジンによって予測に使用される ATN インタープリターを設定します。

line
MAX_CHAR_VALUE
MIN_CHAR_VALUE
MORE
parseInfo

parse/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 をサブクラス化してオーバーライドします (この実装のように 1 つの変数ではなく、リストにトークンをプッシュし、そのリストからプルするため)。

emit(Token)

最も外側の字句規則でトークンを自動的に出力するために呼び出される標準メソッド。 トークン オブジェクトは、char バッファーの開始位置を指す必要があります。停止。 'text' にテキストオーバーライドがある場合は、トークンのテキストを設定するために使用します。 カスタム Token オブジェクトを出力したり、新しいファクトリを提供したりするには、このメソッドをオーバーライドします。

emitEOF()
getAllTokens()

入力 char ストリーム内のすべての 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)

レクサーは通常、トークンと一致した後にボキャブラリ内の任意の文字と一致させることができます。代わりに、フラグメントルール内にある場合は、ルール呼び出しスタックを使用して高度なエラー回復を行うことができます。

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

現在の lexer ルールのトークンの作成をスキップし、別のトークンを探すように lexer に指示します。 nextToken() は、lexer ルールがトークンを SKIP_TOKEN に設定して終了した時点を常に確認します。 トークン ルールの最後に 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

予測に serializedATN 認識エンジンによって使用される を取得します。

atn: ATN

プロパティ値

ATN

継承元 Recognizer.atn

channel

channel: number

プロパティ値

number

継承元 Lexer.channel

charIndex

先読みの現在の文字のインデックスは何ですか?

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

char ストリームを設定し、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

parse/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 をサブクラス化してオーバーライドします (この実装のように 1 つの変数ではなく、リストにトークンをプッシュし、そのリストからプルするため)。

function emit(): Token

戻り値

Token

継承元 Lexer.emit

emit(Token)

最も外側の字句規則でトークンを自動的に出力するために呼び出される標準メソッド。 トークン オブジェクトは、char バッファーの開始位置を指す必要があります。停止。 'text' にテキストオーバーライドがある場合は、トークンのテキストを設定するために使用します。 カスタム Token オブジェクトを出力したり、新しいファクトリを提供したりするには、このメソッドをオーバーライドします。

function emit(token: Token): Token

パラメーター

token

Token

戻り値

Token

継承元 Lexer.emit

emitEOF()

function emitEOF(): Token

戻り値

Token

継承元 Lexer.emitEOF

getAllTokens()

入力 char ストリーム内のすべての 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)

レクサーは通常、トークンと一致した後にボキャブラリ内の任意の文字と一致させることができます。代わりに、フラグメントルール内にある場合は、ルール呼び出しスタックを使用して高度なエラー回復を行うことができます。

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()

現在の lexer ルールのトークンの作成をスキップし、別のトークンを探すように lexer に指示します。 nextToken() は、lexer ルールがトークンを SKIP_TOKEN に設定して終了した時点を常に確認します。 トークン ルールの最後に token==undefined を指定すると、トークン ルールが自動的に作成され、出力されることを思い出してください。

function skip()

継承元 Lexer.skip