Permit.Permissions.DNF (permit v0.0.1)

Conditions written as logical formula in disjunctive normal form Disjunction of dual clauses

Link to this section Summary

Link to this section Types

@type t() :: %Permit.Permissions.DNF{
  disjunctions: [Permit.Permissions.ConditionClauses.t()]
}

Link to this section Functions

Link to this function

add_clauses(dnf, clauses)

@spec add_clauses(t(), [any()]) :: t()
Link to this function

any_satisfied?(dnf, record, subject)

@spec any_satisfied?(t(), Permit.Types.resource(), Permit.Types.subject()) ::
  boolean()
Link to this function

new(disjunctions \\ [])

Link to this function

to_query(dnf, record)

@spec to_query(t(), Permit.Types.resource_module()) ::
  {:ok, Ecto.Query.t()} | {:error, term()}