Interface ExpressionFactory.Factory
-
- Enclosing class:
- ExpressionFactory
- Functional Interface:
- This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.
@FunctionalInterface static interface ExpressionFactory.Factory
-
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Modifier and Type Method Description Expression
createExpression(java.util.List<Expression> args)
static <T,U,V,W>
ExpressionFactory.Factoryof(java.lang.Class<T> type1, java.lang.Class<U> type2, java.lang.Class<V> type3, java.lang.Class<W> type4, ExpressionFactory.QuadFunction<T,U,V,W,?> function)
static <T,U,V>
ExpressionFactory.Factoryof(java.lang.Class<T> type1, java.lang.Class<U> type2, java.lang.Class<V> type3, java.util.function.BiFunction<T,U,?> biFunction, ExpressionFactory.TriFunction<T,U,V,?> triFunction)
static <T,U>
ExpressionFactory.Factoryof(java.lang.Class<T> type1, java.lang.Class<U> type2, java.util.function.BiFunction<T,U,?> function)
static <T> ExpressionFactory.Factory
of(java.lang.Class<T> type, java.util.function.Function<T,?> function)
static ExpressionFactory.Factory
of(java.util.function.DoubleUnaryOperator operator)
static <T,U>
ExpressionFactory.FactoryofEnv(java.lang.Class<T> type1, java.lang.Class<U> type2, java.util.function.BiFunction<Environment,T,?> biFunction, ExpressionFactory.TriFunction<Environment,T,U,?> triFunction)
Create aExpressionFactory.Factory
for an overloaded functionstatic <T,U>
ExpressionFactory.FactoryofEnv(java.lang.Class<T> type1, java.lang.Class<U> type2, java.util.function.Function<Environment,?> function, java.util.function.BiFunction<Environment,T,?> biFunction, ExpressionFactory.TriFunction<Environment,T,U,?> triFunction)
Create aExpressionFactory.Factory
for an overloaded functionstatic <T> ExpressionFactory.Factory
ofEnv(java.lang.Class<T> type, java.util.function.BiFunction<Environment,T,?> function)
Create aExpressionFactory.Factory
for a function that takes a parameterstatic ExpressionFactory.Factory
ofEnv(java.util.function.Function<Environment,?> function)
Create aExpressionFactory.Factory
for a functionstatic <T> ExpressionFactory.Factory
ofIterable(java.lang.Class<T> type, java.util.function.Function<java.lang.Iterable<T>,?> function)
Create a factory that accepts an iterable (array or generic iterable)static ExpressionFactory.Factory
ofNumberVarArgs(double identity, java.util.function.DoubleUnaryOperator unaryOperator, java.util.function.DoubleBinaryOperator operator)
static ExpressionFactory.Factory
ofObjectVarargs(java.util.function.BiFunction<Environment,java.lang.Object[],?> function)
static ExpressionFactory.Factory
ofStringVarargs(java.util.function.BiFunction<Environment,java.lang.String[],?> function)
-
-
-
Method Detail
-
createExpression
Expression createExpression(java.util.List<Expression> args)
-
of
static ExpressionFactory.Factory of(java.util.function.DoubleUnaryOperator operator)
-
ofNumberVarArgs
static ExpressionFactory.Factory ofNumberVarArgs(double identity, java.util.function.DoubleUnaryOperator unaryOperator, java.util.function.DoubleBinaryOperator operator)
-
ofStringVarargs
static ExpressionFactory.Factory ofStringVarargs(java.util.function.BiFunction<Environment,java.lang.String[],?> function)
-
ofObjectVarargs
static ExpressionFactory.Factory ofObjectVarargs(java.util.function.BiFunction<Environment,java.lang.Object[],?> function)
-
of
static <T> ExpressionFactory.Factory of(java.lang.Class<T> type, java.util.function.Function<T,?> function)
-
of
static <T,U> ExpressionFactory.Factory of(java.lang.Class<T> type1, java.lang.Class<U> type2, java.util.function.BiFunction<T,U,?> function)
-
of
static <T,U,V> ExpressionFactory.Factory of(java.lang.Class<T> type1, java.lang.Class<U> type2, java.lang.Class<V> type3, java.util.function.BiFunction<T,U,?> biFunction, ExpressionFactory.TriFunction<T,U,V,?> triFunction)
-
of
static <T,U,V,W> ExpressionFactory.Factory of(java.lang.Class<T> type1, java.lang.Class<U> type2, java.lang.Class<V> type3, java.lang.Class<W> type4, ExpressionFactory.QuadFunction<T,U,V,W,?> function)
-
ofIterable
static <T> ExpressionFactory.Factory ofIterable(java.lang.Class<T> type, java.util.function.Function<java.lang.Iterable<T>,?> function)
Create a factory that accepts an iterable (array or generic iterable)- Type Parameters:
T
- The iterable type- Parameters:
type
- The expected type classfunction
- The function to apply the arguments to- Returns:
- The result of the function call
-
ofEnv
static ExpressionFactory.Factory ofEnv(java.util.function.Function<Environment,?> function)
Create aExpressionFactory.Factory
for a function- Parameters:
function
- The function to use- Returns:
- The result of the function
-
ofEnv
static <T> ExpressionFactory.Factory ofEnv(java.lang.Class<T> type, java.util.function.BiFunction<Environment,T,?> function)
Create aExpressionFactory.Factory
for a function that takes a parameter- Type Parameters:
T
- the type of the input to the function- Parameters:
type
- The parameter type classfunction
- The function to use when one argument is available- Returns:
- The result of the function
-
ofEnv
static <T,U> ExpressionFactory.Factory ofEnv(java.lang.Class<T> type1, java.lang.Class<U> type2, java.util.function.BiFunction<Environment,T,?> biFunction, ExpressionFactory.TriFunction<Environment,T,U,?> triFunction)
Create aExpressionFactory.Factory
for an overloaded function- Type Parameters:
T
- the type of the input to the functionU
- the type of the input to the function- Parameters:
type1
- The first parameter type classtype2
- The second parameter type classbiFunction
- The function to use when one argument is availabletriFunction
- The function to use when two arguments are available- Returns:
- The result of one of the functions
-
ofEnv
static <T,U> ExpressionFactory.Factory ofEnv(java.lang.Class<T> type1, java.lang.Class<U> type2, java.util.function.Function<Environment,?> function, java.util.function.BiFunction<Environment,T,?> biFunction, ExpressionFactory.TriFunction<Environment,T,U,?> triFunction)
Create aExpressionFactory.Factory
for an overloaded function- Type Parameters:
T
- the type of the input to the functionU
- the type of the input to the function- Parameters:
type1
- The first parameter type classtype2
- The second parameter type classfunction
- The function to use when no args are availablebiFunction
- The function to use when one argument is availabletriFunction
- The function to use when two arguments are available- Returns:
- The result of one of the functions
-
-