Skip to main content

laminar_sql/translator/
mod.rs

1//! SQL to operator configuration translation
2//!
3//! This module translates parsed SQL AST into Ring 0 operator configurations
4//! that can be instantiated and executed.
5
6/// Analytic window function operator configuration builder
7pub mod analytic_translator;
8/// DAG EXPLAIN formatter
9pub mod dag_planner;
10/// HAVING clause filter configuration
11pub mod having_translator;
12mod join_translator;
13/// ORDER BY operator configuration builder
14pub mod order_translator;
15/// Streaming DDL (CREATE SOURCE/SINK) translator
16pub mod streaming_ddl;
17/// Temporal probe join configuration
18pub mod temporal_probe;
19mod window_translator;
20
21pub use crate::parser::order_analyzer::RankType;
22pub use analytic_translator::{
23    AnalyticFunctionConfig, AnalyticWindowConfig, WindowFrameConfig, WindowFrameFunctionConfig,
24};
25pub use dag_planner::{format_dag_explain, DagExplainOutput};
26pub use having_translator::HavingFilterConfig;
27pub use join_translator::{
28    AsofJoinTranslatorConfig, AsofSqlJoinType, JoinOperatorConfig, LookupJoinConfig,
29    LookupJoinType, StreamJoinConfig, StreamJoinType, TemporalJoinTranslatorConfig,
30};
31pub use laminar_core::streaming::config::{
32    BackpressureStrategy as StreamingBackpressure, WaitStrategy as StreamingWaitStrategy,
33};
34pub use order_translator::{
35    OrderOperatorConfig, PerGroupTopKConfig, TopKConfig, WatermarkSortConfig, WindowLocalSortConfig,
36};
37pub use streaming_ddl::{
38    sql_type_to_arrow, ColumnDefinition, SinkDefinition, SourceConfigOptions, SourceDefinition,
39    WatermarkSpec,
40};
41pub use temporal_probe::{parse_interval_to_ms, ProbeOffsetSpec, TemporalProbeConfig};
42pub use window_translator::{WindowOperatorConfig, WindowType};