CPSolver.ConstraintStore behaviour (Fixpoint v0.8.50)
Constraint store is a key-value store, where key
is a variable id,
and value
is a implementation-dependent structure that allows to
update and keep track of variables' domains.
Summary
Types
Link to this type
get_operation()
@type get_operation() :: CPSolver.Common.domain_get_operation() | nil
Link to this type
update_operation()
@type update_operation() :: CPSolver.Common.domain_update_operation()
Callbacks
Link to this callback
create(variables, opts)
Link to this callback
dispose(store, variables)
@callback dispose(store :: any(), variables :: [CPSolver.Variable.t()]) :: :ok | :not_found
Link to this callback
domain(store, variable)
@callback domain(store :: any(), variable :: CPSolver.Variable.t()) :: {:ok, any()} | {:error, any()}
Link to this callback
get(store, variable, get_operation, list)
@callback get(store :: any(), variable :: CPSolver.Variable.t(), get_operation(), [any()]) :: {:ok, any()} | {:error, any()}
Link to this callback
on_change(store, variable, change)
@callback on_change( store :: any(), variable :: CPSolver.Variable.t(), change :: CPSolver.Common.domain_change() ) :: any()
Link to this callback
on_fail(store, variable)
@callback on_fail(store :: any(), variable :: CPSolver.Variable.t()) :: any()
Link to this callback
on_fix(store, variable, value)
@callback on_fix(store :: any(), variable :: CPSolver.Variable.t(), value :: any()) :: any()
Link to this callback
on_no_change(store, variable)
@callback on_no_change(store :: any(), variable :: CPSolver.Variable.t()) :: any()
Link to this callback
update(store, variable, update_operation, list)
@callback update(store :: any(), variable :: CPSolver.Variable.t(), update_operation(), [ any() ]) :: any()
Link to this callback
update_domain(store, variable, update_operation, list)
@callback update_domain( store :: any(), variable :: CPSolver.Variable.t(), update_operation(), [any()] ) :: any()
Functions
Link to this function
create_store(variables, opts \\ [])
Link to this function
default_store()
Link to this function
default_store_opts()
Link to this function
dispose(store, variables)
Link to this function
domain(variable)
Link to this function
domain(store, variable)
Link to this function
fixed?(variable)
Link to this function
get(store, variable, operation, args \\ [])
Link to this function
set_store(store)
Link to this function