Skip to main content

RawNodeHandle

Struct RawNodeHandle 

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

An opaque handle to a freshly-built node not yet in the document tree.

This handle represents a node that has been created but not yet inserted. It can only be used with the Editor that created it.

§RAII Safety

If the handle is dropped without being inserted (via set_root, seq_append_at, etc.), the node will be automatically freed to prevent memory leaks. Once inserted into the document tree, the document takes ownership and the node will be freed when the document is destroyed.

§Example

use fyaml::Document;

let mut doc = Document::new().unwrap();
{
    let mut ed = doc.edit();
    let node = ed.build_from_yaml("key: value").unwrap();
    // If we don't call ed.set_root(node), the node is freed when `node` is dropped
    ed.set_root(node).unwrap();
}

Trait Implementations§

Source§

impl Drop for RawNodeHandle

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<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.