Condividi tramite


LGFileParser class

Extends

Parser

Costruttori

LGFileParser(TokenStream)

Proprietà

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

Proprietà ereditate

atn

Ottenere l'oggetto serializedATN usato dal riconoscitore per la stima.

buildParseTree

Tenere traccia degli <xref:ParserRuleContext> oggetti durante l'analisi e associarli usando l'elenco <xref:ParserRuleContext%23children> in modo che formi un albero di analisi. L'oggetto <xref:ParserRuleContext> restituito dalla regola iniziale rappresenta la radice dell'albero di analisi. Si noti che se non si creano alberi di analisi, i contesti delle regole puntano solo verso l'alto. Quando una regola viene chiusa, restituisce il contesto, ma questo viene sottoposto a Garbage Collection se nessuno contiene un riferimento. Punta verso l'alto, ma nessuno punta a esso.

Quando si compilano alberi di analisi, si aggiungono tutti questi contesti all'elenco <xref:ParserRuleContext%23children> . I contesti non sono quindi candidati per l'operazione di Garbage Collection.

context
currentToken

La corrispondenza deve restituire il simbolo di input corrente, che viene inserito nell'etichetta per il riferimento del token associato; ad esempio x=ID.

EOF
errorHandler
inputStream

Impostare il flusso del token e reimpostare il parser.

interpreter

Impostare l'interprete ATN usato dal riconoscitore per la stima.

isMatchedEOF
isTrace

Durante un'analisi è talvolta utile restare in ascolto sugli eventi di ingresso e uscita della regola, nonché sulle corrispondenze di token. Questo è per il debug rapido e dirty.

numberOfSyntaxErrors

Ottiene il numero di errori di sintassi segnalati durante l'analisi. Questo valore viene incrementato ogni volta <xref:%23notifyErrorListeners> che viene chiamato .

Vedere #notifyErrorListeners

parseInfo
precedence

Ottenere il livello di precedenza per la regola di precedenza più alta.

ruleContext
sourceName
state

Indicare che lo stato interno del riconoscitore è stato modificato coerente con lo stato ATN passato. In questo modo si sa sempre dove ci si trova nell'ATN mentre il parser va avanti. Gli oggetti contesto regola formano uno stack che consente di visualizzare lo stack di regole di chiamata. Combinare questa operazione e sono disponibili informazioni di configurazione ATN complete.

tokenFactory

Metodi

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

Metodi ereditati

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

listener Registra per ricevere eventi durante il processo di analisi. Per supportare trasformazioni grammaticali che conservano l'output (incluse, ma non solo, la rimozione della ricorsione a sinistra, il factoring a sinistra automatizzato e la generazione di codice ottimizzata), le chiamate ai metodi del listener durante l'analisi possono differire sostanzialmente dalle chiamate effettuate dopo <xref:ParseTreeWalker%23DEFAULT> il completamento dell'analisi. In particolare, gli eventi di ingresso e uscita delle regole possono verificarsi in un ordine diverso durante l'analisi rispetto al parser. Inoltre, le chiamate a determinati metodi di immissione delle regole possono essere omesse.

Con le eccezioni specifiche seguenti, le chiamate agli eventi del listener sono deterministiche, ad esempio per l'input identico, le chiamate ai metodi del listener saranno uguali.

  • Le modifiche alla grammatica usata per generare il codice possono modificare il comportamento delle chiamate del listener.
  • Le modifiche alle opzioni della riga di comando passate a ANTLR 4 durante la generazione del parser possono modificare il comportamento delle chiamate del listener.
  • La modifica della versione dello strumento ANTLR usata per generare il parser può modificare il comportamento delle chiamate del listener.
compileParseTreePattern(string, number)

Metodo preferito per ottenere un modello di albero. Di seguito è riportato un esempio di uso:

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)

