pub struct LeafPath(pub Vec<u16>);Expand description
Structural address of a leaf inside a subtree, independent of node ids.
One index is consumed at each node with more than one child on the way
down; single-child wrappers (transforms, colors, modifiers) are traversed
implicitly. This keeps paths valid when an editing gesture lazily inserts
a Translate/Rotate wrapper above a leaf — only inserting, removing, or
reordering siblings under a boolean invalidates a path (callers must
treat resolution as fallible).
Tuple Fields§
§0: Vec<u16>Trait Implementations§
Source§impl<'de> Deserialize<'de> for LeafPath
impl<'de> Deserialize<'de> for LeafPath
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Ord for LeafPath
impl Ord for LeafPath
1.21.0 (const: unstable) · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
Source§impl PartialOrd for LeafPath
impl PartialOrd for LeafPath
impl Eq for LeafPath
impl StructuralPartialEq for LeafPath
Auto Trait Implementations§
impl Freeze for LeafPath
impl RefUnwindSafe for LeafPath
impl Send for LeafPath
impl Sync for LeafPath
impl Unpin for LeafPath
impl UnsafeUnpin for LeafPath
impl UnwindSafe for LeafPath
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Identity for Twhere
T: ?Sized,
impl<T> Identity for Twhere
T: ?Sized,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more