plp.orientadaObjetos1.memoria
Interface AmbienteExecucaoOO1

All Superinterfaces:
Ambiente<Valor>, AmbienteOO1<Valor>
All Known Implementing Classes:
ContextoExecucaoOO1

public interface AmbienteExecucaoOO1
extends AmbienteOO1<Valor>

Classe que representa um ambiente de execução, contendo om mapeamento entre identificadores e valores.


Method Summary
 void changeValor(Id idArg, Valor valorId)
          Altera o valor associado a um identificador.
 ContextoExecucaoOO1 getContextoIdValor()
          Obtém um novo contexto de execução com a mesma entrada, saída e pilha de mapeamentos id/valor.
 ListaValor getEntrada()
          Obtém a entrada.
 java.util.HashMap<Id,DefClasse> getMapDefClasse()
          Retorna a pilha com as definiçoes das classes.
 Objeto getObjeto(ValorRef valorRef)
          Obtém o objeto associado a um dado valor referencia.
 java.util.Stack<java.util.HashMap<Id,Valor>> getPilha()
          Obtém a pilha de valores associados a identificadores
 java.util.Stack<java.util.HashMap<ValorRef,Objeto>> getPilhaObjeto()
          Obtém a pilha com os objetos e seus valores.
 ValorRef getProxRef()
          Obtém a próxima referência de acordo com o contexto atual de execução.
 ValorRef getRef()
          Obtém o valor referencia atual.
 ListaValor getSaida()
          Obtém a saída.
 void mapObjeto(ValorRef valorRef, Objeto objeto)
          Mapeia um valor referência a um objeto.
 Valor read(Tipo tipoIdLido)
          Lê da entrada padrão e associa o conteúdo a um determinado identificador.
 AmbienteExecucaoOO1 write(Valor v)
          Escreve um valor 'v' na saída.
 
Methods inherited from interface plp.orientadaObjetos1.memoria.AmbienteOO1
getDefClasse, mapDefClasse
 
Methods inherited from interface plp.expressions2.memory.Ambiente
get, incrementa, map, restaura
 

Method Detail

getPilha

java.util.Stack<java.util.HashMap<Id,Valor>> getPilha()
Obtém a pilha de valores associados a identificadores

Returns:
a pilha de valores associados a identificadores.

getMapDefClasse

java.util.HashMap<Id,DefClasse> getMapDefClasse()
Retorna a pilha com as definiçoes das classes.

Returns:
a pilha com as definiçoes das classes.

getPilhaObjeto

java.util.Stack<java.util.HashMap<ValorRef,Objeto>> getPilhaObjeto()
Obtém a pilha com os objetos e seus valores.

Returns:
a pilha com os objetos e seus valores.

mapObjeto

void mapObjeto(ValorRef valorRef,
               Objeto objeto)
               throws ObjetoJaDeclaradoException
Mapeia um valor referência a um objeto.

Parameters:
valorRef - Valor referência.
objeto - Objeto.
Throws:
ObjetoJaDeclaradoException - Quando esse objeto já foi declarado.

changeValor

void changeValor(Id idArg,
                 Valor valorId)
                 throws VariavelNaoDeclaradaException
Altera o valor associado a um identificador.

Parameters:
idArg - Identificador.
valorId - O valor a ser associado ao identificador.
Throws:
VariavelNaoDeclaradaException - Quando a variável não foi declarada.

getObjeto

Objeto getObjeto(ValorRef valorRef)
                 throws ObjetoNaoDeclaradoException
Obtém o objeto associado a um dado valor referencia.

Parameters:
valorRef - Valor referência
Returns:
o objeto associado a um dado valor referencia.
Throws:
ObjetoNaoDeclaradoException - Quando o objeto não foi declarado.

getProxRef

ValorRef getProxRef()
Obtém a próxima referência de acordo com o contexto atual de execução.

Returns:
a próxima referência de acordo com o contexto atual de execução.

getRef

ValorRef getRef()
Obtém o valor referencia atual.

Returns:
o valor referencia atual.

read

Valor read(Tipo tipoIdLido)
           throws EntradaInvalidaException
Lê da entrada padrão e associa o conteúdo a um determinado identificador.

Parameters:
tipoIdLido - Tipo do identificador ao qual será associado o valor lido.
Returns:
o valor lido.
Throws:
EntradaInvalidaException - Quando a entrada fornecida não pode ser atribuída ao tipo do identificador.

write

AmbienteExecucaoOO1 write(Valor v)
Escreve um valor 'v' na saída.

Parameters:
v - O valor a ser escrito.
Returns:
o ambiente de execução, que representa o estado atual.

getEntrada

ListaValor getEntrada()
Obtém a entrada.

Returns:
a entrada.

getSaida

ListaValor getSaida()
Obtém a saída.

Returns:
a saída.

getContextoIdValor

ContextoExecucaoOO1 getContextoIdValor()
Obtém um novo contexto de execução com a mesma entrada, saída e pilha de mapeamentos id/valor.

Returns:
um novo contexto de execução com a mesma entrada, saída e pilha de mapeamentos id/valor.