plp.imperative1.command
Class ComandoDeclaracao
java.lang.Object
plp.imperative1.command.ComandoDeclaracao
- All Implemented Interfaces:
- Comando
public class ComandoDeclaracao
- extends java.lang.Object
- implements Comando
Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
ComandoDeclaracao
public ComandoDeclaracao(Declaracao declaracao,
Comando comando)
executar
public AmbienteExecucaoImperativa executar(AmbienteExecucaoImperativa ambiente)
throws IdentificadorJaDeclaradoException,
IdentificadorNaoDeclaradoException,
EntradaVaziaException
- Declara a(s) variável(is) e executa o comando.
- Specified by:
executar
in interface Comando
- Parameters:
ambiente
- o ambiente que contem o mapeamento entre identificadores
e valores.
- Returns:
- o ambiente modificado pela execução da declaração e do comando.
- Throws:
IdentificadorJaDeclaradoException
IdentificadorNaoDeclaradoException
EntradaVaziaException
checaTipo
public boolean checaTipo(AmbienteCompilacaoImperativa ambiente)
throws IdentificadorJaDeclaradoException,
IdentificadorNaoDeclaradoException,
EntradaVaziaException
- Verifica se o tipo do comando esta correto, levando em conta que
o tipo de uma variavel é o tipo do valor da sua primeira atribuicao.
- Specified by:
checaTipo
in interface Comando
- Parameters:
ambiente
- o ambiente que contem o mapeamento entre identificadores
e tipos.
- Returns:
true
se os comando são bem tipados;
false
caso contrario.
- Throws:
IdentificadorJaDeclaradoException
IdentificadorNaoDeclaradoException
EntradaVaziaException