@designliquido/delegua
Version:
Linguagem de programação simples e moderna usando português estruturado.
38 lines • 1.7 kB
TypeScript
/**
* O montão, conhecido em inglês, como _heap_, guarda todas as estruturas de dados
* não primitivas durante a execução.
* Inicialmente trabalha apenas com dicionários, mas a ideia mais futuramente é
* trabalhar com toda e qualquer estrutura de dados mais complexa.
*
* Diferentemente da pilha de escopos de execução, o montão trabalha entre escopos.
* Por exemplo, se quisermos ter uma funcionalidade do interpretador em que uma
* referência é preservada entre escopos, podemos apagar o escopo e transferir facilmente
* a referência do montão para outro escopo.
*/
export declare class Montao {
referencias: {
[endereco: string]: any;
};
constructor();
/**
* Adiciona uma nova referência ao montão, retornando seu endereço.
* @param {any} objeto Qualquer objeto que pertença ao montão.
* @returns {string} O endereço onde a referência foi registrada.
*/
adicionarReferencia(objeto: any): string;
/**
* Exclui referências do montão, normalmente por finalização de um
* escopo de execução.
* @param enderecos
*/
excluirReferencias(...enderecos: string[]): void;
/**
* Obtém uma referência com base no símbolo executado e endereço da referência.
* @param {number} hashArquivo O _hash_ correspondente ao caminho do arquivo em execução.
* @param {number} linha A linha correspondente à declaração sendo executada.
* @param {string} endereco O endereço da referência.
* @returns {any} O objeto armazenado no endereço.
*/
obterReferencia(hashArquivo: number, linha: number, endereco: string): any;
}
//# sourceMappingURL=montao.d.ts.map