plp.expressions2.expression
Class ExpDeclaracao

java.lang.Object
  extended by plp.expressions2.expression.ExpDeclaracao
All Implemented Interfaces:
Expressao

public class ExpDeclaracao
extends java.lang.Object
implements Expressao


Constructor Summary
ExpDeclaracao(java.util.List<DecVariavel> declarations, Expressao expressaoArg)
           
 
Method Summary
 Valor avaliar(AmbienteExecucao ambiente)
          Avalia a expressao retornando seu Valor.
 boolean checaTipo(AmbienteCompilacao ambiente)
          Realiza a verificacao de tipos desta expressao.
 Tipo getTipo(AmbienteCompilacao ambiente)
          Retorna os tipos possiveis desta expressao.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ExpDeclaracao

public ExpDeclaracao(java.util.List<DecVariavel> declarations,
                     Expressao expressaoArg)
Method Detail

avaliar

public Valor avaliar(AmbienteExecucao ambiente)
              throws VariavelNaoDeclaradaException,
                     VariavelJaDeclaradaException
Description copied from interface: Expressao
Avalia a expressao retornando seu Valor.

Specified by:
avaliar in interface Expressao
Throws:
VariavelNaoDeclaradaException
VariavelJaDeclaradaException

checaTipo

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

Specified by:
checaTipo in interface Expressao
Parameters:
amb - o ambiente de compilação.
Returns:
true se os tipos da expressao sao validos; false caso contrario.
Throws:
VariavelNaoDeclaradaException - se existir um identificador nao declarado no ambiente.
VariavelNaoDeclaradaException - se existir um identificador declarado mais de uma vez no mesmo bloco do ambiente.
VariavelJaDeclaradaException

getTipo

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

Specified by:
getTipo in interface Expressao
Parameters:
amb - o ambiente de compilação.
Returns:
os tipos possiveis desta expressao.
Throws:
VariavelNaoDeclaradaException - se existir um identificador nao declarado no ambiente.
VariavelNaoDeclaradaException - se existir um identificador declarado mais de uma vez no mesmo bloco do ambiente.
VariavelJaDeclaradaException