00001 package plp.orientadaObjetos1.comando;
00002
00003
00004
00005
00006
00007
00008
00009 import plp.expressions2.memory.VariavelJaDeclaradaException;
00010 import plp.expressions2.memory.VariavelNaoDeclaradaException;
00011 import plp.orientadaObjetos1.excecao.declaracao.ClasseJaDeclaradaException;
00012 import plp.orientadaObjetos1.excecao.declaracao.ClasseNaoDeclaradaException;
00013 import plp.orientadaObjetos1.excecao.declaracao.ObjetoJaDeclaradoException;
00014 import plp.orientadaObjetos1.excecao.declaracao.ObjetoNaoDeclaradoException;
00015 import plp.orientadaObjetos1.excecao.declaracao.ProcedimentoJaDeclaradoException;
00016 import plp.orientadaObjetos1.excecao.declaracao.ProcedimentoNaoDeclaradoException;
00017 import plp.orientadaObjetos1.excecao.execucao.EntradaInvalidaException;
00018 import plp.orientadaObjetos1.memoria.AmbienteCompilacaoOO1;
00019 import plp.orientadaObjetos1.memoria.AmbienteExecucaoOO1;
00020
00024 public interface Comando {
00025
00032 public AmbienteExecucaoOO1 executar(AmbienteExecucaoOO1 ambiente)
00033 throws VariavelJaDeclaradaException, VariavelNaoDeclaradaException,
00034 ObjetoJaDeclaradoException, ObjetoNaoDeclaradoException,
00035 ProcedimentoNaoDeclaradoException,ProcedimentoJaDeclaradoException,
00036 ClasseJaDeclaradaException, ClasseNaoDeclaradaException, EntradaInvalidaException;
00045 public boolean checaTipo(AmbienteCompilacaoOO1 ambiente)
00046 throws VariavelNaoDeclaradaException, VariavelJaDeclaradaException,
00047 ProcedimentoNaoDeclaradoException, ProcedimentoJaDeclaradoException,
00048 ClasseJaDeclaradaException, ClasseNaoDeclaradaException;
00049
00050 }
00051