Brex v1.0.0 API Reference

Modules

A Specification Pattern implementation in Elixir.

A struct which represents a rule linking two or more other rules together. It does this by accepting a list of clauses and an aggregator, being an arity 1 function which reduces a list of booleans into a single boolean

Represents a result of a rule evaluation. It contains

A behaviour specifying a format/1 callback which takes a list of results and reduces them to whatever the formatter wants to

A result formatter which reduces the given results to the contained rules

The behaviour for module based rules which requires an evaluate/1 function. Also offers some helpful functions to deal with all kinds of rules

The main rule protocol. Each rule needs to implement this protocol to be considered a rule

Easily define your own struct based rules by using Brex.Rule.Struct

Specifies types relevant to the Brex modules