Function proto_vulcan::relation::empty[][src]

pub fn empty<U, E, G>(s: LTerm<U, E>) -> InferredGoal<U, E, G> where
    U: User,
    E: Engine<U>,
    G: AnyGoal<U, E>, 
Expand description

A relation that succeeds when s is an empty list. This is equivalent to s == [].

Example

extern crate proto_vulcan;
use proto_vulcan::prelude::*;
use proto_vulcan::relation::empty;
fn main() {
    let query = proto_vulcan_query!(|q| {
        conde {
            [q == [], empty(q)]
        }
    });
    assert!(query.run().next().unwrap().q == lterm!([]));
}