00001 package plp.functional1.declaration; 00002 00003 import plp.expressions1.util.Tipo; 00004 import plp.expressions2.expression.Expressao; 00005 import plp.expressions2.expression.Id; 00006 import plp.expressions2.memory.AmbienteCompilacao; 00007 import plp.expressions2.memory.VariavelJaDeclaradaException; 00008 import plp.expressions2.memory.VariavelNaoDeclaradaException; 00009 00010 public interface DeclaracaoFuncional { 00011 00012 public Id getID(); 00013 00019 public int getAridade(); 00020 00026 public Expressao getExpressao(); 00027 00039 public boolean checaTipo(AmbienteCompilacao ambiente) 00040 throws VariavelNaoDeclaradaException, VariavelJaDeclaradaException; 00041 00054 Tipo getTipo(AmbienteCompilacao amb) 00055 throws VariavelNaoDeclaradaException, VariavelJaDeclaradaException; 00056 }