Class JsonConstructorFunction

    • Field Detail

      • array

        private final boolean array
      • flags

        private int flags
    • Constructor Detail

      • JsonConstructorFunction

        public JsonConstructorFunction​(boolean array)
        Creates a new instance of JSON constructor function.
        Parameters:
        array - false for JSON_OBJECT, true for JSON_ARRAY.
    • Method Detail

      • setFlags

        public void setFlags​(int flags)
        Description copied from interface: ExpressionWithFlags
        Set the flags for this expression.
        Specified by:
        setFlags in interface ExpressionWithFlags
        Parameters:
        flags - the flags to set
      • getValue

        public Value getValue​(SessionLocal session)
        Description copied from class: Expression
        Return the resulting value for the current row.
        Specified by:
        getValue in class Expression
        Parameters:
        session - the session
        Returns:
        the result
      • optimize

        public Expression optimize​(SessionLocal session)
        Description copied from class: Expression
        Try to optimize the expression.
        Specified by:
        optimize in class Expression
        Parameters:
        session - the session
        Returns:
        the optimized expression
      • getUnenclosedSQL

        public java.lang.StringBuilder getUnenclosedSQL​(java.lang.StringBuilder builder,
                                                        int sqlFlags)
        Description copied from class: Expression
        Get the SQL statement of this expression. This may not always be the original SQL statement, especially after optimization. Enclosing '(' and ')' are never appended.
        Specified by:
        getUnenclosedSQL in class Expression
        Parameters:
        builder - string builder
        sqlFlags - formatting flags
        Returns:
        the specified string builder
      • getJsonFunctionFlagsSQL

        public static java.lang.StringBuilder getJsonFunctionFlagsSQL​(java.lang.StringBuilder builder,
                                                                      int flags,
                                                                      boolean forArray)
        Appends flags of a JSON function to the specified string builder.
        Parameters:
        builder - string builder to append to
        flags - flags to append
        forArray - whether the function is an array function
        Returns:
        the specified string builder
      • getName

        public java.lang.String getName()
        Description copied from interface: NamedExpression
        Get the name.
        Specified by:
        getName in interface NamedExpression
        Returns:
        the name in uppercase