plp.orientadaObjetos1.memoria
Interface AmbienteCompilacao

All Superinterfaces:
Ambiente
All Known Implementing Classes:
ContextoCompilacao

public interface AmbienteCompilacao
extends Ambiente

Classe que representa o ambiente de compilação, contendo o mapeamento entre identificadores e tipos.


Method Summary
 ListaDeclaracaoParametro getParametrosProcedimento(Id idArg)
          Obtém a tail de parâmetros associada a um identificador que representa nome do método.
 Tipo getTipo(Id idArg)
          Obtém o tipo associado a um dado identificador
 Tipo getTipoEntrada()
          Obtém o tipo da entrada atual para este ambiente.
 void mapParametrosProcedimento(Id idArg, ListaDeclaracaoParametro parametrosId)
          Mapeia um identificador representando um método aos seus parâmetros.
 void mapTipo(Id idArg, Tipo tipoId)
          Mapeia um identificador a um tipo.
 
Methods inherited from interface plp.orientadaObjetos1.memoria.Ambiente
getDefClasse, incrementa, mapDefClasse, restaura
 

Method Detail

mapTipo

void mapTipo(Id idArg,
             Tipo tipoId)
             throws VariavelJaDeclaradaException
Mapeia um identificador a um tipo.

Parameters:
idArg - Identificador
tipoId - Tipo que deve ser associado ao identificador.
Throws:
VariavelJaDeclaradaException - quando o id já foi declarado.

getTipo

Tipo getTipo(Id idArg)
             throws VariavelNaoDeclaradaException
Obtém o tipo associado a um dado identificador

Parameters:
idArg - Identificador
Returns:
Tipo associado a um dado identificador
Throws:
VariavelNaoDeclaradaException - quando id não foi declarado.

mapParametrosProcedimento

void mapParametrosProcedimento(Id idArg,
                               ListaDeclaracaoParametro parametrosId)
                               throws ProcedimentoJaDeclaradoException
Mapeia um identificador representando um método aos seus parâmetros.

Parameters:
idArg - identificador do método.
parametrosId - Parâmetros do método
Throws:
ProcedimentoJaDeclaradoException - quando o procedimento já foi declarado.

getParametrosProcedimento

ListaDeclaracaoParametro getParametrosProcedimento(Id idArg)
                                                   throws ProcedimentoNaoDeclaradoException
Obtém a tail de parâmetros associada a um identificador que representa nome do método.

Parameters:
idArg - Identificador que representa o nome do método.
Returns:
Lista de parâmetros Lista de parâmetros associada a um identificador que representa nome do método.
Throws:
ProcedimentoNaoDeclaradoException - quando não foi declarado nenhum método com esse id.

getTipoEntrada

Tipo getTipoEntrada()
                    throws VariavelNaoDeclaradaException
Obtém o tipo da entrada atual para este ambiente.

Returns:
o tipo da entrada.
Throws:
VariavelNaoDeclaradaException - quando a entrada atual é uma variável não declarada.