pub struct BranchDeque<BranchData: Debug, LeafData: Debug> { /* private fields */ }
Available on crate features
deque
and split
only.Expand description
Trait Implementations§
Source§impl<BranchData, LeafData> BranchNode for BranchDeque<BranchData, LeafData>
impl<BranchData, LeafData> BranchNode for BranchDeque<BranchData, LeafData>
Source§type ChildrenIter<'branch> = Copied<Iter<'branch, <<BranchDeque<BranchData, LeafData> as Node>::Base as Node>::Token>>
where
Self: 'branch
type ChildrenIter<'branch> = Copied<Iter<'branch, <<BranchDeque<BranchData, LeafData> as Node>::Base as Node>::Token>> where Self: 'branch
The iterator returned by
children
.Source§fn children<'branch>(
&'branch self,
_arena: &'branch Arena<Self::Base>,
) -> Self::ChildrenIter<'branch>
fn children<'branch>( &'branch self, _arena: &'branch Arena<Self::Base>, ) -> Self::ChildrenIter<'branch>
Returns an iterator over the tokens of this branch node’s children.
Source§fn detach_front(
token: Self::Token,
arena: &mut Arena<Self::Base>,
) -> Option<<Self::Base as Node>::Token>
fn detach_front( token: Self::Token, arena: &mut Arena<Self::Base>, ) -> Option<<Self::Base as Node>::Token>
Source§fn detach_back(
token: Self::Token,
arena: &mut Arena<Self::Base>,
) -> Option<<Self::Base as Node>::Token>
fn detach_back( token: Self::Token, arena: &mut Arena<Self::Base>, ) -> Option<<Self::Base as Node>::Token>
Source§fn pop_front(
token: Self::Token,
arena: &mut Arena<Self::Base>,
) -> Option<SplitNodeRepresentation<BranchData, LeafData>>
fn pop_front( token: Self::Token, arena: &mut Arena<Self::Base>, ) -> Option<SplitNodeRepresentation<BranchData, LeafData>>
Removes this branch node’s first child. Read more
Source§fn pop_back(
token: Self::Token,
arena: &mut Arena<Self::Base>,
) -> Option<SplitNodeRepresentation<BranchData, LeafData>>
fn pop_back( token: Self::Token, arena: &mut Arena<Self::Base>, ) -> Option<SplitNodeRepresentation<BranchData, LeafData>>
Removes this branch node’s last child. Read more
Source§fn push_front(
token: Self::Token,
arena: &mut Arena<Self::Base>,
new: <Self::Base as Node>::Token,
)
fn push_front( token: Self::Token, arena: &mut Arena<Self::Base>, new: <Self::Base as Node>::Token, )
Source§impl<BranchData, LeafData> BranchNodeDeque for BranchDeque<BranchData, LeafData>
impl<BranchData, LeafData> BranchNodeDeque for BranchDeque<BranchData, LeafData>
Source§fn detach(
token: Self::Token,
arena: &mut Arena<Self::Base>,
index: usize,
) -> <Self::Base as Node>::Token
fn detach( token: Self::Token, arena: &mut Arena<Self::Base>, index: usize, ) -> <Self::Base as Node>::Token
Source§fn remove(
token: Self::Token,
arena: &mut Arena<Self::Base>,
index: usize,
) -> SplitNodeRepresentation<BranchData, LeafData>
fn remove( token: Self::Token, arena: &mut Arena<Self::Base>, index: usize, ) -> SplitNodeRepresentation<BranchData, LeafData>
Removes the child at the given
index
. Read moreSource§impl<BranchData: Debug + Debug, LeafData: Debug + Debug> Debug for BranchDeque<BranchData, LeafData>
impl<BranchData: Debug + Debug, LeafData: Debug + Debug> Debug for BranchDeque<BranchData, LeafData>
Source§impl<BranchData, LeafData> Hash for BranchDeque<BranchData, LeafData>
impl<BranchData, LeafData> Hash for BranchDeque<BranchData, LeafData>
Source§impl<BranchData, LeafData> Index<usize> for BranchDeque<BranchData, LeafData>
impl<BranchData, LeafData> Index<usize> for BranchDeque<BranchData, LeafData>
Source§impl<BranchData, LeafData> Node for BranchDeque<BranchData, LeafData>
impl<BranchData, LeafData> Node for BranchDeque<BranchData, LeafData>
Source§type Token = Token<BranchDeque<BranchData, LeafData>>
type Token = Token<BranchDeque<BranchData, LeafData>>
The token associated with this type of node.
Source§type DataRef<'data> = &'data BranchData
where
Self: 'data
type DataRef<'data> = &'data BranchData where Self: 'data
Source§type DataRefMut<'data> = &'data mut BranchData
where
Self: 'data
type DataRefMut<'data> = &'data mut BranchData where Self: 'data
Source§fn data(&self) -> &BranchData
fn data(&self) -> &BranchData
Returns a reference to the data associated with this node.
Source§fn data_mut(&mut self) -> &mut BranchData
fn data_mut(&mut self) -> &mut BranchData
Returns a mutable reference to the data associated with this node.
Source§impl<BranchData, LeafData, Other: Node> PartialEq<Other> for BranchDeque<BranchData, LeafData>
impl<BranchData, LeafData, Other: Node> PartialEq<Other> for BranchDeque<BranchData, LeafData>
Source§impl<'node, BranchData, LeafData> TryFrom<&'node SplitNodeDeque<BranchData, LeafData>> for &'node BranchDeque<BranchData, LeafData>
impl<'node, BranchData, LeafData> TryFrom<&'node SplitNodeDeque<BranchData, LeafData>> for &'node BranchDeque<BranchData, LeafData>
Source§type Error = &'node SplitNodeDeque<BranchData, LeafData>
type Error = &'node SplitNodeDeque<BranchData, LeafData>
The type returned in the event of a conversion error.
Source§impl<'node, BranchData, LeafData> TryFrom<&'node mut SplitNodeDeque<BranchData, LeafData>> for &'node mut BranchDeque<BranchData, LeafData>
impl<'node, BranchData, LeafData> TryFrom<&'node mut SplitNodeDeque<BranchData, LeafData>> for &'node mut BranchDeque<BranchData, LeafData>
Source§type Error = &'node mut SplitNodeDeque<BranchData, LeafData>
type Error = &'node mut SplitNodeDeque<BranchData, LeafData>
The type returned in the event of a conversion error.
impl<BranchData, LeafData> Eq for BranchDeque<BranchData, LeafData>
Auto Trait Implementations§
impl<BranchData, LeafData> Freeze for BranchDeque<BranchData, LeafData>where
BranchData: Freeze,
impl<BranchData, LeafData> RefUnwindSafe for BranchDeque<BranchData, LeafData>where
BranchData: RefUnwindSafe,
LeafData: RefUnwindSafe,
impl<BranchData, LeafData> Send for BranchDeque<BranchData, LeafData>
impl<BranchData, LeafData> Sync for BranchDeque<BranchData, LeafData>
impl<BranchData, LeafData> Unpin for BranchDeque<BranchData, LeafData>
impl<BranchData, LeafData> UnwindSafe for BranchDeque<BranchData, LeafData>where
BranchData: UnwindSafe,
LeafData: UnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more