Ruler.Engine.BetaMemory (Ruler v0.1.0) View Source

Link to this section Summary

Link to this section Types

Link to this section Functions

Link to this function

add_join_node!(engine, bmem_ref, join_node_ref)

View Source

Specs

add_join_node!(engine(), ref(), Ruler.State.JoinNode.ref()) :: engine()
Link to this function

build_or_share(engine, parent_ref)

View Source

Specs

build_or_share(engine(), Ruler.State.JoinNode.ref()) :: {engine(), ref()}

Specs

fetch!(state(), ref()) :: mem_data()
Link to this function

find_child!(state, parent_ref, pred)

View Source

Specs

find_child!(state(), ref(), (mem_data() -> boolean())) ::
  Ruler.State.JoinNode.ref() | nil
Link to this function

left_activate(engine, ref, partial_activation, fact, op)

View Source

Specs

left_activate(
  engine(),
  ref(),
  partial_activation(),
  Ruler.Fact.t(),
  :add | :remove
) :: engine()