pub struct BinarySet { /* private fields */ }Implementations§
Source§impl BinarySet
impl BinarySet
Sourcepub fn new<P: AsRef<Path>>(path: P, allocation_lot: u32) -> Self
pub fn new<P: AsRef<Path>>(path: P, allocation_lot: u32) -> Self
Opens the file and creates the BinarySet. /// # Arguments
path- Path of file to save dataallocation_lot- Extends the specified size when the file size becomes insufficient due to data addition. If you expect to add a lot of data, specifying a larger size will improve performance.
Sourcepub fn bytes(&self, row: NonZeroU32) -> Option<&[u8]>
pub fn bytes(&self, row: NonZeroU32) -> Option<&[u8]>
Returns the value of the specified row. Returns None if the row does not exist.
Sourcepub fn row(&self, content: &[u8]) -> Option<NonZeroU32>
pub fn row(&self, content: &[u8]) -> Option<NonZeroU32>
Search for a sequence of bytes.
Sourcepub fn row_or_insert(&mut self, content: &[u8]) -> NonZeroU32
pub fn row_or_insert(&mut self, content: &[u8]) -> NonZeroU32
Finds a sequence of bytes, inserts it if it doesn’t exist, and returns a row.
Methods from Deref<Target = Avltriee<T, I, IdxFileAllocator<T>>>§
Sourcepub fn rows_count(&self) -> u32
pub fn rows_count(&self) -> u32
Return count of rows.
Sourcepub fn iter(&self) -> AvltrieeIter<'_, T, I, A>
pub fn iter(&self) -> AvltrieeIter<'_, T, I, A>
Generate an iterator.
Sourcepub fn desc_iter(&self) -> AvltrieeIter<'_, T, I, A>
pub fn desc_iter(&self) -> AvltrieeIter<'_, T, I, A>
Generate an iterator. Iterates in descending order.
Sourcepub fn iter_by<'a>(&'a self, value: &I) -> AvltrieeIter<'a, T, I, A>where
Avltriee<T, I, A>: AvltrieeOrd<T, I, A>,
pub fn iter_by<'a>(&'a self, value: &I) -> AvltrieeIter<'a, T, I, A>where
Avltriee<T, I, A>: AvltrieeOrd<T, I, A>,
Generates an iterator of nodes with the same value as the specified value.
Sourcepub fn iter_from<'a>(&'a self, value: &I) -> AvltrieeIter<'a, T, I, A>where
Avltriee<T, I, A>: AvltrieeOrd<T, I, A>,
pub fn iter_from<'a>(&'a self, value: &I) -> AvltrieeIter<'a, T, I, A>where
Avltriee<T, I, A>: AvltrieeOrd<T, I, A>,
Generates an iterator with values starting from the specified value.
Sourcepub fn desc_iter_from<'a>(&'a self, value: &I) -> AvltrieeIter<'a, T, I, A>where
Avltriee<T, I, A>: AvltrieeOrd<T, I, A>,
pub fn desc_iter_from<'a>(&'a self, value: &I) -> AvltrieeIter<'a, T, I, A>where
Avltriee<T, I, A>: AvltrieeOrd<T, I, A>,
Generates an iterator with values starting from the specified value. Iterates in descending order.
Sourcepub fn iter_to<'a>(&'a self, value: &I) -> AvltrieeIter<'a, T, I, A>where
Avltriee<T, I, A>: AvltrieeOrd<T, I, A>,
pub fn iter_to<'a>(&'a self, value: &I) -> AvltrieeIter<'a, T, I, A>where
Avltriee<T, I, A>: AvltrieeOrd<T, I, A>,
Generates an iterator of nodes with values less than or equal to the specified value.
Sourcepub fn desc_iter_to<'a>(&'a self, value: &I) -> AvltrieeIter<'a, T, I, A>where
Avltriee<T, I, A>: AvltrieeOrd<T, I, A>,
pub fn desc_iter_to<'a>(&'a self, value: &I) -> AvltrieeIter<'a, T, I, A>where
Avltriee<T, I, A>: AvltrieeOrd<T, I, A>,
Generates an iterator of nodes with values less than or equal to the specified value. Iterates in descending order.
Sourcepub fn iter_over<'a>(&'a self, value: &I) -> AvltrieeIter<'a, T, I, A>where
Avltriee<T, I, A>: AvltrieeOrd<T, I, A>,
pub fn iter_over<'a>(&'a self, value: &I) -> AvltrieeIter<'a, T, I, A>where
Avltriee<T, I, A>: AvltrieeOrd<T, I, A>,
Generates an iterator of nodes with values greater than the specified value.
Sourcepub fn desc_iter_over<'a>(&'a self, value: &I) -> AvltrieeIter<'a, T, I, A>where
Avltriee<T, I, A>: AvltrieeOrd<T, I, A>,
pub fn desc_iter_over<'a>(&'a self, value: &I) -> AvltrieeIter<'a, T, I, A>where
Avltriee<T, I, A>: AvltrieeOrd<T, I, A>,
Generates an iterator of nodes with values greater than the specified value. Iterates in descending order.
pub fn iter_under<'a>(&'a self, value: &I) -> AvltrieeIter<'a, T, I, A>where
Avltriee<T, I, A>: AvltrieeOrd<T, I, A>,
Sourcepub fn desc_iter_under<'a>(&'a self, value: &I) -> AvltrieeIter<'a, T, I, A>where
Avltriee<T, I, A>: AvltrieeOrd<T, I, A>,
pub fn desc_iter_under<'a>(&'a self, value: &I) -> AvltrieeIter<'a, T, I, A>where
Avltriee<T, I, A>: AvltrieeOrd<T, I, A>,
Generates an iterator of nodes with values less than the specified value. Iterates in descending order.
Sourcepub fn iter_range<'a>(&'a self, start: &I, end: &I) -> AvltrieeIter<'a, T, I, A>where
Avltriee<T, I, A>: AvltrieeOrd<T, I, A>,
pub fn iter_range<'a>(&'a self, start: &I, end: &I) -> AvltrieeIter<'a, T, I, A>where
Avltriee<T, I, A>: AvltrieeOrd<T, I, A>,
Generates an iterator of nodes with the specified range of values.
Sourcepub fn desc_iter_range<'a>(
&'a self,
start: &I,
end: &I,
) -> AvltrieeIter<'a, T, I, A>where
Avltriee<T, I, A>: AvltrieeOrd<T, I, A>,
pub fn desc_iter_range<'a>(
&'a self,
start: &I,
end: &I,
) -> AvltrieeIter<'a, T, I, A>where
Avltriee<T, I, A>: AvltrieeOrd<T, I, A>,
Generates an iterator of nodes with the specified range of values. Iterates in descending order.
Sourcepub fn insert(&mut self, value: &I) -> NonZero<u32>
pub fn insert(&mut self, value: &I) -> NonZero<u32>
Creates a new row and assigns a value to it.
Sourcepub unsafe fn insert_unique_unchecked(
&mut self,
row: NonZero<u32>,
value: T,
found: Found,
)
pub unsafe fn insert_unique_unchecked( &mut self, row: NonZero<u32>, value: T, found: Found, )
Insert a unique value. If you specify a row that does not exist, space will be automatically allocated. If you specify a row that is too large, memory may be allocated unnecessarily.
§Safety
value must be unique.
Sourcepub fn get(&self, row: NonZero<u32>) -> Option<&AvltrieeNode<T>>
pub fn get(&self, row: NonZero<u32>) -> Option<&AvltrieeNode<T>>
Returns the node of the specified row.