plp.expressions2.expression
Interface Expressao

All Known Subinterfaces:
Valor
All Known Implementing Classes:
ExpAnd, ExpBinaria, ExpConcat, ExpDeclaracao, ExpEquals, ExpLength, ExpMenos, ExpNot, ExpOr, ExpSoma, ExpSub, ExpUnaria, Id, ValorBooleano, ValorConcreto, ValorInteiro, ValorString

public interface Expressao

Uma expressao é a unidade basica na Linguagem de Expressoes.


Method Summary
 Valor avaliar(AmbienteExecucao amb)
          Avalia a expressao retornando seu Valor.
 boolean checaTipo(AmbienteCompilacao amb)
          Realiza a verificacao de tipos desta expressao.
 Tipo getTipo(AmbienteCompilacao amb)
          Retorna os tipos possiveis desta expressao.
 

Method Detail

avaliar

Valor avaliar(AmbienteExecucao amb)
              throws VariavelNaoDeclaradaException,
                     VariavelJaDeclaradaException
Avalia a expressao retornando seu Valor.

Throws:
VariavelNaoDeclaradaException
VariavelJaDeclaradaException

checaTipo

boolean checaTipo(AmbienteCompilacao amb)
                  throws VariavelNaoDeclaradaException,
                         VariavelJaDeclaradaException
Realiza a verificacao de tipos desta expressao.

Parameters:
amb - o ambiente que contem o mapeamento entre identificadores e tipos.
Returns:
true se os tipos da expressao sao validos; false caso contrario.
Throws:
VariavelNaoDeclaradaException
VariavelJaDeclaradaException

getTipo

Tipo getTipo(AmbienteCompilacao amb)
             throws VariavelNaoDeclaradaException,
                    VariavelJaDeclaradaException
Retorna os tipos possiveis desta expressao.

Parameters:
amb - o ambiente que contem o mapeamento entre identificadores e tipos.
Returns:
os tipos possiveis desta expressao.
Throws:
VariavelNaoDeclaradaException
VariavelJaDeclaradaException