vibesql_executor/
lib.rs

1//! Executor - SQL Query Execution Engine
2//!
3//! This crate provides query execution functionality for SQL statements.
4
5pub mod advanced_objects;
6mod alter;
7pub mod arena;
8pub mod cache;
9mod constraint_validator;
10pub mod correlation;
11mod create_table;
12pub mod cursor;
13pub mod debug_output;
14mod delete;
15pub mod dml_cost;
16mod domain_ddl;
17mod drop_table;
18pub mod errors;
19pub mod evaluator;
20mod explain;
21mod grant;
22pub mod index_ddl;
23pub mod information_schema;
24mod insert;
25mod introspection;
26pub mod limits;
27pub mod memory;
28mod optimizer;
29pub mod persistence;
30pub mod pipeline;
31mod privilege_checker;
32pub mod procedural;
33pub mod profiling;
34mod revoke;
35mod role_ddl;
36pub mod schema;
37mod schema_ddl;
38pub mod select;
39mod select_into;
40pub mod session;
41pub mod timeout;
42mod transaction;
43mod trigger_ddl;
44mod trigger_execution;
45pub mod truncate;
46mod truncate_table;
47mod truncate_validation;
48mod type_ddl;
49mod update;
50mod view_ddl;
51
52// SIMD-accelerated operations for columnar execution
53#[cfg(feature = "simd")]
54pub mod simd;
55
56pub use alter::AlterTableExecutor;
57pub use cache::{
58    CacheManager, CacheStats, CachedQueryContext, PreparedStatement, PreparedStatementCache,
59    PreparedStatementCacheStats, PreparedStatementError, QueryPlanCache, QuerySignature,
60};
61pub use constraint_validator::ConstraintValidator;
62pub use create_table::CreateTableExecutor;
63pub use cursor::{Cursor, CursorExecutor, CursorResult, CursorStore, FetchResult};
64pub use delete::DeleteExecutor;
65pub use dml_cost::DmlOptimizer;
66pub use domain_ddl::DomainExecutor;
67pub use drop_table::DropTableExecutor;
68pub use errors::ExecutorError;
69pub use evaluator::clear_in_subquery_cache;
70pub use evaluator::ExpressionEvaluator;
71pub use explain::{ExplainExecutor, ExplainResult, PlanNode};
72pub use grant::GrantExecutor;
73pub use index_ddl::{
74    AnalyzeExecutor, CreateIndexExecutor, DropIndexExecutor, IndexExecutor, ReindexExecutor,
75};
76pub use insert::InsertExecutor;
77pub use introspection::IntrospectionExecutor;
78pub use memory::QueryArena;
79pub use persistence::load_sql_dump;
80pub use pipeline::{
81    ColumnarPipeline, ExecutionContext, ExecutionPipeline, NativeColumnarPipeline, PipelineInput,
82    PipelineOutput, RowOrientedPipeline,
83};
84pub use privilege_checker::PrivilegeChecker;
85pub use revoke::RevokeExecutor;
86pub use role_ddl::RoleExecutor;
87pub use schema_ddl::SchemaExecutor;
88pub use select::{SelectExecutor, SelectResult};
89pub use select_into::SelectIntoExecutor;
90pub use session::{PreparedExecutionResult, Session, SessionError, SessionMut};
91pub use timeout::TimeoutContext;
92pub use transaction::{
93    BeginTransactionExecutor, CommitExecutor, ReleaseSavepointExecutor, RollbackExecutor,
94    RollbackToSavepointExecutor, SavepointExecutor,
95};
96pub use trigger_ddl::TriggerExecutor;
97pub use trigger_execution::TriggerFirer;
98pub use truncate_table::TruncateTableExecutor;
99pub use type_ddl::TypeExecutor;
100pub use update::UpdateExecutor;
101pub use view_ddl::ViewExecutor;
102
103#[cfg(test)]
104mod tests;