pub struct WriterBuilder(/* private fields */);
Expand description
JSON writer builder.
Implementations§
Source§impl WriterBuilder
impl WriterBuilder
Sourcepub fn new() -> Self
pub fn new() -> Self
Create a new builder for configuring JSON writing options.
§Example
fn example() -> Writer<File, LineDelimited> {
let file = File::create("target/out.json").unwrap();
// create a builder that keeps keys with null values
let builder = WriterBuilder::new().with_explicit_nulls(true);
let writer = builder.build::<_, LineDelimited>(file);
writer
}
Sourcepub fn explicit_nulls(&self) -> bool
pub fn explicit_nulls(&self) -> bool
Returns true
if this writer is configured to keep keys with null values.
Sourcepub fn with_explicit_nulls(self, explicit_nulls: bool) -> Self
pub fn with_explicit_nulls(self, explicit_nulls: bool) -> Self
Set whether to keep keys with null values, or to omit writing them.
For example, with LineDelimited
format:
Skip nulls (set to false
):
{"foo":1}
{"foo":1,"bar":2}
{}
Keep nulls (set to true
):
{"foo":1,"bar":null}
{"foo":1,"bar":2}
{"foo":null,"bar":null}
Default is to skip nulls (set to false
). If struct_mode == ListOnly
,
nulls will be written explicitly regardless of this setting.
Sourcepub fn struct_mode(&self) -> StructMode
pub fn struct_mode(&self) -> StructMode
Returns if this writer is configured to write structs as JSON Objects or Arrays.
Sourcepub fn with_struct_mode(self, struct_mode: StructMode) -> Self
pub fn with_struct_mode(self, struct_mode: StructMode) -> Self
Set the StructMode
for the writer, which determines whether structs
are encoded to JSON as objects or lists. For more details refer to the
enum documentation. Default is to use ObjectOnly
. If this is set to
ListOnly
, nulls will be written explicitly regardless of the
explicit_nulls
setting.
Sourcepub fn build<W, F>(self, writer: W) -> Writer<W, F>where
W: Write,
F: JsonFormat,
pub fn build<W, F>(self, writer: W) -> Writer<W, F>where
W: Write,
F: JsonFormat,
Create a new Writer
with specified JsonFormat
and builder options.
Trait Implementations§
Source§impl Clone for WriterBuilder
impl Clone for WriterBuilder
Source§fn clone(&self) -> WriterBuilder
fn clone(&self) -> WriterBuilder
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more