View Source Wongi.Engine.Rete (Wongi.Engine v0.9.3)

The Rete network.

Wongi.Engine is the public API. Avoid calling this module directly.

Summary

Types

@type t() :: %Wongi.Engine.Rete{
  alpha_subscriptions: term(),
  beta_root: term(),
  beta_subscriptions: term(),
  beta_table: term(),
  op_queue: term(),
  overlay: term(),
  processing: term(),
  productions: term()
}

Functions

Link to this function

add_neg_join_result(rete, token, wme)

View Source
@spec add_token(t(), Wongi.Engine.Token.t()) :: t()
Link to this function

assert(rete, wme_ish, generator \\ nil)

View Source
Link to this function

assert(rete, subject, object, predicate, generator \\ nil)

View Source
Link to this function

beta_subscriptions(rete, node)

View Source
@spec compile(t(), Wongi.Engine.DSL.Rule.t()) :: t()
Link to this function

compile_and_get_ref(rete, rule)

View Source
@spec compile_and_get_ref(t(), Wongi.Engine.DSL.Rule.t()) :: {t(), reference()}
Link to this function

neg_join_results(rete, token_or_wme)

View Source
Link to this function

remove_neg_join_result(rete, token, wme)

View Source
Link to this function

remove_token(rete, token)

View Source
Link to this function

retract(rete, wme_ish, generator \\ nil)

View Source
Link to this function

retract(rete, subject, object, predicate, generator \\ nil)

View Source
Link to this function

subscribe_to_alpha(rete, template, node)

View Source
Link to this function

subscribe_to_beta(rete, parent, child)

View Source
Link to this function

trigger(rete, operation)

View Source