Trait Formatter
trait Formatter
This trait abstracts away serializing the JSON control characters, which allows the user to optionally pretty print the JSON output.
Provided Methods
fn write_null<W>(self: &mut Self, writer: &mut W) -> io::Result<()> where W: ?Sized + io::WriteWrites a
nullvalue to the specified writer.fn write_bool<W>(self: &mut Self, writer: &mut W, value: bool) -> io::Result<()> where W: ?Sized + io::WriteWrites a
trueorfalsevalue to the specified writer.fn write_i8<W>(self: &mut Self, writer: &mut W, value: i8) -> io::Result<()> where W: ?Sized + io::WriteWrites an integer value like
-123to the specified writer.fn write_i16<W>(self: &mut Self, writer: &mut W, value: i16) -> io::Result<()> where W: ?Sized + io::WriteWrites an integer value like
-123to the specified writer.fn write_i32<W>(self: &mut Self, writer: &mut W, value: i32) -> io::Result<()> where W: ?Sized + io::WriteWrites an integer value like
-123to the specified writer.fn write_i64<W>(self: &mut Self, writer: &mut W, value: i64) -> io::Result<()> where W: ?Sized + io::WriteWrites an integer value like
-123to the specified writer.fn write_i128<W>(self: &mut Self, writer: &mut W, value: i128) -> io::Result<()> where W: ?Sized + io::WriteWrites an integer value like
-123to the specified writer.fn write_u8<W>(self: &mut Self, writer: &mut W, value: u8) -> io::Result<()> where W: ?Sized + io::WriteWrites an integer value like
123to the specified writer.fn write_u16<W>(self: &mut Self, writer: &mut W, value: u16) -> io::Result<()> where W: ?Sized + io::WriteWrites an integer value like
123to the specified writer.fn write_u32<W>(self: &mut Self, writer: &mut W, value: u32) -> io::Result<()> where W: ?Sized + io::WriteWrites an integer value like
123to the specified writer.fn write_u64<W>(self: &mut Self, writer: &mut W, value: u64) -> io::Result<()> where W: ?Sized + io::WriteWrites an integer value like
123to the specified writer.fn write_u128<W>(self: &mut Self, writer: &mut W, value: u128) -> io::Result<()> where W: ?Sized + io::WriteWrites an integer value like
123to the specified writer.fn write_f32<W>(self: &mut Self, writer: &mut W, value: f32) -> io::Result<()> where W: ?Sized + io::WriteWrites a floating point value like
-31.26e+12to the specified writer.Special cases
This function does not check for NaN or infinity. If the input number is not a finite float, the printed representation will be some correctly formatted but unspecified numerical value.
Please check
is_finiteyourself before calling this function, or checkis_nanandis_infiniteand handle those cases yourself with a differentFormattermethod.fn write_f64<W>(self: &mut Self, writer: &mut W, value: f64) -> io::Result<()> where W: ?Sized + io::WriteWrites a floating point value like
-31.26e+12to the specified writer.Special cases
This function does not check for NaN or infinity. If the input number is not a finite float, the printed representation will be some correctly formatted but unspecified numerical value.
Please check
is_finiteyourself before calling this function, or checkis_nanandis_infiniteand handle those cases yourself with a differentFormattermethod.fn write_number_str<W>(self: &mut Self, writer: &mut W, value: &str) -> io::Result<()> where W: ?Sized + io::WriteWrites a number that has already been rendered to a string.
fn begin_string<W>(self: &mut Self, writer: &mut W) -> io::Result<()> where W: ?Sized + io::WriteCalled before each series of
write_string_fragmentandwrite_char_escape. Writes a"to the specified writer.fn end_string<W>(self: &mut Self, writer: &mut W) -> io::Result<()> where W: ?Sized + io::WriteCalled after each series of
write_string_fragmentandwrite_char_escape. Writes a"to the specified writer.fn write_string_fragment<W>(self: &mut Self, writer: &mut W, fragment: &str) -> io::Result<()> where W: ?Sized + io::WriteWrites a string fragment that doesn't need any escaping to the specified writer.
fn write_char_escape<W>(self: &mut Self, writer: &mut W, char_escape: CharEscape) -> io::Result<()> where W: ?Sized + io::WriteWrites a character escape code to the specified writer.
fn write_byte_array<W>(self: &mut Self, writer: &mut W, value: &[u8]) -> io::Result<()> where W: ?Sized + io::WriteWrites the representation of a byte array. Formatters can choose whether to represent bytes as a JSON array of integers (the default), or some JSON string encoding like hex or base64.
fn begin_array<W>(self: &mut Self, writer: &mut W) -> io::Result<()> where W: ?Sized + io::WriteCalled before every array. Writes a
[to the specified writer.fn end_array<W>(self: &mut Self, writer: &mut W) -> io::Result<()> where W: ?Sized + io::WriteCalled after every array. Writes a
]to the specified writer.fn begin_array_value<W>(self: &mut Self, writer: &mut W, first: bool) -> io::Result<()> where W: ?Sized + io::WriteCalled before every array value. Writes a
,if needed to the specified writer.fn end_array_value<W>(self: &mut Self, _writer: &mut W) -> io::Result<()> where W: ?Sized + io::WriteCalled after every array value.
fn begin_object<W>(self: &mut Self, writer: &mut W) -> io::Result<()> where W: ?Sized + io::WriteCalled before every object. Writes a
{to the specified writer.fn end_object<W>(self: &mut Self, writer: &mut W) -> io::Result<()> where W: ?Sized + io::WriteCalled after every object. Writes a
}to the specified writer.fn begin_object_key<W>(self: &mut Self, writer: &mut W, first: bool) -> io::Result<()> where W: ?Sized + io::WriteCalled before every object key.
fn end_object_key<W>(self: &mut Self, _writer: &mut W) -> io::Result<()> where W: ?Sized + io::WriteCalled after every object key. A
:should be written to the specified writer by either this method orbegin_object_value.fn begin_object_value<W>(self: &mut Self, writer: &mut W) -> io::Result<()> where W: ?Sized + io::WriteCalled before every object value. A
:should be written to the specified writer by either this method orend_object_key.fn end_object_value<W>(self: &mut Self, _writer: &mut W) -> io::Result<()> where W: ?Sized + io::WriteCalled after every object value.
fn write_raw_fragment<W>(self: &mut Self, writer: &mut W, fragment: &str) -> io::Result<()> where W: ?Sized + io::WriteWrites a raw JSON fragment that doesn't need any escaping to the specified writer.
Implementors
impl Formatter for CompactFormatterimpl<'a> Formatter for PrettyFormatter<'a>