Поделиться через


ExpressionAntlrParser class

Extends

Parser

Конструкторы

ExpressionAntlrParser(TokenStream)

Свойства

ARROW
ASTERISK
CLOSE_BRACKET
CLOSE_CURLY_BRACKET
CLOSE_SQUARE_BRACKET
COLON
COMMA
DOT
DOUBLE_AND
DOUBLE_EQUAL
DOUBLE_VERTICAL_CYLINDER
ESCAPE_CHARACTER
grammarFileName
IDENTIFIER
INVALID_TOKEN_DEFAULT_MODE
LESS_OR_EQUAl
LESS_THAN
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
RULE_argsList
RULE_expression
RULE_file
RULE_key
RULE_keyValuePair
RULE_keyValuePairList
RULE_lambda
RULE_primaryExpression
RULE_stringInterpolation
RULE_textContent
serializedATN
SINGLE_AND
SLASH
STRING
STRING_INTERPOLATION_START
SUBSTRACT
TEMPLATE
TEXT_CONTENT
VOCABULARY
vocabulary
WHITESPACE
XOR

Унаследованные свойства

atn

Получение serializedATN, используемой распознавательом для прогнозирования.

buildParseTree

Отслеживайте объекты <xref:ParserRuleContext> во время синтаксического анализа и подключите их с помощью списка <xref:ParserRuleContext%23children>, чтобы он формирует дерево синтаксического анализа. <xref:ParserRuleContext>, возвращенный из правила запуска, представляет корень дерева синтаксического анализа. Обратите внимание, что если мы не создадим деревья синтаксического анализа, контексты правил только указывают вверх. Когда правило завершает работу, он возвращает контекст, но получает мусор, собранный, если никто не содержит ссылку. Он указывает вверх, но никто не указывает на него.

При сборке деревьев синтаксического анализа мы добавляем все эти контексты в список <xref:ParserRuleContext%23children>. Контексты затем не являются кандидатами для сборки мусора.

context
currentToken

Совпадение должно возвращать текущий входной символ, который помещается в метку для связанного маркера ref; Например, x=ID.

EOF
errorHandler
inputStream

Задайте поток маркера и сбросьте средство синтаксического анализа.

interpreter

Задайте интерпретатор ATN, используемый распознавательом для прогнозирования.

isMatchedEOF
isTrace

Во время синтаксического анализа иногда полезно прослушивать события входа и выхода правила, а также совпадения маркеров. Это для быстрой и грязной отладки.

numberOfSyntaxErrors

Возвращает количество ошибок синтаксиса, сообщаемых во время синтаксического анализа. Это значение увеличивается при каждом вызове <xref:%23notifyErrorListeners>.

См. #notifyErrorListeners

parseInfo
precedence

Получите уровень приоритета для правила приоритета верхнего уровня.

ruleContext
sourceName
state

Укажите, что распознаватель изменил внутреннее состояние, которое соответствует состоянию ATN, переданном в. Таким образом, мы всегда знаем, где мы в ATN, как синтаксический анализатор идет вместе. Объекты контекста правила образуют стек, который позволяет увидеть стек вызовов правил. Объедините это, и у нас есть полные сведения о конфигурации ATN.

tokenFactory

Методы

argsList()
expression()
expression(number)
file()
key()
keyValuePair()
keyValuePairList()
lambda()
primaryExpression()
primaryExpression(number)
sempred(RuleContext, number, number)
stringInterpolation()
textContent()

Наследуемые методы

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(строка%2C) но укажите CommonRegexLexer вместо попытки вывести его из этого средства синтаксического анализа.

consume()

Потреблять и возвращать текущий символ. Например, учитывая следующие входные данные с A быть текущим символом lookahead, эта функция перемещает курсор в 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

наследуется от распознавателя.atn

buildParseTree

Отслеживайте объекты <xref:ParserRuleContext> во время синтаксического анализа и подключите их с помощью списка <xref:ParserRuleContext%23children>, чтобы он формирует дерево синтаксического анализа. <xref:ParserRuleContext>, возвращенный из правила запуска, представляет корень дерева синтаксического анализа. Обратите внимание, что если мы не создадим деревья синтаксического анализа, контексты правил только указывают вверх. Когда правило завершает работу, он возвращает контекст, но получает мусор, собранный, если никто не содержит ссылку. Он указывает вверх, но никто не указывает на него.

