ExpEquals.java

Go to the documentation of this file.
00001 package plp.expressions2.expression;
00002 
00003 import plp.expressions1.util.Tipo;
00004 import plp.expressions2.memory.AmbienteCompilacao;
00005 import plp.expressions2.memory.AmbienteExecucao;
00006 import plp.expressions2.memory.VariavelJaDeclaradaException;
00007 import plp.expressions2.memory.VariavelNaoDeclaradaException;
00008 
00013 public class ExpEquals extends ExpBinaria{
00014 
00022         public ExpEquals(Expressao esq, Expressao dir){
00023                 super(esq, dir, "==");
00024         }
00025 
00029         public Valor avaliar(AmbienteExecucao amb) throws VariavelNaoDeclaradaException, VariavelJaDeclaradaException {
00030                 return(
00031                         new ValorBooleano(((ValorConcreto)getEsq().avaliar(amb)).isEquals((ValorConcreto)getDir().avaliar(amb)))
00032                 );
00033         }
00034 
00046         protected boolean checaTipoElementoTerminal(AmbienteCompilacao ambiente)
00047                         throws VariavelNaoDeclaradaException, VariavelJaDeclaradaException {
00048                 return (getEsq().getTipo(ambiente).equals(getDir().getTipo(ambiente)));
00049         }
00050 
00057         public Tipo getTipo(AmbienteCompilacao ambiente) {
00058                 return Tipo.TIPO_BOOLEANO;
00059         }
00060 
00061 }

Generated on Tue Sep 12 21:36:02 2006 for PLP by  doxygen 1.4.7