Class SqlSubstringFunction


  • public class SqlSubstringFunction
    extends SqlFunction
    Definition of the "SUBSTRING" builtin SQL function.
    • Constructor Detail

      • SqlSubstringFunction

        SqlSubstringFunction()
        Creates the SqlSubstringFunction.
    • Method Detail

      • getSignatureTemplate

        public java.lang.String getSignatureTemplate​(int operandsCount)
        Description copied from class: SqlOperator
        Returns 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:
        getSignatureTemplate in class SqlOperator
        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
      • getAllowedSignatures

        public java.lang.String getAllowedSignatures​(java.lang.String opName)
        Description copied from class: SqlOperator
        Returns a string describing the expected operand types of a call, e.g. "SUBSTRING(VARCHAR, INTEGER, INTEGER)" where the name (SUBSTRING in this example) can be replaced by a specified name.
        Overrides:
        getAllowedSignatures in class SqlOperator
      • checkOperandTypes

        public boolean checkOperandTypes​(SqlCallBinding callBinding,
                                         boolean throwOnFailure)
        Description copied from class: SqlOperator
        Checks that the operand values in a SqlCall to this operator are valid. Subclasses must either override this method or supply an instance of SqlOperandTypeChecker to the constructor.
        Overrides:
        checkOperandTypes in class SqlOperator
        Parameters:
        callBinding - description of call
        throwOnFailure - whether to throw an exception if check fails (otherwise returns false in that case)
        Returns:
        whether check succeeded