//! A low-level interface for writing out TOML //! //! Considerations when serializing arbitrary data: //! - Verify the implementation with [`toml-test-harness`](https://docs.rs/toml-test-harness) //! - Be sure to group keys under a table before writing another table //! - Watch for extra trailing newlines and leading newlines, both when starting with top-level //! keys or a table //! - When serializing an array-of-tables, be sure to verify that all elements of the array //! serialize as tables //! - Standard tables and inline tables may need separate implementations of corner cases, //! requiring verifying them both //! //! When serializing Rust data structures //! - `Option`: Skip key-value pairs with a value of `None`, otherwise error when seeing `None` //! - When skipping key-value pairs, be careful that a deeply nested `None` doesn't get skipped //! - Scalars and arrays are unsupported as top-level data types //! - Tuples and tuple variants seriallize as arrays //! - Structs, struct variants, and maps serialize as tables //! - Newtype variants serialize as to the inner type //! - Unit variants serialize to a string //! - Unit and unit structs don't have a clear meaning in TOML //! //! # Example //! //! ```rust //! use toml_writer::TomlWrite as _; //! //! # fn main() -> std::fmt::Result { //! let mut output = String::new(); //! output.newline()?; //! output.open_table_header()?; //! output.key("table")?; //! output.close_table_header()?; //! output.newline()?; //! //! output.key("key")?; //! output.space()?; //! output.keyval_sep()?; //! output.space()?; //! output.value("value")?; //! output.newline()?; //! //! assert_eq!(output, r#" //! [table] //! key = "value" //! "#); //! # Ok(()) //! # } //! ```
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.