lambdust 0.1.1

A Scheme dialect with gradual typing and effect systems
use crate::eval::Environment;
use super::{EnvironmentCall, MockEnvironmentBehavior};
use std::collections::HashMap;
use std::rc::Rc;
use std::sync::{Arc, Mutex};

/// Mock environment manager for testing
#[derive(Debug)]
pub struct MockEnvironmentManager {
    /// Environment storage
    environments: Arc<Mutex<HashMap<u64, Rc<Environment>>>>,
    
    /// Environment ID counter
    next_id: Arc<Mutex<u64>>,
    
    /// Call tracking
    call_log: Arc<Mutex<Vec<EnvironmentCall>>>,
    
    /// Behavior configuration
    behavior: MockEnvironmentBehavior,
}