LGFileParser class
- Extends
-
Parser
Конструкторы
LGFile |
Свойства
Унаследованные свойства
atn | Получение serializedATN, используемой распознавательом для прогнозирования. |
build |
Отслеживайте объекты <xref:ParserRuleContext> во время синтаксического анализа и подключите их с помощью списка <xref:ParserRuleContext%23children>, чтобы он формирует дерево синтаксического анализа. <xref:ParserRuleContext>, возвращенный из правила запуска, представляет корень дерева синтаксического анализа. Обратите внимание, что если мы не создадим деревья синтаксического анализа, контексты правил только указывают вверх. Когда правило завершает работу, он возвращает контекст, но получает мусор, собранный, если никто не содержит ссылку. Он указывает вверх, но никто не указывает на него. При сборке деревьев синтаксического анализа мы добавляем все эти контексты в список <xref:ParserRuleContext%23children>. Контексты затем не являются кандидатами для сборки мусора. |
context | |
current |
Совпадение должно возвращать текущий входной символ, который помещается в метку для связанного маркера ref; Например, x=ID. |
EOF | |
error |
|
input |
Задайте поток маркера и сбросьте средство синтаксического анализа. |
interpreter | Задайте интерпретатор ATN, используемый распознавательом для прогнозирования. |
is |
|
is |
Во время синтаксического анализа иногда полезно прослушивать события входа и выхода правила, а также совпадения маркеров. Это для быстрой и грязной отладки. |
number |
Возвращает количество ошибок синтаксиса, сообщаемых во время синтаксического анализа. Это значение увеличивается при каждом вызове <xref:%23notifyErrorListeners>. См. #notifyErrorListeners |
parse |
|
precedence | Получите уровень приоритета для правила приоритета верхнего уровня. |
rule |
|
source |
|
state | Укажите, что распознаватель изменил внутреннее состояние, которое соответствует состоянию ATN, переданном в. Таким образом, мы всегда знаем, где мы в ATN, как синтаксический анализатор идет вместе. Объекты контекста правила образуют стек, который позволяет увидеть стек вызовов правил. Объедините это, и у нас есть полные сведения о конфигурации ATN. |
token |
Методы
comment |
|
error |
|
file() | |
import |
|
option |
|
paragraph() | |
template |
|
template |
|
template |
|
template |
Наследуемые методы
action(Rule |
|
add |
|
add |
Регистрирует При следующих конкретных исключениях вызовы событий прослушивателя детерминированными, т. е. для идентичных входных данных вызовы методов прослушивателя будут одинаковыми.
|
compile |
Предпочтительный метод получения шаблона дерева. Например, вот пример использования:
|
compile |
То же, что и [int)](xref:%23compileParseTreePattern(строка%2C) но укажите LGFileLexer вместо попытки вывести его из этого средства синтаксического анализа. |
consume() | Потреблять и возвращать текущий символ.
Например, учитывая следующие входные данные с
Если средство синтаксического анализа не находится в режиме восстановления ошибок, используемый символ добавляется в дерево синтаксического анализа с помощью <xref:ParserRuleContext%23addChild(TerminalNode)>, а <xref:ParseTreeListener%23visitTerminal> вызывается для всех прослушивателей синтаксического анализа. Если средство синтаксического анализа в режиме восстановления ошибок, используемый символ добавляется в дерево синтаксического анализа с помощью [Token)](xref:%23createErrorNode(ParserRuleContext%2C), то <xref:ParserRuleContext%23addErrorNode(ErrorNode)> и <xref:ParseTreeListener%23visitErrorNode> вызывается для любого прослушивателя синтаксического анализа. |
create |
Создание узла ошибки, заданного маркером, связанного с родительским элементом. Как правило, создаваемый узел ошибки не является функцией родительского элемента. |
create |
Создание конечного узла маркера, связанного с родительским элементом. Как правило, создаваемый узел терминала не является функцией родительского элемента. |
dumpDFA() | Для отладки и других целей. |
enter |
|
enter |
|
enter |
|
enter |
Всегда вызывается созданными средствами синтаксического анализа при входе в правило. Поле доступа <xref:%23_ctx> получить текущий контекст. |
exit |
|
get |
ATN с альтернативами обхода является дорогостоящим для создания, поэтому мы создадим его лениво.
@ , если текущий синтаксический анализ не реализует свойство |
get |
Для отладки и других целей. |
get |
Что такое заголовок ошибки, как правило, сведения о позиции строки или символа? |
get |
|
get |
|
get |
Вычисляет набор входных символов, которые могут следовать текущему состоянию и контексту синтаксического анализа, как указано в <xref:%23getState> и <xref:%23getContext>соответственно. См. atN#getExpectedTokens(int, RuleContext) |
get |
|
get |
|
get |
|
get |
Получите индекс правила (например, поле |
get |
Получение карты из имен правил в индексы правил. Используется для компиляции шаблонов XPath и дерева. |
get |
Возвращаемый список<строка> имен правил в экземпляре синтаксического анализа, что приводит к вызову текущего правила. Вы можете переопределить, если требуется дополнительные сведения, например сведения о файле или строке, где вызывается правило ATN. Это очень полезно для сообщений об ошибках. |
get |
|
get |
Получение карты от имен маркеров к типам маркеров. Используется для компиляции шаблонов XPath и дерева. |
in |
|
is |
Проверяет, может ли
|
match(number) | Сопоставление текущего входного символа с |
match |
Сопоставлять текущий входной символ как подстановочный знак. Если тип символа совпадает (т. е. имеет значение больше 0), <xref:ANTLRErrorStrategy%23reportMatch> и <xref:%23consume> вызываются для завершения процесса сопоставления.
Если тип символа не соответствует, <xref:ANTLRErrorStrategy%23recoverInline> вызывается в текущей стратегии ошибок для попытки восстановления. Если <xref:%23getBuildParseTree> |
notify |
|
notify |
|
precpred(Rule |
|
push |
Как и <xref:%23enterRule>, но для рекурсивных правил. Сделайте текущий контекст дочерним элементом входящего localctx. |
remove |
|
remove |
|
remove |
Удалите См. #addParseListener |
remove |
Удалите все прослушиватели синтаксического анализа. См. #addParseListener |
reset() | сброс состояния синтаксического анализа |
reset(boolean) | |
sempred(Rule |
|
set |
|
unroll |
Сведения о конструкторе
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()
file()
importDefinition()
optionDefinition()
paragraph()
templateBody()
templateBodyLine()
templateDefinition()
function templateDefinition(): TemplateDefinitionContext
Возвращаемое значение
templateNameLine()
Сведения о наследуемом методе
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
из списка прослушивателей синтаксического анализа.
Если listener
undefined
или не добавлен в качестве прослушивателя синтаксического анализа, этот метод ничего не делает.
См. #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