CEL types, in the shorthand CEL uses wherever it takes or returns a
type: variable declarations in CEL.Env.build/1, overload signatures in
CEL.Function.Overload, and the types of CEL.Expr nodes and
CEL.Checked.type/2.
:bool,:int,:uint,:double,:string,:bytes:timestampand:duration—google.protobuf.Timestampandgoogle.protobuf.Duration:nulland:dyn{:list, t}and{:map, key, value}{:message, name}— a message type, by itsCEL.TypeProvider's name for it, such as:"pkg.Message". A declaration may spell it as an atom or a string; types CEL returns carry the provider's form.{:enum, name}— an enum type, named the same way{:wrapper, primitive}— a wrapper message such asgoogle.protobuf.Int64Value({:wrapper, :int}){:optional, t}—optional_type(t){:type, t}— the type of a type value;:typealone is{:type, :dyn}when declaring{:abstract, name, params}— any other parameterised type
Summary
Functions
Spells a type as CEL does, for messages to users.
Types
@type primitive() :: :bool | :int | :uint | :double | :string | :bytes