Freigeben über


Cc_atomContext class

Extends

ParserRuleContext

Konstruktoren

Cc_atomContext(ParserRuleContext | undefined, number)

Eigenschaften

ruleIndex

Geerbte Eigenschaften

altNumber

Legen Sie die äußere alternative Nummer für diesen Kontextknoten fest. Die Standardimplementierung verhindert den Hintergrundfeldaufwand für Bäume, die sie nicht benötigen. Erstellen Sie eine Unterklasse von ParserRuleContext mit Sicherungsfeld und Festlegen von OptionskontextSuperClass. @since 4.5.3

childCount
children

Wenn wir einen Analysebaum für einen Besucher debuggen oder erstellen, müssen wir alle Token und Regelaufrufe nachverfolgen, die dem Kontext dieser Regel zugeordnet sind. Dies ist für die Analyse w/o-Strukturkonstr leer. operation because we don't the need to track the details about how we parse this rule.

exception

Die Ausnahme, die diese Regel zum Zurückgeben gezwungen hat. Wenn die Regel erfolgreich abgeschlossen wurde, ist dies undefined.

invokingState
isEmpty

Ein Kontext ist leer, wenn kein Aufrufzustand vorhanden ist; d. h., niemand hat den aktuellen Kontext genannt.

parent
payload
ruleContext
sourceInterval
start

Rufen Sie das anfängliche Token in diesem Kontext ab. Beachten Sie, dass der Bereich von Anfang bis Ende inklusive ist, sodass für Regeln, die nichts verbrauchen (z. B. Nulllänge oder Fehlerproduktionen), dieses Token möglicherweise den Stopp überschreitet.

stop

Rufen Sie das endgültige Token in diesem Kontext ab. Beachten Sie, dass der Bereich von Anfang bis Ende inklusive ist, sodass für Regeln, die nichts verbrauchen (z. B. Nulllänge oder Fehlerproduktionen), dieses Token vor dem Start stehen kann.

text

Gibt den kombinierten Text aller untergeordneten Knoten zurück. Diese Methode berücksichtigt nur Token, die der Analysestruktur hinzugefügt wurden. Da Token für ausgeblendete Kanäle (z. B. Leerzeichen oder Kommentare) nicht zu den Analysestrukturen hinzugefügt werden, werden sie nicht in der Ausgabe dieser Methode angezeigt.

Methoden

accept<Result>(CommonRegexVisitor<Result>)
cc_literal()
cc_literal(number)
enterRule(CommonRegexListener)
exitRule(CommonRegexListener)
Hyphen()
shared_atom()

Geerbte Methoden

addAnyChild<T>(T)

Fügen Sie diesem Als untergeordneten Knoten einen Analysestrukturknoten hinzu. Funktioniert für interne und Blattknoten. Legt keine übergeordnete Verknüpfung fest; Andere Add-Methoden müssen dies tun. Andere addChild-Methoden rufen dies auf. Wir können den übergeordneten Zeiger des eingehenden Knotens nicht festlegen, da die vorhandenen Schnittstellen keine setParent()-Methode haben und ich die Abwärtskompatibilität dafür nicht unterbrechen möchte.

@since 4.7

addChild(RuleContext)
addChild(TerminalNode)

Fügen Sie einen untergeordneten Tokenblattknoten hinzu, und erzwingen Sie, dass das übergeordnete Element dieser Knoten ist.

addChild(Token)

