Package org.apache.calcite.sql.fun
Class SqlTrimFunction
java.lang.Object
org.apache.calcite.sql.SqlOperator
org.apache.calcite.sql.SqlFunction
org.apache.calcite.sql.fun.SqlTrimFunction
Definition of the "TRIM" builtin SQL function.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic enumDefines the enumerated values "LEADING", "TRAILING", "BOTH". -
Field Summary
FieldsFields inherited from class org.apache.calcite.sql.SqlOperator
kind, MDX_PRECEDENCE, NL -
Constructor Summary
ConstructorsConstructorDescriptionSqlTrimFunction(String name, SqlKind kind, SqlReturnTypeInference returnTypeInference, SqlSingleOperandTypeChecker operandTypeChecker) -
Method Summary
Modifier and TypeMethodDescriptionbooleancheckOperandTypes(SqlCallBinding callBinding, boolean throwOnFailure) Checks that the operand values in aSqlCallto this operator are valid.createCall(@Nullable SqlLiteral functionQualifier, SqlParserPos pos, @Nullable SqlNode... operands) Creates a call to this operator with an array of operands.getSignatureTemplate(int operandsCount) Returns a template describing how the operator signature is to be built.voidWrites a SQL representation of a call to this operator to a writer, including parentheses if the operators on either side are of greater precedence.Methods inherited from class org.apache.calcite.sql.SqlFunction
deriveType, getFunctionType, getNameAsId, getParamNames, getParamTypes, getSqlIdentifier, getSyntax, isQuantifierAllowed, validateCall, validateQuantifierMethods inherited from class org.apache.calcite.sql.SqlOperator
acceptCall, acceptCall, adjustType, allowsFraming, argumentMustBeScalar, checkOperandCount, constructArgNameList, constructArgTypeList, constructOperandList, createCall, createCall, createCall, createCall, createCall, createCall, deriveOperandType, equals, getAllowedSignatures, getAllowedSignatures, getKind, getLeftPrec, getMonotonicity, getMonotonicity, getName, getOperandCountRange, getOperandTypeChecker, getOperandTypeInference, getReturnTypeInference, getRightPrec, getSqlCallFactory, getStrongPolicyInference, hashCode, inferReturnType, inferReturnType, isAggregator, isDeterministic, isDynamicFunction, isGroup, isGroupAuxiliary, isName, isSafeOperator, isSymmetrical, leftPrec, not, preValidateCall, requiresDecimalExpansion, requiresOrder, requiresOver, reverse, rewriteCall, rightPrec, toString, unparseListClause, unparseListClause, validateOperands, validRexOperands
-
Field Details
-
INSTANCE
-
-
Constructor Details
-
SqlTrimFunction
public SqlTrimFunction(String name, SqlKind kind, SqlReturnTypeInference returnTypeInference, SqlSingleOperandTypeChecker operandTypeChecker)
-
-
Method Details
-
unparse
Description copied from class:SqlOperatorWrites a SQL representation of a call to this operator to a writer, including parentheses if the operators on either side are of greater precedence.The default implementation of this method delegates to
SqlSyntax.unparse(org.apache.calcite.sql.SqlWriter, org.apache.calcite.sql.SqlOperator, org.apache.calcite.sql.SqlCall, int, int).- Overrides:
unparsein classSqlFunction
-
getSignatureTemplate
Description copied from class:SqlOperatorReturns a template describing how the operator signature is to be built. E.g for the binary + operator the template looks like "{1} {0} {2}" {0} is the operator, subsequent numbers are operands.- Overrides:
getSignatureTemplatein classSqlOperator- Parameters:
operandsCount- is used with functions that can take a variable number of operands- Returns:
- signature template, or null to indicate that a default template will suffice
-
createCall
public SqlCall createCall(@Nullable SqlLiteral functionQualifier, SqlParserPos pos, @Nullable SqlNode... operands) Description copied from class:SqlOperatorCreates a call to this operator with an array of operands.The position of the resulting call is the union of the
posand the positions of all of the operands.- Overrides:
createCallin classSqlOperator- Parameters:
functionQualifier- Function qualifier (e.g. "DISTINCT"), or nullpos- Parser position of the identifier of the calloperands- Array of operands
-
checkOperandTypes
Description copied from class:SqlOperatorChecks that the operand values in aSqlCallto this operator are valid. Subclasses must either override this method or supply an instance ofSqlOperandTypeCheckerto the constructor.- Overrides:
checkOperandTypesin classSqlOperator- Parameters:
callBinding- description of callthrowOnFailure- whether to throw an exception if check fails (otherwise returns false in that case)- Returns:
- whether check succeeded
-