00001 package plp.orientadaObjetos1.comando;
00002
00003
00004
00005
00006
00007
00008
00009 import plp.orientadaObjetos1.excecao.comando.TryCatchException;
00010 import plp.orientadaObjetos1.excecao.declaracao.ClasseJaDeclaradaException;
00011 import plp.orientadaObjetos1.excecao.declaracao.ClasseNaoDeclaradaException;
00012 import plp.orientadaObjetos1.excecao.declaracao.ObjetoJaDeclaradoException;
00013 import plp.orientadaObjetos1.excecao.declaracao.ObjetoNaoDeclaradoException;
00014 import plp.orientadaObjetos1.excecao.declaracao.ProcedimentoJaDeclaradoException;
00015 import plp.orientadaObjetos1.excecao.declaracao.ProcedimentoNaoDeclaradoException;
00016 import plp.orientadaObjetos1.excecao.declaracao.VariavelJaDeclaradaException;
00017 import plp.orientadaObjetos1.excecao.declaracao.VariavelNaoDeclaradaException;
00018 import plp.orientadaObjetos1.excecao.execucao.EntradaInvalidaException;
00019 import plp.orientadaObjetos1.memoria.AmbienteCompilacao;
00020 import plp.orientadaObjetos1.memoria.AmbienteExecucao;
00021
00025 public interface Comando {
00026
00034 public AmbienteExecucao executar(AmbienteExecucao ambiente)
00035 throws VariavelJaDeclaradaException, VariavelNaoDeclaradaException,
00036 ObjetoJaDeclaradoException, ObjetoNaoDeclaradoException,
00037 ProcedimentoNaoDeclaradoException,ProcedimentoJaDeclaradoException,
00038 ClasseJaDeclaradaException, ClasseNaoDeclaradaException, EntradaInvalidaException, TryCatchException;
00047 public boolean checaTipo(AmbienteCompilacao ambiente)
00048 throws VariavelNaoDeclaradaException, VariavelJaDeclaradaException,
00049 ProcedimentoNaoDeclaradoException, ProcedimentoJaDeclaradoException,
00050 ClasseJaDeclaradaException, ClasseNaoDeclaradaException;
00051
00052 }
00053