CPSolver.Propagator behaviour (Fixpoint v0.13.2)

Link to this section Summary

Link to this section Types

Link to this type

propagator_event()

Specs

propagator_event() ::
  :domain_change | :bound_change | :min_change | :max_change | :fixed

Link to this section Callbacks

Link to this callback

arguments(args)

Specs

arguments(args :: list()) :: Arrays.t()
Link to this callback

bind(t, source, variable_field)

Specs

bind(Propagator.t(), source :: any(), variable_field :: atom()) ::
  Propagator.t()
Link to this callback

entailed?(t, state)

Specs

entailed?(Propagator.t(), state :: map() | nil) :: boolean()
Link to this callback

failed?(t, state)

Specs

failed?(Propagator.t(), state :: map() | nil) :: boolean()
Link to this callback

filter(args, state, changes)

Specs

filter(args :: list(), state :: map(), changes :: map()) ::
  {:state, map()} | :stable | :fail | propagator_event()
Link to this callback

reset(args, state)

Specs

reset(args :: list(), state :: map()) :: map() | nil
Link to this callback

reset(args, state, opts)

Specs

reset(args :: list(), state :: map(), opts :: Keyword.t()) :: map() | nil
Link to this callback

variables(args)

Specs

variables(args :: list()) :: list()

Link to this section Functions

Link to this function

arg_at(args, pos)

Link to this function

arg_map(propagator, mapper)

Link to this function

args_to_list(args)

Link to this function

bind(propagator, source, var_field \\ :domain)

Link to this function

bind_to_variable(propagator_var, variable_source, var_field)

Link to this function

bind_to_variables(args, variable_source, var_field)

Link to this function

default_variables_impl(args)

Link to this function

dry_run(propagator, opts \\ [])

Link to this function

entailed?(propagator)

Link to this function

failed?(propagator)

Link to this function

filter(propagator, opts \\ [])

Link to this function

get_filter_changes()

Link to this function

is_constant_arg(arg)

Link to this function

merge_changes(changes1, changes2)

Link to this function

new(mod, args, opts \\ [])

Link to this function

propagator_events()

Link to this function

reset(propagator, opts \\ [])

Link to this function

reset_filter_changes()

Link to this function

to_domain_events(arg1)

Link to this function

update_state(propagator, state)

Link to this function

variables(propagator)