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


LGFileParser class

Extends

Parser

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

LGFileParser(TokenStream)

Свойства

COMMENT
ESCAPE_CHARACTER
grammarFileName
IMPORT
INLINE_MULTILINE
INVALID_LINE
MULTILINE_PREFIX
MULTILINE_SUFFIX
MULTILINE_TEXT
NEWLINE
OPTION
ruleNames
ruleNames
RULE_commentDefinition
RULE_errorDefinition
RULE_file
RULE_importDefinition
RULE_optionDefinition
RULE_paragraph
RULE_templateBody
RULE_templateBodyLine
RULE_templateDefinition
RULE_templateNameLine
serializedATN
TEMPLATE_BODY
TEMPLATE_NAME_LINE
VOCABULARY
vocabulary

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

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

Методы

commentDefinition()
errorDefinition()
file()
importDefinition()
optionDefinition()
paragraph()
templateBody()
templateBodyLine()
templateDefinition()
templateNameLine()

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

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

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)
sempred(RuleContext | undefined, number, number)
setProfile(boolean)
unrollRecursionContexts(ParserRuleContext)

Сведения о конструкторе

LGFileParser(TokenStream)

new LGFileParser(input: TokenStream)

Параметры

input

TokenStream

Сведения о свойстве

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

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[] = [
		"file", "paragraph", "commentDefinition", "importDefinition", "optionDefinition", 
		"errorDefinition", "templateDefinition", "templateNameLine", "templateBody", 
		"templateBodyLine",
	]

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

string[]

ruleNames

string[] ruleNames

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

string[]

RULE_commentDefinition

public static RULE_commentDefinition: 2 = 2

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

2

RULE_errorDefinition

public static RULE_errorDefinition: 5 = 5

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

5

RULE_file

public static RULE_file: 0 = 0

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

0

RULE_importDefinition

public static RULE_importDefinition: 3 = 3

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

3

RULE_optionDefinition

public static RULE_optionDefinition: 4 = 4

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

4

RULE_paragraph

public static RULE_paragraph: 1 = 1

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

1

RULE_templateBody

public static RULE_templateBody: 8 = 8

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

8

RULE_templateBodyLine

public static RULE_templateBodyLine: 9 = 9

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

9

RULE_templateDefinition

public static RULE_templateDefinition: 6 = 6

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

6

RULE_templateNameLine

public static RULE_templateNameLine: 7 = 7

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

7

serializedATN

string serializedATN

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

string

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(LGFileParser._LITERAL_NAMES, LGFileParser._SYMBOLIC_NAMES, [])

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

Vocabulary

vocabulary

Vocabulary vocabulary

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

Vocabulary

Сведения об унаследованном свойстве

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

Сведения о методе

commentDefinition()

function commentDefinition(): CommentDefinitionContext

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

errorDefinition()

function errorDefinition(): ErrorDefinitionContext

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

file()

function file(): FileContext

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

importDefinition()

function importDefinition(): ImportDefinitionContext

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

optionDefinition()

function optionDefinition(): OptionDefinitionContext

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

paragraph()

function paragraph(): ParagraphContext

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

templateBody()

function templateBody(): TemplateBodyContext

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

templateBodyLine()

function templateBodyLine(): TemplateBodyLineContext

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

templateDefinition()

function templateDefinition(): TemplateDefinitionContext

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

templateNameLine()

function templateNameLine(): TemplateNameLineContext

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

Сведения о наследуемом методе

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

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

sempred(RuleContext | undefined, number, number)

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

Параметры

_localctx

RuleContext | undefined

ruleIndex

number

actionIndex

number

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

boolean

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

setProfile(boolean)

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

Параметры

profile

boolean

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

Promise<void>

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

unrollRecursionContexts(ParserRuleContext)

function unrollRecursionContexts(_parentctx: ParserRuleContext)

Параметры

_parentctx

ParserRuleContext

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