plp.expressions2.expression
Class ExpSoma

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

public class ExpSoma
extends ExpBinaria

Um objeto desta classe representa uma Expressao de Soma.


Constructor Summary
ExpSoma(Expressao esq, Expressao dir)
          Controi uma Expressao de Soma com as sub-expressoes especificadas.
 
Method Summary
 Valor avaliar(AmbienteExecucao amb)
          Retorna o valor da Expressao de Soma
 Tipo getTipo(AmbienteCompilacao ambiente)
          Retorna os tipos possiveis desta expressao.
 
Methods inherited from class plp.expressions2.expression.ExpBinaria
checaTipo, getDir, getEsq, getOperador, toString
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ExpSoma

public ExpSoma(Expressao esq,
               Expressao dir)
Controi uma Expressao de Soma com as sub-expressoes especificadas. Assume-se que estas sub-expressoes resultam em ValorInteiro quando avaliadas.

Parameters:
esq - Expressao da esquerda
dir - Expressao da direita
Method Detail

avaliar

public Valor avaliar(AmbienteExecucao amb)
              throws VariavelNaoDeclaradaException,
                     VariavelJaDeclaradaException
Retorna o valor da Expressao de Soma

Throws:
VariavelNaoDeclaradaException
VariavelJaDeclaradaException

getTipo

public Tipo getTipo(AmbienteCompilacao ambiente)
Retorna os tipos possiveis desta expressao.

Parameters:
ambiente - o ambiente de compilação.
Returns:
os tipos possiveis desta expressao.