1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
//! Treemap is a RoaringBitmap-based structure that supports 64bit unsigned
//! integer values. Implemented as a [`BTreeMap`].
//!
//! Java version can be found at <https://github.com/RoaringBitmap/RoaringBitmap/blob/master/roaringbitmap/src/main/java/org/roaringbitmap/longlong/Roaring64NavigableMap.java>
//! C++ version - <https://github.com/RoaringBitmap/CRoaring/blob/master/cpp/roaring64map.hh>
//!
//! # Example
//!
//! ```rust
//! use std::u32;
//! use croaring::Treemap;
//!
//! let mut treemap = Treemap::new();
//! treemap.add(3);
//! assert!(treemap.contains(3));
//! treemap.add(u32::MAX as u64);
//! assert!(treemap.contains(u32::MAX as u64));
//! treemap.add(u64::from(u32::MAX) + 1);
//! assert!(treemap.contains(u64::from(u32::MAX)+ 1));
//! assert_eq!(treemap.cardinality(), 3);
//! ```
use crateBitmap;
use BTreeMap;
pub use TreemapIterator;
pub use ;
/// A RoaringBitmap-based structure that supports 64bit unsigned integer values
///
/// Implemented as a [`BTreeMap`] of [`Bitmap`]s.