/
lib.rs
49 lines (43 loc) · 1.61 KB
/
lib.rs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
// Copyright 2020 TiKV Project Authors. Licensed under Apache-2.0.
//! This crate implements a simple SQL query engine to work with TiDB pushed down executors.
//!
//! The query engine is able to scan and understand rows stored by TiDB, run against a
//! series of executors and then return the execution result. The query engine is provided via
//! TiKV Coprocessor interface. However standalone UDF functions are also exported and can be used
//! standalone.
#![allow(incomplete_features)]
#![feature(proc_macro_hygiene)]
#![feature(specialization)]
#![feature(const_mut_refs)]
#[macro_use(box_try, warn)]
extern crate tikv_util;
#[macro_use(other_err)]
extern crate tidb_query_common;
#[cfg(test)]
pub use tidb_query_aggr::*;
#[cfg(test)]
pub use tidb_query_expr::function::*;
#[cfg(test)]
pub use tidb_query_expr::*;
mod fast_hash_aggr_executor;
mod index_scan_executor;
pub mod interface;
mod limit_executor;
mod projection_executor;
pub mod runner;
mod selection_executor;
mod simple_aggr_executor;
mod slow_hash_aggr_executor;
mod stream_aggr_executor;
mod table_scan_executor;
mod top_n_executor;
mod util;
pub use self::{
fast_hash_aggr_executor::BatchFastHashAggregationExecutor,
index_scan_executor::BatchIndexScanExecutor, limit_executor::BatchLimitExecutor,
projection_executor::BatchProjectionExecutor, selection_executor::BatchSelectionExecutor,
simple_aggr_executor::BatchSimpleAggregationExecutor,
slow_hash_aggr_executor::BatchSlowHashAggregationExecutor,
stream_aggr_executor::BatchStreamAggregationExecutor,
table_scan_executor::BatchTableScanExecutor, top_n_executor::BatchTopNExecutor,
};