plp.orientadaAspectos1.declaracao.aspecto.introducao
Class DecIntroducaoComposta

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

public class DecIntroducaoComposta
extends java.lang.Object
implements DecIntroducao

Classe que representa a introducao composta de elementos na estrutura de classes ja existentes


Constructor Summary
DecIntroducaoComposta(DecIntroducao dec1, DecIntroducao dec2)
          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

DecIntroducaoComposta

public DecIntroducaoComposta(DecIntroducao dec1,
                             DecIntroducao dec2)
Construtor

Parameters:
dec1 - A primeira delcaração de introdução
dec2 - A segunda delcaração de introdução
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