logic-eval
A simple logic evaluator.
Example
use ;
// Creates a DB.
let interner = default;
let mut db = new;
let dataset = "
child(a, b).
child(b, c).
descend($X, $Y) :- child($X, $Y).
descend($X, $Z) :- child($X, $Y), descend($Y, $Z).
";
db.insert_dataset;
db.commit;
// Queries the DB.
let query = "descend($X, $Y).";
let mut cx = db.query;
let mut answer = Vecnew;
while let Some = cx.prove_next
assert_eq!