Class And
java.lang.Object
org.jfuncmachine.compiler.model.SourceElement
org.jfuncmachine.compiler.model.expr.bool.BooleanExpr
org.jfuncmachine.compiler.model.expr.bool.And
Represents a short-circuiting and of boolean expressions.
-
Field Summary
FieldsModifier and TypeFieldDescriptionThe left-hand side of the and expressionThe right-hand side of the and expressionFields inherited from class org.jfuncmachine.compiler.model.expr.bool.BooleanExpr
labelFields inherited from class org.jfuncmachine.compiler.model.SourceElement
filename, lineNumber -
Constructor Summary
ConstructorsConstructorDescriptionAnd(BooleanExpr left, BooleanExpr right) Create an And expression with the given left- and right-hand sidesAnd(BooleanExpr left, BooleanExpr right, String filename, int lineNumber) Create an And expression with the given left- and right-hand sides -
Method Summary
Modifier and TypeMethodDescriptioncomputeSequence(BooleanExpr trueNext, BooleanExpr falseNext, List<BooleanExpr> tests) Compute a sequence of tests to determine if this expression is true or falseinvert()Invert this expression, which may involve reversing comparisons or changing and to or with inverted tests, etc.Remove any not expressions from a tree of boolean expressions by inverting the expression under the notvoidreset()Resets any values modified during code generationMethods inherited from class org.jfuncmachine.compiler.model.SourceElement
generateException
-
Field Details
-
left
The left-hand side of the and expression -
right
The right-hand side of the and expression
-
-
Constructor Details
-
And
Create an And expression with the given left- and right-hand sides- Parameters:
left- The left-hand side of the and expressionright- The right-hand side of the and expression
-
And
Create an And expression with the given left- and right-hand sides- Parameters:
left- The left-hand side of the and expressionright- The right-hand side of the and expressionfilename- The source filename this expression is associated withlineNumber- The source line number this expression is associated with
-
-
Method Details
-
invert
Description copied from class:BooleanExprInvert this expression, which may involve reversing comparisons or changing and to or with inverted tests, etc.- Specified by:
invertin classBooleanExpr- Returns:
- An inverted boolean expression
-
removeNot
Description copied from class:BooleanExprRemove any not expressions from a tree of boolean expressions by inverting the expression under the not- Specified by:
removeNotin classBooleanExpr- Returns:
- a BooleanExpr with any nested Not constructions removed
-
reset
public void reset()Description copied from class:BooleanExprResets any values modified during code generation- Overrides:
resetin classBooleanExpr
-
computeSequence
public BooleanExpr computeSequence(BooleanExpr trueNext, BooleanExpr falseNext, List<BooleanExpr> tests) Description copied from class:BooleanExprCompute a sequence of tests to determine if this expression is true or false- Specified by:
computeSequencein classBooleanExpr- Parameters:
trueNext- The next expression to evaluate if this expression is truefalseNext- The next expression to evaluate if this expression is falsetests- An accumulator for the tests to be executed- Returns:
- The beginning of the sequence
-