yew_vnode_struct/lib.rs
1//! This module contains the implementation to get all the VNode structure.
2//! it is useful for testing and debuging. For example to know what contain this VNode
3//! we use VNodeStruct to get the complete Vnode button and log the result:
4//!
5//! #Example
6//!
7//! ```
8//! extern crate yew;
9//! extern crate yew_vnode_struct;
10//!
11//! use yew::html;
12//! use yew_vnode_struct::VNodeStruct;
13//!
14//! let example = html! {
15//! <div id="example">{"example"}</div>
16//! };
17//!
18//! let vnode_example = VNodeStruct::new(example.clone());
19//!
20//! println!("{:#?}", example);
21//! ```
22//!
23//! We will get this structure:
24//!
25//! ```ignore
26//! VNodeStruct {
27//! vtag: Some(
28//! VTagStruct {
29//! reference: None,
30//! attributes: {
31//! "id": "example",
32//! },
33//! classes: Classes {
34//! set: {},
35//! },
36//! value: None,
37//! kind: None,
38//! checked: false,
39//! node_ref: NodeRef(
40//! RefCell {
41//! value: NodeRefInner {
42//! node: None,
43//! link: None,
44//! },
45//! },
46//! ),
47//! },
48//! ),
49//! vlist: None,
50//! vtext: None,
51//! vcomp: None,
52//! vref: None,
53//! children: Some(
54//! [
55//! VNodeStruct {
56//! vtag: None,
57//! vlist: Some(
58//! VList {
59//! children: [
60//! VText { text: example },
61//! ],
62//! elide_placeholder: true,
63//! },
64//! ),
65//! vtext: None,
66//! vcomp: None,
67//! vref: None,
68//! children: Some(
69//! [
70//! VNodeStruct {
71//! vtag: None,
72//! vlist: None,
73//! vtext: Some(
74//! VText { text: example },
75//! ),
76//! vcomp: None,
77//! vref: None,
78//! children: None,
79//! },
80//! ],
81//! ),
82//! },
83//! ],
84//! ),
85//! }
86//! ```
87
88pub mod vnode_struct;
89
90pub use vnode_struct::VNodeStruct;