Trait Decode

Source
pub trait Decode: Sized {
    // Required method
    fn decode(decoder: &mut Decoder<'_>) -> Result<Self, Error>;

    // Provided method
    fn decode_sized(
        decoder: &mut Decoder<'_>,
        _size: usize,
    ) -> Result<Self, Error> { ... }
}

Required Methods§

Source

fn decode(decoder: &mut Decoder<'_>) -> Result<Self, Error>

This will take the decoder and return the data itself, parsed from the decoder’s input bytes.

Provided Methods§

Source

fn decode_sized(decoder: &mut Decoder<'_>, _size: usize) -> Result<Self, Error>

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 Decode for bool

Values 0 and 1 only. Length is always 1.

Source§

fn decode(decoder: &mut Decoder<'_>) -> Result<bool, Error>

Source§

fn decode_sized(decoder: &mut Decoder<'_>, size: usize) -> Result<bool, Error>

Source§

impl Decode for char

Raw ASCII character, length 1

Source§

fn decode(decoder: &mut Decoder<'_>) -> Result<char, Error>

Source§

fn decode_sized(decoder: &mut Decoder<'_>, size: usize) -> Result<char, Error>

Source§

impl Decode for u8

Values ranging 0..256, length 1-3

Source§

fn decode(_: &mut Decoder<'_>) -> Result<u8, Error>

Source§

fn decode_sized(decoder: &mut Decoder<'_>, size: usize) -> Result<u8, Error>

Source§

impl Decode for u16

Values ranging 0..65536, length 1-5

Source§

fn decode(_: &mut Decoder<'_>) -> Result<u16, Error>

Source§

fn decode_sized(decoder: &mut Decoder<'_>, size: usize) -> Result<u16, Error>

Source§

impl Decode for u32

Values ranging 0..4294967296, length 1-10

Source§

fn decode(_: &mut Decoder<'_>) -> Result<u32, Error>

Source§

fn decode_sized(decoder: &mut Decoder<'_>, size: usize) -> Result<u32, Error>

Source§

impl Decode for u64

Values ranging 0..18446744073709551616, length 1-20

Source§

fn decode(_: &mut Decoder<'_>) -> Result<u64, Error>

Source§

fn decode_sized(decoder: &mut Decoder<'_>, size: usize) -> Result<u64, Error>

Source§

impl Decode for String

String based on the ASCII characters in the decoder, can be length 0-infinite.

Source§

fn decode(decoder: &mut Decoder<'_>) -> Result<String, Error>

Source§

fn decode_sized(decoder: &mut Decoder<'_>, size: usize) -> Result<String, Error>

Source§

impl Decode for DateTime<Local>

Source§

fn decode(decoder: &mut Decoder<'_>) -> Result<DateTime<Local>, Error>

Source§

fn decode_sized( decoder: &mut Decoder<'_>, size: usize, ) -> Result<DateTime<Local>, Error>

Source§

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

Source§

fn decode(_: &mut Decoder<'_>) -> Result<Option<T>, Error>

Source§

fn decode_sized( decoder: &mut Decoder<'_>, size: usize, ) -> Result<Option<T>, Error>

Implementors§

Source§

impl Decode for DataType

Source§

impl Decode for ErrorCode

Source§

impl Decode for AlarmStatus

Source§

impl Decode for ControllerReadyStatus

Source§

impl Decode for ToolReadyStatus

Source§

impl Decode for KeepAlive

Source§

impl Decode for RelayStatus

Source§

impl Decode for RotationDirection

Source§

impl Decode for ObjectType

Source§

impl Decode for TraceType

Source§

impl Decode for RemovalCondition

Source§

impl Decode for MID0070rev1

Source§

impl Decode for MID0071rev1

Source§

impl Decode for MID0072rev1

Source§

impl Decode for MID0073rev1

Source§

impl Decode for MID0074rev1

Source§

impl Decode for MID0075rev1

Source§

impl Decode for MID0076rev1

Source§

impl Decode for MID0077rev1

Source§

impl Decode for MID0078rev1

Source§

impl Decode for MID1000rev1

Source§

impl Decode for MID1001rev1

Source§

impl Decode for MID0001rev7

Source§

impl Decode for MID0002rev1

Source§

impl Decode for MID0002rev2

Source§

impl Decode for MID0002rev3

Source§

impl Decode for MID0002rev4

Source§

impl Decode for MID0002rev5

Source§

impl Decode for MID0002rev6

Source§

impl Decode for MID0002rev7

Source§

impl Decode for MID0003rev1

Source§

impl Decode for MID0004rev1

Source§

impl Decode for MID0004rev2

Source§

impl Decode for MID0005rev1

Source§

impl Decode for MID0006rev1

Source§

impl Decode for MID0008rev1

Source§

impl Decode for MID0009rev1

Source§

impl Decode for JobParameterRev1

Source§

impl Decode for MID0030rev1

Source§

impl Decode for MID0031rev1

Source§

impl Decode for MID0031rev2

Source§

impl Decode for MID0032rev1

Source§

impl Decode for MID0032rev2

Source§

impl Decode for MID0033rev1

Source§

impl Decode for MID0034rev1

Source§

impl Decode for MID0035rev1

Source§

impl Decode for MID0036rev1

Source§

impl Decode for MID0037rev1

Source§

impl Decode for MID0038rev1

Source§

impl Decode for MID0038rev2

Source§

impl Decode for MID0039rev1

Source§

impl Decode for MID0039rev2

Source§

impl Decode for MID9999rev1

Source§

impl Decode for MID9997rev1

Source§

impl Decode for MID9998rev1

Source§

impl Decode for open_protocol::messages::mode::BoltData

Source§

impl Decode for MID2600rev1

Source§

impl Decode for MID2601rev1

Source§

impl Decode for MID2602rev1

Source§

impl Decode for MID2603rev1

Source§

impl Decode for MID2604rev1

Source§

impl Decode for MID2605rev1

Source§

impl Decode for MID2606rev1

Source§

impl Decode for ModeData

Source§

impl Decode for MID0100rev1

Source§

impl Decode for MID0101rev1

Source§

impl Decode for MID0102rev1

Source§

impl Decode for MID0103rev1

Source§

impl Decode for MID0104rev1

Source§

impl Decode for SpindleResult

Source§

impl Decode for MID0090rev1

Source§

impl Decode for MID0091rev1

Source§

impl Decode for MID0092rev1

Source§

impl Decode for MID0093rev1

Source§

impl Decode for SpindleStatus

Source§

impl Decode for MID0010rev1

Source§

impl Decode for MID0011rev1

Source§

impl Decode for MID0011rev2

Source§

impl Decode for MID0011rev3

Source§

impl Decode for MID0011rev4

Source§

impl Decode for MID0012rev1

Source§

impl Decode for MID0013rev1

Source§

impl Decode for MID0013rev2

Source§

impl Decode for MID0014rev1

Source§

impl Decode for MID0015rev1

Source§

impl Decode for MID0015rev2

Source§

impl Decode for MID0016rev1

Source§

impl Decode for MID0017rev1

Source§

impl Decode for MID0018rev1

Source§

impl Decode for MID0019rev1

Source§

impl Decode for MID0019rev2

Source§

impl Decode for MID0020rev1

Source§

impl Decode for MID0021rev1

Source§

impl Decode for MID0022rev1

Source§

impl Decode for MID2506rev1

Source§

impl Decode for open_protocol::messages::powermacs_result::BoltData

Source§

impl Decode for MID0105rev1

Source§

impl Decode for MID0106rev1

Source§

impl Decode for MID0107rev1

Source§

impl Decode for MID0108rev1

Source§

impl Decode for MID0109rev1

Source§

impl Decode for MID1201RequestExtraData

Source§

impl Decode for MID1201SubscriptionExtraData

Source§

impl Decode for MID1201rev1

Source§

impl Decode for MID1201rev2

Source§

impl Decode for MID1201rev3

Source§

impl Decode for MID1202rev1

Source§

impl Decode for MID1202rev2

Source§

impl Decode for MID1203rev1

Source§

impl Decode for MID0060rev1

Source§

impl Decode for MID0061rev1

Source§

impl Decode for MID0061rev2

Source§

impl Decode for MID0061rev3

Source§

impl Decode for MID0062rev1

Source§

impl Decode for MID0063rev1

Source§

impl Decode for MID0064rev1

Source§

impl Decode for MID0065rev1

Source§

impl Decode for MID0066rev1

Source§

impl Decode for MID0066rev2

Source§

impl Decode for MID0067rev1

Source§

impl Decode for MID0900RequestExtraData

Source§

impl Decode for MID0900SubscribeExtraData

Source§

impl Decode for MID0900UnsubscribeExtraData

Source§

impl Decode for MID0900rev1

Source§

impl Decode for MID0900rev2

Source§

impl Decode for MID0900rev3

Source§

impl Decode for MID0901rev1

Source§

impl Decode for MID0901rev2

Source§

impl Decode for MID0901rev3

Source§

impl Decode for MID0902rev1

Source§

impl Decode for MID0080rev1

Source§

impl Decode for MID0081rev1

Source§

impl Decode for MID0082rev1

Source§

impl Decode for MID0040rev6

Source§

impl Decode for MID0041rev1

Source§

impl Decode for MID0041rev2

Source§

impl Decode for MID0042rev2

Source§

impl Decode for MID0043rev2

Source§

impl Decode for MID0044rev1

Source§

impl Decode for MID0045rev1

Source§

impl Decode for MID0045rev2

Source§

impl Decode for MID0046rev1

Source§

impl Decode for MID0047rev1

Source§

impl Decode for MID0048rev1

Source§

impl Decode for MID0110rev1

Source§

impl Decode for MID0111rev1

Source§

impl Decode for MID0113rev1

Source§

impl Decode for MID0050rev1

Source§

impl Decode for MID0051rev1

Source§

impl Decode for MID0052rev1

Source§

impl Decode for MID0052rev2

Source§

impl Decode for MID0053rev1

Source§

impl Decode for MID0054rev1

Source§

impl Decode for MID0054rev2

Source§

impl Decode for Header

Source§

impl Decode for DataField

Source§

impl Decode for TraceSample