plp.orientadaAspectos1.declaracao.aspecto.introducao
Class DecIntroducaoProcedimento

java.lang.Object
  extended by plp.orientadaAspectos1.declaracao.aspecto.introducao.DecIntroducaoProcedimento
All Implemented Interfaces:
DecIntroducao, Declaracao

public class DecIntroducaoProcedimento
extends java.lang.Object
implements DecIntroducao

Classe que representa a introducao de procedimentos na estrutura de classes ja existentes


Constructor Summary
DecIntroducaoProcedimento(Id classId, DecProcedimento proc)
          Construtor
 
Method Summary
 boolean checaTipo(AmbienteCompilacao ambiente)
          Verifica se as declarações estão bem tipadas, ou seja, se as expressões de inicialização estão bem tipadas.
 AmbienteExecucao elabora(AmbienteExecucao ambiente)
          Cria um mapeamento dos identificadores para os valores das expressões desta declaração composta no AmbienteExecucao
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DecIntroducaoProcedimento

public DecIntroducaoProcedimento(Id classId,
                                 DecProcedimento proc)
Construtor

Parameters:
classId - Identificador da classe onde será inserido o procedimento
proc - Declaração do procedimento a ser inserido
Method Detail

elabora

public AmbienteExecucao elabora(AmbienteExecucao ambiente)
                         throws VariavelJaDeclaradaException,
                                VariavelNaoDeclaradaException,
                                ClasseJaDeclaradaException,
                                ClasseNaoDeclaradaException,
                                ObjetoNaoDeclaradoException,
                                ObjetoJaDeclaradoException
Cria um mapeamento dos identificadores para os valores das expressões desta declaração composta no AmbienteExecucao

Specified by:
elabora in interface DecIntroducao
Specified by:
elabora in interface Declaracao
Parameters:
ambiente - o ambiente que contem o mapeamento entre identificadores e valores.
Returns:
o ambiente modificado pelas inicializações das variáveis.
Throws:
VariavelJaDeclaradaException
VariavelNaoDeclaradaException
ClasseJaDeclaradaException
ClasseNaoDeclaradaException
ObjetoNaoDeclaradoException
ObjetoJaDeclaradoException

checaTipo

public boolean checaTipo(AmbienteCompilacao ambiente)
                  throws VariavelNaoDeclaradaException,
                         VariavelJaDeclaradaException,
                         ClasseNaoDeclaradaException,
                         ClasseJaDeclaradaException,
                         ProcedimentoJaDeclaradoException,
                         ProcedimentoNaoDeclaradoException,
                         ClasseNaoDeclaradaException,
                         ClasseJaDeclaradaException
Verifica se as declarações estão bem tipadas, ou seja, se as expressões de inicialização estão bem tipadas.

Specified by:
checaTipo in interface DecIntroducao
Specified by:
checaTipo in interface Declaracao
Parameters:
ambiente - o ambiente que contem o mapeamento entre identificadores e seus tipos.
Returns:
true se os tipos da declaração são válidos; false caso contrario.
Throws:
VariavelNaoDeclaradaException
VariavelJaDeclaradaException
ClasseNaoDeclaradaException
ClasseJaDeclaradaException
ProcedimentoJaDeclaradoException
ProcedimentoNaoDeclaradoException