pub struct Node<Req, SubtreeL, SubtreeR> {
pub requirement: Req,
pub prev_left: SubtreeL,
pub prev_right: SubtreeR,
}Fields§
§requirement: Req§prev_left: SubtreeL§prev_right: SubtreeRTrait Implementations§
Source§impl<Target, Req, SubtreeL, SubtreeR, SubtreePath> Get<Target, Left<SubtreePath>> for Node<Req, SubtreeL, SubtreeR>where
SubtreeL: Get<Target, SubtreePath>,
impl<Target, Req, SubtreeL, SubtreeR, SubtreePath> Get<Target, Left<SubtreePath>> for Node<Req, SubtreeL, SubtreeR>where
SubtreeL: Get<Target, SubtreePath>,
Source§impl<Target, Req, SubtreeL, SubtreeR, SubtreePath> Get<Target, Right<SubtreePath>> for Node<Req, SubtreeL, SubtreeR>where
SubtreeR: Get<Target, SubtreePath>,
impl<Target, Req, SubtreeL, SubtreeR, SubtreePath> Get<Target, Right<SubtreePath>> for Node<Req, SubtreeL, SubtreeR>where
SubtreeR: Get<Target, SubtreePath>,
Source§impl<Req, ReqL, SubtreeLL, SubtreeLR, ReqR, SubtreeRL, SubtreeRR, NewReq, NextSubtreeL, PrevQueriesL> Insert<NewReq, <Node<Req, NextSubtreeL, Node<ReqR, SubtreeRL, SubtreeRR>> as MinDepth>::Output, Left<PrevQueriesL>, Node<Req, NextSubtreeL, Node<ReqR, SubtreeRL, SubtreeRR>>> for Node<Req, Node<ReqL, SubtreeLL, SubtreeLR>, Node<ReqR, SubtreeRL, SubtreeRR>>where
Node<ReqL, SubtreeLL, SubtreeLR>: MinDepth + Insert<NewReq, <NextSubtreeL as MinDepth>::Output, PrevQueriesL, NextSubtreeL>,
Node<ReqR, SubtreeRL, SubtreeRR>: MinDepth,
Node<Req, NextSubtreeL, Node<ReqR, SubtreeRL, SubtreeRR>>: MinDepth,
NextSubtreeL: MinDepth,
(): LessThan<<Node<ReqL, SubtreeLL, SubtreeLR> as MinDepth>::Output, <Node<ReqR, SubtreeRL, SubtreeRR> as MinDepth>::Output>,
impl<Req, ReqL, SubtreeLL, SubtreeLR, ReqR, SubtreeRL, SubtreeRR, NewReq, NextSubtreeL, PrevQueriesL> Insert<NewReq, <Node<Req, NextSubtreeL, Node<ReqR, SubtreeRL, SubtreeRR>> as MinDepth>::Output, Left<PrevQueriesL>, Node<Req, NextSubtreeL, Node<ReqR, SubtreeRL, SubtreeRR>>> for Node<Req, Node<ReqL, SubtreeLL, SubtreeLR>, Node<ReqR, SubtreeRL, SubtreeRR>>where
Node<ReqL, SubtreeLL, SubtreeLR>: MinDepth + Insert<NewReq, <NextSubtreeL as MinDepth>::Output, PrevQueriesL, NextSubtreeL>,
Node<ReqR, SubtreeRL, SubtreeRR>: MinDepth,
Node<Req, NextSubtreeL, Node<ReqR, SubtreeRL, SubtreeRR>>: MinDepth,
NextSubtreeL: MinDepth,
(): LessThan<<Node<ReqL, SubtreeLL, SubtreeLR> as MinDepth>::Output, <Node<ReqR, SubtreeRL, SubtreeRR> as MinDepth>::Output>,
Source§impl<Req, ReqL, SubtreeLL, SubtreeLR, ReqR, SubtreeRL, SubtreeRR, NewReq, NextSubtreeR, PrevQueriesR> Insert<NewReq, <Node<Req, Node<ReqL, SubtreeLL, SubtreeLR>, NextSubtreeR> as MinDepth>::Output, Right<PrevQueriesR>, Node<Req, Node<ReqL, SubtreeLL, SubtreeLR>, NextSubtreeR>> for Node<Req, Node<ReqL, SubtreeLL, SubtreeLR>, Node<ReqR, SubtreeRL, SubtreeRR>>where
Node<ReqL, SubtreeLL, SubtreeLR>: MinDepth,
Node<ReqR, SubtreeRL, SubtreeRR>: MinDepth + Insert<NewReq, <NextSubtreeR as MinDepth>::Output, PrevQueriesR, NextSubtreeR>,
Node<Req, Node<ReqL, SubtreeLL, SubtreeLR>, NextSubtreeR>: MinDepth,
NextSubtreeR: MinDepth,
(): GreaterThanOrEqual<<Node<ReqL, SubtreeLL, SubtreeLR> as MinDepth>::Output, <Node<ReqR, SubtreeRL, SubtreeRR> as MinDepth>::Output>,
impl<Req, ReqL, SubtreeLL, SubtreeLR, ReqR, SubtreeRL, SubtreeRR, NewReq, NextSubtreeR, PrevQueriesR> Insert<NewReq, <Node<Req, Node<ReqL, SubtreeLL, SubtreeLR>, NextSubtreeR> as MinDepth>::Output, Right<PrevQueriesR>, Node<Req, Node<ReqL, SubtreeLL, SubtreeLR>, NextSubtreeR>> for Node<Req, Node<ReqL, SubtreeLL, SubtreeLR>, Node<ReqR, SubtreeRL, SubtreeRR>>where
Node<ReqL, SubtreeLL, SubtreeLR>: MinDepth,
Node<ReqR, SubtreeRL, SubtreeRR>: MinDepth + Insert<NewReq, <NextSubtreeR as MinDepth>::Output, PrevQueriesR, NextSubtreeR>,
Node<Req, Node<ReqL, SubtreeLL, SubtreeLR>, NextSubtreeR>: MinDepth,
NextSubtreeR: MinDepth,
(): GreaterThanOrEqual<<Node<ReqL, SubtreeLL, SubtreeLR> as MinDepth>::Output, <Node<ReqR, SubtreeRL, SubtreeRR> as MinDepth>::Output>,
Source§impl<Req, ReqR, NewReq> Insert<NewReq, Succ<Succ<Zero>>, Left<Right<Here>>, Node<Req, Node<NewReq, (), ()>, Node<ReqR, (), ()>>> for Node<Req, (), Node<ReqR, (), ()>>
impl<Req, ReqR, NewReq> Insert<NewReq, Succ<Succ<Zero>>, Left<Right<Here>>, Node<Req, Node<NewReq, (), ()>, Node<ReqR, (), ()>>> for Node<Req, (), Node<ReqR, (), ()>>
Source§impl<Req, ReqL, NewReq> Insert<NewReq, Succ<Succ<Zero>>, Right<Left<Here>>, Node<Req, Node<ReqL, (), ()>, Node<NewReq, (), ()>>> for Node<Req, Node<ReqL, (), ()>, ()>
impl<Req, ReqL, NewReq> Insert<NewReq, Succ<Succ<Zero>>, Right<Left<Here>>, Node<Req, Node<ReqL, (), ()>, Node<NewReq, (), ()>>> for Node<Req, Node<ReqL, (), ()>, ()>
Source§impl<Req, NewReq> Insert<NewReq, Succ<Zero>, Left<Here>, Node<Req, Node<NewReq, (), ()>, ()>> for Node<Req, (), ()>
impl<Req, NewReq> Insert<NewReq, Succ<Zero>, Left<Here>, Node<Req, Node<NewReq, (), ()>, ()>> for Node<Req, (), ()>
Auto Trait Implementations§
impl<Req, SubtreeL, SubtreeR> Freeze for Node<Req, SubtreeL, SubtreeR>
impl<Req, SubtreeL, SubtreeR> RefUnwindSafe for Node<Req, SubtreeL, SubtreeR>
impl<Req, SubtreeL, SubtreeR> Send for Node<Req, SubtreeL, SubtreeR>
impl<Req, SubtreeL, SubtreeR> Sync for Node<Req, SubtreeL, SubtreeR>
impl<Req, SubtreeL, SubtreeR> Unpin for Node<Req, SubtreeL, SubtreeR>
impl<Req, SubtreeL, SubtreeR> UnsafeUnpin for Node<Req, SubtreeL, SubtreeR>
impl<Req, SubtreeL, SubtreeR> UnwindSafe for Node<Req, SubtreeL, SubtreeR>
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