Skip to main content

hawdb_executor/
lib.rs

1// Copyright 2026 Nowledge
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7//     http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15#[doc(hidden)]
16pub mod analytics;
17#[doc(hidden)]
18pub mod batch;
19#[doc(hidden)]
20pub mod binding;
21#[doc(hidden)]
22pub mod blocking;
23pub mod columnar;
24pub mod concurrent;
25#[doc(hidden)]
26pub mod execution_request;
27#[doc(hidden)]
28pub mod expression;
29#[doc(hidden)]
30pub mod external;
31#[doc(hidden)]
32pub mod external_order;
33pub mod graph;
34mod graph_match;
35#[doc(hidden)]
36pub mod kernel;
37pub mod limit;
38pub mod memory;
39pub mod memory_ledger;
40pub mod morsel;
41#[doc(hidden)]
42pub mod mutation;
43#[doc(hidden)]
44pub mod numeric;
45#[doc(hidden)]
46pub mod observer;
47mod output;
48pub use output::QueryOutput;
49#[doc(hidden)]
50pub mod pipeline;
51#[doc(hidden)]
52pub mod predicate;
53pub mod profile;
54mod read_output;
55#[doc(hidden)]
56pub mod result_delivery;
57#[doc(hidden)]
58pub mod runtime_admission;
59#[doc(hidden)]
60pub mod scan;
61#[doc(hidden)]
62pub mod spill;
63#[doc(hidden)]
64pub mod store;
65mod store_adapter;
66#[doc(hidden)]
67pub mod transform;
68#[doc(hidden)]
69pub mod traversal;
70pub mod vector;
71
72pub use binding::value_payload_bytes as query_value_payload_bytes;
73
74pub use columnar::{
75    filter_boolean_column, filter_float64_values, filter_float64_values_view, filter_int64_values,
76    filter_int64_values_view, filter_numeric_column, select_float64_values_view,
77    select_int64_values_view, BindingSchema, ColumnType, ColumnVector, ColumnarBatch,
78    ColumnarRowRef, NumericLiteral, NumericPredicate, RelationalRowLocator, Selection,
79    SlotDescriptor, SlotId, SlotType, Validity, ValidityBuilder, ValidityView,
80};
81pub use concurrent::{BoundedExecutor, SharedExecutorPool, SharedExecutorPoolError};
82pub use external::{
83    ExternalReadOperator, ExternalReadResourceContract, ExternalReadResultBudget,
84    VectorSeedExecutionOutput, VectorSeedExecutionRequest, VectorSeedExecutionRow,
85};
86pub use graph::{GraphExpansionExecutionReport, GraphExpansionTruncationReason};
87pub use limit::ExecutionLimit;
88pub use memory::ExecutionMemoryConfig;
89pub use memory_ledger::{
90    QueryMemoryAccount, QueryMemoryClass, QueryMemoryClassSnapshot, QueryMemoryLease,
91    QueryMemoryLedger, QueryMemoryLedgerSnapshot,
92};
93pub use morsel::{
94    admit_morsels, execute_morsels_ordered, Morsel, MorselAdmission, MorselAdmissionRequest,
95    MorselIter, MorselOrdinal, MorselOutput, MorselStreamControl, MorselStreamReport,
96    MorselStreamResources, PipelineId, SequentialMorselScheduler, SharedPoolMorselScheduler,
97};
98pub use profile::{
99    BlockingOperatorMemoryReport, OperatorCardinalityProfile, PipelineMemoryReport,
100    ProfiledQueryRows, ProfiledQueryStream, QueryRow, QueryRowRef, QueryRows, QueryRowsBuilder,
101    QueryRowsIntoIter, QueryRowsIter, QuerySchema, QueryValueRows, ReadExecutionProfile, Row,
102    RowRef, RowRefIter,
103};
104pub use read_output::{BoundedReadQueryOutput, QueryStreamOptions, QueryStreamReport};
105pub use spill::SpillPoolSnapshot;
106pub use vector::{
107    execute_vector_plan, VectorCandidate, VectorCandidateBatch, VectorCandidateScanMetrics,
108    VectorCandidateScanRequest, VectorCompressionMode, VectorExecutionBackend,
109    VectorExecutionError, VectorExecutionOutput, VectorExecutionReport, VectorExecutionSource,
110    VectorFallbackReasonCode, VectorRawRerankRequest, VectorRawScore, VectorResidualFilterRequest,
111    VectorScoreSource,
112};