Skip to main content

osp_cli/dsl/
mod.rs

1//! OSP's row-oriented DSL.
2//!
3//! The crate is intentionally split into a small number of phases:
4//! - `parse`: turn pipeline text into explicit stage intent
5//! - `eval`: apply that intent to rows or groups
6//! - `stages`: keep per-verb behavior in focused modules
7//!
8//! The goal is not to be a generic query language. It is a pragmatic pipeline
9//! for interactive CLI inspection, so we optimize for readable stage behavior
10//! and stable user-facing semantics over clever parsing tricks.
11
12pub mod eval;
13pub mod model;
14pub mod parse;
15pub mod stages;
16pub mod verbs;
17
18pub use eval::engine::{
19    apply_output_pipeline, apply_pipeline, execute_pipeline, execute_pipeline_streaming,
20};
21pub use parse::pipeline::{Pipeline, parse_pipeline};
22pub use verbs::{
23    VerbInfo, VerbStreaming, is_registered_explicit_verb, registered_verbs, render_streaming_badge,
24    verb_info,
25};