00001 package plp.expressions2.expression; 00002 00003 import plp.expressions2.expression.Valor; 00004 import plp.expressions2.memory.AmbienteCompilacao; 00005 import plp.expressions2.memory.AmbienteExecucao; 00006 00012 public abstract class ValorConcreto<T> implements Valor { 00013 00014 private T valor; 00015 00019 public String toString() { 00020 return String.valueOf(valor); 00021 } 00022 00026 public ValorConcreto( T valor) { 00027 this.valor = valor; 00028 } 00029 00030 00034 public T valor(){ 00035 return valor; 00036 } 00037 00038 00042 public boolean isEquals(ValorConcreto<T> obj) { 00043 return valor().equals(obj.valor()); 00044 00045 00046 } 00047 00051 public Valor avaliar(AmbienteExecucao amb) { 00052 return this; 00053 } 00054 00063 public boolean checaTipo(AmbienteCompilacao amb) { 00064 return true; 00065 } 00066 00067 }