plp.orientadaObjetos1
Class Programa

java.lang.Object
  extended by plp.orientadaObjetos1.Programa

public class Programa
extends java.lang.Object

Classe que representa um programa na linguagem OO.


Field Summary
private  Comando comando
          Comando executado após a declaraçao de classes
private  DecClasse decClasse
          Declaraçao de classe
 
Constructor Summary
Programa(DecClasse decClasse, Comando comando)
          Construtor.
 
Method Summary
 boolean checaTipo(AmbienteCompilacao ambiente)
          Realiza a verificacao de tipos do programa
 ListaValor executar(AmbienteExecucao ambiente)
          Executa o programa.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

decClasse

private DecClasse decClasse
Declaraçao de classe


comando

private Comando comando
Comando executado após a declaraçao de classes

Constructor Detail

Programa

public Programa(DecClasse decClasse,
                Comando comando)
Construtor.

Parameters:
decClasse - A declaraçao de classe(s)
comando - O comando executado após a declaraçao.
Method Detail

executar

public ListaValor executar(AmbienteExecucao ambiente)
                    throws VariavelNaoDeclaradaException,
                           VariavelJaDeclaradaException,
                           ObjetoNaoDeclaradoException,
                           ObjetoJaDeclaradoException,
                           ProcedimentoJaDeclaradoException,
                           ProcedimentoNaoDeclaradoException,
                           ClasseJaDeclaradaException,
                           ClasseNaoDeclaradaException,
                           EntradaNaoFornecidaException,
                           EntradaInvalidaException,
                           java.lang.InterruptedException
Executa o programa.

Parameters:
ambiente - o ambiente de execução.
Returns:
o ambiente depois de modificado pela execução do programa.
Throws:
EntradaNaoFornecidaException - se não for fornecida a tail de valores de entrada do programa.
java.lang.InterruptedException
VariavelNaoDeclaradaException
VariavelJaDeclaradaException
ObjetoNaoDeclaradoException
ObjetoJaDeclaradoException
ProcedimentoJaDeclaradoException
ProcedimentoNaoDeclaradoException
ClasseJaDeclaradaException
ClasseNaoDeclaradaException
EntradaInvalidaException

checaTipo

public boolean checaTipo(AmbienteCompilacao ambiente)
                  throws VariavelNaoDeclaradaException,
                         VariavelJaDeclaradaException,
                         ProcedimentoNaoDeclaradoException,
                         ProcedimentoJaDeclaradoException,
                         ClasseJaDeclaradaException,
                         ClasseNaoDeclaradaException,
                         EntradaNaoFornecidaException
Realiza a verificacao de tipos do programa

Parameters:
ambiente - o ambiente de compilação.
Returns:
true se o programa está bem tipado; false caso contrario.
Throws:
EntradaNaoFornecidaException - se não for fornecida a tail de valores de entrada do programa.
VariavelNaoDeclaradaException
VariavelJaDeclaradaException
ProcedimentoNaoDeclaradoException
ProcedimentoJaDeclaradoException
ClasseJaDeclaradaException
ClasseNaoDeclaradaException