NameContext class

Extends

ParserRuleContext

建構函式

NameContext(ParserRuleContext | undefined, number)

屬性

ruleIndex

繼承的屬性

altNumber

設定此內容節點的外部替代編號。 預設實作不會避免不需要的樹狀結構支援欄位額外負荷。 使用支援欄位建立 ParserRuleCoNtext 的子類別,並設定選項內容SuperClass。 @since 4.5.3

childCount
children

如果我們正在偵錯或建置訪客的剖析樹狀結構,我們需要追蹤與此規則內容相關聯的所有權杖和規則調用。 這是空的,用於剖析 w/o 樹狀結構 constr。 作業,因為我們不需要追蹤剖析此規則的詳細資料。

exception

強制此規則傳回的例外狀況。 如果規則成功完成,則為 undefined

invokingState
isEmpty

如果沒有叫用狀態,則內容是空的;這表示沒有任何人稱為目前內容。

parent
payload
ruleContext
sourceInterval
start

取得此內容中的初始權杖。 請注意,從開始到停止的範圍是包含的,因此對於不使用任何 (的規則而言,) 此權杖的長度或錯誤生產可能會超過停止。

stop

取得此內容中的最終權杖。 請注意,從開始到停止的範圍是包含的,因此對於不使用任何 (的規則,例如,) 此權杖的長度或錯誤生產環境,可能會在 start 之前。

text

傳回所有子節點的合併文字。 這個方法只會考慮已新增至剖析樹狀結構的權杖。 由於隱藏通道上的標記 (例如空白字元或批註) 不會新增至剖析樹狀結構,因此它們不會出現在此方法的輸出中。

方法

accept<Result>(CommonRegexVisitor<Result>)
alpha_nums()
enterRule(CommonRegexListener)
exitRule(CommonRegexListener)

繼承的方法

addAnyChild<T>(T)

將剖析樹狀節點新增至這個作為子節點。 適用于內部和分葉節點。 未設定父連結;其他新增方法必須這麼做。 其他 addChild 方法會呼叫這個方法。 我們無法設定傳入節點的父指標,因為現有的介面沒有 setParent () 方法,而且我不想中斷此專案的回溯相容性。

@since 4.7

addChild(RuleContext)
addChild(TerminalNode)

新增權杖分葉節點子節點,並強制其父節點成為這個節點。

addChild(Token)

