Interface TriggerComputer<RW extends MaterializedData & Writable>

Type Parameters:
RW - the writable materialized data type handled by the trigger computer
All Known Implementing Classes:
NaiveTriggerComputer, RestrictedTriggerComputer, SemiNaiveComputer, TwoStepsComputer

public interface TriggerComputer<RW extends MaterializedData & Writable>
Computes the triggers from a rule's body on a factbase
  • Method Summary

    Modifier and Type
    Method
    Description
    compute(FOQuery<?> sharedBody, Collection<FORule> rules, ChasableData<RW> chasableData)
    Computes and returns the triggers of the sharedBody on the factbase
    default String
    Returns a textual description of the trigger computer.
    void
    Initialize the trigger computer for the given chase
  • Method Details

    • init

      void init(Chase<RW> c)
      Initialize the trigger computer for the given chase
      Parameters:
      c - the chase object
    • compute

      Stream<Substitution> compute(FOQuery<?> sharedBody, Collection<FORule> rules, ChasableData<RW> chasableData)
      Computes and returns the triggers of the sharedBody on the factbase
      Parameters:
      sharedBody - the sharedBody of the rule to evaluate
      rules - the rules sharing the same body query
      chasableData - the data to apply the rules on
      Returns:
      the triggers of the rule on the factbase
    • describe

      default String describe()
      Returns a textual description of the trigger computer.
      Returns:
      a textual description of the trigger computer