Class InterpreterUtil


  • @Internal
    public final class InterpreterUtil
    extends java.lang.Object
    Util class for CEL interpreter.

    CEL Library Internals. Do Not Use.

    • Method Detail

      • strict

        @CheckReturnValue
        public static java.lang.Object strict​(java.lang.Object valueOrThrowable)
                                       throws CelEvaluationException
        Enforces strictness. The outcome of a failed computation is represented by the value being a Throwable. Applying strict() to such a value-or-throwable will re-throw the proper exception.
        Throws:
        CelEvaluationException
      • isUnknown

        public static boolean isUnknown​(java.lang.Object obj)
        Check if raw object is CelUnknownSet.
        Parameters:
        obj - Object to check.
        Returns:
        boolean value if object is unknown.
      • isAccumulatedUnknowns

        public static boolean isAccumulatedUnknowns​(java.lang.Object obj)
      • maybeAdaptToAccumulatedUnknowns

        public static java.lang.Object maybeAdaptToAccumulatedUnknowns​(java.lang.Object val)
        If the argument is CelUnknownSet, adapts it into AccumulatedUnknowns
      • maybeAdaptToCelUnknownSet

        public static java.lang.Object maybeAdaptToCelUnknownSet​(java.lang.Object val)
      • enforceStrictness

        public static java.lang.Object enforceStrictness​(java.lang.Object left,
                                                         java.lang.Object right)
                                                  throws CelEvaluationException
        Enforces strictness on both lhs/rhs arguments from logical operators (i.e: intentionally throws an appropriate exception when Throwable is encountered as part of evaluated result.
        Throws:
        CelEvaluationException
      • valueOrUnknown

        public static java.lang.Object valueOrUnknown​(@Nullable java.lang.Object valueOrThrowable,
                                                      java.lang.Long id)