Uguale a [int)](xref:%23compileParseTreePattern(String%2C) ma specificare un LGFileLexer anziché tentare di dedurrlo da questo parser.

consume()

Utilizzare e restituire il simbolo corrente. Ad esempio, dato l'input seguente con A il simbolo lookahead corrente, questa funzione sposta il cursore su B e restituisce A.

A B
^

Se il parser non è in modalità di ripristino degli errori, il simbolo utilizzato viene aggiunto all'albero di analisi usando <xref:ParserRuleContext%23addChild(TerminalNode)>e <xref:ParseTreeListener%23visitTerminal> viene chiamato su tutti i listener di analisi. Se il parser è in modalità di ripristino degli errori, il simbolo utilizzato viene aggiunto all'albero di analisi usando [Token)](xref:%23createErrorNode(ParserRuleContext%2C) e <xref:ParseTreeListener%23visitErrorNode> viene <xref:ParserRuleContext%23addErrorNode(ErrorNode)> chiamato su qualsiasi listener di analisi.

createErrorNode(ParserRuleContext, Token)

Come creare un nodo di errore, dato un token, associato a un elemento padre. In genere, il nodo di errore da creare non è una funzione dell'elemento padre.

createTerminalNode(ParserRuleContext, Token)

Come creare un nodo foglia del token associato a un elemento padre. In genere, il nodo terminale da creare non è una funzione dell'elemento padre.

dumpDFA()

Per scopi di debug e altri scopi.

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

Viene sempre chiamato dai parser generati al momento dell'immissione di una regola. Il campo <xref:%23_ctx> di accesso ottiene il contesto corrente.

exitRule()
getATNWithBypassAlts()

L'ATN con alternative bypass è costoso da creare in modo da crearlo in modo differire. @ se il parser corrente non implementa la serializedATN proprietà .

getDFAStrings()

Per scopi di debug e altri scopi.

getErrorHeader(RecognitionException)

Che cos'è l'intestazione di errore, in genere informazioni sulla posizione riga/carattere?

getErrorListenerDispatch()
getErrorListeners()
getExpectedTokens()

Calcola il set di simboli di input che potrebbero seguire rispettivamente lo stato e il contesto del parser corrente, come specificato da <xref:%23getState> e <xref:%23getContext>.

Vedere ATN#getExpectedTokens(int, RuleContext)

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

Ottiene l'indice di una regola (ad esempio, RULE_ruleName campo) o -1 se non viene trovato.

getRuleIndexMap()

Ottenere una mappa dai nomi delle regole agli indici delle regole. Usato per la compilazione dei criteri di struttura ad albero e XPath.

getRuleInvocationStack(RuleContext)

Restituisce la stringa> elenco<dei nomi delle regole nell'istanza del parser che conduce a una chiamata alla regola corrente. È possibile eseguire l'override se si desiderano altri dettagli, ad esempio le informazioni sul file o sulla riga della posizione in cui viene richiamata una regola atn. Ciò è molto utile per i messaggi di errore.

getTokenType(string)
getTokenTypeMap()

Ottenere una mappa dai nomi dei token ai tipi di token. Usato per la compilazione dei criteri di struttura ad albero e XPath.

inContext(string)
isExpectedToken(number)

Controlla se è possibile seguire o meno symbol lo stato corrente nell'ATN. Il comportamento di questo metodo è equivalente al seguente, ma viene implementato in modo che il set di follow con distinzione del contesto completo non debba essere costruito in modo esplicito.

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

Trova la corrispondenza tra il simbolo di input corrente e ttype. Se il tipo di simbolo corrisponde <xref:ANTLRErrorStrategy%23reportMatch> e <xref:%23consume> viene chiamato per completare il processo di corrispondenza. Se il tipo di simbolo non corrisponde, <xref:ANTLRErrorStrategy%23recoverInline> viene chiamato sulla strategia di errore corrente per tentare il ripristino. Se <xref:%23getBuildParseTree> è true e l'indice del token del simbolo restituito da <xref:ANTLRErrorStrategy%23recoverInline> è -1, il simbolo viene aggiunto all'albero di analisi chiamando [Token)](xref:%23createErrorNode(ParserRuleContext%2C), quindi <xref:ParserRuleContext%23addErrorNode(ErrorNode)>.

matchWildcard()

Trova la corrispondenza con il simbolo di input corrente come carattere jolly. Se il tipo di simbolo corrisponde (ad esempio, ha un valore maggiore di 0) <xref:ANTLRErrorStrategy%23reportMatch> e <xref:%23consume> viene chiamato per completare il processo di corrispondenza. Se il tipo di simbolo non corrisponde, <xref:ANTLRErrorStrategy%23recoverInline> viene chiamato sulla strategia di errore corrente per tentare il ripristino. Se <xref:%23getBuildParseTree> è true e l'indice del token del simbolo restituito da <xref:ANTLRErrorStrategy%23recoverInline> è -1, il simbolo viene aggiunto all'albero di analisi chiamando [Token)](xref:Parser%23createErrorNode(ParserRuleContext%2C) e quindi <xref:ParserRuleContext%23addErrorNode(ErrorNode)>.

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

Come <xref:%23enterRule> , ma per le regole ricorsive. Impostare il contesto corrente come elemento figlio dell'oggetto localctx in ingresso.

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

Rimuovere listener dall'elenco dei listener di analisi. Se listener è o non è undefined stato aggiunto come listener di analisi, questo metodo non esegue alcuna operazione.

Vedere #addParseListener

removeParseListeners()

Rimuovere tutti i listener di analisi.

Vedere #addParseListener

reset()

reimpostare lo stato del parser

reset(boolean)
sempred(RuleContext | undefined, number, number)
setProfile(boolean)
unrollRecursionContexts(ParserRuleContext)

Dettagli costruttore

LGFileParser(TokenStream)

new LGFileParser(input: TokenStream)

Parametri

input

TokenStream

Dettagli proprietà

COMMENT

public static COMMENT: 3 = 3

Valore della proprietà

3

ESCAPE_CHARACTER

public static ESCAPE_CHARACTER: 11 = 11

Valore della proprietà

11

grammarFileName

string grammarFileName

Valore della proprietà

string

IMPORT

public static IMPORT: 4 = 4

Valore della proprietà

4

INLINE_MULTILINE

public static INLINE_MULTILINE: 6 = 6

Valore della proprietà

6

INVALID_LINE

public static INVALID_LINE: 9 = 9

Valore della proprietà

9

MULTILINE_PREFIX

public static MULTILINE_PREFIX: 7 = 7

Valore della proprietà

7

MULTILINE_SUFFIX

public static MULTILINE_SUFFIX: 10 = 10

Valore della proprietà

10

MULTILINE_TEXT

public static MULTILINE_TEXT: 12 = 12

Valore della proprietà

12

NEWLINE

public static NEWLINE: 1 = 1

Valore della proprietà

1

OPTION

public static OPTION: 2 = 2

Valore della proprietà

2

ruleNames

public static ruleNames: string[] = [
		"file", "paragraph", "commentDefinition", "importDefinition", "optionDefinition", 
		"errorDefinition", "templateDefinition", "templateNameLine", "templateBody", 
		"templateBodyLine",
	]

Valore della proprietà

string[]

ruleNames

string[] ruleNames

Valore della proprietà

string[]

RULE_commentDefinition

public static RULE_commentDefinition: 2 = 2

Valore della proprietà

2

RULE_errorDefinition

public static RULE_errorDefinition: 5 = 5

Valore della proprietà

5

RULE_file

public static RULE_file: 0 = 0

Valore della proprietà

0

RULE_importDefinition

public static RULE_importDefinition: 3 = 3

Valore della proprietà

3

RULE_optionDefinition

public static RULE_optionDefinition: 4 = 4

Valore della proprietà

4

RULE_paragraph

public static RULE_paragraph: 1 = 1

Valore della proprietà

1

RULE_templateBody

public static RULE_templateBody: 8 = 8

Valore della proprietà

8

RULE_templateBodyLine

public static RULE_templateBodyLine: 9 = 9

Valore della proprietà

9

RULE_templateDefinition

public static RULE_templateDefinition: 6 = 6

Valore della proprietà

6

RULE_templateNameLine

public static RULE_templateNameLine: 7 = 7

Valore della proprietà

7

serializedATN

string serializedATN

Valore della proprietà

string

TEMPLATE_BODY

public static TEMPLATE_BODY: 8 = 8

Valore della proprietà

8

TEMPLATE_NAME_LINE

public static TEMPLATE_NAME_LINE: 5 = 5

Valore della proprietà

5

VOCABULARY

public static VOCABULARY: Vocabulary = new VocabularyImpl(LGFileParser._LITERAL_NAMES, LGFileParser._SYMBOLIC_NAMES, [])

Valore della proprietà

Vocabulary

vocabulary

Vocabulary vocabulary

Valore della proprietà

Vocabulary

Dettagli proprietà ereditate

atn

Ottenere l'oggetto serializedATN usato dal riconoscitore per la stima.

atn: ATN

Valore della proprietà

ATN

Ereditato da Recognizer.atn

buildParseTree

Tenere traccia degli <xref:ParserRuleContext> oggetti durante l'analisi e associarli usando l'elenco <xref:ParserRuleContext%23children> in modo che formi un albero di analisi. L'oggetto <xref:ParserRuleContext> restituito dalla regola iniziale rappresenta la radice dell'albero di analisi. Si noti che se non si creano alberi di analisi, i contesti delle regole puntano solo verso l'alto. Quando una regola viene chiusa, restituisce il contesto, ma questo viene sottoposto a Garbage Collection se nessuno contiene un riferimento. Punta verso l'alto, ma nessuno punta a esso.

Quando si compilano alberi di analisi, si aggiungono tutti questi contesti all'elenco <xref:ParserRuleContext%23children> . I contesti non sono quindi candidati per l'operazione di Garbage Collection.

buildParseTree: boolean

Valore della proprietà

boolean

Ereditato da Parser.buildParseTree

context

context: ParserRuleContext

Valore della proprietà

ParserRuleContext

Ereditato da Parser.context

currentToken

La corrispondenza deve restituire il simbolo di input corrente, che viene inserito nell'etichetta per il riferimento del token associato; ad esempio x=ID.

currentToken: Token

Valore della proprietà

Token

Ereditato da Parser.currentToken

EOF

static EOF: number

Valore della proprietà

number

Ereditato da Recognizer.EOF

errorHandler

errorHandler: ANTLRErrorStrategy

Valore della proprietà

ANTLRErrorStrategy

Ereditato da Parser.errorHandler

inputStream

Impostare il flusso del token e reimpostare il parser.

inputStream: TokenStream

Valore della proprietà

TokenStream

Ereditato da Parser.inputStream

interpreter

Impostare l'interprete ATN usato dal riconoscitore per la stima.

interpreter: ParserATNSimulator

Valore della proprietà

ParserATNSimulator

Ereditato da Recognizer.interpreter

isMatchedEOF

isMatchedEOF: boolean

Valore della proprietà

boolean

Ereditato da Parser.isMatchedEOF

isTrace

Durante un'analisi è talvolta utile restare in ascolto sugli eventi di ingresso e uscita della regola, nonché sulle corrispondenze di token. Questo è per il debug rapido e dirty.

isTrace: boolean

Valore della proprietà

boolean

Ereditato da Parser.isTrace

numberOfSyntaxErrors

Ottiene il numero di errori di sintassi segnalati durante l'analisi. Questo valore viene incrementato ogni volta <xref:%23notifyErrorListeners> che viene chiamato .

Vedere #notifyErrorListeners

numberOfSyntaxErrors: number

Valore della proprietà

number

Ereditato da Parser.numberOfSyntaxErrors

parseInfo

parseInfo: Promise<ParseInfo | undefined>

Valore della proprietà

Promise<ParseInfo | undefined>

Ereditato da Parser.parseInfo

precedence

Ottenere il livello di precedenza per la regola di precedenza più alta.

precedence: number

Valore della proprietà

number

Ereditato da Parser.precedence

ruleContext

ruleContext: ParserRuleContext

Valore della proprietà

ParserRuleContext

Ereditato da Parser.ruleContext

sourceName

sourceName: string

Valore della proprietà

string

Ereditato da Parser.sourceName

state

Indicare che lo stato interno del riconoscitore è stato modificato coerente con lo stato ATN passato. In questo modo si sa sempre dove ci si trova nell'ATN mentre il parser va avanti. Gli oggetti contesto regola formano uno stack che consente di visualizzare lo stack di regole di chiamata. Combinare questa operazione e sono disponibili informazioni di configurazione ATN complete.

state: number

Valore della proprietà

number

Ereditato da Recognizer.state

tokenFactory

tokenFactory: TokenFactory

Valore della proprietà

TokenFactory

Ereditato da Parser.tokenFactory

Dettagli metodo

commentDefinition()

function commentDefinition(): CommentDefinitionContext

Restituisce

errorDefinition()

function errorDefinition(): ErrorDefinitionContext

Restituisce

file()

function file(): FileContext

Restituisce

importDefinition()

function importDefinition(): ImportDefinitionContext

Restituisce

optionDefinition()

function optionDefinition(): OptionDefinitionContext

Restituisce

paragraph()

function paragraph(): ParagraphContext

Restituisce

templateBody()

function templateBody(): TemplateBodyContext

Restituisce

templateBodyLine()

function templateBodyLine(): TemplateBodyLineContext

Restituisce

templateDefinition()

function templateDefinition(): TemplateDefinitionContext

Restituisce

templateNameLine()

function templateNameLine(): TemplateNameLineContext

Restituisce

Dettagli dei metodi ereditati

action(RuleContext | undefined, number, number)

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

Parametri

_localctx

RuleContext | undefined

ruleIndex

number

actionIndex

number

Ereditato da Recognizer.action

addErrorListener(ANTLRErrorListener<Token>)

function addErrorListener(listener: ANTLRErrorListener<Token>)

Parametri

listener

ANTLRErrorListener<Token>

Ereditato da Recognizer.addErrorListener

addParseListener(ParseTreeListener)

listener Registra per ricevere eventi durante il processo di analisi. Per supportare trasformazioni grammaticali che conservano l'output (incluse, ma non solo, la rimozione della ricorsione a sinistra, il factoring a sinistra automatizzato e la generazione di codice ottimizzata), le chiamate ai metodi del listener durante l'analisi possono differire sostanzialmente dalle chiamate effettuate dopo <xref:ParseTreeWalker%23DEFAULT> il completamento dell'analisi. In particolare, gli eventi di ingresso e uscita delle regole possono verificarsi in un ordine diverso durante l'analisi rispetto al parser. Inoltre, le chiamate a determinati metodi di immissione delle regole possono essere omesse.

Con le eccezioni specifiche seguenti, le chiamate agli eventi del listener sono deterministiche, ad esempio per l'input identico, le chiamate ai metodi del listener saranno uguali.

  • Le modifiche alla grammatica usata per generare il codice possono modificare il comportamento delle chiamate del listener.
  • Le modifiche alle opzioni della riga di comando passate a ANTLR 4 durante la generazione del parser possono modificare il comportamento delle chiamate del listener.
  • La modifica della versione dello strumento ANTLR usata per generare il parser può modificare il comportamento delle chiamate del listener.
function addParseListener(listener: ParseTreeListener)

Parametri

listener

ParseTreeListener

listener da aggiungere

Ereditato da Parser.addParseListener

compileParseTreePattern(string, number)

Metodo preferito per ottenere un modello di albero. Di seguito è riportato un esempio di uso:

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>

Parametri

pattern

string

patternRuleIndex

number

Restituisce

Promise<ParseTreePattern>

Ereditato da Parser.compileParseTreePattern

compileParseTreePattern(string, number, Lexer)

Uguale a [int)](xref:%23compileParseTreePattern(String%2C) ma specificare un LGFileLexer anziché tentare di dedurrlo da questo parser.

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

Parametri

pattern

string

patternRuleIndex

number

lexer

Lexer

Restituisce

Promise<ParseTreePattern>

Ereditato da Parser.compileParseTreePattern

consume()

Utilizzare e restituire il simbolo corrente. Ad esempio, dato l'input seguente con A il simbolo lookahead corrente, questa funzione sposta il cursore su B e restituisce A.

A B
^

Se il parser non è in modalità di ripristino degli errori, il simbolo utilizzato viene aggiunto all'albero di analisi usando <xref:ParserRuleContext%23addChild(TerminalNode)>e <xref:ParseTreeListener%23visitTerminal> viene chiamato su tutti i listener di analisi. Se il parser è in modalità di ripristino degli errori, il simbolo utilizzato viene aggiunto all'albero di analisi usando [Token)](xref:%23createErrorNode(ParserRuleContext%2C) e <xref:ParseTreeListener%23visitErrorNode> viene <xref:ParserRuleContext%23addErrorNode(ErrorNode)> chiamato su qualsiasi listener di analisi.

function consume(): Token

Restituisce

Token

Ereditato da Parser.consume

createErrorNode(ParserRuleContext, Token)

Come creare un nodo di errore, dato un token, associato a un elemento padre. In genere, il nodo di errore da creare non è una funzione dell'elemento padre.

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

Parametri

parent

ParserRuleContext

t

Token

Restituisce

ErrorNode

Ereditato da Parser.createErrorNode

createTerminalNode(ParserRuleContext, Token)

Come creare un nodo foglia del token associato a un elemento padre. In genere, il nodo terminale da creare non è una funzione dell'elemento padre.

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

Parametri

parent

ParserRuleContext

t

Token

Restituisce

TerminalNode

Ereditato da Parser.createTerminalNode

dumpDFA()

Per scopi di debug e altri scopi.

function dumpDFA()

Ereditato da Parser.dumpDFA

enterLeftFactoredRule(ParserRuleContext, number, number)

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

Parametri

localctx

ParserRuleContext

state

number

ruleIndex

number

Ereditato da Parser.enterLeftFactoredRule

enterOuterAlt(ParserRuleContext, number)

function enterOuterAlt(localctx: ParserRuleContext, altNum: number)

Parametri

localctx

ParserRuleContext

altNum

number

Ereditato da Parser.enterOuterAlt

enterRecursionRule(ParserRuleContext, number, number, number)

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

Parametri

localctx

ParserRuleContext

state

number

ruleIndex

number

precedence

number

Ereditato da Parser.enterRecursionRule

enterRule(ParserRuleContext, number, number)

Viene sempre chiamato dai parser generati al momento dell'immissione di una regola. Il campo <xref:%23_ctx> di accesso ottiene il contesto corrente.

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

Parametri

localctx

ParserRuleContext

state

number

ruleIndex

number

Ereditato da Parser.enterRule

exitRule()

function exitRule()

Ereditato da Parser.exitRule

getATNWithBypassAlts()

L'ATN con alternative bypass è costoso da creare in modo da crearlo in modo differire. @ se il parser corrente non implementa la serializedATN proprietà .

function getATNWithBypassAlts(): ATN

Restituisce

ATN

Ereditato da Parser.getATNWithBypassAlts

getDFAStrings()

Per scopi di debug e altri scopi.

function getDFAStrings(): string[]

Restituisce

string[]

Ereditato da Parser.getDFAStrings

getErrorHeader(RecognitionException)

Che cos'è l'intestazione di errore, in genere informazioni sulla posizione riga/carattere?

function getErrorHeader(e: RecognitionException): string

Parametri

e

RecognitionException

Restituisce

string

Ereditato da Recognizer.getErrorHeader

getErrorListenerDispatch()

function getErrorListenerDispatch(): ParserErrorListener

Restituisce

ParserErrorListener

Ereditato da Parser.getErrorListenerDispatch

getErrorListeners()

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

Restituisce

Array<ANTLRErrorListener<Token>>

Ereditato da Recognizer.getErrorListeners

getExpectedTokens()

Calcola il set di simboli di input che potrebbero seguire rispettivamente lo stato e il contesto del parser corrente, come specificato da <xref:%23getState> e <xref:%23getContext>.

Vedere ATN#getExpectedTokens(int, RuleContext)

function getExpectedTokens(): IntervalSet

Restituisce

IntervalSet

Ereditato da Parser.getExpectedTokens

getExpectedTokensWithinCurrentRule()

function getExpectedTokensWithinCurrentRule(): IntervalSet

Restituisce

IntervalSet

Ereditato da Parser.getExpectedTokensWithinCurrentRule

getInvokingContext(number)

function getInvokingContext(ruleIndex: number): ParserRuleContext | undefined

Parametri

ruleIndex

number

Restituisce

ParserRuleContext | undefined

Ereditato da Parser.getInvokingContext

getParseListeners()

function getParseListeners(): ParseTreeListener[]

Restituisce

ParseTreeListener[]

Ereditato da Parser.getParseListeners

getRuleIndex(string)

Ottiene l'indice di una regola (ad esempio, RULE_ruleName campo) o -1 se non viene trovato.

function getRuleIndex(ruleName: string): number

Parametri

ruleName

string

Restituisce

number

Ereditato da Parser.getRuleIndex

getRuleIndexMap()

Ottenere una mappa dai nomi delle regole agli indici delle regole. Usato per la compilazione dei criteri di struttura ad albero e XPath.

function getRuleIndexMap(): ReadonlyMap<string, number>

Restituisce

ReadonlyMap<string, number>

Ereditato da Recognizer.getRuleIndexMap

getRuleInvocationStack(RuleContext)

Restituisce la stringa> elenco<dei nomi delle regole nell'istanza del parser che conduce a una chiamata alla regola corrente. È possibile eseguire l'override se si desiderano altri dettagli, ad esempio le informazioni sul file o sulla riga della posizione in cui viene richiamata una regola atn. Ciò è molto utile per i messaggi di errore.

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

Parametri

ctx

RuleContext

Restituisce

string[]

Ereditato da Parser.getRuleInvocationStack

getTokenType(string)

function getTokenType(tokenName: string): number

Parametri

tokenName

string

Restituisce

number

Ereditato da Recognizer.getTokenType

getTokenTypeMap()

Ottenere una mappa dai nomi dei token ai tipi di token. Usato per la compilazione dei criteri di struttura ad albero e XPath.

function getTokenTypeMap(): ReadonlyMap<string, number>

Restituisce

ReadonlyMap<string, number>

Ereditato da Recognizer.getTokenTypeMap

inContext(string)

function inContext(context: string): boolean

Parametri

context

string

Restituisce

boolean

Ereditato da Parser.inContext

isExpectedToken(number)

Controlla se è possibile seguire o meno symbol lo stato corrente nell'ATN. Il comportamento di questo metodo è equivalente al seguente, ma viene implementato in modo che il set di follow con distinzione del contesto completo non debba essere costruito in modo esplicito.

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

Parametri

symbol

number

tipo di simbolo da controllare

Restituisce

boolean

true se symbol può seguire lo stato corrente nell'ATN; in caso contrario false, .

Ereditato da Parser.isExpectedToken

match(number)

Trova la corrispondenza tra il simbolo di input corrente e ttype. Se il tipo di simbolo corrisponde <xref:ANTLRErrorStrategy%23reportMatch> e <xref:%23consume> viene chiamato per completare il processo di corrispondenza. Se il tipo di simbolo non corrisponde, <xref:ANTLRErrorStrategy%23recoverInline> viene chiamato sulla strategia di errore corrente per tentare il ripristino. Se <xref:%23getBuildParseTree> è true e l'indice del token del simbolo restituito da <xref:ANTLRErrorStrategy%23recoverInline> è -1, il simbolo viene aggiunto all'albero di analisi chiamando [Token)](xref:%23createErrorNode(ParserRuleContext%2C), quindi <xref:ParserRuleContext%23addErrorNode(ErrorNode)>.

function match(ttype: number): Token

Parametri

ttype

number

tipo di token da trovare

Restituisce

Token

simbolo corrispondente @ se il simbolo di input corrente non corrisponde ttype e la strategia di errore non è riuscita a recuperare dal simbolo non corrispondente

Ereditato da Parser.match

matchWildcard()

Trova la corrispondenza con il simbolo di input corrente come carattere jolly. Se il tipo di simbolo corrisponde (ad esempio, ha un valore maggiore di 0) <xref:ANTLRErrorStrategy%23reportMatch> e <xref:%23consume> viene chiamato per completare il processo di corrispondenza. Se il tipo di simbolo non corrisponde, <xref:ANTLRErrorStrategy%23recoverInline> viene chiamato sulla strategia di errore corrente per tentare il ripristino. Se <xref:%23getBuildParseTree> è true e l'indice del token del simbolo restituito da <xref:ANTLRErrorStrategy%23recoverInline> è -1, il simbolo viene aggiunto all'albero di analisi chiamando [Token)](xref:Parser%23createErrorNode(ParserRuleContext%2C) e quindi <xref:ParserRuleContext%23addErrorNode(ErrorNode)>.

function matchWildcard(): Token

Restituisce

Token

simbolo corrispondente @ se il simbolo di input corrente non corrisponde a un carattere jolly e la strategia di errore non è riuscita a recuperare dal simbolo non corrispondente

Ereditato da Parser.matchWildcard

notifyErrorListeners(string)

function notifyErrorListeners(msg: string)

Parametri

msg

string

Ereditato da Parser.notifyErrorListeners

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

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

Parametri

msg

string

offendingToken

Token | null

e

RecognitionException | undefined

Ereditato da Parser.notifyErrorListeners

precpred(RuleContext, number)

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

Parametri

localctx

RuleContext

precedence

number

Restituisce

boolean

Ereditato da Parser.precpred

pushNewRecursionContext(ParserRuleContext, number, number)

Come <xref:%23enterRule> , ma per le regole ricorsive. Impostare il contesto corrente come elemento figlio dell'oggetto localctx in ingresso.

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

Parametri

localctx

ParserRuleContext

state

number

ruleIndex

number

Ereditato da Parser.pushNewRecursionContext

removeErrorListener(ANTLRErrorListener<Token>)

function removeErrorListener(listener: ANTLRErrorListener<Token>)

Parametri

listener

ANTLRErrorListener<Token>

Ereditato da Recognizer.removeErrorListener

removeErrorListeners()

function removeErrorListeners()

Ereditato da Recognizer.removeErrorListeners

removeParseListener(ParseTreeListener)

Rimuovere listener dall'elenco dei listener di analisi. Se listener è o non è undefined stato aggiunto come listener di analisi, questo metodo non esegue alcuna operazione.

Vedere #addParseListener

function removeParseListener(listener: ParseTreeListener)

Parametri

listener

ParseTreeListener

listener da rimuovere

Ereditato da Parser.removeParseListener

removeParseListeners()

Rimuovere tutti i listener di analisi.

Vedere #addParseListener

function removeParseListeners()

Ereditato da Parser.removeParseListeners

reset()

reimpostare lo stato del parser

function reset()

Ereditato da Parser.reset

reset(boolean)

function reset(resetInput: boolean)

Parametri

resetInput

boolean

Ereditato da Parser.reset

sempred(RuleContext | undefined, number, number)

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

Parametri

_localctx

RuleContext | undefined

ruleIndex

number

actionIndex

number

Restituisce

boolean

Ereditato da Recognizer.sempred

setProfile(boolean)

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

Parametri

profile

boolean

Restituisce

Promise<void>

Ereditato da Parser.setProfile

unrollRecursionContexts(ParserRuleContext)

function unrollRecursionContexts(_parentctx: ParserRuleContext)

Parametri

_parentctx

ParserRuleContext

Ereditato da Parser.unrollRecursionContexts