diff --git a/src/btreeset.rs b/src/btreeset.rs index 69b32066..ebce52a3 100644 --- a/src/btreeset.rs +++ b/src/btreeset.rs @@ -66,8 +66,10 @@ where /// /// ```rust /// use ic_stable_structures::{BTreeSet, DefaultMemoryImpl}; +/// use ic_stable_structures::memory_manager::{MemoryId, MemoryManager}; /// -/// let mut set: BTreeSet = BTreeSet::new(DefaultMemoryImpl::default()); +/// let mem_mgr = MemoryManager::init(DefaultMemoryImpl::default()); +/// let mut set: BTreeSet = BTreeSet::new(mem_mgr.get(MemoryId::new(0))); /// /// set.insert(42); /// assert!(set.contains(&42)); @@ -79,8 +81,10 @@ where /// /// ```rust /// use ic_stable_structures::{BTreeSet, DefaultMemoryImpl}; +/// use ic_stable_structures::memory_manager::{MemoryId, MemoryManager}; /// -/// let mut set: BTreeSet = BTreeSet::new(DefaultMemoryImpl::default()); +/// let mem_mgr = MemoryManager::init(DefaultMemoryImpl::default()); +/// let mut set: BTreeSet = BTreeSet::new(mem_mgr.get(MemoryId::new(0))); /// set.insert(1); /// set.insert(2); /// set.insert(3); @@ -95,6 +99,7 @@ where /// /// ```rust /// use ic_stable_structures::{BTreeSet, DefaultMemoryImpl, Storable}; +/// use ic_stable_structures::memory_manager::{MemoryId, MemoryManager}; /// use std::borrow::Cow; /// /// #[derive(Debug, PartialEq, Eq, PartialOrd, Ord, Clone)] @@ -119,7 +124,8 @@ where /// }; /// } /// -/// let mut set: BTreeSet = BTreeSet::new(DefaultMemoryImpl::default()); +/// let mem_mgr = MemoryManager::init(DefaultMemoryImpl::default()); +/// let mut set: BTreeSet = BTreeSet::new(mem_mgr.get(MemoryId::new(0))); /// set.insert(CustomType { id: 42 }); /// assert!(set.contains(&CustomType { id: 42 })); /// ``` @@ -172,8 +178,10 @@ where /// /// ```rust /// use ic_stable_structures::{BTreeSet, DefaultMemoryImpl}; + /// use ic_stable_structures::memory_manager::{MemoryId, MemoryManager}; /// - /// let set: BTreeSet = BTreeSet::init(DefaultMemoryImpl::default()); + /// let mem_mgr = MemoryManager::init(DefaultMemoryImpl::default()); + /// let set: BTreeSet = BTreeSet::init(mem_mgr.get(MemoryId::new(0))); /// ``` pub fn init(memory: M) -> Self { BTreeSet { @@ -187,8 +195,10 @@ where /// /// ```rust /// use ic_stable_structures::{BTreeSet, DefaultMemoryImpl}; + /// use ic_stable_structures::memory_manager::{MemoryId, MemoryManager}; /// - /// let set: BTreeSet = BTreeSet::new(DefaultMemoryImpl::default()); + /// let mem_mgr = MemoryManager::init(DefaultMemoryImpl::default()); + /// let set: BTreeSet = BTreeSet::new(mem_mgr.get(MemoryId::new(0))); /// ``` pub fn new(memory: M) -> Self { BTreeSet { @@ -202,8 +212,10 @@ where /// /// ```rust /// use ic_stable_structures::{BTreeSet, DefaultMemoryImpl}; + /// use ic_stable_structures::memory_manager::{MemoryId, MemoryManager}; /// - /// let mut set: BTreeSet = BTreeSet::new(DefaultMemoryImpl::default()); + /// let mem_mgr = MemoryManager::init(DefaultMemoryImpl::default()); + /// let mut set: BTreeSet = BTreeSet::new(mem_mgr.get(MemoryId::new(0))); /// set.insert(42); /// /// // Save the set to memory @@ -229,8 +241,10 @@ where /// /// ```rust /// use ic_stable_structures::{BTreeSet, DefaultMemoryImpl}; + /// use ic_stable_structures::memory_manager::{MemoryId, MemoryManager}; /// - /// let mut set: BTreeSet = BTreeSet::new(DefaultMemoryImpl::default()); + /// let mem_mgr = MemoryManager::init(DefaultMemoryImpl::default()); + /// let mut set: BTreeSet = BTreeSet::new(mem_mgr.get(MemoryId::new(0))); /// assert!(set.insert(42)); /// assert!(!set.insert(42)); // Key already exists /// ``` @@ -247,8 +261,10 @@ where /// /// ```rust /// use ic_stable_structures::{BTreeSet, DefaultMemoryImpl}; + /// use ic_stable_structures::memory_manager::{MemoryId, MemoryManager}; /// - /// let mut set: BTreeSet = BTreeSet::new(DefaultMemoryImpl::default()); + /// let mem_mgr = MemoryManager::init(DefaultMemoryImpl::default()); + /// let mut set: BTreeSet = BTreeSet::new(mem_mgr.get(MemoryId::new(0))); /// set.insert(42); /// assert!(set.contains(&42)); /// assert!(!set.contains(&7)); @@ -266,8 +282,10 @@ where /// /// ```rust /// use ic_stable_structures::{BTreeSet, DefaultMemoryImpl}; + /// use ic_stable_structures::memory_manager::{MemoryId, MemoryManager}; /// - /// let set: BTreeSet = BTreeSet::new(DefaultMemoryImpl::default()); + /// let mem_mgr = MemoryManager::init(DefaultMemoryImpl::default()); + /// let set: BTreeSet = BTreeSet::new(mem_mgr.get(MemoryId::new(0))); /// assert!(set.is_empty()); /// ``` pub fn is_empty(&self) -> bool { @@ -283,8 +301,10 @@ where /// /// ```rust /// use ic_stable_structures::{BTreeSet, DefaultMemoryImpl}; + /// use ic_stable_structures::memory_manager::{MemoryId, MemoryManager}; /// - /// let mut set: BTreeSet = BTreeSet::new(DefaultMemoryImpl::default()); + /// let mem_mgr = MemoryManager::init(DefaultMemoryImpl::default()); + /// let mut set: BTreeSet = BTreeSet::new(mem_mgr.get(MemoryId::new(0))); /// set.insert(42); /// set.insert(7); /// assert_eq!(set.len(), 2); @@ -299,8 +319,10 @@ where /// /// ```rust /// use ic_stable_structures::{BTreeSet, DefaultMemoryImpl}; + /// use ic_stable_structures::memory_manager::{MemoryId, MemoryManager}; /// - /// let set: BTreeSet = BTreeSet::new(DefaultMemoryImpl::default()); + /// let mem_mgr = MemoryManager::init(DefaultMemoryImpl::default()); + /// let set: BTreeSet = BTreeSet::new(mem_mgr.get(MemoryId::new(0))); /// let memory = set.into_memory(); /// ``` pub fn into_memory(self) -> M { @@ -318,8 +340,10 @@ where /// /// ```rust /// use ic_stable_structures::{BTreeSet, DefaultMemoryImpl}; + /// use ic_stable_structures::memory_manager::{MemoryId, MemoryManager}; /// - /// let mut set: BTreeSet = BTreeSet::new(DefaultMemoryImpl::default()); + /// let mem_mgr = MemoryManager::init(DefaultMemoryImpl::default()); + /// let mut set: BTreeSet = BTreeSet::new(mem_mgr.get(MemoryId::new(0))); /// set.insert(42); /// set.clear(); /// assert!(set.is_empty()); @@ -338,8 +362,10 @@ where /// /// ```rust /// use ic_stable_structures::{BTreeSet, DefaultMemoryImpl}; + /// use ic_stable_structures::memory_manager::{MemoryId, MemoryManager}; /// - /// let mut set: BTreeSet = BTreeSet::new(DefaultMemoryImpl::default()); + /// let mem_mgr = MemoryManager::init(DefaultMemoryImpl::default()); + /// let mut set: BTreeSet = BTreeSet::new(mem_mgr.get(MemoryId::new(0))); /// set.insert(42); /// set.insert(7); /// assert_eq!(set.first(), Some(7)); @@ -358,8 +384,10 @@ where /// /// ```rust /// use ic_stable_structures::{BTreeSet, DefaultMemoryImpl}; + /// use ic_stable_structures::memory_manager::{MemoryId, MemoryManager}; /// - /// let mut set: BTreeSet = BTreeSet::new(DefaultMemoryImpl::default()); + /// let mem_mgr = MemoryManager::init(DefaultMemoryImpl::default()); + /// let mut set: BTreeSet = BTreeSet::new(mem_mgr.get(MemoryId::new(0))); /// set.insert(42); /// set.insert(7); /// assert_eq!(set.last(), Some(42)); @@ -377,8 +405,10 @@ where /// /// ```rust /// use ic_stable_structures::{BTreeSet, DefaultMemoryImpl}; + /// use ic_stable_structures::memory_manager::{MemoryId, MemoryManager}; /// - /// let mut set: BTreeSet = BTreeSet::new(DefaultMemoryImpl::default()); + /// let mem_mgr = MemoryManager::init(DefaultMemoryImpl::default()); + /// let mut set: BTreeSet = BTreeSet::new(mem_mgr.get(MemoryId::new(0))); /// set.insert(42); /// assert!(set.remove(&42)); /// assert!(!set.contains(&42)); @@ -396,8 +426,10 @@ where /// /// ```rust /// use ic_stable_structures::{BTreeSet, DefaultMemoryImpl}; + /// use ic_stable_structures::memory_manager::{MemoryId, MemoryManager}; /// - /// let mut set: BTreeSet = BTreeSet::new(DefaultMemoryImpl::default()); + /// let mem_mgr = MemoryManager::init(DefaultMemoryImpl::default()); + /// let mut set: BTreeSet = BTreeSet::new(mem_mgr.get(MemoryId::new(0))); /// set.insert(42); /// set.insert(7); /// assert_eq!(set.pop_last(), Some(42)); @@ -415,8 +447,10 @@ where /// /// ```rust /// use ic_stable_structures::{BTreeSet, DefaultMemoryImpl}; + /// use ic_stable_structures::memory_manager::{MemoryId, MemoryManager}; /// - /// let mut set: BTreeSet = BTreeSet::new(DefaultMemoryImpl::default()); + /// let mem_mgr = MemoryManager::init(DefaultMemoryImpl::default()); + /// let mut set: BTreeSet = BTreeSet::new(mem_mgr.get(MemoryId::new(0))); /// set.insert(42); /// set.insert(7); /// assert_eq!(set.pop_first(), Some(7)); @@ -434,8 +468,10 @@ where /// /// ```rust /// use ic_stable_structures::{BTreeSet, DefaultMemoryImpl}; + /// use ic_stable_structures::memory_manager::{MemoryId, MemoryManager}; /// - /// let mut set: BTreeSet = BTreeSet::new(DefaultMemoryImpl::default()); + /// let mem_mgr = MemoryManager::init(DefaultMemoryImpl::default()); + /// let mut set: BTreeSet = BTreeSet::new(mem_mgr.get(MemoryId::new(0))); /// set.insert(42); /// set.insert(7); /// for key in set.iter() { @@ -456,8 +492,10 @@ where /// /// ```rust /// use ic_stable_structures::{BTreeSet, DefaultMemoryImpl}; + /// use ic_stable_structures::memory_manager::{MemoryId, MemoryManager}; /// - /// let mut set: BTreeSet = BTreeSet::new(DefaultMemoryImpl::default()); + /// let mem_mgr = MemoryManager::init(DefaultMemoryImpl::default()); + /// let mut set: BTreeSet = BTreeSet::new(mem_mgr.get(MemoryId::new(0))); /// set.insert(1); /// set.insert(2); /// set.insert(3); @@ -478,8 +516,10 @@ where /// /// ```rust /// use ic_stable_structures::{BTreeSet, DefaultMemoryImpl}; + /// use ic_stable_structures::memory_manager::{MemoryId, MemoryManager}; /// - /// let mut set: BTreeSet = BTreeSet::new(DefaultMemoryImpl::default()); + /// let mem_mgr = MemoryManager::init(DefaultMemoryImpl::default()); + /// let mut set: BTreeSet = BTreeSet::new(mem_mgr.get(MemoryId::new(0))); /// set.insert(1); /// set.insert(2); /// set.insert(3); @@ -504,9 +544,11 @@ where /// /// ```rust /// use ic_stable_structures::{BTreeSet, DefaultMemoryImpl}; + /// use ic_stable_structures::memory_manager::{MemoryId, MemoryManager}; /// - /// let mut set1: BTreeSet = BTreeSet::new(DefaultMemoryImpl::default()); - /// let mut set2: BTreeSet = BTreeSet::new(DefaultMemoryImpl::default()); + /// let mem_mgr = MemoryManager::init(DefaultMemoryImpl::default()); + /// let mut set1: BTreeSet = BTreeSet::new(mem_mgr.get(MemoryId::new(0))); + /// let mut set2: BTreeSet = BTreeSet::new(mem_mgr.get(MemoryId::new(1))); /// /// set1.insert(1); /// set1.insert(2); @@ -573,9 +615,11 @@ where /// /// ```rust /// use ic_stable_structures::{BTreeSet, DefaultMemoryImpl}; + /// use ic_stable_structures::memory_manager::{MemoryId, MemoryManager}; /// - /// let mut set1: BTreeSet = BTreeSet::new(DefaultMemoryImpl::default()); - /// let mut set2: BTreeSet = BTreeSet::new(DefaultMemoryImpl::default()); + /// let mem_mgr = MemoryManager::init(DefaultMemoryImpl::default()); + /// let mut set1: BTreeSet = BTreeSet::new(mem_mgr.get(MemoryId::new(0))); + /// let mut set2: BTreeSet = BTreeSet::new(mem_mgr.get(MemoryId::new(1))); /// /// set1.insert(1); /// set1.insert(2); @@ -631,9 +675,11 @@ where /// /// ```rust /// use ic_stable_structures::{BTreeSet, DefaultMemoryImpl}; + /// use ic_stable_structures::memory_manager::{MemoryId, MemoryManager}; /// - /// let mut set1: BTreeSet = BTreeSet::new(DefaultMemoryImpl::default()); - /// let mut set2: BTreeSet = BTreeSet::new(DefaultMemoryImpl::default()); + /// let mem_mgr = MemoryManager::init(DefaultMemoryImpl::default()); + /// let mut set1: BTreeSet = BTreeSet::new(mem_mgr.get(MemoryId::new(0))); + /// let mut set2: BTreeSet = BTreeSet::new(mem_mgr.get(MemoryId::new(1))); /// /// set1.insert(1); /// set1.insert(2); @@ -674,9 +720,11 @@ where /// /// ```rust /// use ic_stable_structures::{BTreeSet, DefaultMemoryImpl}; + /// use ic_stable_structures::memory_manager::{MemoryId, MemoryManager}; /// - /// let mut set1: BTreeSet = BTreeSet::new(DefaultMemoryImpl::default()); - /// let mut set2: BTreeSet = BTreeSet::new(DefaultMemoryImpl::default()); + /// let mem_mgr = MemoryManager::init(DefaultMemoryImpl::default()); + /// let mut set1: BTreeSet = BTreeSet::new(mem_mgr.get(MemoryId::new(0))); + /// let mut set2: BTreeSet = BTreeSet::new(mem_mgr.get(MemoryId::new(1))); /// /// set1.insert(1); /// set1.insert(2); @@ -737,9 +785,11 @@ where /// /// ```rust /// use ic_stable_structures::{BTreeSet, DefaultMemoryImpl}; + /// use ic_stable_structures::memory_manager::{MemoryId, MemoryManager}; /// - /// let mut set1: BTreeSet = BTreeSet::new(DefaultMemoryImpl::default()); - /// let mut set2: BTreeSet = BTreeSet::new(DefaultMemoryImpl::default()); + /// let mem_mgr = MemoryManager::init(DefaultMemoryImpl::default()); + /// let mut set1: BTreeSet = BTreeSet::new(mem_mgr.get(MemoryId::new(0))); + /// let mut set2: BTreeSet = BTreeSet::new(mem_mgr.get(MemoryId::new(1))); /// /// set1.insert(1); /// set1.insert(2); @@ -768,9 +818,11 @@ where /// /// ```rust /// use ic_stable_structures::{BTreeSet, DefaultMemoryImpl}; + /// use ic_stable_structures::memory_manager::{MemoryId, MemoryManager}; /// - /// let mut set1: BTreeSet = BTreeSet::new(DefaultMemoryImpl::default()); - /// let mut set2: BTreeSet = BTreeSet::new(DefaultMemoryImpl::default()); + /// let mem_mgr = MemoryManager::init(DefaultMemoryImpl::default()); + /// let mut set1: BTreeSet = BTreeSet::new(mem_mgr.get(MemoryId::new(0))); + /// let mut set2: BTreeSet = BTreeSet::new(mem_mgr.get(MemoryId::new(1))); /// /// set1.insert(1); /// set1.insert(2);