public abstract class TableFunction extends java.lang.Object implements HasSQL, NamedExpression, ExpressionWithVariableParameters
| Modifier and Type | Field and Description |
|---|---|
protected Expression[] |
args |
ADD_PLAN_INFORMATION, DEFAULT_SQL_FLAGS, NO_CASTS, QUOTE_ONLY_WHEN_REQUIRED, REPLACE_LOBS_FOR_TRACE, TRACE_SQL_FLAGS| Modifier | Constructor and Description |
|---|---|
protected |
TableFunction(Expression[] args) |
| Modifier and Type | Method and Description |
|---|---|
void |
addParameter(Expression param)
Adds the parameter expression.
|
void |
doneWithParameters()
This method must be called after all the parameters have been set.
|
java.lang.StringBuilder |
getSQL(java.lang.StringBuilder builder,
int sqlFlags)
Appends the SQL statement of this object to the specified builder.
|
abstract ResultInterface |
getValue(SessionLocal session)
Get a result with.
|
abstract ResultInterface |
getValueTemplate(SessionLocal session)
Get an empty result with the column names set.
|
abstract boolean |
isDeterministic()
Whether the function always returns the same result for the same
parameters.
|
void |
optimize(SessionLocal session)
Try to optimize this table function
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetSQL, getTraceSQLgetNameprotected Expression[] args
protected TableFunction(Expression[] args)
public void addParameter(Expression param)
ExpressionWithVariableParametersaddParameter in interface ExpressionWithVariableParametersparam - the expressionpublic void doneWithParameters()
throws DbException
ExpressionWithVariableParametersdoneWithParameters in interface ExpressionWithVariableParametersDbException - if the parameter count is incorrect.public abstract ResultInterface getValue(SessionLocal session)
session - the sessionpublic abstract ResultInterface getValueTemplate(SessionLocal session)
session - the sessionpublic void optimize(SessionLocal session)
session - the sessionpublic abstract boolean isDeterministic()
public java.lang.StringBuilder getSQL(java.lang.StringBuilder builder,
int sqlFlags)
HasSQL