UNPKG

@designliquido/delegua

Version:

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

38 lines 2.38 kB
import { AcessoMetodo, AcessoMetodoOuPropriedade, AcessoPropriedade, AcessoIntervaloVariavel, TuplaN, AtribuicaoPorIndice, AcessoIndiceVariavel, TipoDe, Atribuir } from '../../../construtos'; import { Interpretador } from '../../interpretador'; import { EspacoMemoria } from '../../espaco-memoria'; import { Declaracao, ParaCada, Retorna } from '../../../declaracoes'; import { RetornoQuebra } from '../../../quebras'; export declare class InterpretadorPitugues extends Interpretador { constructor(diretorioBase: string, performance?: boolean, funcaoDeRetorno?: Function, funcaoDeRetornoMesmaLinha?: Function); /** * Sobrescreve `executarBloco` para marcar escopos de chamadas de função com * `tipo: 'funcao'`. Quando `ambiente` é fornecido, a chamada vem de * `DeleguaFuncao.chamar`, que repassa o espaço de memória dos parâmetros. * Isso permite que `PilhaEscoposExecucaoPitugues` identifique fronteiras de * função e aplique a semântica LEGB corretamente. */ executarBloco(declaracoes: Declaracao[], ambiente?: EspacoMemoria): Promise<any>; visitarExpressaoAcessoMetodo(expressao: AcessoMetodo): Promise<any>; visitarExpressaoAcessoMetodoOuPropriedade(expressao: AcessoMetodoOuPropriedade): Promise<any>; visitarExpressaoAcessoPropriedade(expressao: AcessoPropriedade): Promise<any>; visitarExpressaoAcessoIntervaloVariavel(expressao: AcessoIntervaloVariavel): Promise<any>; visitarExpressaoTuplaN(expressao: TuplaN): Promise<any>; visitarExpressaoDeAtribuicao(expressao: Atribuir): Promise<any>; visitarExpressaoAtribuicaoPorIndice(expressao: AtribuicaoPorIndice): Promise<any>; visitarExpressaoAcessoIndiceVariavel(expressao: AcessoIndiceVariavel): Promise<any>; visitarExpressaoTipoDe(expressao: TipoDe): Promise<any>; /** * Normaliza o valor resolvido para um array iterável. * Converte dicionários em listas de Duplas e strings em listas de caracteres. */ private prepararListaParaIteracao; /** * Resolve a lógica de atribuição das variáveis no escopo. * Suporta variáveis simples ou pares (Dupla). */ private definirVariaveisIteracao; visitarDeclaracaoParaCada(declaracao: ParaCada): Promise<any>; visitarExpressaoRetornar(declaracao: Retorna): Promise<RetornoQuebra>; } //# sourceMappingURL=interpretador-pitugues.d.ts.map