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§
Auto Trait Implementations§
impl Freeze for RawNodeHandle
impl RefUnwindSafe for RawNodeHandle
impl !Send for RawNodeHandle
impl !Sync for RawNodeHandle
impl Unpin for RawNodeHandle
impl UnwindSafe for RawNodeHandle
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