pub struct Serializer<'a, S: JsonBuffer> { /* private fields */ }Expand description
A general JSON serializer, over a mutable buffer of some sort.
§Examples
use nyoom_json::Serializer;
let mut out = String::new();
let mut ser = Serializer::new(&mut out);
let mut obj = ser.object();
obj.field("kind", "cat");
obj.field("has_been_fed", false);
obj.field("meow_decibels", 45);
obj.end();
let mut arr = ser.array();
arr.add("friends");
arr.add("romans");
arr.add("countrymen");
arr.end();
ser.end();Implementations§
Source§impl<'a, S: JsonBuffer> Serializer<'a, S>
impl<'a, S: JsonBuffer> Serializer<'a, S>
Sourcepub fn new(buf: &mut S) -> Serializer<'_, S>
pub fn new(buf: &mut S) -> Serializer<'_, S>
Creates a new serializer over a JSON output buffer.
Sourcepub fn write(&mut self, val: impl WriteToJson<S>)
pub fn write(&mut self, val: impl WriteToJson<S>)
Writes out a single primitive JSON value.
§Examples
use nyoom_json::Serializer;
let mut out = String::new();
let mut ser = Serializer::new(&mut out);
ser.write(3);Sourcepub fn array(&mut self) -> ArrayWriter<'_, S>
pub fn array(&mut self) -> ArrayWriter<'_, S>
Starts serialization of an array.
§Examples
use nyoom_json::Serializer;
let mut out = String::new();
let mut ser = Serializer::new(&mut out);
let mut arr = ser.array();
arr.add("friends");
arr.add("romans");
arr.add("countrymen");
arr.end();Sourcepub fn object(&mut self) -> ObjectWriter<'_, S>
pub fn object(&mut self) -> ObjectWriter<'_, S>
Starts serialization of an object.
§Examples
use nyoom_json::Serializer;
let mut out = String::new();
let mut ser = Serializer::new(&mut out);
let mut obj = ser.object();
obj.field("kind", "cat");
obj.field("has_been_fed", false);
obj.field("meow_decibels", 45);
obj.end();Auto Trait Implementations§
impl<'a, S> Freeze for Serializer<'a, S>
impl<'a, S> RefUnwindSafe for Serializer<'a, S>where
S: RefUnwindSafe,
impl<'a, S> Send for Serializer<'a, S>where
S: Send,
impl<'a, S> Sync for Serializer<'a, S>where
S: Sync,
impl<'a, S> Unpin for Serializer<'a, S>
impl<'a, S> !UnwindSafe for Serializer<'a, S>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more