Skip to main content

HistoryController

Struct HistoryController 

pub struct HistoryController { /* private fields */ }

Implementations§

§

impl HistoryController

pub fn new( resource: HistoryResource, live: &AutoCommit, ) -> Result<HistoryController, HistoryError>

Build a controller with the default factual history source.

§Errors

Returns a projection error if the committed history cannot be read.

pub fn with_source( resource: HistoryResource, source: HistorySource, live: &AutoCommit, ) -> Result<HistoryController, HistoryError>

Build a controller with a caller-configured source, for example one carrying the host’s author directory and artifact kind.

§Errors

Returns a projection error if the committed history cannot be read.

pub fn has_earlier(&self) -> bool

Whether changes older than the listed ones exist.

pub fn show_earlier(&mut self, live: &AutoCommit) -> Result<(), HistoryError>

List another page of older changes.

§Errors

Returns a projection error if the committed history cannot be read.

pub fn resource(&self) -> &HistoryResource

pub fn entries(&self) -> &[HistoryEntry]

pub fn groups(&self) -> &[HistoryGroup]

pub fn refresh(&mut self, live: &AutoCommit) -> Result<(), HistoryError>

Reproject factual activity from committed graph state. An existing preview stays pinned to its exact bytes and heads.

§Errors

Returns a projection error if the committed history cannot be read.

pub fn select( &mut self, live: &AutoCommit, entries: &[HistoryEntryId], ) -> Result<(), HistoryError>

Pin the exact before and after causal frontiers of one change or group. Failed selection leaves the previous valid preview untouched.

§Errors

Returns HistoryError::EmptySelection or HistoryError::UnknownEntry for an invalid selection, and HistoryError::Materialize when Automerge cannot build its states.

pub fn select_compare_side( &mut self, side: PreviewSide, ) -> Result<(), HistoryError>

Switch between the selected comparison’s exact states.

§Errors

Returns HistoryError::NoPreview when no history is selected.

pub fn snapshot(&self) -> Option<&HistorySnapshot>

pub fn has_live_updates(&self) -> bool

Whether the observed committed live frontier differs from the pinned selected after-frontier.

pub fn back_to_live(&mut self)

pub fn review_restore(&self) -> Result<RestoreReview, HistoryError>

Bind the selected state to the latest observed committed live frontier.

§Errors

Returns HistoryError::NoPreview when no history is selected and HistoryError::EffectOnlySelection for an external effect receipt.

pub fn validate_restore( &self, review: &RestoreReview, live: &AutoCommit, ) -> Result<(), HistoryError>

Validate a review token without changing the document. The host owns the separate authority check and the eventual canonical restore write.

§Errors

Returns a HistoryError when live work is uncommitted, the resource or selection changed, the live frontier is stale, or the selection is an external effect receipt rather than restorable content.

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> Downcast<T> for T

§

fn downcast(&self) -> &T

§

impl<T> Downcast for T
where T: Any,

§

fn into_any(self: Box<T>) -> Box<dyn Any>

Convert Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.
§

fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>

Convert Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be further downcast into Rc<ConcreteType> where ConcreteType implements Trait.
§

fn as_any(&self) -> &(dyn Any + 'static)

Convert &Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &Any’s vtable from &Trait’s.
§

fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)

Convert &mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &mut Any’s vtable from &mut Trait’s.
§

impl<T> DowncastSync for T
where T: Any + Send + Sync,

§

fn into_any_arc(self: Arc<T>) -> Arc<dyn Any + Send + Sync> ⓘ

Convert Arc<Trait> (where Trait: Downcast) to Arc<Any>. Arc<Any> can then be further downcast into Arc<ConcreteType> where ConcreteType implements Trait.
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

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 more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

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
§

impl<T> Pointable for T

§

const ALIGN: usize

The alignment of pointer.
§

type Init = T

The type for initializers.
§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
§

impl<T, S> SimdFrom<T, S> for T
where S: Simd,

§

fn simd_from(_simd: S, value: T) -> T

§

impl<F, T, S> SimdInto<T, S> for F
where T: SimdFrom<F, S>, S: Simd,

§

fn simd_into(self, simd: S) -> T

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<T> Upcast<T> for T

§

fn upcast(&self) -> Option<&T>

§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

impl<T> ErasedDestructor for T
where T: 'static,

§

impl<T> Fruit for T
where T: Send + Downcast,

§

impl<T> MaybeSendSync for T
where T: Send + Sync + ?Sized,

§

impl<T> WasmNotSend for T
where T: Send,

§

impl<T> WasmNotSendSync for T

§

impl<T> WasmNotSync for T
where T: Sync,