Struct MutationObserverHandle

Source
pub struct MutationObserverHandle { /* private fields */ }
Expand description

A wrapper which ensures that memory is properly cleaned up when it’s no longer needed.

This is created by the MutationObserver::new method, and it can use the same methods as MutationObserver.

When the MutationObserverHandle is dropped, the disconnect method will automatically be called.

Methods from Deref<Target = MutationObserver>§

Source

pub fn observe<T: INode>( &self, target: &T, options: MutationObserverInit<'_>, ) -> Result<(), TODO>

Starts observing changes to the target.

When the target is changed, the MutationObserver is notified with a vector of MutationRecord.

The options specifies which changes should be observed.

Multiple different targets can be observed simultaneously (with the same or different options).

If you call observe on the same target multiple times, it will replace the old options with the new options. It will not notify multiple times for the same change to the same target.

§Panics

(JavaScript docs)

Source

pub fn disconnect(&self)

Stops observing all targets.

Until the observe method is called again, the MutationObserver will not be notified of any changes.

(JavaScript docs)

Source

pub fn take_records(&self) -> Vec<MutationRecord>

Empties the MutationObserver’s record queue and returns what was in there.

This method is generally not needed, instead use the MutationObserver callback to respond to changes.

(JavaScript docs)

Trait Implementations§

Source§

impl Debug for MutationObserverHandle

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Deref for MutationObserverHandle

Source§

type Target = MutationObserver

The resulting type after dereferencing.
Source§

fn deref(&self) -> &Self::Target

Dereferences the value.
Source§

impl Drop for MutationObserverHandle

Source§

fn drop(&mut self)

Executes the destructor for this type. Read more

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

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

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<P, T> Receiver for P
where P: Deref<Target = T> + ?Sized, T: ?Sized,

Source§

type Target = T

🔬This is a nightly-only experimental API. (arbitrary_self_types)
The target type on which the method may be called.
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.
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.