All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.github.alittlehuang.data.query.specification.Expression Maven / Gradle / Ivy

package com.github.alittlehuang.data.query.specification;

/**
 * @author ALittleHuang
 */
public interface Expression extends AttributePath {

    Object[] EMPTY_ARGS = {};

    default Object[] getArgs(){
        return EMPTY_ARGS;
    }

    default Expression getSubexpression() {
        return null;
    }

    default Function getFunction(){
        return Function.NONE;
    }

    default String getFunctionName(){
        return null;
    }

    enum Function {
        NONE,
        ABS,
        SUM,
        PROD,
        DIFF,
        QUOT,
        MOD,
        SQRT,
        CONCAT,
        SUBSTRING,
        TRIM,
        LOWER,
        UPPER,
        LENGTH,
        LOCATE,
        COALESCE,
        NULLIF,
        CUSTOMIZE,
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy