UNPKG

@designliquido/delegua

Version:

Linguagem de programação simples e moderna usando português estruturado.

101 lines 4.75 kB
import { AcessoIndiceVariavel, AcessoMetodo, AcessoMetodoOuPropriedade, AcessoPropriedade, Agrupamento, Atribuir, Binario, Chamada, DefinirValor, Dicionario, FuncaoConstruto, Leia, Literal, Unario, Variavel, Vetor } from '../construtos'; import { Bloco, Const, Declaracao, Enquanto, Escolha, Escreva, Expressao, Fazer, Para, ParaCada, Se, Var } from '../declaracoes'; import { CaminhoEscolha, TradutorInterface } from '../interfaces'; declare class ArestaFluxograma { declaracao: Declaracao; texto: string; constructor(declaracao: Declaracao, texto: string); } declare class VerticeFluxograma { origem: ArestaFluxograma; destino: ArestaFluxograma; texto?: string; constructor(origem: ArestaFluxograma, destino: ArestaFluxograma, texto?: string); paraTexto(): string; } /** * [MermaidJs](https://mermaid.js.org/) é uma especificação que nos permite * criar fluxogramas através de uma notação por texto. * * Este tradutor converte estruturas da avaliação sintática em um fluxograma * compatível com o MermaidJs. * * Diferentemente de outros tradutores, este não trabalha diretamente com `string`s. * Construtos sim devolvem `string`s, mas declarações devolvem um vetor de * `VerticeFluxograma`. * @see VerticeFluxograma */ export declare class TradutorMermaidJs implements TradutorInterface<Declaracao> { anteriores: ArestaFluxograma[]; vertices: VerticeFluxograma[]; ultimaDicaVertice: string | undefined; traduzirConstrutoAcessoIndiceVariavel(acessoIndiceVariavel: AcessoIndiceVariavel): string; traduzirConstrutoAcessoMetodo(acessoMetodo: AcessoMetodo): string; traduzirConstrutoAcessoMetodoOuPropriedade(acessoMetodoOuPropriedade: AcessoMetodoOuPropriedade): string; traduzirConstrutoAcessoPropriedade(acessoPropriedade: AcessoPropriedade): string; traduzirConstrutoAgrupamento(agrupamento: Agrupamento): string; traduzirConstrutoAtribuir(atribuir: Atribuir): string; traduzirConstrutoBinario(binario: Binario): string; traduzirConstrutoChamada(chamada: Chamada): string; traduzirConstrutoDefinirValor(definirValor: DefinirValor): string; traduzirConstrutoDicionario(dicionario: Dicionario): string; traduzirFuncaoConstruto(funcaoConstruto: FuncaoConstruto): string; traduzirConstrutoLeia(leia: Leia): string; traduzirConstrutoLiteral(literal: Literal): string; traduzirConstrutoUnario(unario: Unario): string; traduzirConstrutoVariavel(variavel: Variavel): string; traduzirConstrutoVetor(vetor: Vetor): string; protected logicaComumConexaoArestas(aresta: ArestaFluxograma): VerticeFluxograma[]; traduzirDeclaracaoBloco(declaracaoBloco: Bloco): VerticeFluxograma[]; traduzirDeclaracaoConst(declaracaoConst: Const): VerticeFluxograma[]; traduzirDeclaracaoEnquanto(declaracaoEnquanto: Enquanto): VerticeFluxograma[]; protected logicaComumCaminhoEscolha(declaracaoEscolha: Escolha, caminhoEscolha: CaminhoEscolha, linha: number, textoIdentificadorOuLiteral: string, caminhoPadrao: boolean): { caminho: ArestaFluxograma; declaracoesCaminho: VerticeFluxograma[]; }; traduzirDeclaracaoEscolha(declaracaoEscolha: Escolha): VerticeFluxograma[]; traduzirDeclaracaoEscreva(declaracaoEscreva: Escreva): VerticeFluxograma[]; traduzirDeclaracaoExpressao(declaracaoExpressao: Expressao): VerticeFluxograma[]; traduzirDeclaracaoFazerEnquanto(declaracaoFazerEnquanto: Fazer): VerticeFluxograma[]; traduzirDeclaracaoPara(declaracaoPara: Para): VerticeFluxograma[]; traduzirDeclaracaoParaCada(declaracaoParaCada: ParaCada): VerticeFluxograma[]; traduzirDeclaracaoSe(declaracaoSe: Se): VerticeFluxograma[]; protected logicaComumTraducaoVarEConst(declaracaoVarOuConst: Var | Const, textoInicial: string): string; traduzirDeclaracaoVar(declaracaoVar: Var): VerticeFluxograma[]; dicionarioConstrutos: { AcessoIndiceVariavel: any; AcessoMetodo: any; AcessoMetodoOuPropriedade: any; AcessoPropriedade: any; Agrupamento: any; Atribuir: any; Binario: any; Chamada: any; Comentario: () => string; DefinirValor: any; Dicionario: any; FuncaoConstruto: any; Isto: () => string; Leia: any; Literal: any; Unario: any; Variavel: any; Vetor: any; }; dicionarioDeclaracoes: { Bloco: any; Const: any; Enquanto: any; Escolha: any; Expressao: any; Escreva: any; Fazer: any; Para: any; ParaCada: any; Se: any; Var: any; }; traduzir(declaracoes: Declaracao[]): string; } export {}; //# sourceMappingURL=tradutor-mermaidjs.d.ts.map