Trait Segmentized
pub trait Segmentized<V>: Sized {
// Required methods
fn len(&self) -> usize;
fn current_pos(&self) -> usize;
fn current(&self) -> Segment;
fn next(&self) -> Segment;
fn has_next(&self) -> bool;
fn next_pair(&self) -> (bool, bool);
fn proceed(&mut self, steps: usize);
fn pstrip_at(&self, index: usize) -> Option<Self>;
fn assert_next(&self, assert_value: bool, assert_mask: bool) -> Option<Self>;
// Provided methods
fn lpm(&mut self, prefix: Segment) -> Segment { ... }
fn is_empty(&self) -> bool { ... }
fn cut(&self) -> Option<Self> { ... }
}Required Methods§
fn len(&self) -> usize
fn current_pos(&self) -> usize
fn current(&self) -> Segment
fn next(&self) -> Segment
fn has_next(&self) -> bool
fn next_pair(&self) -> (bool, bool)
fn proceed(&mut self, steps: usize)
fn pstrip_at(&self, index: usize) -> Option<Self>
fn assert_next(&self, assert_value: bool, assert_mask: bool) -> Option<Self>
Provided Methods§
fn lpm(&mut self, prefix: Segment) -> Segment
fn is_empty(&self) -> bool
fn cut(&self) -> Option<Self>
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.