Se símbolo de operação é +, -, += ou -=, monta objeto Binario para
ser avaliado pelo Interpretador.
Um Construto, normalmente um Binario, ou Unario se houver alguma operação unária para ser avaliada.
Este é o ponto de entrada de toda a avaliação sintática. É o único método mencionado na interface do avaliador sintático, e cada avaliador sintático deve implementar o seu método.
O retorno do Lexador.
O hash do arquivo, gerado pela função cyrb53.
Método que resolve atribuições.
Um construto do tipo Atribuir, Conjunto ou AtribuicaoPorIndice.
ProtectedavancarOs métodos a seguir só devem ser implementados se o dialeto em questão realmente possui a funcionalidade, e devem levantar erro em caso contrário.
Optionaltipo: stringProtectedconstrutoProtectedconstrutoProtectedconsumirProtecteddeclaracaoProtecteddeclaracaoProtecteddeclaracaoProtecteddeclaracaoEste método é usado por alguns dialetos de Portugol que possuem declarações de múltiplas variáveis na mesma linha.
ProtecteddeclaracaoApós palavra reservada seja, é esperado ou uma variável, ou uma função.
Um Construto, ou do tipo Var para variável, ou do tipo FuncaoDeclaracao se for
declaração de função.
ProtecteddeclaracaoProtecteddeclaracaoProtecteddeclaracaoProtecteddeclaracaoProtecteddeclaracaoProtectedestaProtectedexponenciacaoA exponenciacão é uma exceção na ordem de avaliação (resolve primeiro à direita).
Por isso direito chama exponenciacao(), e não unario().
A expressão binária na forma do construto Binario.
Declaração para comando leia, para ler dados de entrada do usuário.
Um objeto da classe Leia.
ProtectedfuncaoProtectedinicializarInicializa o primeiro nível da pilha de escopos, normalmente com ítens da biblioteca global.
ProtectedlogicaProtectedlogicaProtectedobterProtectedouProtectedresolverTodas as resoluções triviais da linguagem, ou seja, todas as resoluções que podem ocorrer dentro ou fora de um bloco.
Normalmente uma Declaracao, mas há casos em que
outros objetos podem ser retornados.
Até então, Tenda não tem casos de declarações fora de blocos. Isso pode mudar futuramente. Portanto, esta seção será mantida.
Uma Declaracao ou várias, dependendo do retorno de resolverDeclaracao.
ProtectedresolverDiversas verificações de resolução de entidade chamada, como resolver chamada da pilha ou usar referência, argumentos, etc.
A entidade chamada resolvida, se as validações passarem.
ProtectedresolverAcessoMetodoOuPropriedade é um construto intermediário em Delégua, e deve ser resolvido como outro
construto antes de qualquer outra próxima etapa. Algumas validações adicionais também ocorrem aqui.
O construto original.
O construto resolvido como um tipo mais específico.
ProtectedsimboloProtectedsincronizarUsado quando há erros na avaliação sintática. Garante que o código não entre em loop infinito.
Sempre retorna void.
ProtectedvalidarProtectedverificarProtectedverificarProtectedverificarProtectedverificar
Este avaliador sintático emite todos os símbolos de Tenda. No entanto, nem todo símbolo emitido aqui pode ser interpretado por este núcleo, já que Tenda tem Rust como base, e várias de suas funções requerem interface com um sistema operacional. Outros pacotes do ecossistema de Delégua, como
delegua-nodepoderão lidar com todas as funcionalidades de Tenda.