use std::collections::HashMap;
use std::sync::Arc;
use linkrs_core::Value;
use super::executor::SubqueryExecutor;
#[derive(Debug, Clone, Default)]
pub struct EvalEnv {
pub params: Option<Arc<HashMap<String, Value>>>,
pub session_variables: Option<Arc<HashMap<String, Value>>>,
pub subquery_executor: Option<Arc<SubqueryExecutor>>,
pub sequence_manager: Option<Arc<linkrs_core::metadata::SequenceManager>>,
}
impl EvalEnv {
pub fn from_params(params: Option<Arc<HashMap<String, Value>>>) -> Self {
Self {
params,
session_variables: None,
subquery_executor: None,
sequence_manager: None,
}
}
}