| Package | Description |
|---|---|
| co.streamx.fluent.extree.expression |
| Modifier and Type | Class and Description |
|---|---|
class |
BinaryExpression
Represents an expression that has a binary operator.
|
class |
BlockExpression |
class |
ConstantExpression
Represents an expression that has a constant value.
|
class |
DelegateExpression
Describes a lambda signature and an
Expression delegate that returns InvocableExpression. |
class |
InvocableExpression
Provides the base class from which the expression that represent invocable operations are derived.
|
class |
InvocationExpression
Represents an expression that applies a delegate or lambda expression to a list of argument expressions.
|
class |
LambdaExpression<F>
Describes a lambda expression.
|
class |
MemberExpression
Represents accessing a field or method.
|
class |
NewArrayInitExpression
Describes a one-dimensional array and initializing it from a list of elements.
|
class |
ParameterExpression
Represents an indexed parameter expression.
|
class |
UnaryExpression
Represents an expression that has a unary operator.
|
| Modifier and Type | Method and Description |
|---|---|
protected <T extends Expression> |
SimpleExpressionVisitor.visitExpressionList(List<T> original) |
| Modifier and Type | Method and Description |
|---|---|
static Expression |
Expression.binary(int expressionType,
Expression first,
Expression second)
Creates a
Expression, given an operand and binary operator, by
calling the appropriate factory method. |
static Expression |
Expression.binary(int expressionType,
Expression operator,
Expression first,
Expression second)
Creates a
Expression, given an operand and binary operator, by
calling the appropriate factory method. |
static Expression |
Expression.condition(Expression test,
Expression ifTrue,
Expression ifFalse)
Creates a
BinaryExpression that represents a conditional operation,
or one of operands in case test is a constant. |
static Expression |
Expression.convert(Expression e,
Class<?> to)
Creates a
UnaryExpression that represents a conversion operation, or
'e' if its ResultType equals to 'to'. |
static Expression |
Expression.equal(Expression first,
Expression second)
Creates a
Expression that represents an equality comparison. |
static Expression |
Expression.exclusiveOr(Expression first,
Expression second)
Creates a
BinaryExpression that represents a bitwise XOR operation,
or UnaryExpression that represents a bitwise NOT in case the second
parameter equals to -1. |
static Expression |
Expression.invoke(Class<?> type,
String name,
Class<?>[] parameterTypes,
Expression... arguments)
Creates an
InvocationExpression that represents a call to a static
method by calling the appropriate factory method, or UnaryExpression
in case of boxing. |
static Expression |
Expression.invoke(Expression instance,
Method method,
Expression... arguments)
Creates an
InvocationExpression that represents a call to an instance
method, or UnaryExpression in case of boxing. |
static Expression |
Expression.invoke(Expression instance,
Method method,
List<Expression> arguments)
Creates an
InvocationExpression that represents a call to an instance
method, or UnaryExpression in case of boxing. |
static Expression |
Expression.invoke(Expression instance,
String name,
Class<?>[] parameterTypes,
Expression... arguments)
Creates an
InvocationExpression that represents a call to an instance
method by calling the appropriate factory method, or UnaryExpression
in case of boxing. |
protected Expression |
SimpleExpressionVisitor.invoke(InvocableExpression target,
List<Expression> args,
InvocationExpression original) |
static Expression |
Expression.logicalAnd(Expression first,
Expression second)
Creates a
Expression that represents a conditional AND operation that
evaluates the second operand only if it has to. |
static Expression |
Expression.logicalNot(Expression e)
Creates a
Expression that represents a logical negation operation. |
static Expression |
Expression.logicalOr(Expression first,
Expression second)
Creates a
Expression that represents a conditional OR operation that
evaluates the second operand only if it has to. |
static Expression |
Expression.notEqual(Expression first,
Expression second)
Creates a
Expression that represents an inequality comparison. |
protected Expression |
SimpleExpressionVisitor.resolveContextParameter(ParameterExpression p) |
static Expression |
Expression.unary(int expressionType,
Class<?> resultType,
Expression operand)
Creates a
Expression, given an operand and unary operator, by calling
the appropriate factory method. |
Expression |
SimpleExpressionVisitor.visit(BinaryExpression e) |
Expression |
SimpleExpressionVisitor.visit(BlockExpression e) |
Expression |
SimpleExpressionVisitor.visit(ConstantExpression e) |
Expression |
SimpleExpressionVisitor.visit(DelegateExpression e) |
Expression |
SimpleExpressionVisitor.visit(InvocationExpression e) |
Expression |
SimpleExpressionVisitor.visit(LambdaExpression<?> e) |
Expression |
SimpleExpressionVisitor.visit(MemberExpression e) |
Expression |
SimpleExpressionVisitor.visit(NewArrayInitExpression newArrayInitExpression) |
Expression |
SimpleExpressionVisitor.visit(ParameterExpression e) |
Expression |
SimpleExpressionVisitor.visit(UnaryExpression e) |
| Modifier and Type | Method and Description |
|---|---|
protected List<Expression> |
SimpleExpressionVisitor.getContextArguments() |
protected List<Expression> |
SimpleExpressionVisitor.popContextArguments() |
protected List<Expression> |
SimpleExpressionVisitor.visitArguments(List<Expression> original) |
protected List<Expression> |
SimpleExpressionVisitor.visitLocals(List<Expression> original) |
| Modifier and Type | Method and Description |
|---|---|
static BinaryExpression |
Expression.add(Expression first,
Expression second)
Creates a
BinaryExpression that represents an arithmetic addition
operation that does not have overflow checking. |
static BinaryExpression |
Expression.arrayIndex(Expression array,
Expression index)
Creates a
BinaryExpression that represents applying an array index
operator to an array. |
static UnaryExpression |
Expression.arrayLength(Expression array)
Creates a
UnaryExpression that represents getting the length of an
array. |
static Expression |
Expression.binary(int expressionType,
Expression first,
Expression second)
Creates a
Expression, given an operand and binary operator, by
calling the appropriate factory method. |
static Expression |
Expression.binary(int expressionType,
Expression operator,
Expression first,
Expression second)
Creates a
Expression, given an operand and binary operator, by
calling the appropriate factory method. |
static BinaryExpression |
Expression.bitwiseAnd(Expression first,
Expression second)
Creates a
BinaryExpression that represents a bitwise AND operation. |
static UnaryExpression |
Expression.bitwiseNot(Expression e)
Creates a
UnaryExpression that represents a bitwise complement
operation. |
static BinaryExpression |
Expression.bitwiseOr(Expression first,
Expression second)
Creates a
BinaryExpression that represents a bitwise OR operation. |
static BinaryExpression |
Expression.coalesce(Expression first,
Expression second)
Creates a
BinaryExpression that represents a coalescing operation. |
static Function<Object[],?> |
LambdaExpression.compile(Expression e)
Produces a
Function that represents the expression. |
static Expression |
Expression.condition(Expression test,
Expression ifTrue,
Expression ifFalse)
Creates a
BinaryExpression that represents a conditional operation,
or one of operands in case test is a constant. |
static Expression |
Expression.convert(Expression e,
Class<?> to)
Creates a
UnaryExpression that represents a conversion operation, or
'e' if its ResultType equals to 'to'. |
static DelegateExpression |
Expression.delegate(Class<?> resultType,
Expression delegate,
List<ParameterExpression> parameters)
Creates a
DelegateExpression as a method receiving the specified
arguments, returning the resultType and having delegate to
the implementation. |
static BinaryExpression |
Expression.divide(Expression first,
Expression second)
Creates a
BinaryExpression that represents an arithmetic division
operation. |
static Expression |
Expression.equal(Expression first,
Expression second)
Creates a
Expression that represents an equality comparison. |
static Expression |
Expression.exclusiveOr(Expression first,
Expression second)
Creates a
BinaryExpression that represents a bitwise XOR operation,
or UnaryExpression that represents a bitwise NOT in case the second
parameter equals to -1. |
static MemberExpression |
Expression.get(Expression instance,
Field field)
Creates a
MemberExpression that represents accessing an instance
field. |
static MemberExpression |
Expression.get(Expression instance,
String name)
Creates a
MemberExpression that represents accessing an instance
field given the name of the field. |
static BinaryExpression |
Expression.greaterThan(Expression first,
Expression second)
Creates a
BinaryExpression that represents a "greater than" numeric
comparison. |
static BinaryExpression |
Expression.greaterThanOrEqual(Expression first,
Expression second)
Creates a
BinaryExpression that represents a "greater than or equal"
numeric comparison. |
static BinaryExpression |
Expression.instanceOf(Expression e,
Class<?> type)
Creates a
BinaryExpression that represents an instanceOf test. |
static BinaryExpression |
Expression.instanceOf(Expression e,
Expression type)
Creates a
BinaryExpression that represents an instanceOf test. |
static Expression |
Expression.invoke(Class<?> type,
String name,
Class<?>[] parameterTypes,
Expression... arguments)
Creates an
InvocationExpression that represents a call to a static
method by calling the appropriate factory method, or UnaryExpression
in case of boxing. |
static Expression |
Expression.invoke(Expression instance,
Method method,
Expression... arguments)
Creates an
InvocationExpression that represents a call to an instance
method, or UnaryExpression in case of boxing. |
static Expression |
Expression.invoke(Expression instance,
Method method,
Expression... arguments)
Creates an
InvocationExpression that represents a call to an instance
method, or UnaryExpression in case of boxing. |
static Expression |
Expression.invoke(Expression instance,
Method method,
List<Expression> arguments)
Creates an
InvocationExpression that represents a call to an instance
method, or UnaryExpression in case of boxing. |
static Expression |
Expression.invoke(Expression instance,
String name,
Class<?>[] parameterTypes,
Expression... arguments)
Creates an
InvocationExpression that represents a call to an instance
method by calling the appropriate factory method, or UnaryExpression
in case of boxing. |
static Expression |
Expression.invoke(Expression instance,
String name,
Class<?>[] parameterTypes,
Expression... arguments)
Creates an
InvocationExpression that represents a call to an instance
method by calling the appropriate factory method, or UnaryExpression
in case of boxing. |
static InvocationExpression |
Expression.invoke(InvocableExpression method,
Expression... arguments)
Creates an
InvocationExpression that represents a call to an instance
method. |
static UnaryExpression |
Expression.isNonNull(Expression e)
Creates a
UnaryExpression that represents a test for null operation. |
static UnaryExpression |
Expression.isNull(Expression e)
Creates a
UnaryExpression that represents a test for null operation. |
static LambdaExpression<?> |
Expression.lambda(Class<?> resultType,
Expression body,
List<ParameterExpression> parameters,
List<Expression> locals,
Object key)
Creates a
LambdaExpression as a method receiving the specified arguments, returning the
resultType and having body for its implementation. |
static BinaryExpression |
Expression.leftShift(Expression first,
Expression second)
Creates a
BinaryExpression that represents an arithmetic left-shift
operation. |
static BinaryExpression |
Expression.lessThan(Expression first,
Expression second)
Creates a
BinaryExpression that represents a "less than" numeric
comparison. |
static BinaryExpression |
Expression.lessThanOrEqual(Expression first,
Expression second)
Creates a
BinaryExpression that represents a "less than or equal"
numeric comparison. |
static Expression |
Expression.logicalAnd(Expression first,
Expression second)
Creates a
Expression that represents a conditional AND operation that
evaluates the second operand only if it has to. |
static Expression |
Expression.logicalNot(Expression e)
Creates a
Expression that represents a logical negation operation. |
static Expression |
Expression.logicalOr(Expression first,
Expression second)
Creates a
Expression that represents a conditional OR operation that
evaluates the second operand only if it has to. |
static MemberExpression |
Expression.member(int expressionType,
Expression instance,
Member member,
Class<?> resultType,
List<ParameterExpression> params)
Creates a
MemberExpression that accessed the specified member. |
static BinaryExpression |
Expression.modulo(Expression first,
Expression second)
Creates a
BinaryExpression that represents an arithmetic remainder
operation. |
static BinaryExpression |
Expression.multiply(Expression first,
Expression second)
Creates a
BinaryExpression that represents an arithmetic multiply
operation. |
static UnaryExpression |
Expression.negate(Expression e)
Creates a
UnaryExpression that represents an arithmetic negation
operation. |
static InvocationExpression |
Expression.newInstance(Class<?> type,
Class<?>[] argumentTypes,
Expression... arguments)
Creates a
InvocationExpression that represents calling the specified
constructor. |
static InvocationExpression |
Expression.newInstance(Constructor<?> method,
Expression... arguments)
Creates a
InvocationExpression that represents calling the specified
constructor. |
static Expression |
Expression.notEqual(Expression first,
Expression second)
Creates a
Expression that represents an inequality comparison. |
static BinaryExpression |
Expression.rightShift(Expression first,
Expression second)
Creates a
BinaryExpression that represents an arithmetic right-shift
operation. |
static BinaryExpression |
Expression.subtract(Expression first,
Expression second)
Creates a
BinaryExpression that represents an arithmetic subtract
operation. |
static Expression |
Expression.unary(int expressionType,
Class<?> resultType,
Expression operand)
Creates a
Expression, given an operand and unary operator, by calling
the appropriate factory method. |
| Modifier and Type | Method and Description |
|---|---|
static BlockExpression |
Expression.block(Class<?> resultType,
List<Expression> expressions)
Creates a
BlockExpression |
static Expression |
Expression.invoke(Expression instance,
Method method,
List<Expression> arguments)
Creates an
InvocationExpression that represents a call to an instance
method, or UnaryExpression in case of boxing. |
static InvocationExpression |
Expression.invoke(InvocableExpression method,
List<? extends Expression> arguments)
Creates an
InvocationExpression that represents a call to an instance
method. |
protected Expression |
SimpleExpressionVisitor.invoke(InvocableExpression target,
List<Expression> args,
InvocationExpression original) |
static LambdaExpression<?> |
Expression.lambda(Class<?> resultType,
Expression body,
List<ParameterExpression> parameters,
List<Expression> locals,
Object key)
Creates a
LambdaExpression as a method receiving the specified arguments, returning the
resultType and having body for its implementation. |
static NewArrayInitExpression |
Expression.newArrayInit(Class<?> type,
List<Expression> initializers)
Creates a
NewArrayInitExpression that represents creating a
one-dimensional array and initializing it from a list of elements. |
static InvocationExpression |
Expression.newInstance(Constructor<?> method,
List<Expression> arguments)
Creates a
InvocationExpression that represents calling the specified
constructor. |
protected void |
SimpleExpressionVisitor.pushContextArguments(List<Expression> args) |
protected List<Expression> |
SimpleExpressionVisitor.visitArguments(List<Expression> original) |
protected List<Expression> |
SimpleExpressionVisitor.visitLocals(List<Expression> original) |
Copyright © 2023 Streamx. All rights reserved.