pascalinterpreter
Class ControlStatement

java.lang.Object
  extended bypascalinterpreter.Command
      extended bypascalinterpreter.ControlStatement
Direct Known Subclasses:
For, IfElse, While

public abstract class ControlStatement
extends Command


Field Summary
private  Block block
           
private  BinaryOperation controlCondition
           
 
Constructor Summary
ControlStatement()
           
 
Method Summary
private  void checkControlCondition(BinaryOperation controlCondition)
          Metoda sprawdza, czy operacja binarna jest poprawnym warunkiem, koniecznym do działania instrukcji sterującej.
 Block getBlock()
           
protected  BinaryOperation getControlCondition()
           
protected  Variable getRegistry()
          Metoda umożliwia odczyt z rejestru klasom potomnym.
protected  boolean isConditionTrue()
          Metoda sprawdza warunek wykonywania instrukcji sterującej.
protected  void setBlock(Block block)
           
protected  void setControlCondition(BinaryOperation controlCondition)
           
 
Methods inherited from class pascalinterpreter.Command
execute
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

controlCondition

private BinaryOperation controlCondition

block

private Block block
Constructor Detail

ControlStatement

public ControlStatement()
Method Detail

getBlock

public Block getBlock()
Returns:

setBlock

protected void setBlock(Block block)
Parameters:
block -

checkControlCondition

private void checkControlCondition(BinaryOperation controlCondition)
                            throws AnalyseException
Metoda sprawdza, czy operacja binarna jest poprawnym warunkiem, koniecznym do działania instrukcji sterującej.

Throws:
AnalyseException

getControlCondition

protected BinaryOperation getControlCondition()
Returns:

setControlCondition

protected void setControlCondition(BinaryOperation controlCondition)
                            throws AnalyseException
Throws:
AnalyseException

isConditionTrue

protected boolean isConditionTrue()
                           throws InternalException,
                                  RuntimeException
Metoda sprawdza warunek wykonywania instrukcji sterującej.

Returns:
True, jeżeli warunek spełniony - false, jeżeli nie.
Throws:
InternalException - - Wyjątek generowany, jeżeli warunek nie może zostać sprawdzony.
RuntimeException - - Wyjątek mogący powstać przy wykonywaniu operacji warunkowej dla instrukcji sterującej.

getRegistry

protected Variable getRegistry()
                        throws InternalException
Metoda umożliwia odczyt z rejestru klasom potomnym.

Returns:
Wartość rejestru.
Throws:
InternalException - - Wyjątek generowany przy próbie odczytu z pustego rejestru.