Skip to content

arclabs561/qplan

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

qplan

Compile typed query expressions (qexpr) into execution-friendly query plans.

This crate is intentionally narrow today: it supports compiling a subset of QExpr into a conjunctive plan (AND of terms/phrases/near constraints). Unsupported operators return explicit errors so downstream systems can choose a fallback.

Usage

[dependencies]
qplan = { git = "https://github.com/arclabs561/qplan" }

Example:

use qexpr::{Phrase, QExpr, Term};
use qplan::compile_conjunctive;

let q = QExpr::And(vec![
    QExpr::Term(Term::new("alpha")),
    QExpr::Phrase(Phrase::new(vec![Term::new("new"), Term::new("york")])),
]);

let p = compile_conjunctive(&q).unwrap();
assert!(!p.bag_terms.is_empty());

Development

cargo test

About

Query planning primitives

Topics

Resources

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages