to_writer_with_options

Function to_writer_with_options 

Source
pub fn to_writer_with_options<W: Write, T: Facet<'static>>(
    writer: &mut W,
    value: &T,
    options: &SerializeOptions,
) -> Result<(), XmlError>
Expand description

Serialize a value of type T to a writer as XML with custom options.

ยงExample

#[derive(Facet)]
struct Person {
    #[facet(xml::attribute)]
    id: u32,
    #[facet(xml::element)]
    name: String,
}

let person = Person { id: 42, name: "Alice".into() };

// Compact output (default)
let mut buffer = Vec::new();
to_writer_with_options(&mut buffer, &person, &SerializeOptions::default())?;
assert_eq!(buffer, br#"<Person id="42"><name>Alice</name></Person>"#);

// Pretty output with default indent
let mut buffer = Vec::new();
to_writer_with_options(&mut buffer, &person, &SerializeOptions::default().pretty())?;

// Pretty output with custom indent (tabs)
let mut buffer = Vec::new();
to_writer_with_options(&mut buffer, &person, &SerializeOptions::default().indent("\t"))?;