High performance xml pull reader/writer.
Documentation Syntax is inspired by xml-rs.
Carto.toml
toml
[dependencies]
quick-xml = "0.1"
rust
extern crate quick_xml;
```rust use quick_xml::{XmlReader, Event};
let xml = r#"
```rust use quickxml::{AsStr, Element, Event, XmlReader, XmlWriter}; use quickxml::Event::*; use std::io::Cursor; use std::iter;
let xml = r#"
// copy existing attributes, adds a new my-key="some value" attribute
let mut elem = Element::new("my_elem").with_attributes(attrs);
elem.push_attribute(b"my-key", "some value");
// writes the event to the writer
assert!(writer.write(Start(elem)).is_ok());
},
Ok(Event::End(ref e)) if e.name() == b"this_tag" => {
assert!(writer.write(End(Element::new("my_elem"))).is_ok());
},
Ok(e) => assert!(writer.write(e).is_ok()),
Err((e, pos)) => panic!("{:?} at buffer position {}", e, pos),
}
}
let result = writer.intoinner().intoinner();
let expected = r#"
On my first tests (200mb+ xmls) it performs much better (minimum 10x) than xml-rs.
&u[u8]
=> probably not too relevant for the momentAny PR is welcomed!
MIT