Package org.apache.sysds.parser

## Class WhileStatement

- java.lang.Object
- - org.apache.sysds.parser.Statement
  - - org.apache.sysds.parser.WhileStatement

All Implemented Interfaces:
  `ParseInfo`

    public class WhileStatement
    extends Statement

### Nested Class Summary

### Nested classes/interfaces inherited from class org.apache.sysds.parser.Statement

`Statement.FederatedPSScheme, Statement.PSCheckpointing, Statement.PSFrequency, Statement.PSModeType, Statement.PSRuntimeBalancing, Statement.PSScheme, Statement.PSUpdateType`

### Field Summary

### Fields inherited from class org.apache.sysds.parser.Statement

`BOOLEAN_VALUE_TYPE, DOUBLE_VALUE_TYPE, FRAME_DATA_TYPE, GAGG_FN, GAGG_FN_CM, GAGG_FN_CM_ORDER, GAGG_FN_COUNT, GAGG_FN_MAX, GAGG_FN_MEAN, GAGG_FN_MIN, GAGG_FN_SUM, GAGG_FN_VARIANCE, GAGG_GROUPS, GAGG_NUM_GROUPS, GAGG_TARGET, GAGG_WEIGHTS, INT_VALUE_TYPE, MATRIX_DATA_TYPE, OUTPUTSTATEMENT, PS_AGGREGATION_FUN, PS_BATCH_SIZE, PS_CHECKPOINTING, PS_EPOCHS, PS_FEATURES, PS_FED_AGGREGATION_FNAME, PS_FED_BATCH_SIZE, PS_FED_DATA_SIZE, PS_FED_GRADIENTS_FNAME, PS_FED_MODEL_VARID, PS_FED_NAMESPACE, PS_FED_POSS_BATCHES_LOCAL, PS_FED_RUNTIME_BALANCING, PS_FED_WEIGHTING, PS_FREQUENCY, PS_GRADIENTS, PS_HE, PS_HYPER_PARAMS, PS_LABELS, PS_MODE, PS_MODEL, PS_MODELAVG, PS_NBATCHES, PS_PARALLELISM, PS_SCHEME, PS_SEED, PS_UPDATE_FUN, PS_UPDATE_TYPE, PS_VAL_FEATURES, PS_VAL_FUN, PS_VAL_LABELS, SCALAR_DATA_TYPE, SEQ_FROM, SEQ_INCR, SEQ_TO, SETWD, SOURCE, STRING_VALUE_TYPE`

### Constructor Summary

Constructors
`WhileStatement()`

### Method Summary

All Methods Instance Methods Concrete Methods
`void` `addStatementBlock​(StatementBlock sb)`
`boolean` `controlStatement()`
`ArrayList<StatementBlock>` `getBody()`
`ConditionalPredicate` `getConditionalPredicate()`
`VariableSet` `initializebackwardLV​(VariableSet lo)`
`void` `initializeforwardLV​(VariableSet activeIn)`
`void` `mergeStatementBlocks()`
`Statement` `rewriteStatement​(String prefix)`
`void` `setBody​(ArrayList<StatementBlock> body)`
`void` `setPredicate​(ConditionalPredicate pred)`
`String` `toString()`
`VariableSet` `variablesRead()`
`VariableSet` `variablesUpdated()`

### Methods inherited from class org.apache.sysds.parser.Statement

`getBeginColumn, getBeginLine, getEndColumn, getEndLine, getFilename, getText, isEmptyNewLineStatement, printErrorLocation, printWarningLocation, raiseValidateError, raiseValidateError, setBeginColumn, setBeginLine, setCtxValues, setCtxValuesAndFilename, setEmptyNewLineStatement, setEndColumn, setEndLine, setFilename, setParseInfo, setText`

### Methods inherited from class java.lang.Object

`equals, getClass, hashCode, notify, notifyAll, wait, wait, wait`

### Constructor Detail

#### WhileStatement

    public WhileStatement()

### Method Detail

#### rewriteStatement

    public Statement rewriteStatement​(String prefix)

Specified by:
  `rewriteStatement` in class `Statement`

#### setPredicate

    public void setPredicate​(ConditionalPredicate pred)

#### addStatementBlock

    public void addStatementBlock​(StatementBlock sb)

#### getConditionalPredicate

    public ConditionalPredicate getConditionalPredicate()

#### getBody

    public ArrayList<StatementBlock> getBody()

#### setBody

    public void setBody​(ArrayList<StatementBlock> body)

#### controlStatement

    public boolean controlStatement()

Specified by:
  `controlStatement` in class `Statement`

#### mergeStatementBlocks

    public void mergeStatementBlocks()

#### toString

    public String toString()

Overrides:
  `toString` in class `Object`

#### initializeforwardLV

    public void initializeforwardLV​(VariableSet activeIn)

Specified by:
  `initializeforwardLV` in class `Statement`

#### initializebackwardLV

    public VariableSet initializebackwardLV​(VariableSet lo)

Specified by:
  `initializebackwardLV` in class `Statement`

#### variablesRead

    public VariableSet variablesRead()

Specified by:
  `variablesRead` in class `Statement`

#### variablesUpdated

    public VariableSet variablesUpdated()

Specified by:
  `variablesUpdated` in class `Statement`