[][src]Struct sauron::CreatedNode

pub struct CreatedNode {
    pub node: Node,
    // some fields omitted
}

A node along with all of the closures that were created for that node's events and all of it's child node's events.

Fields

node: Node

A Node or Element that was created from a Node

Implementations

impl CreatedNode[src]

pub fn without_closures(node: Node) -> CreatedNode[src]

create a simple node with no closure attache

pub fn create_text_node(txt: &str) -> Text[src]

create a text node

pub fn create_dom_node<DSP, MSG>(
    program: &DSP,
    vnode: &Node<&'static str, &'static str, &'static str, AttributeValue, Event, MSG>,
    focused_node: &mut Option<Node>,
    node_idx: &mut Option<usize>
) -> CreatedNode where
    DSP: Clone + Dispatch<MSG> + 'static,
    MSG: 'static, 
[src]

create an element node

pub fn create_dom_node_opt<DSP, MSG>(
    program: Option<&DSP>,
    vnode: &Node<&'static str, &'static str, &'static str, AttributeValue, Event, MSG>,
    focused_node: &mut Option<Node>,
    node_idx: &mut Option<usize>
) -> CreatedNode where
    DSP: Clone + Dispatch<MSG> + 'static,
    MSG: 'static, 
[src]

Create and return a CreatedNode instance (containing a DOM Node together with potentially related closures) for this virtual node.

TODO: Optimization for apply_patches::find_nodes Keep track of the Node with their corresponding NodeIdx, so as not to traverse all of them to find the node. We can maintain a HashMap<NodeIdx, web_sys::Node>

pub fn set_element_attributes<DSP, MSG>(
    program: Option<&DSP>,
    closures: &mut HashMap<u32, Vec<(&'static str, Closure<dyn FnMut(Event) + 'static>), Global>, RandomState>,
    element: &Element,
    attrs: &[&Attribute<&'static str, &'static str, AttributeValue, Event, MSG>]
) where
    DSP: Clone + Dispatch<MSG> + 'static,
    MSG: 'static, 
[src]

set the element attribute

pub fn set_element_attribute<DSP, MSG>(
    program: Option<&DSP>,
    closures: &mut HashMap<u32, Vec<(&'static str, Closure<dyn FnMut(Event) + 'static>), Global>, RandomState>,
    element: &Element,
    attr: &Attribute<&'static str, &'static str, AttributeValue, Event, MSG>
) where
    DSP: Clone + Dispatch<MSG> + 'static,
    MSG: 'static, 
[src]

set the element attribute

pub fn remove_element_attribute<MSG>(
    element: &Element,
    attr: &Attribute<&'static str, &'static str, AttributeValue, Event, MSG>
) -> Result<(), JsValue>
[src]

remove element attribute, takes care of special case such as checked

Trait Implementations

impl Debug for CreatedNode[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.