Skip to main content

Crate shifty_opt

Crate shifty_opt 

Source
Expand description

Static analysis, normalization, and planning (Layers 4-5).

Layer 4 starts here: the polarity-aware shape depsendency graph and strataification analysis that realize the recursion semantics decided in docs/03-recursion-semantics.md (stratified; diagnose non-stratifiable). Normalization and logical→physical planning follow.

Re-exports§

pub use deps::DepEdge;
pub use deps::Polarity;
pub use deps::dependency_edges;
pub use normalize::NormalizedSchema;
pub use normalize::normalize;
pub use normalize::normalize_with_mapping;
pub use plan::FocusSource;
pub use plan::PhysicalPlan;
pub use plan::StatementPlan;
pub use plan::plan;
pub use plan::plan_no_seeding;
pub use plan::plan_no_sort;
pub use rule_deps::RuleDependencies;
pub use rule_deps::rule_dependencies;
pub use rule_deps::rule_guard_dependencies;
pub use rule_deps::selector_dependencies;
pub use sparql_native::ClosureKind;
pub use sparql_native::ExprPlan;
pub use sparql_native::GraphScan;
pub use sparql_native::NativeOp;
pub use sparql_native::NativeQueryPlan;
pub use sparql_native::OpId;
pub use sparql_native::PathScan;
pub use sparql_native::PlanStats;
pub use sparql_native::QueryForm;
pub use sparql_native::ScanTerm;
pub use sparql_native::TripleScan;
pub use sparql_native::VarId;
pub use sparql_native::lower_query;
pub use sparql_native::lower_query_with_stats;
pub use sparql_native::render_native_plan;
pub use strata::Stratification;
pub use strata::Stratum;
pub use strata::analyze;

Modules§

deps
Polarity-aware shape dependency graph (Layer 4).
normalize
Semantics-preserving normalization of a Schema (Layer 4).
plan
Logical → physical planning (Layer 5).
rule_deps
Conservative graph-read dependencies for SHACL-AF rules.
sparql_native
strata
Stratification analysis over the polarity-aware dependency graph (Layer 4).