CPSolver.Propagator behaviour (Fixpoint v0.8.37)

Summary

Types

Link to this type

propagator_event()

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

Callbacks

Link to this callback

arguments(args)

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

bind(t, source, variable_field)

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

entailed?(t, state)

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

failed?(t, state)

@callback failed?(Propagator.t(), state :: map() | nil) :: boolean()
@callback filter(args :: list()) :: {:state, map()} | :stable | :fail | propagator_event()
Link to this callback

filter(args, state)

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

filter(args, state, changes)

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

reset(args, state)

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

reset(args, state, opts)

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

variables(args)

@callback variables(args :: list()) :: list()

Functions

Link to this function

arg_at(args, pos)

Link to this function

arg_map(args, 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

domain_values(p)

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

is_constant_arg(arg)

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

to_domain_events(arg1)

Link to this function

variables(propagator)