public class TableFunctionImpl extends ReflectiveFunctionBase implements TableFunction, ImplementableFunction
TableFunction based on a
method.ReflectiveFunctionBase.ParameterListBuilder| Modifier and Type | Field and Description |
|---|---|
private CallImplementor |
implementor |
method, parameters| Modifier | Constructor and Description |
|---|---|
private |
TableFunctionImpl(Method method,
CallImplementor implementor)
Private constructor; use
create(java.lang.Class<?>). |
| Modifier and Type | Method and Description |
|---|---|
private Table |
apply(List<Object> arguments) |
static TableFunction |
create(Class<?> clazz)
Creates a
TableFunctionImpl from a class, looking for an "eval"
method. |
static TableFunction |
create(Class<?> clazz,
String methodName)
Creates a
TableFunctionImpl from a class, looking for a method
with a given name. |
static TableFunction |
create(Method method)
Creates a
TableFunctionImpl from a method. |
private static CallImplementor |
createImplementor(Method method) |
Type |
getElementType(List<Object> arguments)
Returns the row type of the table yielded by this function when
applied to given arguments.
|
CallImplementor |
getImplementor()
Returns implementor that translates the function to linq4j expression.
|
RelDataType |
getRowType(RelDataTypeFactory typeFactory,
List<Object> arguments)
Returns the record type of the table yielded by this function when
applied to given arguments.
|
builder, classHasPublicZeroArgsConstructor, findMethod, getParametersclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetParametersprivate final CallImplementor implementor
private TableFunctionImpl(Method method, CallImplementor implementor)
create(java.lang.Class<?>).public static TableFunction create(Class<?> clazz)
TableFunctionImpl from a class, looking for an "eval"
method. Returns null if there is no such method.public static TableFunction create(Class<?> clazz, String methodName)
TableFunctionImpl from a class, looking for a method
with a given name. Returns null if there is no such method.public static TableFunction create(Method method)
TableFunctionImpl from a method.public RelDataType getRowType(RelDataTypeFactory typeFactory, List<Object> arguments)
TableFunctiongetRowType in interface TableFunctiontypeFactory - Type factoryarguments - arguments of a function call (only literal arguments
are passed, nulls for non-literal ones)public Type getElementType(List<Object> arguments)
TableFunctiongetElementType in interface TableFunctionarguments - arguments of a function call (only literal arguments
are passed, nulls for non-literal ones)Object[].class)public CallImplementor getImplementor()
ImplementableFunctiongetImplementor in interface ImplementableFunctionprivate static CallImplementor createImplementor(Method method)
Copyright © 2012–2018 The Apache Software Foundation. All rights reserved.