CEL.Expr.Ident (CEL v0.2.0)

Copy Markdown View Source

A name, resolved by the checker.

name is the fully qualified name, after the container and abbreviations are applied, so a select chain such as pkg.Enum.VALUE that names one thing is a single Ident. scope says what it names:

  • :var — a variable declared in the CEL.Env.
  • :local — a variable a macro binds, such as x in l.all(x, x > 0).
  • :type — a type, as in type(x) == int or type(m) == pkg.Message.
  • :enum — an enum value, such as pkg.Enum.VALUE.

Summary

Types

t()

@type t() :: %CEL.Expr.Ident{
  id: CEL.Checked.expr_id(),
  name: String.t(),
  scope: CEL.Expr.scope(),
  type: CEL.Expr.type()
}