Package com.strobel.expressions
Class BlockExpression
java.lang.Object
com.strobel.expressions.Expression
com.strobel.expressions.BlockExpression
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected Expression
accept
(ExpressionVisitor visitor) Dispatches to the specific visit method for this node type.(package private) Expression
getExpression
(int index) (package private) int
final ExpressionList
<? extends Expression> final ExpressionType
Returns the node type of thisExpression
.(package private) ExpressionList
<? extends Expression> (package private) ParameterExpressionList
final Expression
Type
<?> getType()
Gets the static type of the expression that thisExpression
represents.(package private) ParameterExpression
getVariable
(int index) (package private) int
final ParameterExpressionList
(package private) static ExpressionList
<? extends Expression> returnReadOnlyExpressions
(BlockExpression provider, Object expressionOrCollection) (package private) BlockExpression
rewrite
(ParameterExpressionList variables, Expression[] args) Methods inherited from class com.strobel.expressions.Expression
add, add, addAssign, addAssign, addAssign, and, and, andAlso, andAlso, andAlso, andAssign, andAssign, andAssign, arrayIndex, arrayLength, arrayToList, arrayToList, arrayToReadOnlyList, assign, base, block, block, block, block, block, block, block, block, block, block, block, block, block, block, box, call, call, call, call, call, call, call, call, call, call, canReduce, classConstant, coalesce, coalesce, concat, concat, concat, condition, condition, constant, constant, convert, convert, decrement, decrement, defaultValue, divide, divide, divideAssign, divideAssign, divideAssign, empty, ensureUnmodifiable, equal, equal, exclusiveOr, exclusiveOr, exclusiveOrAssign, exclusiveOrAssign, exclusiveOrAssign, field, field, field, field, forEach, forEach, forEach, getDebugView, getInvokeMethod, getInvokeMethod, getMethodValidated, greaterThan, greaterThan, greaterThanOrEqual, greaterThanOrEqual, ifThen, ifThenElse, increment, increment, instanceOf, invoke, invoke, isFalse, isFalse, isNotNull, isNull, isTrue, isTrue, label, label, label, label, label, label, lambda, lambda, lambda, lambda, lambda, lambda, lambda, lambda, lambda, lambda, lambda, lambda, lambda, leftShift, leftShift, leftShiftAssign, leftShiftAssign, leftShiftAssign, lessThan, lessThan, lessThanOrEqual, lessThanOrEqual, loop, loop, loop, makeBinary, makeBinary, makeBinary, makeBinary, makeBinary, makeBreak, makeBreak, makeBreak, makeBreak, makeCatch, makeCatch, makeCatch, makeCatch, makeCatch, makeCatch, makeContinue, makeContinue, makeFor, makeFor, makeFor, makeGoto, makeGoto, makeGoto, makeGoto, makeGoto, makeMemberAccess, makeNew, makeNew, makeNew, makeNew, makeReturn, makeReturn, makeReturn, makeReturn, makeSwitch, makeSwitch, makeSwitch, makeSwitch, makeSwitch, makeSwitch, makeSwitch, makeSwitch, makeSwitch, makeSwitch, makeSwitch, makeSwitch, makeSwitch, makeThrow, makeThrow, makeTry, makeTry, makeTry, makeUnary, makeUnary, methodArgumentsMatch, modulo, modulo, moduloAssign, moduloAssign, moduloAssign, multiply, multiply, multiplyAssign, multiplyAssign, multiplyAssign, negate, negate, newArrayBounds, newArrayInit, newArrayInit, not, not, notEqual, notEqual, onesComplement, onesComplement, or, or, orAssign, orAssign, orAssign, orElse, orElse, orElse, parameter, parameter, parameterIsAssignable, parameters, performBinaryNumericPromotion, postDecrementAssign, postDecrementAssign, postIncrementAssign, postIncrementAssign, preDecrementAssign, preDecrementAssign, preIncrementAssign, preIncrementAssign, reduce, reduceAndCheck, reduceExtensions, referenceEqual, referenceNotEqual, returnObject, rightShift, rightShift, rightShiftAssign, rightShiftAssign, rightShiftAssign, runtimeVariables, runtimeVariables, self, subtract, subtract, subtractAssign, subtractAssign, subtractAssign, switchCase, switchCase, toString, tryCatch, tryCatchFinally, tryFinally, typeEqual, unaryPlus, unaryPlus, unbox, unbox, unsignedRightShift, unsignedRightShift, unsignedRightShiftAssign, unsignedRightShiftAssign, unsignedRightShiftAssign, validateVariables, variable, variable, variables, visitChildren
-
Constructor Details
-
BlockExpression
public BlockExpression()
-
-
Method Details
-
getExpressions
-
getVariables
-
getResult
-
getNodeType
Description copied from class:Expression
Returns the node type of thisExpression
.- Overrides:
getNodeType
in classExpression
- Returns:
- the
ExpressionType
that represents this expression.
-
getType
Description copied from class:Expression
Gets the static type of the expression that thisExpression
represents.- Overrides:
getType
in classExpression
- Returns:
- the
Type
that represents the static type of the expression.
-
accept
Description copied from class:Expression
Dispatches to the specific visit method for this node type. For example,BinaryExpression
will call intoExpressionVisitor.visitBinary()
.- Overrides:
accept
in classExpression
- Parameters:
visitor
- the visitor to visit this node.- Returns:
- the result of visiting this node.
-
getExpression
-
getExpressionCount
int getExpressionCount() -
getOrMakeExpressions
ExpressionList<? extends Expression> getOrMakeExpressions() -
getVariable
-
getVariableCount
int getVariableCount() -
getOrMakeVariables
ParameterExpressionList getOrMakeVariables() -
rewrite
-
returnReadOnlyExpressions
static ExpressionList<? extends Expression> returnReadOnlyExpressions(BlockExpression provider, Object expressionOrCollection)
-