serde_core/private/
content.rs

1use crate::lib::*;
2
3// Used from generated code to buffer the contents of the Deserializer when
4// deserializing untagged enums and internally tagged enums.
5//
6// Not public API. Use serde-value instead.
7//
8// Obsoleted by format-specific buffer types (https://github.com/serde-rs/serde/pull/2912).
9#[doc(hidden)]
10pub enum Content<'de> {
11    Bool(bool),
12
13    U8(u8),
14    U16(u16),
15    U32(u32),
16    U64(u64),
17
18    I8(i8),
19    I16(i16),
20    I32(i32),
21    I64(i64),
22
23    F32(f32),
24    F64(f64),
25
26    Char(char),
27    String(String),
28    Str(&'de str),
29    ByteBuf(Vec<u8>),
30    Bytes(&'de [u8]),
31
32    None,
33    Some(Box<Content<'de>>),
34
35    Unit,
36    Newtype(Box<Content<'de>>),
37    Seq(Vec<Content<'de>>),
38    Map(Vec<(Content<'de>, Content<'de>)>),
39}