Descritor da classe cujo método está sendo executado no momento. Nulo se fora de método de classe.
Chama o método aceitar de um construto ou declaração, passando o
próprio interpretador como parâmetro.
Isto é usado para saber qual método do próprio interpretador chamar na sequência.
A expressão, que pode ser um construto ou declaração.
O retorno da execução do método de visita chamado.
ProtectedavaliarProtectedcederCede o controle ao loop de eventos do JavaScript. Usado em laços de repetição para evitar bloqueio do loop de eventos em iterações longas ou infinitas.
ProtectedchamarFaz a chamada do método de uma primitiva (por exemplo, número, texto, etc.) com seus respectivos argumentos.
A expressão de chamada.
O método da primitiva chamado.
O resultado da chamada do método da primitiva.
Lógica para verificação de valores iguais, para Delégua e alguns dialetos.
Uma variável.
Outra variável.
Verdadeiro se são iguais. Falso em caso contrário.
Procura um método de extensão nos registros de módulo e global, percorrendo os tipos na ordem indicada (específico antes de base).
Efetivamente executa uma declaração.
A declaração a ser executada.
O resultado parcial da execução, normalmente usado por ferramentas externas.
Empilha declarações na pilha de escopos de execução, cria um novo ambiente e executa as declarações empilhadas. Se o retorno do último bloco foi uma exceção (normalmente um erro em tempo de execução), atira a exceção daqui. Isso é usado, por exemplo, em blocos tente ... pegue ... finalmente.
Um vetor de declaracoes a ser executado.
Optionalambiente: EspacoMemoriaO ambiente de execução quando houver, como parâmetros, argumentos, etc.
Executa o último escopo empilhado no topo na pilha de escopos do interpretador. Esse método pega exceções, mas apenas as devolve.
O tratamento das exceções é feito de acordo com o bloco chamador.
Por exemplo, em tente ... pegue ... finalmente, a exceção é capturada e tratada.
Em outros blocos, pode ser desejável ter o erro em tela.
Se verdadeiro, ambiente do topo da pilha de escopo é copiado para o ambiente imediatamente abaixo.
O resultado da execução do escopo, se houver.
Interpretação sem depurador, com medição de performance. Método que efetivamente inicia o processo de interpretação.
Um vetor de declarações gerado pelo Avaliador Sintático.
Se ambiente de execução (variáveis, classes, etc.) deve ser mantido. Normalmente usado pelo modo REPL (LAIR).
Um objeto com o resultado da interpretação.
ProtectedlogicaProtectedprocurarProtectedresolverProtectedresolverResolve todas as interpolações em um texto.
O texto original com as variáveis interpoladas.
Uma lista de variáveis interpoladas.
ProtectedresolverUsado para chamadas de métodos de primitiva. Sendo uma variável ou constante, a primitiva precisa atualizar a referência para o objeto que está sendo acessado.
O objeto que está sendo acessado.
O nome desse objeto, se ele for uma variável ou constante.
ProtectedresolverResolve valores recursivamente, incluindo valores aninhados em arrays e dicionários. Remove metadados que não devem ser serializados.
O objeto a ser resolvido
O valor resolvido sem metadados
ProtectedretirarRetira a interpolação de um texto.
O texto
A lista de interpolações a serem resolvidas.
O texto com o valor das variáveis.
ProtectedtextoProtectedverificarProtectedverificarVerifica se operandos são números, que podem ser tanto variáveis puras do JavaScript
(neste caso, number), ou podem ser variáveis de Delégua com inferência (VariavelInterface).
O símbolo do operador.
O operando direito.
O operando esquerdo.
Se ambos os operandos são números ou não.
Executa uma declaração de classe.
Uma variável do tipo DeleguaClasse é adicionada à pilha de escopos de execução.
A declaração de classe.
Sempre retorna nulo, por ser requerido pelo contrato de visita.
Construtos de comentários não têm utilidade para o Interpretador.
Apenas retornamos Promise.resolve() para não termos erros.
A declaração de comentário.
Executa expressão de definição de constante.
A declaração Const.
Um descritor de informações importantes para o retorno externo.
Executa expressão de definição de múltiplas constantes.
A declaração ConstMultiplo.
Sempre retorna nulo.
Execução de uma escrita na saída configurada, que pode ser console (padrão) ou
alguma função para escrever numa página Web.
A declaração.
Sempre nulo, por convenção de visita.
Execução de uma escrita na saída padrão, sem quebras de linha. Implementada para alguns dialetos, como VisuAlg.
A declaração.
Sempre nulo, por convenção de visita.
Registra os métodos de uma declaração de extensão nos registros de extensão do interpretador.
Registra uma declaração de interface no ambiente de execução.
Interfaces são verificadas em tempo de análise; em tempo de execução, apenas registramos
o nome para possíveis verificações futuras (ex: eInstanciaDe).
Executa uma expressão Se, que tem uma condição, pode ter um bloco Senão, e múltiplos blocos Senão-se.
A declaração Se.
O resultado da avaliação do bloco cuja condição é verdadeira.
Interpretação de uma declaração tente.
O objeto da declaração.
Executa expressão de definição de variável.
A declaração Var
Um descritor de informações importantes para o retorno externo.
Executa expressão de definição de múltiplas variáveis.
A declaração VarMultiplo.
Sempre retorna nulo.
Método base para acesso a intervalo. Por padrão lança erro, pois a maioria dos dialetos (como Delégua padrão) ainda não suporta isso nativamente, apenas Pituguês.
Executa um acesso a método, normalmente de um objeto de classe.
A expressão de acesso.
O resultado da execução.
Avaliação de agrupamento. Se resultado da avaliação é uma declaração de
função (por exemplo, funções anônimas), a declaração é retornada. Este
retorno é utilizado, entre outros lugares, por visitarExpressaoDeChamada.
O construto de agrupamento.
O resultado da avaliação.
Optionaldeclaracao: ContinuaExecução de uma expressão de atribuição.
A expressão.
O valor atribuído.
Executa uma chamada de função, método ou classe.
A expressão chamada.
O resultado da chamada.
Formata uma saída de acordo com o número e espaços e casas decimais solicitados.
A declaração de formatação de escrita.
A saída formatada como texto e os respectivos parâmetros aplicados.
Execução da leitura de valores da entrada configurada no início da aplicação.
Expressão do tipo Leia
Promise com o resultado da leitura.
Optionaldeclaracao: any
O Interpretador visita todos os elementos complexos gerados pelo avaliador sintático (parser), e de fato executa a lógica de programação descrita no código. Este interpretador base é usado por Delégua e todos os seus dialetos, contendo somente os pontos em comum entre todas as linguagens.
O Interpretador Base não contém dependências com o Node.js. É recomendado para uso em execuções que ocorrem no navegador de internet.