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
.
Protected
avancarOs 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.
Optional
tipo: stringProtected
construtoProtected
construtoProtected
consumirProtected
declaracaoProtected
declaracaoProtected
declaracaoProtected
declaracaoEste método é usado por alguns dialetos de Portugol que possuem declarações de múltiplas variáveis na mesma linha.
Protected
declaracaoApó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.
Protected
declaracaoProtected
declaracaoProtected
declaracaoProtected
declaracaoProtected
declaracaoProtected
declaracaoProtected
erroProtected
estaProtected
exponenciacaoDeclaração para comando leia
, para ler dados de entrada do usuário.
Um objeto da classe Leia
.
Protected
funcaoProtected
inicializarInicializa o primeiro nível da pilha de escopos, normalmente com ítens da biblioteca global.
Protected
logicaProtected
logicaProtected
obterProtected
ouProtected
resolverTodas 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
.
Protected
resolverDiversas 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.
Protected
resolverAcessoMetodoOuPropriedade
é 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.
Protected
simboloProtected
sincronizarUsado quando há erros na avaliação sintática. Garante que o código não entre em loop infinito.
Sempre retorna void
.
Protected
validarProtected
verificarProtected
verificarProtected
verificarProtected
verificar
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-node
poderão lidar com todas as funcionalidades de Tenda.