solid v0.0.2 Solid.Expression
Expression evaluation for the following binary operators:
== != > < >= <=
Also combine expressions with and
, or
Summary
Functions
Evaluate a single expression iex> Solid.Expression.eval({1, :==, 2}) false iex> Solid.Expression.eval({1, :==, 1}) true iex> Solid.Expression.eval({1, :!=, 2}) true iex> Solid.Expression.eval({1, :!=, 1}) false iex> Solid.Expression.eval({1, :<, 2}) true iex> Solid.Expression.eval({1, :<, 1}) false iex> Solid.Expression.eval({1, :>, 2}) false iex> Solid.Expression.eval({2, :>, 1}) true iex> Solid.Expression.eval({1, :>=, 1}) true iex> Solid.Expression.eval({1, :>=, 0}) true iex> Solid.Expression.eval({1, :>=, 2}) false iex> Solid.Expression.eval({1, :<=, 1}) true iex> Solid.Expression.eval({1, :<=, 0}) false iex> Solid.Expression.eval({1, :<=, 2}) true iex> Solid.Expression.eval({0, :<=, nil}) false iex> Solid.Expression.eval({1.0, :<, nil}) false iex> Solid.Expression.eval({nil, :>=, 1.0}) false iex> Solid.Expression.eval({nil, :>, 0}) false iex> Solid.Expression.eval({“Beer Pack”, :contains, “Pack”}) true iex> Solid.Expression.eval({“Meat”, :contains, “Pack”}) false iex> Solid.Expression.eval({["Beer", "Pack"], :contains, “Pack”}) true iex> Solid.Expression.eval({["Meat"], :contains, “Pack”}) false iex> Solid.Expression.eval({nil, :contains, “Pack”}) false iex> Solid.Expression.eval({“Meat”, :contains, nil}) false
Evaluate a list of expressions combined with or
, `and
Functions
Specs
eval({term, atom, term} | boolean) :: boolean
Evaluate a single expression iex> Solid.Expression.eval({1, :==, 2}) false iex> Solid.Expression.eval({1, :==, 1}) true iex> Solid.Expression.eval({1, :!=, 2}) true iex> Solid.Expression.eval({1, :!=, 1}) false iex> Solid.Expression.eval({1, :<, 2}) true iex> Solid.Expression.eval({1, :<, 1}) false iex> Solid.Expression.eval({1, :>, 2}) false iex> Solid.Expression.eval({2, :>, 1}) true iex> Solid.Expression.eval({1, :>=, 1}) true iex> Solid.Expression.eval({1, :>=, 0}) true iex> Solid.Expression.eval({1, :>=, 2}) false iex> Solid.Expression.eval({1, :<=, 1}) true iex> Solid.Expression.eval({1, :<=, 0}) false iex> Solid.Expression.eval({1, :<=, 2}) true iex> Solid.Expression.eval({0, :<=, nil}) false iex> Solid.Expression.eval({1.0, :<, nil}) false iex> Solid.Expression.eval({nil, :>=, 1.0}) false iex> Solid.Expression.eval({nil, :>, 0}) false iex> Solid.Expression.eval({“Beer Pack”, :contains, “Pack”}) true iex> Solid.Expression.eval({“Meat”, :contains, “Pack”}) false iex> Solid.Expression.eval({["Beer", "Pack"], :contains, “Pack”}) true iex> Solid.Expression.eval({["Meat"], :contains, “Pack”}) false iex> Solid.Expression.eval({nil, :contains, “Pack”}) false iex> Solid.Expression.eval({“Meat”, :contains, nil}) false