根據 matchedToken 將子系新增至這個節點。 它會建立 TerminalNodeImpl,而不是使用 [Token) ] (xref:Parser%23createTerminalNode (ParserRuleCoNtext%2C) 。 我為了相容性而離開,但剖析器不再使用此專案。

addErrorNode(ErrorNode)

新增錯誤節點子節點,並強制其父節點成為這個節點。

addErrorNode(Token)

根據 badToken 將子系新增至這個節點。 它會建立 ErrorNode,而不是使用 [Token) ] (xref:Parser%23createErrorNode (ParserRuleCoNtext%2C) 。 我為了相容性而離開,但剖析器不再使用此專案。

copyFrom(ParserRuleContext)

複製 ctx (我刻意不使用複製建構函式) ,以避免與使用父代建立節點混淆。 除了錯誤保留) 以外,不會複製子系 (。 這用於產生的剖析器程式碼,將規則 X 的泛型 XCoNtext 節點翻轉為 Alt 標籤 Y 的 YCoNtext。也就是說,這不是泛型複製函式。

如果我們在規則開始時執行錯誤同步 () ,我們可能會將錯誤節點新增至泛型 XCoNtext,因此此函式必須將這些節點複製到 YCoNtext,否則它們也會遺失!

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

enterOuterAlt 用來清除先前在輸入規則時新增的 RuleCoNtext。 如果我們有 # 標籤,則必須移除泛型 ruleCoNtext 物件。

setParent(RuleContext)
toInfoString(Parser)

用於剖析期間的規則內容資訊偵錯,ATN 偵錯並無太多

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

以 LISP 格式列印整個樹狀結構,而不只是節點, (根子 1 。childN) 。 如果這是分葉,則只列印節點。 我們必須知道辨識器,才能取得規則名稱。

toStringTree(string[] | undefined)

以 LISP 格式列印整個樹狀結構,而不只是節點, (根子 1 。childN) 。 如果這是分葉,則只列印節點。

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

建構函式詳細資料

NameContext(ParserRuleContext | undefined, number)

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

參數

parent

ParserRuleContext | undefined

invokingState

number

屬性詳細資料

ruleIndex

number ruleIndex

屬性值

number

繼承的屬性詳細資料

altNumber

設定此內容節點的外部替代編號。 預設實作不會避免不需要的樹狀結構支援欄位額外負荷。 使用支援欄位建立 ParserRuleCoNtext 的子類別,並設定選項內容SuperClass。 @since 4.5.3

altNumber: number

屬性值

number

繼承自 RuleCoNtext.altNumber

childCount

childCount: number

屬性值

number

繼承自 ParserRuleCoNtext.childCount

children

如果我們正在偵錯或建置訪客的剖析樹狀結構,我們需要追蹤與此規則內容相關聯的所有權杖和規則調用。 這是空的,用於剖析 w/o 樹狀結構 constr。 作業,因為我們不需要追蹤剖析此規則的詳細資料。

children?: ParseTree[]

屬性值

ParseTree[]

繼承自 ParserRuleCoNtext.children

exception

強制此規則傳回的例外狀況。 如果規則成功完成,則為 undefined

exception?: RecognitionException

屬性值

RecognitionException

繼承自 ParserRuleCoNtext.exception

invokingState

invokingState: number

屬性值

number

繼承自 RuleCoNtext.invokingState

isEmpty

如果沒有叫用狀態,則內容是空的;這表示沒有任何人稱為目前內容。

isEmpty: boolean

屬性值

boolean

繼承自 RuleCoNtext.isEmpty

parent

parent: ParserRuleContext | undefined

屬性值

ParserRuleContext | undefined

繼承自 ParserRuleCoNtext.parent

payload

payload: RuleContext

屬性值

RuleContext

繼承自 RuleCoNtext.payload

ruleContext

ruleContext: this

屬性值

this

繼承自 ParserRuleCoNtext.ruleCoNtext

sourceInterval

sourceInterval: Interval

屬性值

Interval

繼承自 ParserRuleCoNtext.sourceInterval

start

取得此內容中的初始權杖。 請注意,從開始到停止的範圍是包含的,因此對於不使用任何 (的規則而言,) 此權杖的長度或錯誤生產可能會超過停止。

start: Token

屬性值

Token

繼承自 ParserRuleCoNtext.start

stop

取得此內容中的最終權杖。 請注意,從開始到停止的範圍是包含的,因此對於不使用任何 (的規則,例如,) 此權杖的長度或錯誤生產環境,可能會在 start 之前。

stop: Token | undefined

屬性值

Token | undefined

繼承自 ParserRuleCoNtext.stop

text

傳回所有子節點的合併文字。 這個方法只會考慮已新增至剖析樹狀結構的權杖。 由於隱藏通道上的標記 (例如空白字元或批註) 不會新增至剖析樹狀結構,因此它們不會出現在此方法的輸出中。

text: string

屬性值

string

繼承自 RuleCoNtext.text

方法詳細資料

accept<Result>(CommonRegexVisitor<Result>)

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

參數

visitor

CommonRegexVisitor<Result>

傳回

Result

alpha_nums()

function alpha_nums(): Alpha_numsContext

傳回

enterRule(CommonRegexListener)

function enterRule(listener: CommonRegexListener)

參數

exitRule(CommonRegexListener)

function exitRule(listener: CommonRegexListener)

參數

繼承的方法的詳細資料

addAnyChild<T>(T)

將剖析樹狀節點新增至這個作為子節點。 適用于內部和分葉節點。 未設定父連結;其他新增方法必須這麼做。 其他 addChild 方法會呼叫這個方法。 我們無法設定傳入節點的父指標,因為現有的介面沒有 setParent () 方法,而且我不想中斷此專案的回溯相容性。

@since 4.7

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

參數

t

T

傳回

T

繼承自 ParserRuleCoNtext.addAnyChild

addChild(RuleContext)

function addChild(ruleInvocation: RuleContext)

參數

ruleInvocation

RuleContext

繼承自 ParserRuleCoNtext.addChild

addChild(TerminalNode)

新增權杖分葉節點子節點,並強制其父節點成為這個節點。

function addChild(t: TerminalNode)

參數

t

TerminalNode

繼承自 ParserRuleCoNtext.addChild

addChild(Token)

警告

此 API 現已淘汰。

Use another overload instead.

根據 matchedToken 將子系新增至這個節點。 它會建立 TerminalNodeImpl,而不是使用 [Token) ] (xref:Parser%23createTerminalNode (ParserRuleCoNtext%2C) 。 我為了相容性而離開,但剖析器不再使用此專案。

function addChild(matchedToken: Token): TerminalNode

參數

matchedToken

Token

傳回

TerminalNode

繼承自 ParserRuleCoNtext.addChild

addErrorNode(ErrorNode)

新增錯誤節點子節點,並強制其父節點成為這個節點。

function addErrorNode(errorNode: ErrorNode): ErrorNode

參數

errorNode

ErrorNode

傳回

ErrorNode

繼承自 ParserRuleCoNtext.addErrorNode

addErrorNode(Token)

警告

此 API 現已淘汰。

Use another overload instead.

根據 badToken 將子系新增至這個節點。 它會建立 ErrorNode,而不是使用 [Token) ] (xref:Parser%23createErrorNode (ParserRuleCoNtext%2C) 。 我為了相容性而離開,但剖析器不再使用此專案。

function addErrorNode(badToken: Token): ErrorNode

參數

badToken

Token

傳回

ErrorNode

繼承自 ParserRuleCoNtext.addErrorNode

copyFrom(ParserRuleContext)

複製 ctx (我刻意不使用複製建構函式) ,以避免與使用父代建立節點混淆。 除了錯誤保留) 以外,不會複製子系 (。 這用於產生的剖析器程式碼,將規則 X 的泛型 XCoNtext 節點翻轉為 Alt 標籤 Y 的 YCoNtext。也就是說,這不是泛型複製函式。

如果我們在規則開始時執行錯誤同步 () ,我們可能會將錯誤節點新增至泛型 XCoNtext,因此此函式必須將這些節點複製到 YCoNtext,否則它們也會遺失!

function copyFrom(ctx: ParserRuleContext)

參數

ctx

ParserRuleContext

繼承自 ParserRuleCoNtext.copyFrom

depth()

function depth(): number

傳回

number

繼承自 RuleCoNtext.depth

emptyContext()

static function emptyContext(): ParserRuleContext

傳回

ParserRuleContext

繼承自 ParserRuleCoNtext.emptyCoNtext

getChild(number)

function getChild(i: number): ParseTree

參數

i

number

傳回

ParseTree

繼承自 ParserRuleCoNtext.getChild

getChild<T>(number, { })

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

參數

i

number

ctxType

{ }

傳回

T

繼承自 ParserRuleCoNtext.getChild

getChildContext(RuleContext, number)

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

參數

parent

RuleContext

invokingState

number

傳回

RuleContext

繼承自 RuleCoNtext.getChildCoNtext

getRuleContext<T>(number, { })

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

參數

i

number

ctxType

{ }

傳回

T

繼承自 ParserRuleCoNtext.getRuleCoNtext

getRuleContexts<T>({ })

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

參數

ctxType

{ }

傳回

T[]

繼承自 ParserRuleCoNtext.getRuleCoNtexts

getToken(number, number)

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

參數

ttype

number

i

number

傳回

TerminalNode

繼承自 ParserRuleCoNtext.getToken

getTokens(number)

function getTokens(ttype: number): TerminalNode[]

參數

ttype

number

傳回

TerminalNode[]

繼承自 ParserRuleCoNtext.getTokens

removeLastChild()

enterOuterAlt 用來清除先前在輸入規則時新增的 RuleCoNtext。 如果我們有 # 標籤,則必須移除泛型 ruleCoNtext 物件。

function removeLastChild()

繼承自 ParserRuleCoNtext.removeLastChild

setParent(RuleContext)

function setParent(parent: RuleContext)

參數

parent

RuleContext

繼承自 RuleCoNtext.setParent

toInfoString(Parser)

用於剖析期間的規則內容資訊偵錯,ATN 偵錯並無太多

function toInfoString(recognizer: Parser): string

參數

recognizer

Parser

傳回

string

繼承自 ParserRuleCoNtext.toInfoString

toString()

function toString(): string

傳回

string

繼承自 RuleCoNtext.toString

toString(Recognizer<any, any> | undefined)

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

參數

recog

Recognizer<any, any> | undefined

傳回

string

繼承自 RuleCoNtext.toString

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

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

參數

recog

Recognizer<any, any> | undefined

stop

RuleContext | undefined

傳回

string

繼承自 RuleCoNtext.toString

toString(string[] | undefined)

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

參數

ruleNames

string[] | undefined

傳回

string

繼承自 RuleCoNtext.toString

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

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

參數

ruleNames

string[] | undefined

stop

RuleContext | undefined

傳回

string

繼承自 RuleCoNtext.toString

toStringTree()

function toStringTree(): string

傳回

string

繼承自 RuleCoNtext.toStringTree

toStringTree(Parser)

以 LISP 格式列印整個樹狀結構,而不只是節點, (根子 1 。childN) 。 如果這是分葉,則只列印節點。 我們必須知道辨識器,才能取得規則名稱。

function toStringTree(recog: Parser): string

參數

recog

Parser

傳回

string

繼承自 RuleCoNtext.toStringTree

toStringTree(string[] | undefined)

以 LISP 格式列印整個樹狀結構,而不只是節點, (根子 1 。childN) 。 如果這是分葉,則只列印節點。

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

參數

ruleNames

string[] | undefined

傳回

string

繼承自 RuleCoNtext.toStringTree

tryGetChild<T>(number, { })

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

參數

i

number

ctxType

{ }

傳回

T | undefined

繼承自 ParserRuleCoNtext.tryGetChild

tryGetRuleContext<T>(number, { })

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

參數

i

number

ctxType

{ }

傳回

T | undefined

繼承自 ParserRuleCoNtext.tryGetRuleCoNtext

tryGetToken(number, number)

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

參數

ttype

number

i

number

傳回

TerminalNode | undefined

繼承自 ParserRuleCoNtext.tryGetToken