1
2
3
4
5
6
7
8
9
10
11
use crate::de::Decoder;
use crate::mode::DefaultMode;
pub use musli_macros::Decode;

/// Trait governing how types are decoded.
pub trait Decode<'de, Mode = DefaultMode>: Sized {
    /// Decode the given input.
    fn decode<D>(decoder: D) -> Result<Self, D::Error>
    where
        D: Decoder<'de>;
}