Class CelTypeLabels
SimpleType.TIMESTAMP so there is no type declaration for it.-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final dev.cel.common.types.StructTypeReferenceJava cel-java type declaration forDECIMAL_NAME.static final StringCEL type label forconfluent.type.Decimal.static final StringCEL type label forgoogle.protobuf.Timestamp(= CEL built-in timestamp).static final dev.cel.common.types.OpaqueTypeJava cel-java type declaration forVARIANT_NAME.static final StringCEL type label forconfluent.type.Variant. -
Method Summary
-
Field Details
-
DECIMAL_NAME
CEL type label forconfluent.type.Decimal.- See Also:
-
TIMESTAMP_NAME
CEL type label forgoogle.protobuf.Timestamp(= CEL built-in timestamp).- See Also:
-
VARIANT_NAME
CEL type label forconfluent.type.Variant.- See Also:
-
DECIMAL
public static final dev.cel.common.types.StructTypeReference DECIMALJava cel-java type declaration forDECIMAL_NAME.A
StructTypeReference, not anOpaqueType, and deliberately so. A protobufconfluent.type.Decimalfield is typed by cel-java as a struct reference under exactly this name, andCelType.isAssignableFromis plain equality — so an opaque type of the same name would be a second, permanently incompatible identity for the same logical type. Every mixed pair (this.amount == decimal("0"),decimals.add(this.a, this.b)) would fail to type-check, and no set of extra overloads closes that off completely. Making the two identities one instead means a decimal-typed proto field is accepted by everydecimals.*declaration as-is, with no wrapper call.The name needs no descriptor registration to be usable: the checker resolves struct references lazily, so Avro and JSON rules — which register no protobuf descriptors at all — type-check against it just as well. Runtime values under this type are
CelDecimal(from an Avro boundary conversion, thedecimal()constructor, or anydecimals.*result) or a protoDecimalmessage (from protobuf field selection);DecimalUtils.toBigDecimalaccepts either. -
VARIANT
public static final dev.cel.common.types.OpaqueType VARIANTJava cel-java type declaration forVARIANT_NAME.
-