# serde_json::ser::Formatter - Rust
API documentation for the Rust `Formatter` trait in crate `serde_json`.
Keywords: rust, rustlang, rust-lang, Formatter

# Trait serde_json::ser::Formatter [−] [src]

    pub trait Formatter {
        fn write_null<W: ?Sized>(&mut self, writer: &mut W) -> Result<()>
        where
            W: Write,
        { ... }
        fn write_bool<W: ?Sized>(
            &mut self,
            writer: &mut W,
            value: bool
        ) -> Result<()>
        where
            W: Write,
        { ... }
        fn write_i8<W: ?Sized>(&mut self, writer: &mut W, value: i8) -> Result<()>
        where
            W: Write,
        { ... }
        fn write_i16<W: ?Sized>(&mut self, writer: &mut W, value: i16) -> Result<()>
        where
            W: Write,
        { ... }
        fn write_i32<W: ?Sized>(&mut self, writer: &mut W, value: i32) -> Result<()>
        where
            W: Write,
        { ... }
        fn write_i64<W: ?Sized>(&mut self, writer: &mut W, value: i64) -> Result<()>
        where
            W: Write,
        { ... }
        fn write_u8<W: ?Sized>(&mut self, writer: &mut W, value: u8) -> Result<()>
        where
            W: Write,
        { ... }
        fn write_u16<W: ?Sized>(&mut self, writer: &mut W, value: u16) -> Result<()>
        where
            W: Write,
        { ... }
        fn write_u32<W: ?Sized>(&mut self, writer: &mut W, value: u32) -> Result<()>
        where
            W: Write,
        { ... }
        fn write_u64<W: ?Sized>(&mut self, writer: &mut W, value: u64) -> Result<()>
        where
            W: Write,
        { ... }
        fn write_f32<W: ?Sized>(&mut self, writer: &mut W, value: f32) -> Result<()>
        where
            W: Write,
        { ... }
        fn write_f64<W: ?Sized>(&mut self, writer: &mut W, value: f64) -> Result<()>
        where
            W: Write,
        { ... }
        fn write_number_str<W: ?Sized>(
            &mut self,
            writer: &mut W,
            value: &str
        ) -> Result<()>
        where
            W: Write,
        { ... }
        fn begin_string<W: ?Sized>(&mut self, writer: &mut W) -> Result<()>
        where
            W: Write,
        { ... }
        fn end_string<W: ?Sized>(&mut self, writer: &mut W) -> Result<()>
        where
            W: Write,
        { ... }
        fn write_string_fragment<W: ?Sized>(
            &mut self,
            writer: &mut W,
            fragment: &str
        ) -> Result<()>
        where
            W: Write,
        { ... }
        fn write_char_escape<W: ?Sized>(
            &mut self,
            writer: &mut W,
            char_escape: CharEscape
        ) -> Result<()>
        where
            W: Write,
        { ... }
        fn begin_array<W: ?Sized>(&mut self, writer: &mut W) -> Result<()>
        where
            W: Write,
        { ... }
        fn end_array<W: ?Sized>(&mut self, writer: &mut W) -> Result<()>
        where
            W: Write,
        { ... }
        fn begin_array_value<W: ?Sized>(
            &mut self,
            writer: &mut W,
            first: bool
        ) -> Result<()>
        where
            W: Write,
        { ... }
        fn end_array_value<W: ?Sized>(&mut self, _writer: &mut W) -> Result<()>
        where
            W: Write,
        { ... }
        fn begin_object<W: ?Sized>(&mut self, writer: &mut W) -> Result<()>
        where
            W: Write,
        { ... }
        fn end_object<W: ?Sized>(&mut self, writer: &mut W) -> Result<()>
        where
            W: Write,
        { ... }
        fn begin_object_key<W: ?Sized>(
            &mut self,
            writer: &mut W,
            first: bool
        ) -> Result<()>
        where
            W: Write,
        { ... }
        fn end_object_key<W: ?Sized>(&mut self, _writer: &mut W) -> Result<()>
        where
            W: Write,
        { ... }
        fn begin_object_value<W: ?Sized>(&mut self, writer: &mut W) -> Result<()>
        where
            W: Write,
        { ... }
        fn end_object_value<W: ?Sized>(&mut self, _writer: &mut W) -> Result<()>
        where
            W: Write,
        { ... }
        fn write_raw_fragment<W: ?Sized>(
            &mut self,
            writer: &mut W,
            fragment: &str
        ) -> Result<()>
        where
            W: Write,
        { ... }
    }

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: ?Sized>(&mut self, writer: &mut W) -> Result<()> where
W: Write,` [src]

Writes a `null` value to the specified writer.

### `fn write_bool<W: ?Sized>(&mut self, writer: &mut W, value: bool) -> Result<()> where
W: Write,` [src]

Writes a `true` or `false` value to the specified writer.

### `fn write_i8<W: ?Sized>(&mut self, writer: &mut W, value: i8) -> Result<()> where
W: Write,` [src]

Writes an integer value like `-123` to the specified writer.

### `fn write_i16<W: ?Sized>(&mut self, writer: &mut W, value: i16) -> Result<()> where
W: Write,` [src]

Writes an integer value like `-123` to the specified writer.

### `fn write_i32<W: ?Sized>(&mut self, writer: &mut W, value: i32) -> Result<()> where
W: Write,` [src]

Writes an integer value like `-123` to the specified writer.

### `fn write_i64<W: ?Sized>(&mut self, writer: &mut W, value: i64) -> Result<()> where
W: Write,` [src]

Writes an integer value like `-123` to the specified writer.

### `fn write_u8<W: ?Sized>(&mut self, writer: &mut W, value: u8) -> Result<()> where
W: Write,` [src]

Writes an integer value like `123` to the specified writer.

### `fn write_u16<W: ?Sized>(&mut self, writer: &mut W, value: u16) -> Result<()> where
W: Write,` [src]

Writes an integer value like `123` to the specified writer.

### `fn write_u32<W: ?Sized>(&mut self, writer: &mut W, value: u32) -> Result<()> where
W: Write,` [src]

Writes an integer value like `123` to the specified writer.

### `fn write_u64<W: ?Sized>(&mut self, writer: &mut W, value: u64) -> Result<()> where
W: Write,` [src]

Writes an integer value like `123` to the specified writer.

### `fn write_f32<W: ?Sized>(&mut self, writer: &mut W, value: f32) -> Result<()> where
W: Write,` [src]

Writes a floating point value like `-31.26e+12` to the specified writer.

### `fn write_f64<W: ?Sized>(&mut self, writer: &mut W, value: f64) -> Result<()> where
W: Write,` [src]

Writes a floating point value like `-31.26e+12` to the specified writer.

### `fn write_number_str<W: ?Sized>(
&mut self,
writer: &mut W,
value: &str
) -> Result<()> where
W: Write,` [src]

Writes a number that has already been rendered to a string.

### `fn begin_string<W: ?Sized>(&mut self, writer: &mut W) -> Result<()> where
W: Write,` [src]

Called before each series of `write_string_fragment` and `write_char_escape`. Writes a `"` to the specified writer.

