encode

Function encode 

Source
pub fn encode<T: Serialize>(
    value: &T,
    options: &EncodeOptions,
) -> ToonResult<String>
Expand description

Encode any serializable value to TOON format.

This function accepts any type implementing serde::Serialize, including:

  • Custom structs with #[derive(Serialize)]
  • serde_json::Value
  • Built-in types (Vec, HashMap, etc.)

ยงExamples

With custom structs:

use serde::Serialize;
use toon_format::{
    encode,
    EncodeOptions,
};

#[derive(Serialize)]
struct User {
    name: String,
    age: u32,
}

let user = User {
    name: "Alice".to_string(),
    age: 30,
};
let toon = encode(&user, &EncodeOptions::default())?;
assert!(toon.contains("name: Alice"));

With JSON values:

use toon_format::{encode, EncodeOptions, Delimiter};
use serde_json::json;

let data = json!({"tags": ["a", "b", "c"]});
let options = EncodeOptions::new().with_delimiter(Delimiter::Pipe);
let toon = encode(&data, &options)?;
assert!(toon.contains("|"));