public boolean isRuntimeConstant() {
    return runtimeConstant;
  }
Whether it is safe to cache or materialize plans containing this operator.
We do not rely on {@link SqlFunction#isDynamicFunction()} because it has
different implications, e.g., a dynamic function will not be reduced in
Calcite since plans may be cached in the context of prepared statements.
In our case, we check whether a plan contains runtime constants before
constant folding happens, hence we can let Calcite reduce these functions.

@return true iff it is unsafe to cache or materialized query plans
referencing this operator
ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/reloperators/HiveSqlFunction.java