@designliquido/delegua
Version:
Linguagem de programação simples e moderna usando português estruturado.
107 lines • 5.61 kB
TypeScript
import { AcessoIndiceVariavel, AcessoMetodo, AcessoMetodoOuPropriedade, AcessoPropriedade, Agrupamento, ArgumentoReferenciaFuncao, AtribuicaoPorIndice, Atribuir, Binario, Chamada, Construto, DefinirValor, Dicionario, FuncaoConstruto, Leia, Literal, Logico, ReferenciaFuncao, TipoDe, Unario, Variavel, Vetor } from '../construtos';
import { Bloco, Classe, Comentario, Const, Declaracao, Enquanto, Escolha, Escreva, Expressao, Falhar, Fazer, FuncaoDeclaracao, Importar, Para, ParaCada, Retorna, Se, Tente, Var } from '../declaracoes';
import { SimboloInterface, TradutorInterface } from '../interfaces';
import { CaminhoEscolha } from '../interfaces/construtos';
/**
* Esse tradutor traduz para JavaScript sem módulos, o que significa que
* instruções em Delégua como `leia()` e `importar()` não são suportadas.
* O tradutor levantará mensagem de alerta toda vez que essas instruções são encontradas.
*/
export declare class TradutorJavaScript implements TradutorInterface<Declaracao> {
indentacao: number;
declaracoesDeClasses: Classe[];
traduzirSimboloOperador(operador: SimboloInterface): string;
traduzirFuncaoOuMetodo(nomeMetodo: string, objetoResolvido: string, argumentos: Construto[]): string;
traduzirConstrutoAgrupamento(agrupamento: Agrupamento): string;
traduzirConstrutoAtribuir(atribuir: Atribuir): string;
traduzirConstrutoBinario(binario: Binario): string;
traduzirConstrutoChamada(chamada: Chamada): string;
traduzirDeclaracaoComentario(comentario: Comentario): string;
traduzirConstrutoDefinirValor(definirValor: DefinirValor): string;
traduzirConstrutoDicionario(dicionario: Dicionario): string;
traduzirConstrutoLiteral(literal: Literal): string;
traduzirConstrutoVariavel(variavel: Variavel, argumentos: Construto[]): string;
protected logicaComumBlocoEscopo(declaracoes: Declaracao[]): string;
traduzirDeclaracaoBloco(declaracaoBloco: Bloco): string;
logicaTraducaoMetodoClasse(metodoClasse: FuncaoDeclaracao): string;
traduzirDeclaracaoClasse(declaracaoClasse: Classe): string;
traduzirDeclaracaoEnquanto(declaracaoEnquanto: Enquanto): string;
logicaComumCaminhosEscolha(caminho: CaminhoEscolha): string;
traduzirDeclaracaoEscolha(declaracaoEscolha: Escolha): string;
traduzirDeclaracaoEscreva(declaracaoEscreva: Escreva): string;
traduzirDeclaracaoExpressao(declaracaoExpressao: Expressao): string;
traduzirDeclaracaoFazer(declaracaoFazer: Fazer): string;
traduzirDeclaracaoFuncao(declaracaoFuncao: FuncaoDeclaracao): string;
traduzirDeclaracaoImportar(declaracaoImportar: Importar): string;
traduzirConstrutoLeia(declaracaoLeia: Leia): string;
traduzirDeclaracaoParaCada(declaracaoParaCada: ParaCada): string;
traduzirDeclaracaoPara(declaracaoPara: Para): string;
traduzirDeclaracaoRetorna(declaracaoRetorna: Retorna): string;
traduzirDeclaracaoSe(declaracaoSe: Se): string;
traduzirDeclaracaoTente(declaracaoTente: Tente): string;
traduzirDeclaracaoConst(declaracaoConst: Const): string;
traduzirDeclaracaoVar(declaracaoVar: Var, adicionarPontoEVirgula?: boolean): string;
traduzirFuncaoAnonimaParaLambda(argumento: Construto): string;
traduzirAcessoMetodoVetor(objeto: Construto, nomeMetodo: string, argumentos: Construto[]): string;
traduzirConstrutoAcessoMetodo(acessoMetodo: AcessoMetodo, argumentos: Construto[]): string;
traduzirConstrutoAcessoMetodoOuPropriedade(acessoMetodo: AcessoMetodoOuPropriedade, argumentos: Construto[]): string;
traduzirConstrutoAcessoPropriedade(acessoMetodo: AcessoPropriedade, argumentos: Construto[]): string;
traduzirFuncaoConstruto(funcaoConstruto: FuncaoConstruto): string;
traduzirConstrutoLogico(logico: Logico): string;
traduzirConstrutoAtribuicaoPorIndice(AtribuicaoPorIndice: AtribuicaoPorIndice): string;
traduzirConstrutoAcessoIndiceVariavel(acessoIndiceVariavel: AcessoIndiceVariavel): string;
traduzirConstrutoArgumentoReferenciaFuncao(argumentoReferenciaFuncao: ArgumentoReferenciaFuncao, argumentos: Construto[]): string;
traduzirConstrutoReferenciaFuncao(referenciaFuncao: ReferenciaFuncao, argumentos: Construto[]): string;
traduzirConstrutoTipoDe(tipoDe: TipoDe): string;
traduzirConstrutoVetor(vetor: Vetor): string;
traduzirConstrutoUnario(unario: Unario): string;
traduzirDeclaracaoFalhar(falhar: Falhar): string;
dicionarioConstrutos: {
AcessoIndiceVariavel: any;
AcessoMetodo: any;
AcessoMetodoOuPropriedade: any;
AcessoPropriedade: any;
Agrupamento: any;
ArgumentoReferenciaFuncao: any;
AtribuicaoPorIndice: any;
Atribuir: any;
Binario: any;
Chamada: any;
DefinirValor: any;
Dicionario: any;
FuncaoConstruto: any;
Isto: () => string;
Leia: any;
Literal: any;
Logico: any;
ReferenciaFuncao: any;
TipoDe: any;
Unario: any;
Variavel: any;
Vetor: any;
};
dicionarioDeclaracoes: {
Bloco: any;
Classe: any;
Const: any;
Comentario: any;
Continua: () => string;
Enquanto: any;
Escolha: any;
Escreva: any;
Expressao: any;
Fazer: any;
Falhar: any;
FuncaoDeclaracao: any;
Importar: any;
Para: any;
ParaCada: any;
Retorna: any;
Se: any;
Sustar: () => string;
Tente: any;
Var: any;
};
traduzir(declaracoes: Declaracao[]): string;
}
//# sourceMappingURL=tradutor-javascript.d.ts.map