Package dev.cel.common.values
Class EnumValue<E extends java.lang.Enum<E>>
- java.lang.Object
-
- dev.cel.common.values.CelValue
-
- dev.cel.common.values.EnumValue<E>
-
@Immutable(containerOf="E") public abstract class EnumValue<E extends java.lang.Enum<E>> extends CelValue
EnumValue is a simple CelValue wrapper around Java enums.Note: CEL-Java currently does not support strongly typed enum. This value class will not be used until the said support is added in.
-
-
Constructor Summary
Constructors Constructor Description EnumValue()
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description CelTypecelType()The CelType that represents this value.static <E extends java.lang.Enum<E>>
EnumValue<E>create(java.lang.Enum<E> value)booleanisZeroValue()Returns true if theCelValue.value()is a zero value for its type.abstract java.lang.Enum<E>value()The underlying value.
-
-
-
Method Detail
-
value
public abstract java.lang.Enum<E> value()
Description copied from class:CelValueThe underlying value. This is typically the Java native value or a derived instance of CelValue (ex: an element in lists or key/value pair in maps).
-
isZeroValue
public boolean isZeroValue()
Description copied from class:CelValueReturns true if theCelValue.value()is a zero value for its type.- Specified by:
isZeroValuein classCelValue
-
celType
public CelType celType()
Description copied from class:CelValueThe CelType that represents this value.
-
create
public static <E extends java.lang.Enum<E>> EnumValue<E> create(java.lang.Enum<E> value)
-
-