private boolean isCurrentSupported()

in interactive_engine/compiler/src/main/java/com/alibaba/graphscope/common/ir/tools/GraphBuilder.java [859:892]


    private boolean isCurrentSupported(SqlOperator operator) {
        SqlKind sqlKind = operator.getKind();
        return sqlKind.belongsTo(SqlKind.BINARY_ARITHMETIC)
                || sqlKind.belongsTo(SqlKind.COMPARISON)
                || sqlKind == SqlKind.AND
                || sqlKind == SqlKind.OR
                || sqlKind == SqlKind.DESCENDING
                || (sqlKind == SqlKind.OTHER_FUNCTION
                        && (operator.getName().equals("POWER")
                                || operator.getName().equals("<<")
                                || operator.getName().equals(">>")))
                || (sqlKind == SqlKind.MINUS_PREFIX)
                || (sqlKind == SqlKind.CASE)
                || (sqlKind == SqlKind.PROCEDURE_CALL)
                || (sqlKind == SqlKind.NOT)
                || sqlKind == SqlKind.ARRAY_VALUE_CONSTRUCTOR
                || sqlKind == SqlKind.MAP_VALUE_CONSTRUCTOR
                || sqlKind == SqlKind.IS_NULL
                || sqlKind == SqlKind.IS_NOT_NULL
                || sqlKind == SqlKind.EXTRACT
                || sqlKind == SqlKind.SEARCH
                || sqlKind == SqlKind.POSIX_REGEX_CASE_SENSITIVE
                || sqlKind == SqlKind.AS
                || sqlKind == SqlKind.BIT_AND
                || sqlKind == SqlKind.BIT_OR
                || sqlKind == SqlKind.BIT_XOR
                || (sqlKind == SqlKind.OTHER
                                && (operator.getName().equals("IN")
                                        || operator.getName().equals("DATETIME_MINUS")
                                        || operator.getName().equals("PATH_CONCAT")
                                        || operator.getName().equals("PATH_FUNCTION"))
                        || operator.getName().startsWith(GraphFunctions.FUNCTION_PREFIX))
                || sqlKind == SqlKind.ARRAY_CONCAT;
    }