//! Runtime execution limits — a port of `python/graphddb_runtime/limits.py`.
/// Execution-time upper bounds, layered on top of the TS-defined limits.
#[derive(Debug, Clone, Copy)]
pub struct RuntimeLimits {
/// Maximum number of operations a single query may expand to.
pub max_operations: usize,
/// Maximum number of items a read (or BatchGet fan-out) may involve.
pub max_items: usize,
/// Maximum relation-traversal depth.
pub max_depth: usize,
/// Maximum keys per BatchGetItem request (chunk size).
pub max_batch_get_items: usize,
}
impl Default for RuntimeLimits {
fn default() -> Self {
Self {
max_operations: 20,
max_items: 100,
max_depth: 1,
max_batch_get_items: 100,
}
}
}