6 ms·
Serde can kind of do this for rust projects, but you're usually constrained to outputs that are "identical but for the syntax/format" (i.e. same field names tho
by ComputerGuru 3y ago
Serde can kind of do this for rust projects, but you're usually constrained to outputs that are "identical but for the syntax/format" (i.e. same field names though perhaps with different naming conventions).
I've used that to convert configuration files from one language to the other, such as this json2toml and toml2json tool [0].
[0]: https://github.com/neosmart/toml2json https://github.com/neosmart/toml2json
- mananaysiempre 3y ago> Serde can kind of do this for rust projects, but you're usually constrained to outputs that are "identical but for the syntax/format" (i.e. same field names though perhaps with different naming conventions). Libxo’s distinguishing feature (IMO) is that its schema specifications are plaintext output with markup specifying which parts are data to be extracted into structured formats, so that you can port your usual Unix tool to it and not ruin its original ad-hoc output. I don’t know of anything positioned as a serialization library that can do this with comparable grace, Serde included. Related: the section on marking up plaintext output in the Ivo essay[1]. [1] https://web.archive.org/web/20111204021526/http://lubutu.com/idea/ivo https://web.archive.org/web/20111204021526/http://lubutu.com... (discussed at the time at https://news.ycombinator.com/item?id=3300264 https://news.ycombinator.com/item?id=3300264)
- ComputerGuru 3y agoYup. libxo is much more free-form, while anything going through a serialize-deserialize process is going to necessarily have to be more regular.