Package org.apache.calcite.sql.advise
Class SqlAdvisorGetHintsFunction2
java.lang.Object
org.apache.calcite.sql.advise.SqlAdvisorGetHintsFunction2
- All Implemented Interfaces:
Function,ImplementableFunction,TableFunction
public class SqlAdvisorGetHintsFunction2
extends Object
implements TableFunction, ImplementableFunction
Table function that returns completion hints for a given SQL statement.
This function adds replacement string column to previously existed
SqlAdvisorGetHintsFunction-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic Enumerable<SqlAdvisorHint2>getCompletionHints(SqlAdvisor advisor, String sql, int pos) Returns completion hints for a given SQL statement.getElementType(List<? extends @Nullable Object> arguments) Returns the row type of the table yielded by this function when applied to given arguments.Returns implementor that translates the function to linq4j expression.Returns the parameters of this function.getRowType(RelDataTypeFactory typeFactory, List<? extends @Nullable Object> arguments) Returns the record type of the table yielded by this function when applied to given arguments.
-
Constructor Details
-
SqlAdvisorGetHintsFunction2
public SqlAdvisorGetHintsFunction2()
-
-
Method Details
-
getImplementor
Description copied from interface:ImplementableFunctionReturns implementor that translates the function to linq4j expression.- Specified by:
getImplementorin interfaceImplementableFunction- Returns:
- implementor that translates the function to linq4j expression.
-
getRowType
public RelDataType getRowType(RelDataTypeFactory typeFactory, List<? extends @Nullable Object> arguments) Description copied from interface:TableFunctionReturns the record type of the table yielded by this function when applied to given arguments. Only literal arguments are passed, non-literal are replaced with default values (null, 0, false, etc).- Specified by:
getRowTypein interfaceTableFunction- Parameters:
typeFactory- Type factoryarguments- arguments of a function call (only literal arguments are passed, nulls for non-literal ones)- Returns:
- row type of the table
-
getElementType
Description copied from interface:TableFunctionReturns the row type of the table yielded by this function when applied to given arguments. Only literal arguments are passed, non-literal are replaced with default values (null, 0, false, etc).- Specified by:
getElementTypein interfaceTableFunction- Parameters:
arguments- arguments of a function call (only literal arguments are passed, nulls for non-literal ones)- Returns:
- element type of the table (e.g.
Object[].class)
-
getParameters
Description copied from interface:FunctionReturns the parameters of this function.- Specified by:
getParametersin interfaceFunction- Returns:
- Parameters; never null
-
getCompletionHints
public static Enumerable<SqlAdvisorHint2> getCompletionHints(SqlAdvisor advisor, String sql, int pos) Returns completion hints for a given SQL statement.Typically this is called from generated code (via
IMPLEMENTOR).- Parameters:
advisor- Advisor to produce completion hintssql- SQL to completepos- Cursor position in SQL- Returns:
- the table that contains completion hints for a given SQL statement
-