ExpressionAntlrParser class

Extends

Parser

コンストラクター

ExpressionAntlrParser(TokenStream)

継承されたプロパティ

atn

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

buildParseTree

解析中に <xref:ParserRuleContext> オブジェクトを追跡し、解析ツリーを形成するように <xref:ParserRuleContext%23children> リストを使用してそれらをフックします。 開始規則から返される <xref:ParserRuleContext> は、解析ツリーのルートを表します。 解析ツリーを構築していない場合、ルール コンテキストは上向きのみを指す点に注意してください。 ルールが終了すると、コンテキストが返されますが、誰も参照を保持していない場合はガベージ コレクションが取得されます。 それは上を指すが、誰もそれを指さない。

解析ツリーを構築するときに、これらすべてのコンテキストを <xref:ParserRuleContext%23children> リストに追加します。 コンテキストはガベージ コレクションの候補ではありません。

context
currentToken

Match は現在の入力シンボルを返す必要があります。これは、関連付けられているトークン ref のラベルに配置されます。例: x=ID。

EOF
errorHandler
inputStream

トークン ストリームを設定し、パーサーをリセットします。

interpreter

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

isMatchedEOF
isTrace

解析中は、ルールの入退出イベントやトークンの一致をリッスンするのに役立つ場合があります。 これは、迅速でダーティなデバッグ用です。

numberOfSyntaxErrors

解析中に報告された構文エラーの数を取得します。 この値は、<xref:%23notifyErrorListeners> が呼び出されるたびにインクリメントされます。

#notifyErrorListeners を参照してください

parseInfo
precedence

最も優先順位の高い規則の優先順位レベルを取得します。

ruleContext
sourceName
state

認識エンジンが、渡された ATN 状態と一致する内部状態を変更したことを示します。 このように、パーサーが進むにつれて、ATN のどこにいるかを常に把握できます。 ルール コンテキスト オブジェクトは、ルールを呼び出すスタックを確認できるスタックを形成します。 これを組み合わせると、完全な ATN 構成情報が得られます。

tokenFactory

継承されたメソッド

action(RuleContext | undefined, number, number)
addErrorListener(ANTLRErrorListener<Token>)
addParseListener(ParseTreeListener)

解析プロセス中にイベントを受信する listener を登録します。 出力を保持する文法変換 (左再帰の削除、自動左要素化、最適化されたコード生成など) をサポートするために、解析中のリスナー メソッドの呼び出しは、解析が完了した後に使用 <xref:ParseTreeWalker%23DEFAULT> 呼び出しと大きく異なる場合があります。 特に、ルールの開始イベントと終了イベントは、解析中にパーサーの後とは異なる順序で発生する可能性があります。 また、特定のルール エントリ メソッドの呼び出しを省略することもできます。

次の特定の例外では、リスナー イベントの呼び出しは決定論的なされます。つまり、同じ入力の場合、リスナー メソッドの呼び出しは同じになります。

  • コードの生成に使用する文法を変更すると、リスナー呼び出しの動作が変わる可能性があります。
  • パーサーの生成時に ANTLR 4 に渡されるコマンド ライン オプションを変更すると、リスナー呼び出しの動作が変更される可能性があります。
  • パーサーの生成に使用する ANTLR ツールのバージョンを変更すると、リスナー呼び出しの動作が変更される可能性があります。
compileParseTreePattern(string, number)

ツリー パターンを取得する推奨される方法。 たとえば、次に例を示します。

let t: ParseTree = parser.expr();
let p: ParseTreePattern = await parser.compileParseTreePattern("<ID>+0", MyParser.RULE_expr);
let m: ParseTreeMatch = p.match(t);
let id: string = m.get("ID");
compileParseTreePattern(string, number, Lexer)

