Trait confluence::rpser::xml::BuildElement
[−]
[src]
pub trait BuildElement { fn cloned(&self) -> Self; fn node<S>(name: S) -> Self where S: Into<String>; fn with_name<S>(self, name: S) -> Self where S: Into<String>; fn with_text<S>(self, text: S) -> Self where S: Into<String>; fn with_attr<KS, VS>(self, key: KS, value: VS) -> Self where KS: Into<String>, VS: Into<String>; fn with_child(self, child: Self) -> Self; fn with_children<I>(self, children: I) -> Self where Self: Sized, I: IntoIterator<Item=Self>; fn with_children_from_iter<'r, I>(self, children: I) -> Self where Self: 'r + Sized, I: Iterator<Item=&'r Self>; fn to_string(&self) -> String; fn descend(self, path: &[&str]) -> Result<Element, Error>; fn descend_first(self) -> Result<Element, Error>; fn get_at_path(&self, path: &[&str]) -> Result<Element, Error>; fn as_long(&self) -> Result<i64, Error>; fn as_int(&self) -> Result<i32, Error>; fn as_boolean(&self) -> Result<bool, Error>; fn as_string(&self) -> Result<String, Error>; fn as_datetime(&self) -> Result<DateTime<UTC>, Error>; }
Helper trait for building xmltree::Element
.
Such convenience methods were not available in xmltree::Element
, so they are added
as a trait. To use them, you need to use this BuildElement
trait.
Example
extern crate xmltree; extern crate confluence; use xmltree::Element; use confluence::rpser::xml::BuildElement; fn main() { assert_eq!( Element::node("tag") .with_child( Element::node("hello").with_text("world") ) .to_string(), "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<tag><hello>world</hello></tag>" ); }
Required Methods
fn cloned(&self) -> Self
[−]
The missing clone
implementation for xmltree::Element
.
fn node<S>(name: S) -> Self where S: Into<String>
[−]
Create empty node.
fn with_name<S>(self, name: S) -> Self where S: Into<String>
[−]
Modify node's name.
fn with_text<S>(self, text: S) -> Self where S: Into<String>
[−]
Modify node's text.
fn with_attr<KS, VS>(self, key: KS, value: VS) -> Self where KS: Into<String>, VS: Into<String>
[−]
Add attribute.
fn with_child(self, child: Self) -> Self
[−]
Add child.
fn with_children<I>(self, children: I) -> Self where Self: Sized, I: IntoIterator<Item=Self>
[−]
Add children.
fn with_children_from_iter<'r, I>(self, children: I) -> Self where Self: 'r + Sized, I: Iterator<Item=&'r Self>
[−]
Add children from iterator.
fn to_string(&self) -> String
[−]
Convert to string (xml).
fn descend(self, path: &[&str]) -> Result<Element, Error>
[−]
Descend into specified child element, destroying the parent.
fn descend_first(self) -> Result<Element, Error>
[−]
Descend into first child element, destroying the parent.
fn get_at_path(&self, path: &[&str]) -> Result<Element, Error>
[−]
Get clone of child element at path.
fn as_long(&self) -> Result<i64, Error>
[−]
Extract the value of long
type from the text.
fn as_int(&self) -> Result<i32, Error>
[−]
Extract the value of int
type from the text.
fn as_boolean(&self) -> Result<bool, Error>
[−]
Extract the value of boolean
type from the text.
fn as_string(&self) -> Result<String, Error>
[−]
Extract the value of string
type from the text.
fn as_datetime(&self) -> Result<DateTime<UTC>, Error>
[−]
Extract the value of DateTime
type from the text.
Implementors
impl BuildElement for Element