Compartilhar via


Extractor class

Extrator de modelo lg.

Extends

AbstractParseTreeVisitor<Map<string, string[]>>

Construtores

Extractor(Template[])

Cria uma nova instância da classe Extractor.

Propriedades

templateMap
templates

Métodos

extract()

Extrai os modelos e retorna um mapa com seus nomes e corpos.

visitIfElseBody(IfElseBodyContext)

Visite uma árvore de análise produzida pela alternativa rotulada ifElseBody em LGTemplateParser.body.

visitNormalTemplateBody(NormalTemplateBodyContext)

Visite uma árvore de análise produzida por LGTemplateParser.normalTemplateBody.

visitStructuredBody(StructuredBodyContext)

Visite uma árvore de análise produzida pela alternativa rotulada structuredBody em LGTemplateParser.body.

visitSwitchCaseBody(SwitchCaseBodyContext)

Visite uma árvore de análise produzida pela alternativa rotulada switchCaseBody em LGTemplateParser.body.

Métodos herdados

visit(ParseTree)

{@inheritDoc} As chamadas de implementação padrão <xref:ParseTree%23accept> na árvore especificada.

visitChildren(RuleNode)

{@inheritDoc} A implementação padrão inicializa o resultado de agregação para defaultResult(). Antes de visitar cada filho, ele chama shouldVisitNextChild; se o resultado for false nenhuma outra criança for visitada e o resultado da agregação atual for retornado. Depois de visitar um filho, o resultado da agregação é atualizado chamando aggregateResult com o resultado agregado anterior e o resultado da visita ao filho.

A implementação padrão não é segura para uso em visitantes que modificam a estrutura da árvore. Os visitantes que modificam a árvore devem substituir esse método para se comportarem corretamente em relação ao algoritmo específico em uso.

visitErrorNode(ErrorNode)

{@inheritDoc} A implementação padrão retorna o resultado de defaultResult.

visitTerminal(TerminalNode)

{@inheritDoc} A implementação padrão retorna o resultado de defaultResult.

Detalhes do construtor

Extractor(Template[])

Cria uma nova instância da classe Extractor.

new Extractor(templates: Template[])

Parâmetros

templates

Template[]

Lista de modelos.

Detalhes da propriedade

templateMap

templateMap: Record<string, Template>

Valor da propriedade

Record<string, Template>

templates

templates: Template[]

Valor da propriedade

Detalhes do método

extract()

Extrai os modelos e retorna um mapa com seus nomes e corpos.

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

Retornos

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

Mapear objeto com nomes de modelo e corpos.

visitIfElseBody(IfElseBodyContext)

Visite uma árvore de análise produzida pela alternativa rotulada ifElseBody em LGTemplateParser.body.

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

Parâmetros

context
IfElseBodyContext

A árvore de análise.

Retornos

Map<string, string[]>

O resultado de visitar o corpo if else.

visitNormalTemplateBody(NormalTemplateBodyContext)

Visite uma árvore de análise produzida por LGTemplateParser.normalTemplateBody.

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

Parâmetros

context
NormalTemplateBodyContext

A árvore de análise.

Retornos

Map<string, string[]>

O resultado da visita ao corpo normal do modelo.

visitStructuredBody(StructuredBodyContext)

Visite uma árvore de análise produzida pela alternativa rotulada structuredBody em LGTemplateParser.body.

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

Parâmetros

context
StructuredBodyContext

A árvore de análise.

Retornos

Map<string, string[]>

O resultado de visitar o corpo estruturado.

visitSwitchCaseBody(SwitchCaseBodyContext)

Visite uma árvore de análise produzida pela alternativa rotulada switchCaseBody em LGTemplateParser.body.

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

Parâmetros

context
SwitchCaseBodyContext

A árvore de análise.

Retornos

Map<string, string[]>

O resultado de visitar o corpo da caixa de comutador.

Detalhes do método herdado

visit(ParseTree)

{@inheritDoc} As chamadas de implementação padrão <xref:ParseTree%23accept> na árvore especificada.

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

Parâmetros

tree

ParseTree

Retornos

Map<string, string[]>

Herdado de AbstractParseTreeVisitor.visit

visitChildren(RuleNode)

{@inheritDoc} A implementação padrão inicializa o resultado de agregação para defaultResult(). Antes de visitar cada filho, ele chama shouldVisitNextChild; se o resultado for false nenhuma outra criança for visitada e o resultado da agregação atual for retornado. Depois de visitar um filho, o resultado da agregação é atualizado chamando aggregateResult com o resultado agregado anterior e o resultado da visita ao filho.

A implementação padrão não é segura para uso em visitantes que modificam a estrutura da árvore. Os visitantes que modificam a árvore devem substituir esse método para se comportarem corretamente em relação ao algoritmo específico em uso.

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

Parâmetros

node

RuleNode

Retornos

Map<string, string[]>

Herdado de AbstractParseTreeVisitor.visitChildren

visitErrorNode(ErrorNode)

{@inheritDoc} A implementação padrão retorna o resultado de defaultResult.

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

Parâmetros

node

ErrorNode

Retornos

Map<string, string[]>

Herdado de AbstractParseTreeVisitor.visitErrorNode

visitTerminal(TerminalNode)

{@inheritDoc} A implementação padrão retorna o resultado de defaultResult.

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

Parâmetros

node

TerminalNode

Retornos

Map<string, string[]>

Herdado de AbstractParseTreeVisitor.visitTerminal