Class BlockExpression
java.lang.Object
com.strobel.expressions.Expression
com.strobel.expressions.BlockExpression
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected Expressionaccept(ExpressionVisitor visitor) Dispatches to the specific visit method for this node type.(package private) ExpressiongetExpression(int index) (package private) intfinal ExpressionList<? extends Expression> final ExpressionTypeReturns the node type of thisExpression.(package private) ExpressionList<? extends Expression> (package private) ParameterExpressionListfinal ExpressionType<?> getType()Gets the static type of the expression that thisExpressionrepresents.(package private) ParameterExpressiongetVariable(int index) (package private) intfinal ParameterExpressionList(package private) static ExpressionList<? extends Expression> returnReadOnlyExpressions(BlockExpression provider, Object expressionOrCollection) (package private) BlockExpressionrewrite(ParameterExpressionList variables, Expression[] args) Methods inherited from class 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:ExpressionReturns the node type of thisExpression.- Overrides:
getNodeTypein classExpression- Returns:
- the
ExpressionTypethat represents this expression.
-
getType
Description copied from class:ExpressionGets the static type of the expression that thisExpressionrepresents.- Overrides:
getTypein classExpression- Returns:
- the
Typethat represents the static type of the expression.
-
accept
Description copied from class:ExpressionDispatches to the specific visit method for this node type. For example,BinaryExpressionwill call intoExpressionVisitor.visitBinary().- Overrides:
acceptin 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)
-