### `fn end_string<W: ?Sized>(&mut self, writer: &mut W) -> Result<()> where
W: Write,` [src]

Called after each series of `write_string_fragment` and `write_char_escape`. Writes a `"` to the specified writer.

### `fn write_string_fragment<W: ?Sized>(
&mut self,
writer: &mut W,
fragment: &str
) -> Result<()> where
W: Write,` [src]

Writes a string fragment that doesn't need any escaping to the specified writer.

### `fn write_char_escape<W: ?Sized>(
&mut self,
writer: &mut W,
char_escape: CharEscape
) -> Result<()> where
W: Write,` [src]

Writes a character escape code to the specified writer.

### `fn begin_array<W: ?Sized>(&mut self, writer: &mut W) -> Result<()> where
W: Write,` [src]

Called before every array. Writes a `[` to the specified writer.

### `fn end_array<W: ?Sized>(&mut self, writer: &mut W) -> Result<()> where
W: Write,` [src]

Called after every array. Writes a `]` to the specified writer.

### `fn begin_array_value<W: ?Sized>(
&mut self,
writer: &mut W,
first: bool
) -> Result<()> where
W: Write,` [src]

Called before every array value. Writes a `,` if needed to the specified writer.

### `fn end_array_value<W: ?Sized>(&mut self, _writer: &mut W) -> Result<()> where
W: Write,` [src]

Called after every array value.

### `fn begin_object<W: ?Sized>(&mut self, writer: &mut W) -> Result<()> where
W: Write,` [src]

Called before every object. Writes a `{` to the specified writer.

### `fn end_object<W: ?Sized>(&mut self, writer: &mut W) -> Result<()> where
W: Write,` [src]

Called after every object. Writes a `}` to the specified writer.

### `fn begin_object_key<W: ?Sized>(
&mut self,
writer: &mut W,
first: bool
) -> Result<()> where
W: Write,` [src]

Called before every object key.

### `fn end_object_key<W: ?Sized>(&mut self, _writer: &mut W) -> Result<()> where
W: Write,` [src]

Called after every object key. A `:` should be written to the specified writer by either this method or `begin_object_value`.

### `fn begin_object_value<W: ?Sized>(&mut self, writer: &mut W) -> Result<()> where
W: Write,` [src]

Called before every object value. A `:` should be written to the specified writer by either this method or `end_object_key`.

### `fn end_object_value<W: ?Sized>(&mut self, _writer: &mut W) -> Result<()> where
W: Write,` [src]

Called after every object value.

### `fn write_raw_fragment<W: ?Sized>(
&mut self,
writer: &mut W,
fragment: &str
) -> Result<()> where
W: Write,` [src]

Writes a raw JSON fragment that doesn't need any escaping to the specified writer.

Loading content...

## Implementors

### `impl Formatter for CompactFormatter` [src]

### `impl<'a> Formatter for PrettyFormatter<'a>` [src]

#### `fn begin_array<W: ?Sized>(&mut self, writer: &mut W) -> Result<()> where
W: Write,` [src]

#### `fn end_array<W: ?Sized>(&mut self, writer: &mut W) -> Result<()> where
W: Write,` [src]

#### `fn begin_array_value<W: ?Sized>(
&mut self,
writer: &mut W,
first: bool
) -> Result<()> where
W: Write,` [src]

#### `fn end_array_value<W: ?Sized>(&mut self, _writer: &mut W) -> Result<()> where
W: Write,` [src]

#### `fn begin_object<W: ?Sized>(&mut self, writer: &mut W) -> Result<()> where
W: Write,` [src]

#### `fn end_object<W: ?Sized>(&mut self, writer: &mut W) -> Result<()> where
W: Write,` [src]

#### `fn begin_object_key<W: ?Sized>(
&mut self,
writer: &mut W,
first: bool
) -> Result<()> where
W: Write,` [src]

#### `fn begin_object_value<W: ?Sized>(&mut self, writer: &mut W) -> Result<()> where
W: Write,` [src]

#### `fn end_object_value<W: ?Sized>(&mut self, _writer: &mut W) -> Result<()> where
W: Write,` [src]

Loading content...