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.
ProtectedavaliarProtectedchamarFaz 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.
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.
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.
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.
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.