Extractor class
Lg 範本擷取器。
- Extends
-
AbstractParseTreeVisitor<Map<string, string[]>>
建構函式
Extractor(Template[]) | 建立 Extractor 類別的新實例。 |
屬性
template |
|
templates |
方法
extract() | 擷取範本,並傳回具有其名稱和主體的對應。 |
visit |
請流覽由 LGTemplateParser.body 中標示為替代的 ifElseBody 所產生的剖析樹狀結構。 |
visit |
流覽 LGTemplateParser.normalTemplateBody 所產生的剖析樹狀結構。 |
visit |
請流覽 LGTemplateParser.body 中結構化的Body 標記替代專案所產生的剖析樹狀結構。 |
visit |
請流覽 LGTemplateParser.body 中 switchCaseBody 標記替代專案所產生的剖析樹狀結構。 |
繼承的方法
visit(Parse |
{@inheritDoc}默認實作會在指定的樹狀結構上呼叫 <xref:ParseTree%23accept>。 |
visit |
{@inheritDoc}預設實作會將匯總結果初始化為 defaultResult()。 訪問每個子系之前,它會呼叫 shouldVisitNextChild;如果結果 在修改樹狀結構之訪客中,默認實作不安全。 修改樹狀結構的訪客應該覆寫此方法,以針對使用中的特定演算法正確運作。 |
visit |
{@inheritDoc}默認實作會傳回 defaultResult |
visit |
{@inheritDoc}默認實作會傳回 defaultResult |
建構函式詳細資料
Extractor(Template[])
屬性詳細資料
templateMap
templates
方法詳細資料
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