OmniSciDB  f17484ade4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
com.mapd.calcite.parser.HeavyDBSqlOperatorTable.ExtFunction Class Reference
+ Inheritance diagram for com.mapd.calcite.parser.HeavyDBSqlOperatorTable.ExtFunction:
+ Collaboration diagram for com.mapd.calcite.parser.HeavyDBSqlOperatorTable.ExtFunction:

Public Member Functions

List< String > getParamNames ()
 
RelDataType inferReturnType (SqlOperatorBinding opBinding)
 

Package Functions

 ExtFunction (final String name, final ExtensionFunction sig)
 

Private Attributes

final ExtensionFunction sig
 
final List< String > arg_names
 

Detailed Description

Definition at line 2888 of file HeavyDBSqlOperatorTable.java.

Constructor & Destructor Documentation

com.mapd.calcite.parser.HeavyDBSqlOperatorTable.ExtFunction.ExtFunction ( final String  name,
final ExtensionFunction  sig 
)
inlinepackage

Definition at line 2889 of file HeavyDBSqlOperatorTable.java.

References com.mapd.parser.server.ExtensionFunction.toSqlSignature().

2889  {
2890  super(name,
2891  SqlKind.OTHER_FUNCTION,
2892  null,
2893  null,
2894  OperandTypes.family(sig.toSqlSignature()),
2895  SqlFunctionCategory.USER_DEFINED_FUNCTION);
2896  this.sig = sig;
2897  arg_names = sig.getArgNames();
2898  }
final java.util.List< SqlTypeFamily > toSqlSignature()
string name
Definition: setup.in.py:72

+ Here is the call graph for this function:

Member Function Documentation

List<String> com.mapd.calcite.parser.HeavyDBSqlOperatorTable.ExtFunction.getParamNames ( )
inline

Definition at line 2901 of file HeavyDBSqlOperatorTable.java.

2901  {
2902  return arg_names;
2903  }
RelDataType com.mapd.calcite.parser.HeavyDBSqlOperatorTable.ExtFunction.inferReturnType ( SqlOperatorBinding  opBinding)
inline

Definition at line 2906 of file HeavyDBSqlOperatorTable.java.

References com.mapd.parser.server.ExtensionFunction.getValueType(), and com.mapd.parser.server.ExtensionFunction.isArrayType().

2906  {
2907  final RelDataTypeFactory typeFactory = opBinding.getTypeFactory();
2908  if (ExtensionFunction.isArrayType(sig.getRet())) {
2909  SqlTypeName valueType =
2910  toSqlTypeName(ExtensionFunction.getValueType(sig.getRet()));
2911  RelDataType subType = typeFactory.createSqlType(valueType, -1);
2912  RelDataType arr = typeFactory.createArrayType(subType, -1);
2913  // should the return type nullable property be true?
2914  return arr;
2915  } else {
2916  SqlTypeName ret = sig.getSqlRet();
2917  return typeFactory.createTypeWithNullability(
2918  typeFactory.createSqlType(ret), true);
2919  }
2920  }

+ Here is the call graph for this function:

Member Data Documentation

final List<String> com.mapd.calcite.parser.HeavyDBSqlOperatorTable.ExtFunction.arg_names
private

Definition at line 2923 of file HeavyDBSqlOperatorTable.java.

final ExtensionFunction com.mapd.calcite.parser.HeavyDBSqlOperatorTable.ExtFunction.sig
private

Definition at line 2922 of file HeavyDBSqlOperatorTable.java.


The documentation for this class was generated from the following file: