#!/usr/bin/env run-cargo-script
extern crate rbatis_xml_parser;
use std::default::Default;
use std::iter;
use rbatis_xml_parser::tendril::{SliceExt};
use rbatis_xml_parser::{parse};
use rbatis_xml_parser::tree_builder::{TreeSink};
use rbatis_xml_parser::rcdom::{RcDom, Text};
fn main() {
let input = "<hello>XML</hello>".to_tendril();
let dom: RcDom = parse(iter::once(input), Default::default());
let doc = &dom.document;
let hello_node = &doc.borrow().children[0];
let hello_tag = &*dom.elem_name(hello_node).local;
let text_node = &hello_node.borrow().children[0];
let xml = {
let mut xml = String::new();
match &text_node.borrow().node {
&Text(ref text) => {
xml.push_str(&*text);
},
e => {println!("{:?}", e);},
};
xml
};
println!("{:?} {:?}!", hello_tag, xml);
}