ExJexl (ExJexl v0.1.0)

View Source

A JEXL (JavaScript Expression Language) evaluator for Elixir using NimbleParsec.

JEXL is a simple expression language designed for evaluating expressions in a safe, sandboxed environment.

Summary

Functions

Evaluates a JEXL expression with the given context.

Evaluates a JEXL expression with the given context, raising on error.

Functions

eval(expression, context \\ %{})

Evaluates a JEXL expression with the given context.

Examples

iex> ExJexl.eval("name", %{"name" => "Alice"})
{:ok, "Alice"}

iex> ExJexl.eval("age > 18", %{"age" => 25})
{:ok, true}

iex> ExJexl.eval("items|length", %{"items" => [1, 2, 3]})
{:ok, 3}

eval!(expression, context \\ %{})

Evaluates a JEXL expression with the given context, raising on error.

Examples

iex> ExJexl.eval!("name", %{"name" => "Alice"})
"Alice"