plp.imperative1.command
Class While

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

public class While
extends java.lang.Object
implements Comando


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

Constructor Detail

While

public While(Expressao expressao,
             Comando comando)
Method Detail

executar

public AmbienteExecucaoImperativa executar(AmbienteExecucaoImperativa ambiente)
                                    throws IdentificadorJaDeclaradoException,
                                           IdentificadorNaoDeclaradoException,
                                           EntradaVaziaException
Implementa o comando while.

Specified by:
executar in interface Comando
Parameters:
ambiente - o ambiente de execução.
Returns:
o ambiente depois de modificado pela execução do comando while.
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 while

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