pub trait Revisable: Debug {
    // Required methods
    fn id(&self) -> RevisableId;
    fn holder_id(&self) -> Option<HolderId>;
    fn version(&self) -> usize;
    fn view_ids(&self) -> Rc<RefCell<IndexSet<ViewId>>>;
    fn bind_view(&self, view_id: &ViewId);
    fn unbind_view(&self, view_id: &ViewId);
    fn unlace_view(&self, view_id: &ViewId, loose: usize);
    fn clone_boxed(&self) -> Box<dyn Revisable>;

    // Provided method
    fn is_revising(&self) -> bool { ... }
}

Required Methods§

source

fn id(&self) -> RevisableId

source

fn holder_id(&self) -> Option<HolderId>

source

fn version(&self) -> usize

source

fn view_ids(&self) -> Rc<RefCell<IndexSet<ViewId>>>

source

fn bind_view(&self, view_id: &ViewId)

source

fn unbind_view(&self, view_id: &ViewId)

source

fn unlace_view(&self, view_id: &ViewId, loose: usize)

source

fn clone_boxed(&self) -> Box<dyn Revisable>

Provided Methods§

source

fn is_revising(&self) -> bool

Trait Implementations§

source§

impl Hash for dyn Revisable

source§

fn hash<H: Hasher>(&self, state: &mut H)

Feeds this value into the given Hasher. Read more
source§

impl PartialEq for dyn Revisable

source§

fn eq(&self, other: &Self) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl Eq for dyn Revisable

Implementors§

source§

impl<T> Revisable for Lotus<T>
where T: Debug + 'static,

source§

impl<T> Revisable for Bond<T>
where T: Debug + 'static,

source§

impl<T> Revisable for Cage<T>
where T: Debug,