Sets extension for CEL — mirrors ext.Sets() from cel-go.
Provides set-relationship tests on lists. Functions are available as built-ins and also via explicit registration.
Usage
env = Celixir.Environment.new() |> Celixir.Ext.Sets.register()
Celixir.eval!("sets.contains([1, 2, 3], [2, 3])", env) # => true
Celixir.eval!("sets.equivalent([1, 2], [2, 1])", env) # => true
Celixir.eval!("sets.intersects([1, 2], [2, 3])", env) # => trueFunctions
sets.contains(list, list)— true if first contains all elements of secondsets.equivalent(list, list)— true if sets are equal (order-independent)sets.intersects(list, list)— true if any element appears in both lists
Summary
Functions
Registers sets extension functions into the given environment.