Crate datafrog

source ·
Expand description

A lightweight Datalog engine in Rust

The intended design is that one has static Relation types that are sets of tuples, and Variable types that represent monotonically increasing sets of tuples.

The types are mostly wrappers around Vec<Tuple> indicating sorted-ness, and the intent is that this code can be dropped in the middle of an otherwise normal Rust program, run to completion, and then the results extracted as vectors again.

Structs

Wraps a Relation as a leaper.
Wraps a Relation as a leaper.
Wraps a Relation as a leaper.
Wraps a Relation as a leaper.
An iterative context for recursive evaluation.
A static, ordered list of key-value pairs.
An monotonically increasing set of Tuples.

Traits

Methods to support treefrog leapjoin.
Extension method for relations.