共用方式為


Extractor class

Lg 範本擷取器。

Extends

AbstractParseTreeVisitor<Map<string, string[]>>

建構函式

Extractor(Template[])

建立 Extractor 類別的新實例。

屬性

templateMap
templates

方法

extract()

擷取範本,並傳回具有其名稱和主體的對應。

visitIfElseBody(IfElseBodyContext)

請流覽由 LGTemplateParser.body 中標示為替代的 ifElseBody 所產生的剖析樹狀結構。

visitNormalTemplateBody(NormalTemplateBodyContext)

流覽 LGTemplateParser.normalTemplateBody 所產生的剖析樹狀結構。

visitStructuredBody(StructuredBodyContext)

請流覽 LGTemplateParser.body 中結構化的Body 標記替代專案所產生的剖析樹狀結構。

visitSwitchCaseBody(SwitchCaseBodyContext)

請流覽 LGTemplateParser.body 中 switchCaseBody 標記替代專案所產生的剖析樹狀結構。

繼承的方法

visit(ParseTree)

{@inheritDoc}默認實作會在指定的樹狀結構上呼叫 <xref:ParseTree%23accept>。

visitChildren(RuleNode)

{@inheritDoc}預設實作會將匯總結果初始化為 defaultResult()。 訪問每個子系之前,它會呼叫 shouldVisitNextChild;如果結果 false 不會再流覽任何子系,而且會傳回目前的匯總結果。 造訪子系之後,匯總結果會藉由呼叫 aggregateResult,以及造訪子系的結果來更新。

在修改樹狀結構之訪客中,默認實作不安全。 修改樹狀結構的訪客應該覆寫此方法,以針對使用中的特定演算法正確運作。

visitErrorNode(ErrorNode)

{@inheritDoc}默認實作會傳回 defaultResult的結果。

visitTerminal(TerminalNode)

{@inheritDoc}默認實作會傳回 defaultResult的結果。

建構函式詳細資料

Extractor(Template[])

建立 Extractor 類別的新實例。

new Extractor(templates: Template[])

參數

templates

Template[]

範本清單。

屬性詳細資料

templateMap

templateMap: Record<string, Template>

屬性值

Record<string, Template>

templates

templates: Template[]

屬性值

方法詳細資料

extract()

擷取範本,並傳回具有其名稱和主體的對應。

function extract(): Map<string, string[] | Map<string, string[]>>[]

傳回

Map<string, string[] | Map<string, string[]>>[]

使用範本名稱和主體對應物件。

visitIfElseBody(IfElseBodyContext)

請流覽由 LGTemplateParser.body 中標示為替代的 ifElseBody 所產生的剖析樹狀結構。

function visitIfElseBody(context: IfElseBodyContext): Map<string, string[]>

參數

context
IfElseBodyContext

剖析樹狀結構。

傳回

Map<string, string[]>

造訪 if else 本文的結果。

visitNormalTemplateBody(NormalTemplateBodyContext)

流覽 LGTemplateParser.normalTemplateBody 所產生的剖析樹狀結構。

function visitNormalTemplateBody(context: NormalTemplateBodyContext): Map<string, string[]>

參數

context
NormalTemplateBodyContext

剖析樹狀結構。

傳回

Map<string, string[]>

流覽一般範本主體的結果。

visitStructuredBody(StructuredBodyContext)

請流覽 LGTemplateParser.body 中結構化的Body 標記替代專案所產生的剖析樹狀結構。

function visitStructuredBody(context: StructuredBodyContext): Map<string, string[]>

參數

context
StructuredBodyContext

剖析樹狀結構。

傳回

Map<string, string[]>

流覽結構化本文的結果。

visitSwitchCaseBody(SwitchCaseBodyContext)

請流覽 LGTemplateParser.body 中 switchCaseBody 標記替代專案所產生的剖析樹狀結構。

function visitSwitchCaseBody(context: SwitchCaseBodyContext): Map<string, string[]>

參數

context
SwitchCaseBodyContext

剖析樹狀結構。

傳回

Map<string, string[]>

流覽 switch 案例本文的結果。

繼承的方法的詳細資料

visit(ParseTree)

{@inheritDoc}默認實作會在指定的樹狀結構上呼叫 <xref:ParseTree%23accept>。

function visit(tree: ParseTree): Map<string, string[]>

參數

tree

ParseTree

傳回

Map<string, string[]>

繼承自 AbstractParseTreeVisitor.visit

visitChildren(RuleNode)

{@inheritDoc}預設實作會將匯總結果初始化為 defaultResult()。 訪問每個子系之前,它會呼叫 shouldVisitNextChild;如果結果 false 不會再流覽任何子系,而且會傳回目前的匯總結果。 造訪子系之後,匯總結果會藉由呼叫 aggregateResult,以及造訪子系的結果來更新。

在修改樹狀結構之訪客中,默認實作不安全。 修改樹狀結構的訪客應該覆寫此方法,以針對使用中的特定演算法正確運作。

function visitChildren(node: RuleNode): Map<string, string[]>

參數

node

RuleNode

傳回

Map<string, string[]>

繼承自 AbstractParseTreeVisitor.visitChildren

visitErrorNode(ErrorNode)

{@inheritDoc}默認實作會傳回 defaultResult的結果。

function visitErrorNode(node: ErrorNode): Map<string, string[]>

參數

node

ErrorNode

傳回

Map<string, string[]>

繼承自 AbstractParseTreeVisitor.visitErrorNode

visitTerminal(TerminalNode)

{@inheritDoc}默認實作會傳回 defaultResult的結果。

function visitTerminal(node: TerminalNode): Map<string, string[]>

參數

node

TerminalNode

傳回

Map<string, string[]>

繼承自 AbstractParseTreeVisitor.visitTerminal