ExDatalog.Planner.Predicate (ExDatalog v0.5.0)

Copy Markdown View Source

A planned predicate: a non-relational body element (constraint, aggregate, or callback) classified by kind.

kind groups the predicate into one of the evaluation categories; op is the specific operator (e.g. :gt, :count, :callback). metadata carries optional details (e.g. callback module/function).

Summary

Types

kind()

@type kind() ::
  :comparison
  | :arithmetic
  | :type
  | :string
  | :membership
  | :aggregate
  | :callback

t()

@type t() :: %ExDatalog.Planner.Predicate{kind: kind(), metadata: map(), op: atom()}