makepad_micro_serde

Trait DeJson

Source
pub trait DeJson: Sized {
    // Required method
    fn de_json(
        s: &mut DeJsonState,
        i: &mut Chars<'_>,
    ) -> Result<Self, DeJsonErr>;

    // Provided method
    fn deserialize_json(input: &str) -> Result<Self, DeJsonErr> { ... }
}

Required Methods§

Source

fn de_json(s: &mut DeJsonState, i: &mut Chars<'_>) -> Result<Self, DeJsonErr>

Provided Methods§

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl DeJson for bool

Source§

fn de_json(s: &mut DeJsonState, i: &mut Chars<'_>) -> Result<bool, DeJsonErr>

Source§

impl DeJson for f32

Source§

fn de_json(s: &mut DeJsonState, i: &mut Chars<'_>) -> Result<f32, DeJsonErr>

Source§

impl DeJson for f64

Source§

fn de_json(s: &mut DeJsonState, i: &mut Chars<'_>) -> Result<f64, DeJsonErr>

Source§

impl DeJson for i8

Source§

fn de_json(s: &mut DeJsonState, i: &mut Chars<'_>) -> Result<i8, DeJsonErr>

Source§

impl DeJson for i16

Source§

fn de_json(s: &mut DeJsonState, i: &mut Chars<'_>) -> Result<i16, DeJsonErr>

Source§

impl DeJson for i32

Source§

fn de_json(s: &mut DeJsonState, i: &mut Chars<'_>) -> Result<i32, DeJsonErr>

Source§

impl DeJson for i64

Source§

fn de_json(s: &mut DeJsonState, i: &mut Chars<'_>) -> Result<i64, DeJsonErr>

Source§

impl DeJson for u8

Source§

fn de_json(s: &mut DeJsonState, i: &mut Chars<'_>) -> Result<u8, DeJsonErr>

Source§

impl DeJson for u16

Source§

fn de_json(s: &mut DeJsonState, i: &mut Chars<'_>) -> Result<u16, DeJsonErr>

Source§

impl DeJson for u32

Source§

fn de_json(s: &mut DeJsonState, i: &mut Chars<'_>) -> Result<u32, DeJsonErr>

Source§

impl DeJson for u64

Source§

fn de_json(s: &mut DeJsonState, i: &mut Chars<'_>) -> Result<u64, DeJsonErr>

Source§

impl DeJson for usize

Source§

fn de_json(s: &mut DeJsonState, i: &mut Chars<'_>) -> Result<usize, DeJsonErr>

Source§

impl DeJson for String

Source§

fn de_json(s: &mut DeJsonState, i: &mut Chars<'_>) -> Result<String, DeJsonErr>

Source§

impl<A, B> DeJson for (A, B)
where A: DeJson, B: DeJson,

Source§

fn de_json(s: &mut DeJsonState, i: &mut Chars<'_>) -> Result<(A, B), DeJsonErr>

Source§

impl<A, B, C> DeJson for (A, B, C)
where A: DeJson, B: DeJson, C: DeJson,

Source§

fn de_json( s: &mut DeJsonState, i: &mut Chars<'_>, ) -> Result<(A, B, C), DeJsonErr>

Source§

impl<A, B, C, D> DeJson for (A, B, C, D)
where A: DeJson, B: DeJson, C: DeJson, D: DeJson,

Source§

impl<K, V> DeJson for HashMap<K, V>
where K: DeJson + Eq + Hash, V: DeJson,

Source§

fn de_json(s: &mut DeJsonState, i: &mut Chars<'_>) -> Result<Self, DeJsonErr>

Source§

impl<T> DeJson for Option<T>
where T: DeJson,

Source§

fn de_json(s: &mut DeJsonState, i: &mut Chars<'_>) -> Result<Self, DeJsonErr>

Source§

impl<T> DeJson for Box<T>
where T: DeJson,

Source§

fn de_json(s: &mut DeJsonState, i: &mut Chars<'_>) -> Result<Box<T>, DeJsonErr>

Source§

impl<T> DeJson for Vec<T>
where T: DeJson,

Source§

fn de_json(s: &mut DeJsonState, i: &mut Chars<'_>) -> Result<Vec<T>, DeJsonErr>

Source§

impl<T, const N: usize> DeJson for [T; N]
where T: DeJson,

Source§

fn de_json(s: &mut DeJsonState, i: &mut Chars<'_>) -> Result<Self, DeJsonErr>

Implementors§