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
00012 public interface Expressao {
00013
00017 Valor avaliar(AmbienteExecucao amb) throws VariavelNaoDeclaradaException, VariavelJaDeclaradaException;
00018
00027 boolean checaTipo(AmbienteCompilacao amb) throws VariavelNaoDeclaradaException, VariavelJaDeclaradaException;
00028
00036 Tipo getTipo(AmbienteCompilacao amb) throws VariavelNaoDeclaradaException, VariavelJaDeclaradaException;
00037
00038 }