Fügen Sie diesem Knoten basierend auf matchedToken ein untergeordnetes Element hinzu. Es erstellt ein TerminalNodeImpl anstelle von [Token)](xref:Parser%23createTerminalNode(ParserRuleContext%2C). Ich belassen dies aus Gründen der Kompatibilität, aber der Parser verwendet dies nicht mehr.

addErrorNode(ErrorNode)

Fügen Sie einen untergeordneten Fehlerknoten hinzu, und erzwingen Sie, dass das übergeordnete Element dieser Knoten ist.

addErrorNode(Token)

Fügen Sie diesem Knoten basierend auf badToken ein untergeordnetes Element hinzu. Es erstellt einen ErrorNode anstelle von [Token)](xref:Parser%23createErrorNode(ParserRuleContext%2C). Ich belassen dies aus Gründen der Kompatibilität, aber der Parser verwendet dies nicht mehr.

copyFrom(ParserRuleContext)

COPY a ctx (I'm absichtlich not using copy constructor) to avoid confusion with creating node with parent. Kopiert untergeordnete Elemente nicht (mit Ausnahme von Fehlern). Dies wird im generierten Parsercode verwendet, um einen generischen XContext-Knoten für Regel X in einen YContext für Altbeschriftung Y zu kippen. In diesem Sinne ist es nicht wirklich eine generische Kopierfunktion.

Wenn wir zu Beginn einer Regel eine Fehlersynchronisierung() ausführen, fügen wir möglicherweise Fehlerknoten zum generischen XContext hinzu, sodass diese Funktion diese Knoten auch in den YContext kopieren muss, sonst gehen sie verloren!

depth()
emptyContext()
getChild(number)
getChild<T>(number, { })
getChildContext(RuleContext, number)
getRuleContext<T>(number, { })
getRuleContexts<T>({ })
getToken(number, number)
getTokens(number)
removeLastChild()

Wird von enterOuterAlt verwendet, um einen RuleContext auszuprobieren, der zuvor hinzugefügt wurde, als wir eine Regel eingegeben haben. Wenn wir #-Bezeichnung haben, müssen wir generisches ruleContext-Objekt entfernen.

setParent(RuleContext)
toInfoString(Parser)

Wird für das Debuggen von Regelkontextinformationen während der Analysezeit verwendet, nicht so viel für das ATN-Debugging

toString()
toString(Recognizer<any, any> | undefined)
toString(Recognizer<any, any> | undefined, RuleContext | undefined)
toString(string[] | undefined)
toString(string[] | undefined, RuleContext | undefined)
toStringTree()
toStringTree(Parser)

Drucken Sie eine ganze Struktur aus, nicht nur einen Knoten im LISP-Format (stamm child1 .. childN). Drucken Sie nur einen Knoten, wenn es sich um ein Blatt handelt. Wir müssen die Erkennung kennen, damit wir Regelnamen abrufen können.

toStringTree(string[] | undefined)

Drucken Sie eine ganze Struktur aus, nicht nur einen Knoten im LISP-Format (stamm child1 .. childN). Drucken Sie nur einen Knoten, wenn es sich um ein Blatt handelt.

tryGetChild<T>(number, { })
tryGetRuleContext<T>(number, { })
tryGetToken(number, number)

Details zum Konstruktor

Cc_atomContext(ParserRuleContext | undefined, number)

new Cc_atomContext(parent: ParserRuleContext | undefined, invokingState: number)

Parameter

parent

ParserRuleContext | undefined

invokingState

number

Details zur Eigenschaft

ruleIndex

number ruleIndex

Eigenschaftswert

number

Geerbte Eigenschaftsdetails

altNumber

Legen Sie die äußere alternative Nummer für diesen Kontextknoten fest. Die Standardimplementierung verhindert den Hintergrundfeldaufwand für Bäume, die sie nicht benötigen. Erstellen Sie eine Unterklasse von ParserRuleContext mit Sicherungsfeld und Festlegen von OptionskontextSuperClass. @since 4.5.3

altNumber: number

Eigenschaftswert

number

von RuleContext.altNumber geerbt

childCount

childCount: number

Eigenschaftswert

number

geerbt von ParserRuleContext.childCount

children

Wenn wir einen Analysebaum für einen Besucher debuggen oder erstellen, müssen wir alle Token und Regelaufrufe nachverfolgen, die dem Kontext dieser Regel zugeordnet sind. Dies ist für die Analyse w/o-Strukturkonstr leer. operation because we don't the need to track the details about how we parse this rule.

children?: ParseTree[]

Eigenschaftswert

ParseTree[]

von ParserRuleContext.children geerbt

exception

Die Ausnahme, die diese Regel zum Zurückgeben gezwungen hat. Wenn die Regel erfolgreich abgeschlossen wurde, ist dies undefined.

exception?: RecognitionException

Eigenschaftswert

RecognitionException

Geerbt von ParserRuleContext.exception

invokingState

invokingState: number

Eigenschaftswert

number

von RuleContext.invokingState geerbt

isEmpty

Ein Kontext ist leer, wenn kein Aufrufzustand vorhanden ist; d. h., niemand hat den aktuellen Kontext genannt.

isEmpty: boolean

Eigenschaftswert

boolean

von RuleContext.isEmpty geerbt

parent

parent: ParserRuleContext | undefined

Eigenschaftswert

ParserRuleContext | undefined

geerbt von ParserRuleContext.parent

payload

payload: RuleContext

Eigenschaftswert

RuleContext

Geerbt von RuleContext.payload

ruleContext

ruleContext: this

Eigenschaftswert

this

geerbt von ParserRuleContext.ruleContext

sourceInterval

sourceInterval: Interval

Eigenschaftswert

Interval

geerbt von ParserRuleContext.sourceInterval

start

Rufen Sie das anfängliche Token in diesem Kontext ab. Beachten Sie, dass der Bereich von Anfang bis Ende inklusive ist, sodass für Regeln, die nichts verbrauchen (z. B. Nulllänge oder Fehlerproduktionen), dieses Token möglicherweise den Stopp überschreitet.

start: Token

Eigenschaftswert

Token

von ParserRuleContext.start geerbt

stop

Rufen Sie das endgültige Token in diesem Kontext ab. Beachten Sie, dass der Bereich von Anfang bis Ende inklusive ist, sodass für Regeln, die nichts verbrauchen (z. B. Nulllänge oder Fehlerproduktionen), dieses Token vor dem Start stehen kann.

stop: Token | undefined

Eigenschaftswert

Token | undefined

geerbt von ParserRuleContext.stop

text

Gibt den kombinierten Text aller untergeordneten Knoten zurück. Diese Methode berücksichtigt nur Token, die der Analysestruktur hinzugefügt wurden. Da Token für ausgeblendete Kanäle (z. B. Leerzeichen oder Kommentare) nicht zu den Analysestrukturen hinzugefügt werden, werden sie nicht in der Ausgabe dieser Methode angezeigt.

text: string

Eigenschaftswert

string

von RuleContext.text geerbt

Details zur Methode

accept<Result>(CommonRegexVisitor<Result>)

function accept<Result>(visitor: CommonRegexVisitor<Result>): Result

Parameter

visitor

CommonRegexVisitor<Result>

Gibt zurück

Result

cc_literal()

function cc_literal(): Cc_literalContext[]

Gibt zurück

cc_literal(number)

function cc_literal(i: number): Cc_literalContext

Parameter

i

number

Gibt zurück

enterRule(CommonRegexListener)

function enterRule(listener: CommonRegexListener)

Parameter

exitRule(CommonRegexListener)

function exitRule(listener: CommonRegexListener)

Parameter

Hyphen()

function Hyphen(): TerminalNode | undefined

Gibt zurück

TerminalNode | undefined

shared_atom()

function shared_atom(): Shared_atomContext | undefined

Gibt zurück

Shared_atomContext | undefined

Details zur geerbten Methode

addAnyChild<T>(T)

Fügen Sie diesem Als untergeordneten Knoten einen Analysestrukturknoten hinzu. Funktioniert für interne und Blattknoten. Legt keine übergeordnete Verknüpfung fest; Andere Add-Methoden müssen dies tun. Andere addChild-Methoden rufen dies auf. Wir können den übergeordneten Zeiger des eingehenden Knotens nicht festlegen, da die vorhandenen Schnittstellen keine setParent()-Methode haben und ich die Abwärtskompatibilität dafür nicht unterbrechen möchte.

@since 4.7

function addAnyChild<T>(t: T): T

Parameter

t

T

Gibt zurück

T

Von ParserRuleContext.addAnyChild geerbt

addChild(RuleContext)

function addChild(ruleInvocation: RuleContext)

Parameter

ruleInvocation

RuleContext

Geerbt von ParserRuleContext.addChild

addChild(TerminalNode)

Fügen Sie einen untergeordneten Tokenblattknoten hinzu, und erzwingen Sie, dass das übergeordnete Element dieser Knoten ist.

function addChild(t: TerminalNode)

Parameter

t

TerminalNode

Geerbt von ParserRuleContext.addChild

addChild(Token)

Warnung

Diese API ist nun veraltet.

Use another overload instead.

Fügen Sie diesem Knoten basierend auf matchedToken ein untergeordnetes Element hinzu. Es erstellt ein TerminalNodeImpl anstelle von [Token)](xref:Parser%23createTerminalNode(ParserRuleContext%2C). Ich belassen dies aus Gründen der Kompatibilität, aber der Parser verwendet dies nicht mehr.

function addChild(matchedToken: Token): TerminalNode

Parameter

matchedToken

Token

Gibt zurück

TerminalNode

Geerbt von ParserRuleContext.addChild

addErrorNode(ErrorNode)

Fügen Sie einen untergeordneten Fehlerknoten hinzu, und erzwingen Sie, dass das übergeordnete Element dieser Knoten ist.

function addErrorNode(errorNode: ErrorNode): ErrorNode

Parameter

errorNode

ErrorNode

Gibt zurück

ErrorNode

geerbt von ParserRuleContext.addErrorNode

addErrorNode(Token)

Warnung

Diese API ist nun veraltet.

Use another overload instead.

Fügen Sie diesem Knoten basierend auf badToken ein untergeordnetes Element hinzu. Es erstellt einen ErrorNode anstelle von [Token)](xref:Parser%23createErrorNode(ParserRuleContext%2C). Ich belassen dies aus Gründen der Kompatibilität, aber der Parser verwendet dies nicht mehr.

function addErrorNode(badToken: Token): ErrorNode

Parameter

badToken

Token

Gibt zurück

ErrorNode

geerbt von ParserRuleContext.addErrorNode

copyFrom(ParserRuleContext)

COPY a ctx (I'm absichtlich not using copy constructor) to avoid confusion with creating node with parent. Kopiert untergeordnete Elemente nicht (mit Ausnahme von Fehlern). Dies wird im generierten Parsercode verwendet, um einen generischen XContext-Knoten für Regel X in einen YContext für Altbeschriftung Y zu kippen. In diesem Sinne ist es nicht wirklich eine generische Kopierfunktion.

Wenn wir zu Beginn einer Regel eine Fehlersynchronisierung() ausführen, fügen wir möglicherweise Fehlerknoten zum generischen XContext hinzu, sodass diese Funktion diese Knoten auch in den YContext kopieren muss, sonst gehen sie verloren!

function copyFrom(ctx: ParserRuleContext)

Parameter

ctx

ParserRuleContext

geerbt von ParserRuleContext.copyFrom

depth()

function depth(): number

Gibt zurück

number

geerbt von RuleContext.depth

emptyContext()

static function emptyContext(): ParserRuleContext

Gibt zurück

ParserRuleContext

geerbt von ParserRuleContext.emptyContext

getChild(number)

function getChild(i: number): ParseTree

Parameter

i

number

Gibt zurück

ParseTree

geerbt von ParserRuleContext.getChild

getChild<T>(number, { })

function getChild<T>(i: number, ctxType: {  }): T

Parameter

i

number

ctxType

{ }

Gibt zurück

T

geerbt von ParserRuleContext.getChild

getChildContext(RuleContext, number)

static function getChildContext(parent: RuleContext, invokingState: number): RuleContext

Parameter

parent

RuleContext

invokingState

number

Gibt zurück

RuleContext

geerbt von RuleContext.getChildContext

getRuleContext<T>(number, { })

function getRuleContext<T>(i: number, ctxType: {  }): T

Parameter

i

number

ctxType

{ }

Gibt zurück

T

Geerbt von ParserRuleContext.getRuleContext

getRuleContexts<T>({ })

function getRuleContexts<T>(ctxType: {  }): T[]

Parameter

ctxType

{ }

Gibt zurück

T[]

von ParserRuleContext.getRuleContexts geerbt

getToken(number, number)

function getToken(ttype: number, i: number): TerminalNode

Parameter

ttype

number

i

number

Gibt zurück

TerminalNode

von ParserRuleContext.getToken geerbt

getTokens(number)

function getTokens(ttype: number): TerminalNode[]

Parameter

ttype

number

Gibt zurück

TerminalNode[]

geerbt von ParserRuleContext.getTokens

removeLastChild()

Wird von enterOuterAlt verwendet, um einen RuleContext auszuprobieren, der zuvor hinzugefügt wurde, als wir eine Regel eingegeben haben. Wenn wir #-Bezeichnung haben, müssen wir generisches ruleContext-Objekt entfernen.

function removeLastChild()

von ParserRuleContext.removeLastChild geerbt

setParent(RuleContext)

function setParent(parent: RuleContext)

Parameter

parent

RuleContext

Geerbt von RuleContext.setParent

toInfoString(Parser)

Wird für das Debuggen von Regelkontextinformationen während der Analysezeit verwendet, nicht so viel für das ATN-Debugging

function toInfoString(recognizer: Parser): string

Parameter

recognizer

Parser

Gibt zurück

string

von ParserRuleContext.toInfoString geerbt

toString()

function toString(): string

Gibt zurück

string

geerbt von RuleContext.toString

toString(Recognizer<any, any> | undefined)

function toString(recog: Recognizer<any, any> | undefined): string

Parameter

recog

Recognizer<any, any> | undefined

Gibt zurück

string

geerbt von RuleContext.toString

toString(Recognizer<any, any> | undefined, RuleContext | undefined)

function toString(recog: Recognizer<any, any> | undefined, stop: RuleContext | undefined): string

Parameter

recog

Recognizer<any, any> | undefined

stop

RuleContext | undefined

Gibt zurück

string

geerbt von RuleContext.toString

toString(string[] | undefined)

function toString(ruleNames: string[] | undefined): string

Parameter

ruleNames

string[] | undefined

Gibt zurück

string

geerbt von RuleContext.toString

toString(string[] | undefined, RuleContext | undefined)

function toString(ruleNames: string[] | undefined, stop: RuleContext | undefined): string

Parameter

ruleNames

string[] | undefined

stop

RuleContext | undefined

Gibt zurück

string

geerbt von RuleContext.toString

toStringTree()

function toStringTree(): string

Gibt zurück

string

geerbt von RuleContext.toStringTree

toStringTree(Parser)

Drucken Sie eine ganze Struktur aus, nicht nur einen Knoten im LISP-Format (stamm child1 .. childN). Drucken Sie nur einen Knoten, wenn es sich um ein Blatt handelt. Wir müssen die Erkennung kennen, damit wir Regelnamen abrufen können.

function toStringTree(recog: Parser): string

Parameter

recog

Parser

Gibt zurück

string

geerbt von RuleContext.toStringTree

toStringTree(string[] | undefined)

Drucken Sie eine ganze Struktur aus, nicht nur einen Knoten im LISP-Format (stamm child1 .. childN). Drucken Sie nur einen Knoten, wenn es sich um ein Blatt handelt.

function toStringTree(ruleNames: string[] | undefined): string

Parameter

ruleNames

string[] | undefined

Gibt zurück

string

geerbt von RuleContext.toStringTree

tryGetChild<T>(number, { })

function tryGetChild<T>(i: number, ctxType: {  }): T | undefined

Parameter

i

number

ctxType

{ }

Gibt zurück

T | undefined

Geerbt von ParserRuleContext.tryGetChild

tryGetRuleContext<T>(number, { })

function tryGetRuleContext<T>(i: number, ctxType: {  }): T | undefined

Parameter

i

number

ctxType

{ }

Gibt zurück

T | undefined

Geerbt von ParserRuleContext.tryGetRuleContext

tryGetToken(number, number)

function tryGetToken(ttype: number, i: number): TerminalNode | undefined

Parameter

ttype

number

i

number

Gibt zurück

TerminalNode | undefined

geerbt von ParserRuleContext.tryGetToken