#[repr(C)]pub struct NodeStateSnapshot {
pub node_id: NodeId,
pub text_content: AzString,
pub cursor_position: OptionTextCursor,
pub selection_range: OptionSelectionRange,
pub timestamp: Instant,
}Expand description
Snapshot of a text node’s state before a changeset was applied.
This contains enough information to fully revert a text operation.
Fields§
§node_id: NodeIdThe node this snapshot belongs to
text_content: AzStringFull text content before changeset
cursor_position: OptionTextCursorCursor position before changeset (if applicable) For now, we store the logical position, not the TextCursor
selection_range: OptionSelectionRangeSelection range before changeset (if applicable)
timestamp: InstantWhen this snapshot was taken
Trait Implementations§
Source§impl Clone for NodeStateSnapshot
impl Clone for NodeStateSnapshot
Source§fn clone(&self) -> NodeStateSnapshot
fn clone(&self) -> NodeStateSnapshot
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for NodeStateSnapshot
impl RefUnwindSafe for NodeStateSnapshot
impl Send for NodeStateSnapshot
impl Sync for NodeStateSnapshot
impl Unpin for NodeStateSnapshot
impl UnwindSafe for NodeStateSnapshot
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,
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