diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/document_tree/element_categories.rs | 5 | ||||
| -rw-r--r-- | src/document_tree/elements.rs | 5 | ||||
| -rw-r--r-- | src/document_tree/mod.rs | 12 | ||||
| -rw-r--r-- | src/lib.rs | 12 |
4 files changed, 17 insertions, 17 deletions
diff --git a/src/document_tree/element_categories.rs b/src/document_tree/element_categories.rs index 9ea79e6..17bc01a 100644 --- a/src/document_tree/element_categories.rs +++ b/src/document_tree/element_categories.rs @@ -1,9 +1,10 @@ use super::elements::*; pub trait HasChildren<C> { - fn children(&mut self) -> &mut Vec<C>; + fn children(& self) -> &Vec<C>; + fn children_mut(&mut self) -> &mut Vec<C>; fn append_child<R: Into<C>>(&mut self, child: R) { - self.children().push(child.into()); + self.children_mut().push(child.into()); } } diff --git a/src/document_tree/elements.rs b/src/document_tree/elements.rs index 0859151..2cfd3d4 100644 --- a/src/document_tree/elements.rs +++ b/src/document_tree/elements.rs @@ -39,9 +39,8 @@ macro_rules! impl_element(($name:ident) => { macro_rules! impl_children(($name:ident, $childtype:ident) => { impl HasChildren<$childtype> for $name { - fn children(&mut self) -> &mut Vec<$childtype> { - &mut self.children - } + fn children (& self) -> & Vec<$childtype> { & self.children } + fn children_mut(&mut self) -> &mut Vec<$childtype> { &mut self.children } } }); diff --git a/src/document_tree/mod.rs b/src/document_tree/mod.rs index 35f2540..cb54eb5 100644 --- a/src/document_tree/mod.rs +++ b/src/document_tree/mod.rs @@ -9,3 +9,15 @@ pub mod attribute_types; pub use self::elements::*; //Element,CommonAttributes, pub use self::extra_attributes::ExtraAttributes; pub use self::element_categories::HasChildren; + +#[test] +fn test() { + use document_tree as dt; + use document_tree::HasChildren; + + let mut doc = dt::Document::default(); + let title = dt::Title::default(); + doc.append_child(title); + + println!("{:?}", doc); +} @@ -1,15 +1,3 @@ extern crate url; pub mod document_tree; - -#[test] -fn test() { - use document_tree as dt; - use document_tree::HasChildren; - - let mut doc = dt::Document::default(); - let title = dt::Title::default(); - doc.append_child(title); - - println!("{:?}", doc); -} |
