Extractor class

Lg 模板提取器。

扩展

AbstractParseTreeVisitor<Map<string, string[]>>

构造函数

Extractor(Template[])

创建 提取程序 类的新实例。

属性

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[])

创建 提取程序 类的新实例。

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[]>

访问开关事例正文的结果。

继承的方法详细信息

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