@designliquido/delegua
Version:
Linguagem de programação simples e moderna usando português estruturado.
45 lines • 2.21 kB
TypeScript
import { DeleguaFuncao } from './estruturas';
import { SimboloInterface, VariavelInterface } from '../interfaces';
import { EscopoExecucaoInterface } from '../interfaces/escopo-execucao';
import { PilhaEscoposExecucaoInterface } from '../interfaces/pilha-escopos-execucao-interface';
export declare class PilhaEscoposExecucao implements PilhaEscoposExecucaoInterface {
pilha: EscopoExecucaoInterface[];
constructor();
empilhar(item: EscopoExecucaoInterface): void;
eVazio(): boolean;
elementos(): number;
naPosicao(posicao: number): EscopoExecucaoInterface;
topoDaPilha(): EscopoExecucaoInterface;
removerUltimo(): EscopoExecucaoInterface;
private tiposCompativeis;
private converterValor;
definirConstante(nomeConstante: string, valor: any, tipo?: string): void;
definirVariavel(nomeVariavel: string, valor: any, tipo?: string, tipoExplicito?: boolean): void;
atribuirVariavelEm(distancia: number, simbolo: any, valor: any): void;
atribuirVariavel(simbolo: SimboloInterface, valor: any, indice?: number): void;
obterEscopoPorTipo(tipo: string): EscopoExecucaoInterface | undefined;
obterVariavelEm(distancia: number, nome: string): VariavelInterface;
obterValorVariavel(simbolo: SimboloInterface): VariavelInterface;
obterVariavelPorNome(nome: string): VariavelInterface;
/**
* Método usado pelo depurador para obter todas as variáveis definidas.
*/
obterTodasVariaveis(todasVariaveis?: VariavelInterface[]): any[];
/**
* Obtém todas as funções declaradas ou por código-fonte, ou pelo desenvolvedor
* em console, do último escopo.
*/
obterTodasDeleguaFuncao(): {
[nome: string]: DeleguaFuncao;
};
/**
* Obtém todas as declarações de classe do último escopo.
* @returns
*/
obterTodasDeclaracoesClasse(): any;
registrarReferenciaFuncao(idFuncao: string, funcao: DeleguaFuncao): void;
obterReferenciaFuncao(idFuncao: string): DeleguaFuncao;
registrarReferenciaMontao(endereco: string): void;
migrarReferenciaMontaoParaEscopoDeVariavel(nomeVariavel: string, enderecoMontao: string): void;
}
//# sourceMappingURL=pilha-escopos-execucao.d.ts.map