Skip to main content

linkrs_query/
context.rs

1//! Query execution context module
2//!
3//! This module provides all context types used during query execution:
4//! - [`QueryContext`]: Main context for query lifecycle management
5//! - [`QueryRequestContext`]: Request-level context (session, parameters)
6//! - [`QueryContextBuilder`]: Builder pattern for constructing QueryContext
7//!
8//! # Architecture
9//!
10//! The context system follows a composite pattern:
11//! ```text
12//! QueryContext
13//! ├── rctx: QueryRequestContext  (request info, parameters)
14//! ├── cancel_token: CancelToken  (request-scoped cancellation, shared with runtime/registry)
15//! ├── id_gen: IdGenerator  (unique ID generation)
16//! ├── space_info: Option<SpaceInfo>  (current graph space)
17//! └── charset_info: Option<CharsetInfo>  (character set)
18//! ```
19
20pub mod query_context;
21pub mod query_context_builder;
22pub mod query_request_context;
23
24pub use query_context::QueryContext;
25pub use query_context_builder::QueryContextBuilder;
26pub use query_request_context::QueryRequestContext;