plp.orientadaObjetos2.comando
Class ChamadaMetodoOO2
java.lang.Object
plp.orientadaObjetos1.comando.ChamadaMetodo
plp.orientadaObjetos2.comando.ChamadaMetodoOO2
- All Implemented Interfaces:
- Comando
public class ChamadaMetodoOO2
- extends ChamadaMetodo
Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
ChamadaMetodoOO2
public ChamadaMetodoOO2(Expressao expressao,
Id nomeMetodo,
ListaExpressao parametrosReais)
executar
public AmbienteExecucao executar(AmbienteExecucao ambiente)
throws VariavelJaDeclaradaException,
VariavelNaoDeclaradaException,
ProcedimentoNaoDeclaradoException,
ProcedimentoJaDeclaradoException,
ObjetoJaDeclaradoException,
ObjetoNaoDeclaradoException,
ClasseNaoDeclaradaException,
ClasseJaDeclaradaException,
EntradaInvalidaException
- Description copied from class:
ChamadaMetodo
- Executa uma chamada de método.
- Specified by:
executar
in interface Comando
- Overrides:
executar
in class ChamadaMetodo
- Parameters:
ambiente
- O ambiente de execução, que guarda o mapeamento
de identificadores a valores.
- Returns:
- o Ambiente de Execução atualizado.
- Throws:
VariavelJaDeclaradaException
VariavelNaoDeclaradaException
ProcedimentoNaoDeclaradoException
ProcedimentoJaDeclaradoException
ObjetoJaDeclaradoException
ObjetoNaoDeclaradoException
ClasseNaoDeclaradaException
ClasseJaDeclaradaException
EntradaInvalidaException
checaTipo
public boolean checaTipo(AmbienteCompilacao ambiente)
throws VariavelNaoDeclaradaException,
VariavelJaDeclaradaException,
ClasseNaoDeclaradaException
- Description copied from class:
ChamadaMetodo
- Realiza a verificação de tipos desta chamada de método, onde
o tipo do método deve estar na definição da classe obtida
a partir de expressão.
- Specified by:
checaTipo
in interface Comando
- Overrides:
checaTipo
in class ChamadaMetodo
- Parameters:
ambiente
- o ambiente que contem o mapeamento entre identificadores
e tipos.
- Returns:
true
se a chamada de método está bem tipada;
false
caso contrario.
- Throws:
VariavelNaoDeclaradaException
VariavelJaDeclaradaException
ClasseNaoDeclaradaException