DatalogRule class abstract

A Datalog rule with stratification support.

Rules with negation must be placed in a higher stratum than the predicates they negate. For example, if rule R uses !P, then R must be in a stratum > stratum of rules producing P.

Implementers

Constructors

DatalogRule(String headRelation, {int stratum = 0})

Properties

hashCode int
The hash code for this object.
no setterinherited
headRelation String
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
stratum int
Stratum for stratified evaluation.
final

Methods

evaluate(Map<String, List<List<Object>>> facts, Map<String, List<List<Object>>> derived) List<Fact>
Evaluates the rule and returns derived facts.
getCombined(String relation, Map<String, List<List<Object>>> facts, Map<String, List<List<Object>>> derived) Iterable<List<Object>>
Returns a lazy iterable combining facts and derived tuples for a relation.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited