Struct nyoom_json::Serializer
source · #[repr(transparent)]pub struct Serializer<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::create(&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> Serializer<StringBuffer<'a>>
impl<'a> Serializer<StringBuffer<'a>>
sourcepub fn create(buf: &'a mut String) -> Serializer<StringBuffer<'a>>
pub fn create(buf: &'a mut String) -> Serializer<StringBuffer<'a>>
Creates a serializer over a mutable string reference.
source§impl<S: JsonBuffer> Serializer<S>
impl<S: JsonBuffer> Serializer<S>
pub fn new(buf: S) -> Serializer<S>
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::create(&mut out);
ser.write(3);sourcepub fn array(&mut self) -> ArrayWriter<&mut S>
pub fn array(&mut self) -> ArrayWriter<&mut S>
Starts serialization of an array.
Examples
use nyoom_json::Serializer;
let mut out = String::new();
let mut ser = Serializer::create(&mut out);
let mut arr = ser.array();
arr.add("friends");
arr.add("romans");
arr.add("countrymen");
arr.end();sourcepub fn object(&mut self) -> ObjectWriter<&mut S>
pub fn object(&mut self) -> ObjectWriter<&mut S>
Starts serialization of an object.
Examples
use nyoom_json::Serializer;
let mut out = String::new();
let mut ser = Serializer::create(&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<S> RefUnwindSafe for Serializer<S>where S: RefUnwindSafe,
impl<S> Send for Serializer<S>where S: Send,
impl<S> Sync for Serializer<S>where S: Sync,
impl<S> Unpin for Serializer<S>where S: Unpin,
impl<S> UnwindSafe for Serializer<S>where S: UnwindSafe,
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