9 unstable releases (4 breaking)

Uses old Rust 2015

0.4.0 Oct 10, 2017
0.2.1 Oct 11, 2016
0.1.4 Mar 31, 2016
0.1.2 Apr 11, 2015
0.1.1 Feb 20, 2015

#9 in #comment

Download history 203/week @ 2024-07-22 194/week @ 2024-07-29 247/week @ 2024-08-05 187/week @ 2024-08-12 183/week @ 2024-08-19 236/week @ 2024-08-26 234/week @ 2024-09-02 177/week @ 2024-09-09 153/week @ 2024-09-16 210/week @ 2024-09-23 164/week @ 2024-09-30 181/week @ 2024-10-07 181/week @ 2024-10-14 179/week @ 2024-10-21 179/week @ 2024-10-28 224/week @ 2024-11-04

784 downloads per month
Used in 17 crates (4 directly)

MIT/Apache

13KB
267 lines

XmlWriter

a no fluff, minimalistic, zero-copy xml writer for Rust.

Usage

extern crate xml_writer;
use xml_writer::::XmlWriter;

let mut xml = XmlWriter::new(Vec::new()); // supply any Writer, preferrably BufferedWriter
xml.begin_elem("root");
    xml.comment("nice to see you");
    xml.begin_elem("node");
        xml.attr_esc("name", "\"123\"");
        xml.attr("id", "abc");
        xml.attr("'unescaped'", "\"123\""); // this WILL intentionally generate invalid xml
        xml.text("'text'");
    xml.end_elem();
    xml.begin_elem("stuff");
        xml.cdata("blablab");
    // xml.end_elem(); // the latter close() will close all open nodes
 // xml.end_elem();
 xml.close();
 xml.flush();

let actual = xml.into_inner();

Changes

0.2.0

  • add XmlWriter::empty_elem to write an empty element

License

Licensed under either of

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you shall be dual licensed as above, without any additional terms or conditions.

No runtime deps