00001 package plp.orientadaObjetos1.declaracao; 00002 00003 import plp.orientadaObjetos1.excecao.declaracao.ClasseJaDeclaradaException; 00004 import plp.orientadaObjetos1.excecao.declaracao.ClasseNaoDeclaradaException; 00005 import plp.orientadaObjetos1.excecao.declaracao.ObjetoJaDeclaradoException; 00006 import plp.orientadaObjetos1.excecao.declaracao.ObjetoNaoDeclaradoException; 00007 import plp.orientadaObjetos1.excecao.declaracao.ProcedimentoJaDeclaradoException; 00008 import plp.orientadaObjetos1.excecao.declaracao.ProcedimentoNaoDeclaradoException; 00009 import plp.orientadaObjetos1.excecao.declaracao.VariavelJaDeclaradaException; 00010 import plp.orientadaObjetos1.excecao.declaracao.VariavelNaoDeclaradaException; 00011 import plp.orientadaObjetos1.memoria.AmbienteCompilacao; 00012 import plp.orientadaObjetos1.memoria.AmbienteExecucao; 00016 public interface Declaracao { 00024 public AmbienteExecucao elabora(AmbienteExecucao ambiente) 00025 throws VariavelJaDeclaradaException, VariavelNaoDeclaradaException, 00026 ProcedimentoJaDeclaradoException, ProcedimentoNaoDeclaradoException, 00027 ClasseJaDeclaradaException,ClasseNaoDeclaradaException, 00028 ObjetoNaoDeclaradoException, ObjetoJaDeclaradoException; 00029 00038 public boolean checaTipo(AmbienteCompilacao ambiente) 00039 throws VariavelJaDeclaradaException, VariavelNaoDeclaradaException, 00040 ProcedimentoJaDeclaradoException, ProcedimentoNaoDeclaradoException, 00041 ClasseJaDeclaradaException,ClasseNaoDeclaradaException; 00042 00043 }