[int)](xref:%23compileParseTreePattern(String%2C) と同じですが、このパーサーから推測するのではなく、CommonRegexLexer を指定します。

consume()

現在のシンボルを使用して返します。 例えば、現在の先読み記号である A を持つ次の入力を考えると、この関数はカーソルを B に移動し、Aを返します。

A B
^

パーサーがエラー回復モードでない場合、使用されたシンボルは <xref:ParserRuleContext%23addChild(TerminalNode)>を使用して解析ツリーに追加され、解析リスナーで <xref:ParseTreeListener%23visitTerminal> が呼び出されます。 パーサー がエラー復旧モードで されている場合、使用されたシンボルは [Token)](xref:%23createErrorNode(ParserRuleContext%2C) を使用して解析ツリーに追加され、<xref:ParserRuleContext%23addErrorNode(ErrorNode)> され、解析リスナーで <xref:ParseTreeListener%23visitErrorNode> が呼び出されます。

createErrorNode(ParserRuleContext, Token)

親に関連付けられたトークンを指定して、エラー ノードを作成する方法。 通常、作成するエラー ノードは親の関数ではありません。

createTerminalNode(ParserRuleContext, Token)

親に関連付けられたトークン リーフ ノードを作成する方法。 通常、作成するターミナル ノードは親の関数ではありません。

dumpDFA()

デバッグなどの目的で使用します。

enterLeftFactoredRule(ParserRuleContext, number, number)
enterOuterAlt(ParserRuleContext, number)
enterRecursionRule(ParserRuleContext, number, number, number)
enterRule(ParserRuleContext, number, number)

ルールへの入力時に、生成されたパーサーによって常に呼び出されます。 アクセス フィールド <xref:%23_ctx> 現在のコンテキストを取得します。

exitRule()
getATNWithBypassAlts()

バイパスの代替手段を備えた ATN は、作成にコストがかかるため、遅延して作成します。 現在のパーサーが serializedATN プロパティを実装していない場合は @。

getDFAStrings()

デバッグなどの目的で使用します。

getErrorHeader(RecognitionException)

エラー ヘッダー (通常は行/文字の位置情報) は何ですか?

getErrorListenerDispatch()
getErrorListeners()
getExpectedTokens()

<xref:%23getState> と <xref:%23getContext>によって指定された、現在のパーサーの状態とコンテキストに従うことができる入力シンボルのセットをそれぞれ計算します。

ATN#getExpectedTokens(int, RuleContext) を参照してください

getExpectedTokensWithinCurrentRule()
getInvokingContext(number)
getParseListeners()
getRuleIndex(string)

ルールのインデックス (RULE_ruleName フィールドなど) を取得するか、見つからない場合は -1 します。

getRuleIndexMap()

ルール名からルール インデックスへのマップを取得します。 XPath とツリー パターンのコンパイルに使用されます。

getRuleInvocationStack(RuleContext)

現在のルール<呼び出しまでのパーサー インスタンス内のルール名の文字列> リストを返します。 ATN 内のルールが呼び出される場所のファイル/行情報などの詳細が必要な場合は、オーバーライドできます。 これは、エラー メッセージに非常に役立ちます。

getTokenType(string)
getTokenTypeMap()

トークン名からトークン型へのマップを取得します。 XPath とツリー パターンのコンパイルに使用されます。

inContext(string)
isExpectedToken(number)

symbol が ATN の現在の状態に従うことができるかどうかを確認します。 このメソッドの動作は次と同じですが、コンテキスト依存の完全なフォロー セットを明示的に構築する必要がないように実装されています。

return getExpectedTokens().contains(symbol);
match(number)

現在の入力シンボルと ttypeを照合します。 シンボルの種類が一致する場合は、一致プロセスを完了するために <xref:ANTLRErrorStrategy%23reportMatch> と <xref:%23consume> が呼び出されます。 シンボルの種類が一致しない場合は、現在のエラー戦略で <xref:ANTLRErrorStrategy%23recoverInline> が呼び出され、復旧が試行されます。 <xref:%23getBuildParseTree> が true され、<xref:ANTLRErrorStrategy%23recoverInline> によって返されるシンボルのトークン インデックスが -1 の場合、シンボルは [Token)](xref:%23createErrorNode(ParserRuleContext%2C) を呼び出して解析ツリーに追加 <xref:ParserRuleContext%23addErrorNode(ErrorNode)>。

matchWildcard()

現在の入力シンボルをワイルドカードとして照合します。 シンボルの種類が一致する場合 (つまり、値が 0 より大きい場合)、一致プロセスを完了するために <xref:ANTLRErrorStrategy%23reportMatch> と <xref:%23consume> が呼び出されます。 シンボルの種類が一致しない場合は、現在のエラー戦略で <xref:ANTLRErrorStrategy%23recoverInline> が呼び出され、復旧が試行されます。 <xref:%23getBuildParseTree> が true され、<xref:ANTLRErrorStrategy%23recoverInline> によって返されるシンボルのトークン インデックスが -1 の場合、シンボルは [Token]](xref:Parser%23createErrorNode(ParserRuleContext%2C) を呼び出して解析ツリーに追加 <xref:ParserRuleContext%23addErrorNode(ErrorNode)>。

notifyErrorListeners(string)
notifyErrorListeners(string, Token | null, RecognitionException | undefined)
precpred(RuleContext, number)
pushNewRecursionContext(ParserRuleContext, number, number)

<xref:%23enterRule> と同様ですが、再帰ルールの場合も同様です。 現在のコンテキストを受信 localctx の子にします。

removeErrorListener(ANTLRErrorListener<Token>)
removeErrorListeners()
removeParseListener(ParseTreeListener)

解析リスナーの一覧から listener を削除します。 listenerundefined されているか、解析リスナーとして追加されていない場合、このメソッドは何も行いません。

#addParseListener を参照してください

removeParseListeners()

すべての解析リスナーを削除します。

#addParseListener を参照してください

reset()

パーサーの状態をリセットする

reset(boolean)
setProfile(boolean)
unrollRecursionContexts(ParserRuleContext)

コンストラクターの詳細

ExpressionAntlrParser(TokenStream)

new ExpressionAntlrParser(input: TokenStream)

パラメーター

input

TokenStream

プロパティの詳細

ARROW

public static ARROW: 27 = 27

プロパティ値

27

ASTERISK

public static ASTERISK: 6 = 6

プロパティ値

6

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

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

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[] = [
		"file", "expression", "primaryExpression", "stringInterpolation", "textContent", 
		"argsList", "lambda", "keyValuePairList", "keyValuePair", "key",
	]

プロパティ値

string[]

ruleNames

string[] ruleNames

プロパティ値

string[]

RULE_argsList

public static RULE_argsList: 5 = 5

プロパティ値

5

RULE_expression

public static RULE_expression: 1 = 1

プロパティ値

1

RULE_file

public static RULE_file: 0 = 0

プロパティ値

0

RULE_key

public static RULE_key: 9 = 9

プロパティ値

9

RULE_keyValuePair

public static RULE_keyValuePair: 8 = 8

プロパティ値

8

RULE_keyValuePairList

public static RULE_keyValuePairList: 7 = 7

プロパティ値

7

RULE_lambda

public static RULE_lambda: 6 = 6

プロパティ値

6

RULE_primaryExpression

public static RULE_primaryExpression: 2 = 2

プロパティ値

2

RULE_stringInterpolation

public static RULE_stringInterpolation: 3 = 3

プロパティ値

3

RULE_textContent

public static RULE_textContent: 4 = 4

プロパティ値

4

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_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(ExpressionAntlrParser._LITERAL_NAMES, ExpressionAntlrParser._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 から継承された

buildParseTree

解析中に <xref:ParserRuleContext> オブジェクトを追跡し、解析ツリーを形成するように <xref:ParserRuleContext%23children> リストを使用してそれらをフックします。 開始規則から返される <xref:ParserRuleContext> は、解析ツリーのルートを表します。 解析ツリーを構築していない場合、ルール コンテキストは上向きのみを指す点に注意してください。 ルールが終了すると、コンテキストが返されますが、誰も参照を保持していない場合はガベージ コレクションが取得されます。 それは上を指すが、誰もそれを指さない。

解析ツリーを構築するときに、これらすべてのコンテキストを <xref:ParserRuleContext%23children> リストに追加します。 コンテキストはガベージ コレクションの候補ではありません。

buildParseTree: boolean

プロパティ値

boolean

Parser.buildParseTree から継承された

context

context: ParserRuleContext

プロパティ値

ParserRuleContext

Parser.context から継承された

currentToken

Match は現在の入力シンボルを返す必要があります。これは、関連付けられているトークン ref のラベルに配置されます。例: x=ID。

currentToken: Token

プロパティ値

Token

Parser.currentToken から継承された

EOF

static EOF: number

プロパティ値

number

Recognizer.EOF から継承された

errorHandler

errorHandler: ANTLRErrorStrategy

プロパティ値

ANTLRErrorStrategy

Parser.errorHandler から継承された

inputStream

トークン ストリームを設定し、パーサーをリセットします。

inputStream: TokenStream

プロパティ値

TokenStream

Parser.inputStream から継承された

interpreter

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

interpreter: ParserATNSimulator

プロパティ値

ParserATNSimulator

Recognizer.interpreter から継承された

isMatchedEOF

isMatchedEOF: boolean

プロパティ値

boolean

Parser.isMatchedEOF から継承された

isTrace

解析中は、ルールの入退出イベントやトークンの一致をリッスンするのに役立つ場合があります。 これは、迅速でダーティなデバッグ用です。

isTrace: boolean

プロパティ値

boolean

Parser.isTrace から継承された

numberOfSyntaxErrors

解析中に報告された構文エラーの数を取得します。 この値は、<xref:%23notifyErrorListeners> が呼び出されるたびにインクリメントされます。

#notifyErrorListeners を参照してください

numberOfSyntaxErrors: number

プロパティ値

number

Parser.numberOfSyntaxErrors から継承された

parseInfo

parseInfo: Promise<ParseInfo | undefined>

プロパティ値

Promise<ParseInfo | undefined>

Parser.parseInfo から継承された

precedence

最も優先順位の高い規則の優先順位レベルを取得します。

precedence: number

プロパティ値

number

Parser.precedence から継承された

ruleContext

ruleContext: ParserRuleContext

プロパティ値

ParserRuleContext

Parser.ruleContext から継承された

sourceName

sourceName: string

プロパティ値

string

Parser.sourceName から継承された

state

認識エンジンが、渡された ATN 状態と一致する内部状態を変更したことを示します。 このように、パーサーが進むにつれて、ATN のどこにいるかを常に把握できます。 ルール コンテキスト オブジェクトは、ルールを呼び出すスタックを確認できるスタックを形成します。 これを組み合わせると、完全な ATN 構成情報が得られます。

state: number

プロパティ値

number

Recognizer.state から継承された

tokenFactory

tokenFactory: TokenFactory

プロパティ値

TokenFactory

Parser.tokenFactory から継承された

メソッドの詳細

argsList()

function argsList(): ArgsListContext

返品

expression()

function expression(): ExpressionContext

返品

expression(number)

function expression(_p: number): ExpressionContext

パラメーター

_p

number

返品

file()

function file(): FileContext

返品

key()

function key(): KeyContext

返品

keyValuePair()

function keyValuePair(): KeyValuePairContext

返品

keyValuePairList()

function keyValuePairList(): KeyValuePairListContext

返品

lambda()

function lambda(): LambdaContext

返品

primaryExpression()

function primaryExpression(): PrimaryExpressionContext

返品

primaryExpression(number)

function primaryExpression(_p: number): PrimaryExpressionContext

パラメーター

_p

number

返品

sempred(RuleContext, number, number)

function sempred(_localctx: RuleContext, ruleIndex: number, predIndex: number): boolean

パラメーター

_localctx

RuleContext

ruleIndex

number

predIndex

number

返品

boolean

stringInterpolation()

function stringInterpolation(): StringInterpolationContext

返品

textContent()

function textContent(): TextContentContext

返品

継承済みメソッドの詳細

action(RuleContext | undefined, number, number)

function action(_localctx: RuleContext | undefined, ruleIndex: number, actionIndex: number)

パラメーター

_localctx

RuleContext | undefined

ruleIndex

number

actionIndex

number

Recognizer.action から継承

addErrorListener(ANTLRErrorListener<Token>)

function addErrorListener(listener: ANTLRErrorListener<Token>)

パラメーター

listener

ANTLRErrorListener<Token>

Inherited From Recognizer.addErrorListener

addParseListener(ParseTreeListener)

解析プロセス中にイベントを受信する listener を登録します。 出力を保持する文法変換 (左再帰の削除、自動左要素化、最適化されたコード生成など) をサポートするために、解析中のリスナー メソッドの呼び出しは、解析が完了した後に使用 <xref:ParseTreeWalker%23DEFAULT> 呼び出しと大きく異なる場合があります。 特に、ルールの開始イベントと終了イベントは、解析中にパーサーの後とは異なる順序で発生する可能性があります。 また、特定のルール エントリ メソッドの呼び出しを省略することもできます。

次の特定の例外では、リスナー イベントの呼び出しは決定論的なされます。つまり、同じ入力の場合、リスナー メソッドの呼び出しは同じになります。

  • コードの生成に使用する文法を変更すると、リスナー呼び出しの動作が変わる可能性があります。
  • パーサーの生成時に ANTLR 4 に渡されるコマンド ライン オプションを変更すると、リスナー呼び出しの動作が変更される可能性があります。
  • パーサーの生成に使用する ANTLR ツールのバージョンを変更すると、リスナー呼び出しの動作が変更される可能性があります。
function addParseListener(listener: ParseTreeListener)

パラメーター

listener

ParseTreeListener

追加するリスナー

Parser.addParseListener から継承

compileParseTreePattern(string, number)

ツリー パターンを取得する推奨される方法。 たとえば、次に例を示します。

let t: ParseTree = parser.expr();
let p: ParseTreePattern = await parser.compileParseTreePattern("<ID>+0", MyParser.RULE_expr);
let m: ParseTreeMatch = p.match(t);
let id: string = m.get("ID");
function compileParseTreePattern(pattern: string, patternRuleIndex: number): Promise<ParseTreePattern>

パラメーター

pattern

string

patternRuleIndex

number

返品

Promise<ParseTreePattern>

Parser.compileParseTreePattern から継承された

compileParseTreePattern(string, number, Lexer)

[int)](xref:%23compileParseTreePattern(String%2C) と同じですが、このパーサーから推測するのではなく、CommonRegexLexer を指定します。

function compileParseTreePattern(pattern: string, patternRuleIndex: number, lexer?: Lexer): Promise<ParseTreePattern>

パラメーター

pattern

string

patternRuleIndex

number

lexer

Lexer

返品

Promise<ParseTreePattern>

Parser.compileParseTreePattern から継承された

consume()

現在のシンボルを使用して返します。 例えば、現在の先読み記号である A を持つ次の入力を考えると、この関数はカーソルを B に移動し、Aを返します。

A B
^

パーサーがエラー回復モードでない場合、使用されたシンボルは <xref:ParserRuleContext%23addChild(TerminalNode)>を使用して解析ツリーに追加され、解析リスナーで <xref:ParseTreeListener%23visitTerminal> が呼び出されます。 パーサー がエラー復旧モードで されている場合、使用されたシンボルは [Token)](xref:%23createErrorNode(ParserRuleContext%2C) を使用して解析ツリーに追加され、<xref:ParserRuleContext%23addErrorNode(ErrorNode)> され、解析リスナーで <xref:ParseTreeListener%23visitErrorNode> が呼び出されます。

function consume(): Token

返品

Token

Parser.consume から継承された

createErrorNode(ParserRuleContext, Token)

親に関連付けられたトークンを指定して、エラー ノードを作成する方法。 通常、作成するエラー ノードは親の関数ではありません。

function createErrorNode(parent: ParserRuleContext, t: Token): ErrorNode

パラメーター

parent

ParserRuleContext

t

Token

返品

ErrorNode

Parser.createErrorNode から継承された

createTerminalNode(ParserRuleContext, Token)

親に関連付けられたトークン リーフ ノードを作成する方法。 通常、作成するターミナル ノードは親の関数ではありません。

function createTerminalNode(parent: ParserRuleContext, t: Token): TerminalNode

パラメーター

parent

ParserRuleContext

t

Token

返品

TerminalNode

Parser.createTerminalNode から継承

dumpDFA()

デバッグなどの目的で使用します。

function dumpDFA()

Parser.dumpDFA から継承された

enterLeftFactoredRule(ParserRuleContext, number, number)

function enterLeftFactoredRule(localctx: ParserRuleContext, state: number, ruleIndex: number)

パラメーター

localctx

ParserRuleContext

state

number

ruleIndex

number

Parser.enterLeftFactoredRule から継承された

enterOuterAlt(ParserRuleContext, number)

function enterOuterAlt(localctx: ParserRuleContext, altNum: number)

パラメーター

localctx

ParserRuleContext

altNum

number

Parser.enterOuterAlt から継承された

enterRecursionRule(ParserRuleContext, number, number, number)

function enterRecursionRule(localctx: ParserRuleContext, state: number, ruleIndex: number, precedence: number)

パラメーター

localctx

ParserRuleContext

state

number

ruleIndex

number

precedence

number

Parser.enterRecursionRule から継承された

enterRule(ParserRuleContext, number, number)

ルールへの入力時に、生成されたパーサーによって常に呼び出されます。 アクセス フィールド <xref:%23_ctx> 現在のコンテキストを取得します。

function enterRule(localctx: ParserRuleContext, state: number, ruleIndex: number)

パラメーター

localctx

ParserRuleContext

state

number

ruleIndex

number

Parser.enterRule から継承された

exitRule()

function exitRule()

Parser.exitRule から継承された

getATNWithBypassAlts()

バイパスの代替手段を備えた ATN は、作成にコストがかかるため、遅延して作成します。 現在のパーサーが serializedATN プロパティを実装していない場合は @。

function getATNWithBypassAlts(): ATN

返品

ATN

Parser.getATNWithBypassAlts から継承された

getDFAStrings()

デバッグなどの目的で使用します。

function getDFAStrings(): string[]

返品

string[]

Parser.getDFAStrings から継承された

getErrorHeader(RecognitionException)

エラー ヘッダー (通常は行/文字の位置情報) は何ですか?

function getErrorHeader(e: RecognitionException): string

パラメーター

e

RecognitionException

返品

string

Inherited From Recognizer.getErrorHeader

getErrorListenerDispatch()

function getErrorListenerDispatch(): ParserErrorListener

返品

ParserErrorListener

Parser.getErrorListenerDispatch から継承された

getErrorListeners()

function getErrorListeners(): Array<ANTLRErrorListener<Token>>

返品

Array<ANTLRErrorListener<Token>>

Inherited From Recognizer.getErrorListeners

getExpectedTokens()

<xref:%23getState> と <xref:%23getContext>によって指定された、現在のパーサーの状態とコンテキストに従うことができる入力シンボルのセットをそれぞれ計算します。

ATN#getExpectedTokens(int, RuleContext) を参照してください

function getExpectedTokens(): IntervalSet

返品

IntervalSet

Parser.getExpectedTokens から継承された

getExpectedTokensWithinCurrentRule()

function getExpectedTokensWithinCurrentRule(): IntervalSet

返品

IntervalSet

Parser.getExpectedTokensWithinCurrentRule から継承された

getInvokingContext(number)

function getInvokingContext(ruleIndex: number): ParserRuleContext | undefined

パラメーター

ruleIndex

number

返品

ParserRuleContext | undefined

Parser.getInvokingContext から継承された

getParseListeners()

function getParseListeners(): ParseTreeListener[]

返品

ParseTreeListener[]

Parser.getParseListeners から継承された

getRuleIndex(string)

ルールのインデックス (RULE_ruleName フィールドなど) を取得するか、見つからない場合は -1 します。

function getRuleIndex(ruleName: string): number

パラメーター

ruleName

string

返品

number

Parser.getRuleIndex から継承された

getRuleIndexMap()

ルール名からルール インデックスへのマップを取得します。 XPath とツリー パターンのコンパイルに使用されます。

function getRuleIndexMap(): ReadonlyMap<string, number>

返品

ReadonlyMap<string, number>

Recognizer.getRuleIndexMap から継承された

getRuleInvocationStack(RuleContext)

現在のルール<呼び出しまでのパーサー インスタンス内のルール名の文字列> リストを返します。 ATN 内のルールが呼び出される場所のファイル/行情報などの詳細が必要な場合は、オーバーライドできます。 これは、エラー メッセージに非常に役立ちます。

function getRuleInvocationStack(ctx?: RuleContext): string[]

パラメーター

ctx

RuleContext

返品

string[]

Parser.getRuleInvocationStack から継承された

getTokenType(string)

function getTokenType(tokenName: string): number

パラメーター

tokenName

string

返品

number

Inherited From Recognizer.getTokenType

getTokenTypeMap()

トークン名からトークン型へのマップを取得します。 XPath とツリー パターンのコンパイルに使用されます。

function getTokenTypeMap(): ReadonlyMap<string, number>

返品

ReadonlyMap<string, number>

Inherited From Recognizer.getTokenTypeMap

inContext(string)

function inContext(context: string): boolean

パラメーター

context

string

返品

boolean

Parser.inContext から継承された

isExpectedToken(number)

symbol が ATN の現在の状態に従うことができるかどうかを確認します。 このメソッドの動作は次と同じですが、コンテキスト依存の完全なフォロー セットを明示的に構築する必要がないように実装されています。

return getExpectedTokens().contains(symbol);
function isExpectedToken(symbol: number): boolean

パラメーター

symbol

number

チェックするシンボルの種類

返品

boolean

true が ATN の現在の状態に従うことができる場合は symbol。それ以外の場合は false

Parser.isExpectedToken から継承された

match(number)

現在の入力シンボルと ttypeを照合します。 シンボルの種類が一致する場合は、一致プロセスを完了するために <xref:ANTLRErrorStrategy%23reportMatch> と <xref:%23consume> が呼び出されます。 シンボルの種類が一致しない場合は、現在のエラー戦略で <xref:ANTLRErrorStrategy%23recoverInline> が呼び出され、復旧が試行されます。 <xref:%23getBuildParseTree> が true され、<xref:ANTLRErrorStrategy%23recoverInline> によって返されるシンボルのトークン インデックスが -1 の場合、シンボルは [Token)](xref:%23createErrorNode(ParserRuleContext%2C) を呼び出して解析ツリーに追加 <xref:ParserRuleContext%23addErrorNode(ErrorNode)>。

function match(ttype: number): Token

パラメーター

ttype

number

一致するトークンの種類

返品

Token

現在の入力シンボルが ttype 一致せず、エラー戦略が一致しないシンボルから回復できなかった場合は、一致したシンボル @

Parser.match から継承された

matchWildcard()

現在の入力シンボルをワイルドカードとして照合します。 シンボルの種類が一致する場合 (つまり、値が 0 より大きい場合)、一致プロセスを完了するために <xref:ANTLRErrorStrategy%23reportMatch> と <xref:%23consume> が呼び出されます。 シンボルの種類が一致しない場合は、現在のエラー戦略で <xref:ANTLRErrorStrategy%23recoverInline> が呼び出され、復旧が試行されます。 <xref:%23getBuildParseTree> が true され、<xref:ANTLRErrorStrategy%23recoverInline> によって返されるシンボルのトークン インデックスが -1 の場合、シンボルは [Token]](xref:Parser%23createErrorNode(ParserRuleContext%2C) を呼び出して解析ツリーに追加 <xref:ParserRuleContext%23addErrorNode(ErrorNode)>。

function matchWildcard(): Token

返品

Token

現在の入力シンボルがワイルドカードと一致せず、エラー戦略が一致しないシンボルから回復できなかった場合は、一致したシンボル @

Parser.matchWildcard から継承された

notifyErrorListeners(string)

function notifyErrorListeners(msg: string)

パラメーター

msg

string

Parser.notifyErrorListeners から継承された

notifyErrorListeners(string, Token | null, RecognitionException | undefined)

function notifyErrorListeners(msg: string, offendingToken: Token | null, e: RecognitionException | undefined)

パラメーター

msg

string

offendingToken

Token | null

e

RecognitionException | undefined

Parser.notifyErrorListeners から継承された

precpred(RuleContext, number)

function precpred(localctx: RuleContext, precedence: number): boolean

パラメーター

localctx

RuleContext

precedence

number

返品

boolean

Parser.precpred から継承された

pushNewRecursionContext(ParserRuleContext, number, number)

<xref:%23enterRule> と同様ですが、再帰ルールの場合も同様です。 現在のコンテキストを受信 localctx の子にします。

function pushNewRecursionContext(localctx: ParserRuleContext, state: number, ruleIndex: number)

パラメーター

localctx

ParserRuleContext

state

number

ruleIndex

number

Parser.pushNewRecursionContext から継承された

removeErrorListener(ANTLRErrorListener<Token>)

function removeErrorListener(listener: ANTLRErrorListener<Token>)

パラメーター

listener

ANTLRErrorListener<Token>

Recognizer.removeErrorListener から継承された

removeErrorListeners()

function removeErrorListeners()

Inherited From Recognizer.removeErrorListeners

removeParseListener(ParseTreeListener)

解析リスナーの一覧から listener を削除します。 listenerundefined されているか、解析リスナーとして追加されていない場合、このメソッドは何も行いません。

#addParseListener を参照してください

function removeParseListener(listener: ParseTreeListener)

パラメーター

listener

ParseTreeListener

削除するリスナー

Parser.removeParseListener から継承された

removeParseListeners()

すべての解析リスナーを削除します。

#addParseListener を参照してください

function removeParseListeners()

Parser.removeParseListeners から継承された

reset()

パーサーの状態をリセットする

function reset()

Parser.reset から継承された

reset(boolean)

function reset(resetInput: boolean)

パラメーター

resetInput

boolean

Parser.reset から継承された

setProfile(boolean)

function setProfile(profile: boolean): Promise<void>

パラメーター

profile

boolean

返品

Promise<void>

Parser.setProfile から継承された

unrollRecursionContexts(ParserRuleContext)

function unrollRecursionContexts(_parentctx: ParserRuleContext)

パラメーター

_parentctx

ParserRuleContext

Parser.unrollRecursionContexts から継承された