При сборке деревьев синтаксического анализа мы добавляем все эти контексты в список <xref:ParserRuleContext%23children>. Контексты затем не являются кандидатами для сборки мусора.

buildParseTree: boolean

Значение свойства

boolean

унаследовано от Parser.buildParseTree

context

context: ParserRuleContext

Значение свойства

ParserRuleContext

Унаследовано от Parser.context

currentToken

Совпадение должно возвращать текущий входной символ, который помещается в метку для связанного маркера ref; Например, x=ID.

currentToken: Token

Значение свойства

Token

наследуется от Parser.currentToken

EOF

static EOF: number

Значение свойства

number

унаследован от распознавателя.EOF

errorHandler

errorHandler: ANTLRErrorStrategy

Значение свойства

ANTLRErrorStrategy

наследуется от Parser.errorHandler

inputStream

Задайте поток маркера и сбросьте средство синтаксического анализа.

inputStream: TokenStream

Значение свойства

TokenStream

наследуется от Parser.inputStream

interpreter

Задайте интерпретатор ATN, используемый распознавательом для прогнозирования.

interpreter: ParserATNSimulator

Значение свойства

ParserATNSimulator

унаследован от Распознаватель.интерпретатор

isMatchedEOF

isMatchedEOF: boolean

Значение свойства

boolean

унаследован от синтаксического анализа.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

унаследован от Распознавателя.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

наследуется от Распознавателя.action

addErrorListener(ANTLRErrorListener<Token>)

function addErrorListener(listener: ANTLRErrorListener<Token>)

Параметры

listener

ANTLRErrorListener<Token>

Наследуется от Распознавателя.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(строка%2C) но укажите CommonRegexLexer вместо попытки вывести его из этого средства синтаксического анализа.

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

Параметры

pattern

string

patternRuleIndex

number

lexer

Lexer

Возвращаемое значение

Promise<ParseTreePattern>

наследуется от Parser.compileParseTreePattern

consume()

Потреблять и возвращать текущий символ. Например, учитывая следующие входные данные с A быть текущим символом lookahead, эта функция перемещает курсор в 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

наследуется от распознавателя.getErrorHeader

getErrorListenerDispatch()

function getErrorListenerDispatch(): ParserErrorListener

Возвращаемое значение

ParserErrorListener

унаследован от Parser.getErrorListenerDispatch

getErrorListeners()

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

Возвращаемое значение

Array<ANTLRErrorListener<Token>>

наследуется от Распознавателя.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>

наследуется от распознавателя.getRuleIndexMap

getRuleInvocationStack(RuleContext)

Возвращаемый список<строка> имен правил в экземпляре синтаксического анализа, что приводит к вызову текущего правила. Вы можете переопределить, если требуется дополнительные сведения, например сведения о файле или строке, где вызывается правило ATN. Это очень полезно для сообщений об ошибках.

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

Параметры

ctx

RuleContext

Возвращаемое значение

string[]

наследуется от Parser.getRuleInvocationStack

getTokenType(string)

function getTokenType(tokenName: string): number

Параметры

tokenName

string

Возвращаемое значение

number

наследуется от распознавателя.getTokenType

getTokenTypeMap()

Получение карты от имен маркеров к типам маркеров. Используется для компиляции шаблонов XPath и дерева.

function getTokenTypeMap(): ReadonlyMap<string, number>

Возвращаемое значение

ReadonlyMap<string, number>

наследуется от распознавателя.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, если symbol могут следовать текущему состоянию в ATN, в противном случае 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>

наследуется от Распознаватель.removeErrorListener

removeErrorListeners()

function removeErrorListeners()

наследуется от Распознавателя.removeErrorListeners

removeParseListener(ParseTreeListener)

Удалите listener из списка прослушивателей синтаксического анализа. Если listenerundefined или не добавлен в качестве прослушивателя синтаксического анализа, этот метод ничего не делает.

См. #addParseListener

function removeParseListener(listener: ParseTreeListener)

Параметры

listener

ParseTreeListener

прослушиватель для удаления

наследуется от Parser.removeParseListener

removeParseListeners()

Удалите все прослушиватели синтаксического анализа.

См. #addParseListener

function removeParseListeners()

наследуется от Parser.removeParseListeners

reset()

сброс состояния синтаксического анализа

function reset()

наследуется от синтаксического анализа.reset

reset(boolean)

function reset(resetInput: boolean)

Параметры

resetInput

boolean

наследуется от синтаксического анализа.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