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,
                                           java.lang.InterruptedException
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:
java.lang.InterruptedException
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