plp.imperative1.command
Class IfThenElse

java.lang.Object
  extended by plp.imperative1.command.IfThenElse
All Implemented Interfaces:
Comando

public class IfThenElse
extends java.lang.Object
implements Comando


Constructor Summary
IfThenElse(Expressao expressao, Comando comandoThen, Comando comandoElse)
           
 
Method Summary
 boolean checaTipo(AmbienteCompilacaoImperativa ambiente)
          Realiza a verificacao de tipos da expressão e dos comandos do comando if then else
 AmbienteExecucaoImperativa executar(AmbienteExecucaoImperativa ambiente)
          Implementa o comando if then else.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

IfThenElse

public IfThenElse(Expressao expressao,
                  Comando comandoThen,
                  Comando comandoElse)
Method Detail

executar

public AmbienteExecucaoImperativa executar(AmbienteExecucaoImperativa ambiente)
                                    throws IdentificadorJaDeclaradoException,
                                           IdentificadorNaoDeclaradoException,
                                           EntradaVaziaException
Implementa o comando if then else.

Specified by:
executar in interface Comando
Parameters:
ambiente - o ambiente de execução.
Returns:
o ambiente depois de modificado pela execução do comando if then else.
Throws:
IdentificadorJaDeclaradoException
IdentificadorNaoDeclaradoException
EntradaVaziaException

checaTipo

public boolean checaTipo(AmbienteCompilacaoImperativa ambiente)
                  throws IdentificadorJaDeclaradoException,
                         IdentificadorNaoDeclaradoException,
                         EntradaVaziaException
Realiza a verificacao de tipos da expressão e dos comandos do comando if then else

Specified by:
checaTipo in interface Comando
Parameters:
ambiente - o ambiente de compilação.
Returns:
true se a expressão e os comando são bem tipados; false caso contrario.
Throws:
IdentificadorJaDeclaradoException
IdentificadorNaoDeclaradoException
EntradaVaziaException