Macro holmes::query [] [src]

macro_rules! query {
    ($holmes:ident, $($pred_name:ident $inner:tt)&*) => { ... };
}

Runs a datalog query against the Holmes context

Matches as per the right hand side of a datalog rule, then returns a list of possible assignments to variables.

Clauses are separated by &, slots follow the rules in match_expr!

query!(holmes, foo((3), [_]) & bar([_], x))