#xml #minimalist #writer #zero-copy #comments #pretty

xml_writer

写入 XML,不是格式化,但非常快

9 个不稳定版本 (4 个破坏性更改)

使用旧的 Rust 2015

0.4.0 2017 年 10 月 10 日
0.2.1 2016 年 10 月 11 日
0.1.4 2016 年 3 月 31 日
0.1.2 2015 年 4 月 11 日
0.1.1 2015 年 2 月 20 日

#183值格式化

Download history 197/week @ 2024-03-13 268/week @ 2024-03-20 221/week @ 2024-03-27 227/week @ 2024-04-03 205/week @ 2024-04-10 300/week @ 2024-04-17 364/week @ 2024-04-24 230/week @ 2024-05-01 221/week @ 2024-05-08 217/week @ 2024-05-15 152/week @ 2024-05-22 185/week @ 2024-05-29 207/week @ 2024-06-05 134/week @ 2024-06-12 247/week @ 2024-06-19 148/week @ 2024-06-26

765 每月下载次数
17 个包 中使用(直接使用 4 个)

MIT/Apache 许可协议

13KB
267

XmlWriter

一个无冗余、极简、零拷贝的 Rust XML 写入器。

用法

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();

更改

0.2.0

  • 添加 XmlWriter::empty_elem 以写入空元素

许可协议

许可协议为以下之一

贡献

除非您明确声明,否则您提交给包括在本作品中的任何贡献都应按上述方式双重许可,不附加任何额外条款或条件。

无运行时依赖项