BinRead

Trait BinRead 

Source
pub trait BinRead: Sized {
    type Args<'a>;

    // Required method
    fn read_options<R: Read + Seek>(
        reader: &mut R,
        endian: Endian,
        args: Self::Args<'_>,
    ) -> BinResult<Self>;

    // Provided methods
    fn read<R: Read + Seek>(reader: &mut R) -> BinResult<Self>
       where Self: ReadEndian,
             for<'a> Self::Args<'a>: Required { ... }
    fn read_be<R: Read + Seek>(reader: &mut R) -> BinResult<Self>
       where for<'a> Self::Args<'a>: Required { ... }
    fn read_le<R: Read + Seek>(reader: &mut R) -> BinResult<Self>
       where for<'a> Self::Args<'a>: Required { ... }
    fn read_ne<R: Read + Seek>(reader: &mut R) -> BinResult<Self>
       where for<'a> Self::Args<'a>: Required { ... }
    fn read_args<R: Read + Seek>(
        reader: &mut R,
        args: Self::Args<'_>,
    ) -> BinResult<Self>
       where Self: ReadEndian { ... }
    fn read_be_args<R: Read + Seek>(
        reader: &mut R,
        args: Self::Args<'_>,
    ) -> BinResult<Self> { ... }
    fn read_le_args<R: Read + Seek>(
        reader: &mut R,
        args: Self::Args<'_>,
    ) -> BinResult<Self> { ... }
    fn read_ne_args<R: Read + Seek>(
        reader: &mut R,
        args: Self::Args<'_>,
    ) -> BinResult<Self> { ... }
}
Expand description

The BinRead trait reads data from streams and converts it into objects.

This trait is usually derived, but can also be manually implemented by writing an appropriate Args type and read_options() function.

§Derivable

This trait can be used with #[derive] or #[binread]. Each field of a derived type must either implement BinRead or be annotated with an attribute containing a map, try_map, or parse_with directive.

Using #[binread] instead of #[derive] is required when using temporary fields.

Required Associated Types§

Source

type Args<'a>

The type used for the args parameter of read_args() and read_options().

When the given type implements Default, convenience functions like read() are enabled. BinRead implementations that don’t receive any arguments should use the () type.

When BinRead is derived, the import and import_tuple directives define this type.

Required Methods§

Source

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, args: Self::Args<'_>, ) -> BinResult<Self>

Read Self from the reader using the given Endian and arguments.

§Errors

If reading fails, an Error variant will be returned.

§Examples
struct CustomPtr32<T>(T);

impl<T> BinRead for CustomPtr32<T>
where
    for<'a> T: BinRead<Args<'a> = ()>,
{
    type Args<'a> = u64;

    fn read_options<R: Read + Seek>(
        reader: &mut R,
        endian: binrw::Endian,
        args: Self::Args<'_>,
    ) -> BinResult<Self> {
        let offset = u32::read_options(reader, endian, ())?;
        let saved_position = reader.stream_position()?;

        // Read from an offset with a provided base offset.
        reader.seek(SeekFrom::Start(args + offset as u64))?;
        let value = T::read_options(reader, endian, ())?;

        reader.seek(SeekFrom::Start(saved_position))?;

        Ok(CustomPtr32(value))
    }
}

Provided Methods§

Source

fn read<R: Read + Seek>(reader: &mut R) -> BinResult<Self>
where Self: ReadEndian, for<'a> Self::Args<'a>: Required,

Read Self from the reader using default arguments.

§Errors

If reading fails, an Error variant will be returned.

Source

fn read_be<R: Read + Seek>(reader: &mut R) -> BinResult<Self>
where for<'a> Self::Args<'a>: Required,

Read Self from the reader using default arguments and assuming big-endian byte order.

§Errors

If reading fails, an Error variant will be returned.

Source

fn read_le<R: Read + Seek>(reader: &mut R) -> BinResult<Self>
where for<'a> Self::Args<'a>: Required,

Read Self from the reader using default arguments and assuming little-endian byte order.

§Errors

If reading fails, an Error variant will be returned.

Source

fn read_ne<R: Read + Seek>(reader: &mut R) -> BinResult<Self>
where for<'a> Self::Args<'a>: Required,

Read T from the reader assuming native-endian byte order.

§Errors

If reading fails, an Error variant will be returned.

Source

fn read_args<R: Read + Seek>( reader: &mut R, args: Self::Args<'_>, ) -> BinResult<Self>
where Self: ReadEndian,

Read Self from the reader using the given arguments.

§Errors

If reading fails, an Error variant will be returned.

Source

fn read_be_args<R: Read + Seek>( reader: &mut R, args: Self::Args<'_>, ) -> BinResult<Self>

Read Self from the reader, assuming big-endian byte order, using the given arguments.

§Errors

If reading fails, an Error variant will be returned.

Source

fn read_le_args<R: Read + Seek>( reader: &mut R, args: Self::Args<'_>, ) -> BinResult<Self>

Read Self from the reader, assuming little-endian byte order, using the given arguments.

§Errors

If reading fails, an Error variant will be returned.

Source

fn read_ne_args<R: Read + Seek>( reader: &mut R, args: Self::Args<'_>, ) -> BinResult<Self>

Read T from the reader, assuming native-endian byte order, using the given arguments.

§Errors

If reading fails, an Error variant will be returned.

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 BinRead for f32

Source§

type Args<'a> = ()

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, (): Self::Args<'_>, ) -> BinResult<Self>

Source§

impl BinRead for f64

Source§

type Args<'a> = ()

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, (): Self::Args<'_>, ) -> BinResult<Self>

Source§

impl BinRead for i8

Source§

type Args<'a> = ()

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, (): Self::Args<'_>, ) -> BinResult<Self>

Source§

impl BinRead for i16

Source§

type Args<'a> = ()

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, (): Self::Args<'_>, ) -> BinResult<Self>

Source§

impl BinRead for i32

Source§

type Args<'a> = ()

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, (): Self::Args<'_>, ) -> BinResult<Self>

Source§

impl BinRead for i64

Source§

type Args<'a> = ()

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, (): Self::Args<'_>, ) -> BinResult<Self>

Source§

impl BinRead for i128

Source§

type Args<'a> = ()

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, (): Self::Args<'_>, ) -> BinResult<Self>

Source§

impl BinRead for u8

Source§

type Args<'a> = ()

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, (): Self::Args<'_>, ) -> BinResult<Self>

Source§

impl BinRead for u16

Source§

type Args<'a> = ()

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, (): Self::Args<'_>, ) -> BinResult<Self>

Source§

impl BinRead for u32

Source§

type Args<'a> = ()

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, (): Self::Args<'_>, ) -> BinResult<Self>

Source§

impl BinRead for u64

Source§

type Args<'a> = ()

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, (): Self::Args<'_>, ) -> BinResult<Self>

Source§

impl BinRead for u128

Source§

type Args<'a> = ()

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, (): Self::Args<'_>, ) -> BinResult<Self>

Source§

impl BinRead for ()

Source§

type Args<'a> = ()

Source§

fn read_options<R: Read + Seek>( _: &mut R, _: Endian, (): Self::Args<'_>, ) -> BinResult<Self>

Source§

impl BinRead for NonZeroI8

Source§

type Args<'a> = ()

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, (): Self::Args<'_>, ) -> BinResult<Self>

Source§

impl BinRead for NonZeroI16

Source§

type Args<'a> = ()

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, (): Self::Args<'_>, ) -> BinResult<Self>

Source§

impl BinRead for NonZeroI32

Source§

type Args<'a> = ()

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, (): Self::Args<'_>, ) -> BinResult<Self>

Source§

impl BinRead for NonZeroI64

Source§

type Args<'a> = ()

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, (): Self::Args<'_>, ) -> BinResult<Self>

Source§

impl BinRead for NonZeroI128

Source§

type Args<'a> = ()

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, (): Self::Args<'_>, ) -> BinResult<Self>

Source§

impl BinRead for NonZeroU8

Source§

type Args<'a> = ()

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, (): Self::Args<'_>, ) -> BinResult<Self>

Source§

impl BinRead for NonZeroU16

Source§

type Args<'a> = ()

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, (): Self::Args<'_>, ) -> BinResult<Self>

Source§

impl BinRead for NonZeroU32

Source§

type Args<'a> = ()

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, (): Self::Args<'_>, ) -> BinResult<Self>

Source§

impl BinRead for NonZeroU64

Source§

type Args<'a> = ()

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, (): Self::Args<'_>, ) -> BinResult<Self>

Source§

impl BinRead for NonZeroU128

Source§

type Args<'a> = ()

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, (): Self::Args<'_>, ) -> BinResult<Self>

Source§

impl<Args: Clone, b1: for<'a> BinRead<Args<'a> = Args>, b2: for<'a> BinRead<Args<'a> = Args>, b3: for<'a> BinRead<Args<'a> = Args>, b4: for<'a> BinRead<Args<'a> = Args>, b5: for<'a> BinRead<Args<'a> = Args>, b6: for<'a> BinRead<Args<'a> = Args>, b7: for<'a> BinRead<Args<'a> = Args>, b8: for<'a> BinRead<Args<'a> = Args>, b9: for<'a> BinRead<Args<'a> = Args>, b10: for<'a> BinRead<Args<'a> = Args>, b11: for<'a> BinRead<Args<'a> = Args>, b12: for<'a> BinRead<Args<'a> = Args>, b13: for<'a> BinRead<Args<'a> = Args>, b14: for<'a> BinRead<Args<'a> = Args>, b15: for<'a> BinRead<Args<'a> = Args>, b16: for<'a> BinRead<Args<'a> = Args>, b17: for<'a> BinRead<Args<'a> = Args>, b18: for<'a> BinRead<Args<'a> = Args>, b19: for<'a> BinRead<Args<'a> = Args>, b20: for<'a> BinRead<Args<'a> = Args>, b21: for<'a> BinRead<Args<'a> = Args>, b22: for<'a> BinRead<Args<'a> = Args>, b23: for<'a> BinRead<Args<'a> = Args>, b24: for<'a> BinRead<Args<'a> = Args>, b25: for<'a> BinRead<Args<'a> = Args>, b26: for<'a> BinRead<Args<'a> = Args>, b27: for<'a> BinRead<Args<'a> = Args>, b28: for<'a> BinRead<Args<'a> = Args>, b29: for<'a> BinRead<Args<'a> = Args>, b30: for<'a> BinRead<Args<'a> = Args>, b31: for<'a> BinRead<Args<'a> = Args>, b32: for<'a> BinRead<Args<'a> = Args>> BinRead for (b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13, b14, b15, b16, b17, b18, b19, b20, b21, b22, b23, b24, b25, b26, b27, b28, b29, b30, b31, b32)

Source§

type Args<'a> = Args

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, args: Self::Args<'_>, ) -> BinResult<Self>

Source§

impl<Args: Clone, b2: for<'a> BinRead<Args<'a> = Args>, b3: for<'a> BinRead<Args<'a> = Args>, b4: for<'a> BinRead<Args<'a> = Args>, b5: for<'a> BinRead<Args<'a> = Args>, b6: for<'a> BinRead<Args<'a> = Args>, b7: for<'a> BinRead<Args<'a> = Args>, b8: for<'a> BinRead<Args<'a> = Args>, b9: for<'a> BinRead<Args<'a> = Args>, b10: for<'a> BinRead<Args<'a> = Args>, b11: for<'a> BinRead<Args<'a> = Args>, b12: for<'a> BinRead<Args<'a> = Args>, b13: for<'a> BinRead<Args<'a> = Args>, b14: for<'a> BinRead<Args<'a> = Args>, b15: for<'a> BinRead<Args<'a> = Args>, b16: for<'a> BinRead<Args<'a> = Args>, b17: for<'a> BinRead<Args<'a> = Args>, b18: for<'a> BinRead<Args<'a> = Args>, b19: for<'a> BinRead<Args<'a> = Args>, b20: for<'a> BinRead<Args<'a> = Args>, b21: for<'a> BinRead<Args<'a> = Args>, b22: for<'a> BinRead<Args<'a> = Args>, b23: for<'a> BinRead<Args<'a> = Args>, b24: for<'a> BinRead<Args<'a> = Args>, b25: for<'a> BinRead<Args<'a> = Args>, b26: for<'a> BinRead<Args<'a> = Args>, b27: for<'a> BinRead<Args<'a> = Args>, b28: for<'a> BinRead<Args<'a> = Args>, b29: for<'a> BinRead<Args<'a> = Args>, b30: for<'a> BinRead<Args<'a> = Args>, b31: for<'a> BinRead<Args<'a> = Args>, b32: for<'a> BinRead<Args<'a> = Args>> BinRead for (b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13, b14, b15, b16, b17, b18, b19, b20, b21, b22, b23, b24, b25, b26, b27, b28, b29, b30, b31, b32)

Source§

type Args<'a> = Args

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, args: Self::Args<'_>, ) -> BinResult<Self>

Source§

impl<Args: Clone, b3: for<'a> BinRead<Args<'a> = Args>, b4: for<'a> BinRead<Args<'a> = Args>, b5: for<'a> BinRead<Args<'a> = Args>, b6: for<'a> BinRead<Args<'a> = Args>, b7: for<'a> BinRead<Args<'a> = Args>, b8: for<'a> BinRead<Args<'a> = Args>, b9: for<'a> BinRead<Args<'a> = Args>, b10: for<'a> BinRead<Args<'a> = Args>, b11: for<'a> BinRead<Args<'a> = Args>, b12: for<'a> BinRead<Args<'a> = Args>, b13: for<'a> BinRead<Args<'a> = Args>, b14: for<'a> BinRead<Args<'a> = Args>, b15: for<'a> BinRead<Args<'a> = Args>, b16: for<'a> BinRead<Args<'a> = Args>, b17: for<'a> BinRead<Args<'a> = Args>, b18: for<'a> BinRead<Args<'a> = Args>, b19: for<'a> BinRead<Args<'a> = Args>, b20: for<'a> BinRead<Args<'a> = Args>, b21: for<'a> BinRead<Args<'a> = Args>, b22: for<'a> BinRead<Args<'a> = Args>, b23: for<'a> BinRead<Args<'a> = Args>, b24: for<'a> BinRead<Args<'a> = Args>, b25: for<'a> BinRead<Args<'a> = Args>, b26: for<'a> BinRead<Args<'a> = Args>, b27: for<'a> BinRead<Args<'a> = Args>, b28: for<'a> BinRead<Args<'a> = Args>, b29: for<'a> BinRead<Args<'a> = Args>, b30: for<'a> BinRead<Args<'a> = Args>, b31: for<'a> BinRead<Args<'a> = Args>, b32: for<'a> BinRead<Args<'a> = Args>> BinRead for (b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13, b14, b15, b16, b17, b18, b19, b20, b21, b22, b23, b24, b25, b26, b27, b28, b29, b30, b31, b32)

Source§

type Args<'a> = Args

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, args: Self::Args<'_>, ) -> BinResult<Self>

Source§

impl<Args: Clone, b4: for<'a> BinRead<Args<'a> = Args>, b5: for<'a> BinRead<Args<'a> = Args>, b6: for<'a> BinRead<Args<'a> = Args>, b7: for<'a> BinRead<Args<'a> = Args>, b8: for<'a> BinRead<Args<'a> = Args>, b9: for<'a> BinRead<Args<'a> = Args>, b10: for<'a> BinRead<Args<'a> = Args>, b11: for<'a> BinRead<Args<'a> = Args>, b12: for<'a> BinRead<Args<'a> = Args>, b13: for<'a> BinRead<Args<'a> = Args>, b14: for<'a> BinRead<Args<'a> = Args>, b15: for<'a> BinRead<Args<'a> = Args>, b16: for<'a> BinRead<Args<'a> = Args>, b17: for<'a> BinRead<Args<'a> = Args>, b18: for<'a> BinRead<Args<'a> = Args>, b19: for<'a> BinRead<Args<'a> = Args>, b20: for<'a> BinRead<Args<'a> = Args>, b21: for<'a> BinRead<Args<'a> = Args>, b22: for<'a> BinRead<Args<'a> = Args>, b23: for<'a> BinRead<Args<'a> = Args>, b24: for<'a> BinRead<Args<'a> = Args>, b25: for<'a> BinRead<Args<'a> = Args>, b26: for<'a> BinRead<Args<'a> = Args>, b27: for<'a> BinRead<Args<'a> = Args>, b28: for<'a> BinRead<Args<'a> = Args>, b29: for<'a> BinRead<Args<'a> = Args>, b30: for<'a> BinRead<Args<'a> = Args>, b31: for<'a> BinRead<Args<'a> = Args>, b32: for<'a> BinRead<Args<'a> = Args>> BinRead for (b4, b5, b6, b7, b8, b9, b10, b11, b12, b13, b14, b15, b16, b17, b18, b19, b20, b21, b22, b23, b24, b25, b26, b27, b28, b29, b30, b31, b32)

Source§

type Args<'a> = Args

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, args: Self::Args<'_>, ) -> BinResult<Self>

Source§

impl<Args: Clone, b5: for<'a> BinRead<Args<'a> = Args>, b6: for<'a> BinRead<Args<'a> = Args>, b7: for<'a> BinRead<Args<'a> = Args>, b8: for<'a> BinRead<Args<'a> = Args>, b9: for<'a> BinRead<Args<'a> = Args>, b10: for<'a> BinRead<Args<'a> = Args>, b11: for<'a> BinRead<Args<'a> = Args>, b12: for<'a> BinRead<Args<'a> = Args>, b13: for<'a> BinRead<Args<'a> = Args>, b14: for<'a> BinRead<Args<'a> = Args>, b15: for<'a> BinRead<Args<'a> = Args>, b16: for<'a> BinRead<Args<'a> = Args>, b17: for<'a> BinRead<Args<'a> = Args>, b18: for<'a> BinRead<Args<'a> = Args>, b19: for<'a> BinRead<Args<'a> = Args>, b20: for<'a> BinRead<Args<'a> = Args>, b21: for<'a> BinRead<Args<'a> = Args>, b22: for<'a> BinRead<Args<'a> = Args>, b23: for<'a> BinRead<Args<'a> = Args>, b24: for<'a> BinRead<Args<'a> = Args>, b25: for<'a> BinRead<Args<'a> = Args>, b26: for<'a> BinRead<Args<'a> = Args>, b27: for<'a> BinRead<Args<'a> = Args>, b28: for<'a> BinRead<Args<'a> = Args>, b29: for<'a> BinRead<Args<'a> = Args>, b30: for<'a> BinRead<Args<'a> = Args>, b31: for<'a> BinRead<Args<'a> = Args>, b32: for<'a> BinRead<Args<'a> = Args>> BinRead for (b5, b6, b7, b8, b9, b10, b11, b12, b13, b14, b15, b16, b17, b18, b19, b20, b21, b22, b23, b24, b25, b26, b27, b28, b29, b30, b31, b32)

Source§

type Args<'a> = Args

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, args: Self::Args<'_>, ) -> BinResult<Self>

Source§

impl<Args: Clone, b6: for<'a> BinRead<Args<'a> = Args>, b7: for<'a> BinRead<Args<'a> = Args>, b8: for<'a> BinRead<Args<'a> = Args>, b9: for<'a> BinRead<Args<'a> = Args>, b10: for<'a> BinRead<Args<'a> = Args>, b11: for<'a> BinRead<Args<'a> = Args>, b12: for<'a> BinRead<Args<'a> = Args>, b13: for<'a> BinRead<Args<'a> = Args>, b14: for<'a> BinRead<Args<'a> = Args>, b15: for<'a> BinRead<Args<'a> = Args>, b16: for<'a> BinRead<Args<'a> = Args>, b17: for<'a> BinRead<Args<'a> = Args>, b18: for<'a> BinRead<Args<'a> = Args>, b19: for<'a> BinRead<Args<'a> = Args>, b20: for<'a> BinRead<Args<'a> = Args>, b21: for<'a> BinRead<Args<'a> = Args>, b22: for<'a> BinRead<Args<'a> = Args>, b23: for<'a> BinRead<Args<'a> = Args>, b24: for<'a> BinRead<Args<'a> = Args>, b25: for<'a> BinRead<Args<'a> = Args>, b26: for<'a> BinRead<Args<'a> = Args>, b27: for<'a> BinRead<Args<'a> = Args>, b28: for<'a> BinRead<Args<'a> = Args>, b29: for<'a> BinRead<Args<'a> = Args>, b30: for<'a> BinRead<Args<'a> = Args>, b31: for<'a> BinRead<Args<'a> = Args>, b32: for<'a> BinRead<Args<'a> = Args>> BinRead for (b6, b7, b8, b9, b10, b11, b12, b13, b14, b15, b16, b17, b18, b19, b20, b21, b22, b23, b24, b25, b26, b27, b28, b29, b30, b31, b32)

Source§

type Args<'a> = Args

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, args: Self::Args<'_>, ) -> BinResult<Self>

Source§

impl<Args: Clone, b7: for<'a> BinRead<Args<'a> = Args>, b8: for<'a> BinRead<Args<'a> = Args>, b9: for<'a> BinRead<Args<'a> = Args>, b10: for<'a> BinRead<Args<'a> = Args>, b11: for<'a> BinRead<Args<'a> = Args>, b12: for<'a> BinRead<Args<'a> = Args>, b13: for<'a> BinRead<Args<'a> = Args>, b14: for<'a> BinRead<Args<'a> = Args>, b15: for<'a> BinRead<Args<'a> = Args>, b16: for<'a> BinRead<Args<'a> = Args>, b17: for<'a> BinRead<Args<'a> = Args>, b18: for<'a> BinRead<Args<'a> = Args>, b19: for<'a> BinRead<Args<'a> = Args>, b20: for<'a> BinRead<Args<'a> = Args>, b21: for<'a> BinRead<Args<'a> = Args>, b22: for<'a> BinRead<Args<'a> = Args>, b23: for<'a> BinRead<Args<'a> = Args>, b24: for<'a> BinRead<Args<'a> = Args>, b25: for<'a> BinRead<Args<'a> = Args>, b26: for<'a> BinRead<Args<'a> = Args>, b27: for<'a> BinRead<Args<'a> = Args>, b28: for<'a> BinRead<Args<'a> = Args>, b29: for<'a> BinRead<Args<'a> = Args>, b30: for<'a> BinRead<Args<'a> = Args>, b31: for<'a> BinRead<Args<'a> = Args>, b32: for<'a> BinRead<Args<'a> = Args>> BinRead for (b7, b8, b9, b10, b11, b12, b13, b14, b15, b16, b17, b18, b19, b20, b21, b22, b23, b24, b25, b26, b27, b28, b29, b30, b31, b32)

Source§

type Args<'a> = Args

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, args: Self::Args<'_>, ) -> BinResult<Self>

Source§

impl<Args: Clone, b8: for<'a> BinRead<Args<'a> = Args>, b9: for<'a> BinRead<Args<'a> = Args>, b10: for<'a> BinRead<Args<'a> = Args>, b11: for<'a> BinRead<Args<'a> = Args>, b12: for<'a> BinRead<Args<'a> = Args>, b13: for<'a> BinRead<Args<'a> = Args>, b14: for<'a> BinRead<Args<'a> = Args>, b15: for<'a> BinRead<Args<'a> = Args>, b16: for<'a> BinRead<Args<'a> = Args>, b17: for<'a> BinRead<Args<'a> = Args>, b18: for<'a> BinRead<Args<'a> = Args>, b19: for<'a> BinRead<Args<'a> = Args>, b20: for<'a> BinRead<Args<'a> = Args>, b21: for<'a> BinRead<Args<'a> = Args>, b22: for<'a> BinRead<Args<'a> = Args>, b23: for<'a> BinRead<Args<'a> = Args>, b24: for<'a> BinRead<Args<'a> = Args>, b25: for<'a> BinRead<Args<'a> = Args>, b26: for<'a> BinRead<Args<'a> = Args>, b27: for<'a> BinRead<Args<'a> = Args>, b28: for<'a> BinRead<Args<'a> = Args>, b29: for<'a> BinRead<Args<'a> = Args>, b30: for<'a> BinRead<Args<'a> = Args>, b31: for<'a> BinRead<Args<'a> = Args>, b32: for<'a> BinRead<Args<'a> = Args>> BinRead for (b8, b9, b10, b11, b12, b13, b14, b15, b16, b17, b18, b19, b20, b21, b22, b23, b24, b25, b26, b27, b28, b29, b30, b31, b32)

Source§

type Args<'a> = Args

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, args: Self::Args<'_>, ) -> BinResult<Self>

Source§

impl<Args: Clone, b9: for<'a> BinRead<Args<'a> = Args>, b10: for<'a> BinRead<Args<'a> = Args>, b11: for<'a> BinRead<Args<'a> = Args>, b12: for<'a> BinRead<Args<'a> = Args>, b13: for<'a> BinRead<Args<'a> = Args>, b14: for<'a> BinRead<Args<'a> = Args>, b15: for<'a> BinRead<Args<'a> = Args>, b16: for<'a> BinRead<Args<'a> = Args>, b17: for<'a> BinRead<Args<'a> = Args>, b18: for<'a> BinRead<Args<'a> = Args>, b19: for<'a> BinRead<Args<'a> = Args>, b20: for<'a> BinRead<Args<'a> = Args>, b21: for<'a> BinRead<Args<'a> = Args>, b22: for<'a> BinRead<Args<'a> = Args>, b23: for<'a> BinRead<Args<'a> = Args>, b24: for<'a> BinRead<Args<'a> = Args>, b25: for<'a> BinRead<Args<'a> = Args>, b26: for<'a> BinRead<Args<'a> = Args>, b27: for<'a> BinRead<Args<'a> = Args>, b28: for<'a> BinRead<Args<'a> = Args>, b29: for<'a> BinRead<Args<'a> = Args>, b30: for<'a> BinRead<Args<'a> = Args>, b31: for<'a> BinRead<Args<'a> = Args>, b32: for<'a> BinRead<Args<'a> = Args>> BinRead for (b9, b10, b11, b12, b13, b14, b15, b16, b17, b18, b19, b20, b21, b22, b23, b24, b25, b26, b27, b28, b29, b30, b31, b32)

Source§

type Args<'a> = Args

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, args: Self::Args<'_>, ) -> BinResult<Self>

Source§

impl<Args: Clone, b10: for<'a> BinRead<Args<'a> = Args>, b11: for<'a> BinRead<Args<'a> = Args>, b12: for<'a> BinRead<Args<'a> = Args>, b13: for<'a> BinRead<Args<'a> = Args>, b14: for<'a> BinRead<Args<'a> = Args>, b15: for<'a> BinRead<Args<'a> = Args>, b16: for<'a> BinRead<Args<'a> = Args>, b17: for<'a> BinRead<Args<'a> = Args>, b18: for<'a> BinRead<Args<'a> = Args>, b19: for<'a> BinRead<Args<'a> = Args>, b20: for<'a> BinRead<Args<'a> = Args>, b21: for<'a> BinRead<Args<'a> = Args>, b22: for<'a> BinRead<Args<'a> = Args>, b23: for<'a> BinRead<Args<'a> = Args>, b24: for<'a> BinRead<Args<'a> = Args>, b25: for<'a> BinRead<Args<'a> = Args>, b26: for<'a> BinRead<Args<'a> = Args>, b27: for<'a> BinRead<Args<'a> = Args>, b28: for<'a> BinRead<Args<'a> = Args>, b29: for<'a> BinRead<Args<'a> = Args>, b30: for<'a> BinRead<Args<'a> = Args>, b31: for<'a> BinRead<Args<'a> = Args>, b32: for<'a> BinRead<Args<'a> = Args>> BinRead for (b10, b11, b12, b13, b14, b15, b16, b17, b18, b19, b20, b21, b22, b23, b24, b25, b26, b27, b28, b29, b30, b31, b32)

Source§

type Args<'a> = Args

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, args: Self::Args<'_>, ) -> BinResult<Self>

Source§

impl<Args: Clone, b11: for<'a> BinRead<Args<'a> = Args>, b12: for<'a> BinRead<Args<'a> = Args>, b13: for<'a> BinRead<Args<'a> = Args>, b14: for<'a> BinRead<Args<'a> = Args>, b15: for<'a> BinRead<Args<'a> = Args>, b16: for<'a> BinRead<Args<'a> = Args>, b17: for<'a> BinRead<Args<'a> = Args>, b18: for<'a> BinRead<Args<'a> = Args>, b19: for<'a> BinRead<Args<'a> = Args>, b20: for<'a> BinRead<Args<'a> = Args>, b21: for<'a> BinRead<Args<'a> = Args>, b22: for<'a> BinRead<Args<'a> = Args>, b23: for<'a> BinRead<Args<'a> = Args>, b24: for<'a> BinRead<Args<'a> = Args>, b25: for<'a> BinRead<Args<'a> = Args>, b26: for<'a> BinRead<Args<'a> = Args>, b27: for<'a> BinRead<Args<'a> = Args>, b28: for<'a> BinRead<Args<'a> = Args>, b29: for<'a> BinRead<Args<'a> = Args>, b30: for<'a> BinRead<Args<'a> = Args>, b31: for<'a> BinRead<Args<'a> = Args>, b32: for<'a> BinRead<Args<'a> = Args>> BinRead for (b11, b12, b13, b14, b15, b16, b17, b18, b19, b20, b21, b22, b23, b24, b25, b26, b27, b28, b29, b30, b31, b32)

Source§

type Args<'a> = Args

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, args: Self::Args<'_>, ) -> BinResult<Self>

Source§

impl<Args: Clone, b12: for<'a> BinRead<Args<'a> = Args>, b13: for<'a> BinRead<Args<'a> = Args>, b14: for<'a> BinRead<Args<'a> = Args>, b15: for<'a> BinRead<Args<'a> = Args>, b16: for<'a> BinRead<Args<'a> = Args>, b17: for<'a> BinRead<Args<'a> = Args>, b18: for<'a> BinRead<Args<'a> = Args>, b19: for<'a> BinRead<Args<'a> = Args>, b20: for<'a> BinRead<Args<'a> = Args>, b21: for<'a> BinRead<Args<'a> = Args>, b22: for<'a> BinRead<Args<'a> = Args>, b23: for<'a> BinRead<Args<'a> = Args>, b24: for<'a> BinRead<Args<'a> = Args>, b25: for<'a> BinRead<Args<'a> = Args>, b26: for<'a> BinRead<Args<'a> = Args>, b27: for<'a> BinRead<Args<'a> = Args>, b28: for<'a> BinRead<Args<'a> = Args>, b29: for<'a> BinRead<Args<'a> = Args>, b30: for<'a> BinRead<Args<'a> = Args>, b31: for<'a> BinRead<Args<'a> = Args>, b32: for<'a> BinRead<Args<'a> = Args>> BinRead for (b12, b13, b14, b15, b16, b17, b18, b19, b20, b21, b22, b23, b24, b25, b26, b27, b28, b29, b30, b31, b32)

Source§

type Args<'a> = Args

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, args: Self::Args<'_>, ) -> BinResult<Self>

Source§

impl<Args: Clone, b13: for<'a> BinRead<Args<'a> = Args>, b14: for<'a> BinRead<Args<'a> = Args>, b15: for<'a> BinRead<Args<'a> = Args>, b16: for<'a> BinRead<Args<'a> = Args>, b17: for<'a> BinRead<Args<'a> = Args>, b18: for<'a> BinRead<Args<'a> = Args>, b19: for<'a> BinRead<Args<'a> = Args>, b20: for<'a> BinRead<Args<'a> = Args>, b21: for<'a> BinRead<Args<'a> = Args>, b22: for<'a> BinRead<Args<'a> = Args>, b23: for<'a> BinRead<Args<'a> = Args>, b24: for<'a> BinRead<Args<'a> = Args>, b25: for<'a> BinRead<Args<'a> = Args>, b26: for<'a> BinRead<Args<'a> = Args>, b27: for<'a> BinRead<Args<'a> = Args>, b28: for<'a> BinRead<Args<'a> = Args>, b29: for<'a> BinRead<Args<'a> = Args>, b30: for<'a> BinRead<Args<'a> = Args>, b31: for<'a> BinRead<Args<'a> = Args>, b32: for<'a> BinRead<Args<'a> = Args>> BinRead for (b13, b14, b15, b16, b17, b18, b19, b20, b21, b22, b23, b24, b25, b26, b27, b28, b29, b30, b31, b32)

Source§

type Args<'a> = Args

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, args: Self::Args<'_>, ) -> BinResult<Self>

Source§

impl<Args: Clone, b14: for<'a> BinRead<Args<'a> = Args>, b15: for<'a> BinRead<Args<'a> = Args>, b16: for<'a> BinRead<Args<'a> = Args>, b17: for<'a> BinRead<Args<'a> = Args>, b18: for<'a> BinRead<Args<'a> = Args>, b19: for<'a> BinRead<Args<'a> = Args>, b20: for<'a> BinRead<Args<'a> = Args>, b21: for<'a> BinRead<Args<'a> = Args>, b22: for<'a> BinRead<Args<'a> = Args>, b23: for<'a> BinRead<Args<'a> = Args>, b24: for<'a> BinRead<Args<'a> = Args>, b25: for<'a> BinRead<Args<'a> = Args>, b26: for<'a> BinRead<Args<'a> = Args>, b27: for<'a> BinRead<Args<'a> = Args>, b28: for<'a> BinRead<Args<'a> = Args>, b29: for<'a> BinRead<Args<'a> = Args>, b30: for<'a> BinRead<Args<'a> = Args>, b31: for<'a> BinRead<Args<'a> = Args>, b32: for<'a> BinRead<Args<'a> = Args>> BinRead for (b14, b15, b16, b17, b18, b19, b20, b21, b22, b23, b24, b25, b26, b27, b28, b29, b30, b31, b32)

Source§

type Args<'a> = Args

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, args: Self::Args<'_>, ) -> BinResult<Self>

Source§

impl<Args: Clone, b15: for<'a> BinRead<Args<'a> = Args>, b16: for<'a> BinRead<Args<'a> = Args>, b17: for<'a> BinRead<Args<'a> = Args>, b18: for<'a> BinRead<Args<'a> = Args>, b19: for<'a> BinRead<Args<'a> = Args>, b20: for<'a> BinRead<Args<'a> = Args>, b21: for<'a> BinRead<Args<'a> = Args>, b22: for<'a> BinRead<Args<'a> = Args>, b23: for<'a> BinRead<Args<'a> = Args>, b24: for<'a> BinRead<Args<'a> = Args>, b25: for<'a> BinRead<Args<'a> = Args>, b26: for<'a> BinRead<Args<'a> = Args>, b27: for<'a> BinRead<Args<'a> = Args>, b28: for<'a> BinRead<Args<'a> = Args>, b29: for<'a> BinRead<Args<'a> = Args>, b30: for<'a> BinRead<Args<'a> = Args>, b31: for<'a> BinRead<Args<'a> = Args>, b32: for<'a> BinRead<Args<'a> = Args>> BinRead for (b15, b16, b17, b18, b19, b20, b21, b22, b23, b24, b25, b26, b27, b28, b29, b30, b31, b32)

Source§

type Args<'a> = Args

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, args: Self::Args<'_>, ) -> BinResult<Self>

Source§

impl<Args: Clone, b16: for<'a> BinRead<Args<'a> = Args>, b17: for<'a> BinRead<Args<'a> = Args>, b18: for<'a> BinRead<Args<'a> = Args>, b19: for<'a> BinRead<Args<'a> = Args>, b20: for<'a> BinRead<Args<'a> = Args>, b21: for<'a> BinRead<Args<'a> = Args>, b22: for<'a> BinRead<Args<'a> = Args>, b23: for<'a> BinRead<Args<'a> = Args>, b24: for<'a> BinRead<Args<'a> = Args>, b25: for<'a> BinRead<Args<'a> = Args>, b26: for<'a> BinRead<Args<'a> = Args>, b27: for<'a> BinRead<Args<'a> = Args>, b28: for<'a> BinRead<Args<'a> = Args>, b29: for<'a> BinRead<Args<'a> = Args>, b30: for<'a> BinRead<Args<'a> = Args>, b31: for<'a> BinRead<Args<'a> = Args>, b32: for<'a> BinRead<Args<'a> = Args>> BinRead for (b16, b17, b18, b19, b20, b21, b22, b23, b24, b25, b26, b27, b28, b29, b30, b31, b32)

Source§

type Args<'a> = Args

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, args: Self::Args<'_>, ) -> BinResult<Self>

Source§

impl<Args: Clone, b17: for<'a> BinRead<Args<'a> = Args>, b18: for<'a> BinRead<Args<'a> = Args>, b19: for<'a> BinRead<Args<'a> = Args>, b20: for<'a> BinRead<Args<'a> = Args>, b21: for<'a> BinRead<Args<'a> = Args>, b22: for<'a> BinRead<Args<'a> = Args>, b23: for<'a> BinRead<Args<'a> = Args>, b24: for<'a> BinRead<Args<'a> = Args>, b25: for<'a> BinRead<Args<'a> = Args>, b26: for<'a> BinRead<Args<'a> = Args>, b27: for<'a> BinRead<Args<'a> = Args>, b28: for<'a> BinRead<Args<'a> = Args>, b29: for<'a> BinRead<Args<'a> = Args>, b30: for<'a> BinRead<Args<'a> = Args>, b31: for<'a> BinRead<Args<'a> = Args>, b32: for<'a> BinRead<Args<'a> = Args>> BinRead for (b17, b18, b19, b20, b21, b22, b23, b24, b25, b26, b27, b28, b29, b30, b31, b32)

Source§

type Args<'a> = Args

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, args: Self::Args<'_>, ) -> BinResult<Self>

Source§

impl<Args: Clone, b18: for<'a> BinRead<Args<'a> = Args>, b19: for<'a> BinRead<Args<'a> = Args>, b20: for<'a> BinRead<Args<'a> = Args>, b21: for<'a> BinRead<Args<'a> = Args>, b22: for<'a> BinRead<Args<'a> = Args>, b23: for<'a> BinRead<Args<'a> = Args>, b24: for<'a> BinRead<Args<'a> = Args>, b25: for<'a> BinRead<Args<'a> = Args>, b26: for<'a> BinRead<Args<'a> = Args>, b27: for<'a> BinRead<Args<'a> = Args>, b28: for<'a> BinRead<Args<'a> = Args>, b29: for<'a> BinRead<Args<'a> = Args>, b30: for<'a> BinRead<Args<'a> = Args>, b31: for<'a> BinRead<Args<'a> = Args>, b32: for<'a> BinRead<Args<'a> = Args>> BinRead for (b18, b19, b20, b21, b22, b23, b24, b25, b26, b27, b28, b29, b30, b31, b32)

Source§

type Args<'a> = Args

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, args: Self::Args<'_>, ) -> BinResult<Self>

Source§

impl<Args: Clone, b19: for<'a> BinRead<Args<'a> = Args>, b20: for<'a> BinRead<Args<'a> = Args>, b21: for<'a> BinRead<Args<'a> = Args>, b22: for<'a> BinRead<Args<'a> = Args>, b23: for<'a> BinRead<Args<'a> = Args>, b24: for<'a> BinRead<Args<'a> = Args>, b25: for<'a> BinRead<Args<'a> = Args>, b26: for<'a> BinRead<Args<'a> = Args>, b27: for<'a> BinRead<Args<'a> = Args>, b28: for<'a> BinRead<Args<'a> = Args>, b29: for<'a> BinRead<Args<'a> = Args>, b30: for<'a> BinRead<Args<'a> = Args>, b31: for<'a> BinRead<Args<'a> = Args>, b32: for<'a> BinRead<Args<'a> = Args>> BinRead for (b19, b20, b21, b22, b23, b24, b25, b26, b27, b28, b29, b30, b31, b32)

Source§

type Args<'a> = Args

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, args: Self::Args<'_>, ) -> BinResult<Self>

Source§

impl<Args: Clone, b20: for<'a> BinRead<Args<'a> = Args>, b21: for<'a> BinRead<Args<'a> = Args>, b22: for<'a> BinRead<Args<'a> = Args>, b23: for<'a> BinRead<Args<'a> = Args>, b24: for<'a> BinRead<Args<'a> = Args>, b25: for<'a> BinRead<Args<'a> = Args>, b26: for<'a> BinRead<Args<'a> = Args>, b27: for<'a> BinRead<Args<'a> = Args>, b28: for<'a> BinRead<Args<'a> = Args>, b29: for<'a> BinRead<Args<'a> = Args>, b30: for<'a> BinRead<Args<'a> = Args>, b31: for<'a> BinRead<Args<'a> = Args>, b32: for<'a> BinRead<Args<'a> = Args>> BinRead for (b20, b21, b22, b23, b24, b25, b26, b27, b28, b29, b30, b31, b32)

Source§

type Args<'a> = Args

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, args: Self::Args<'_>, ) -> BinResult<Self>

Source§

impl<Args: Clone, b21: for<'a> BinRead<Args<'a> = Args>, b22: for<'a> BinRead<Args<'a> = Args>, b23: for<'a> BinRead<Args<'a> = Args>, b24: for<'a> BinRead<Args<'a> = Args>, b25: for<'a> BinRead<Args<'a> = Args>, b26: for<'a> BinRead<Args<'a> = Args>, b27: for<'a> BinRead<Args<'a> = Args>, b28: for<'a> BinRead<Args<'a> = Args>, b29: for<'a> BinRead<Args<'a> = Args>, b30: for<'a> BinRead<Args<'a> = Args>, b31: for<'a> BinRead<Args<'a> = Args>, b32: for<'a> BinRead<Args<'a> = Args>> BinRead for (b21, b22, b23, b24, b25, b26, b27, b28, b29, b30, b31, b32)

Source§

type Args<'a> = Args

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, args: Self::Args<'_>, ) -> BinResult<Self>

Source§

impl<Args: Clone, b22: for<'a> BinRead<Args<'a> = Args>, b23: for<'a> BinRead<Args<'a> = Args>, b24: for<'a> BinRead<Args<'a> = Args>, b25: for<'a> BinRead<Args<'a> = Args>, b26: for<'a> BinRead<Args<'a> = Args>, b27: for<'a> BinRead<Args<'a> = Args>, b28: for<'a> BinRead<Args<'a> = Args>, b29: for<'a> BinRead<Args<'a> = Args>, b30: for<'a> BinRead<Args<'a> = Args>, b31: for<'a> BinRead<Args<'a> = Args>, b32: for<'a> BinRead<Args<'a> = Args>> BinRead for (b22, b23, b24, b25, b26, b27, b28, b29, b30, b31, b32)

Source§

type Args<'a> = Args

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, args: Self::Args<'_>, ) -> BinResult<Self>

Source§

impl<Args: Clone, b23: for<'a> BinRead<Args<'a> = Args>, b24: for<'a> BinRead<Args<'a> = Args>, b25: for<'a> BinRead<Args<'a> = Args>, b26: for<'a> BinRead<Args<'a> = Args>, b27: for<'a> BinRead<Args<'a> = Args>, b28: for<'a> BinRead<Args<'a> = Args>, b29: for<'a> BinRead<Args<'a> = Args>, b30: for<'a> BinRead<Args<'a> = Args>, b31: for<'a> BinRead<Args<'a> = Args>, b32: for<'a> BinRead<Args<'a> = Args>> BinRead for (b23, b24, b25, b26, b27, b28, b29, b30, b31, b32)

Source§

type Args<'a> = Args

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, args: Self::Args<'_>, ) -> BinResult<Self>

Source§

impl<Args: Clone, b24: for<'a> BinRead<Args<'a> = Args>, b25: for<'a> BinRead<Args<'a> = Args>, b26: for<'a> BinRead<Args<'a> = Args>, b27: for<'a> BinRead<Args<'a> = Args>, b28: for<'a> BinRead<Args<'a> = Args>, b29: for<'a> BinRead<Args<'a> = Args>, b30: for<'a> BinRead<Args<'a> = Args>, b31: for<'a> BinRead<Args<'a> = Args>, b32: for<'a> BinRead<Args<'a> = Args>> BinRead for (b24, b25, b26, b27, b28, b29, b30, b31, b32)

Source§

type Args<'a> = Args

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, args: Self::Args<'_>, ) -> BinResult<Self>

Source§

impl<Args: Clone, b25: for<'a> BinRead<Args<'a> = Args>, b26: for<'a> BinRead<Args<'a> = Args>, b27: for<'a> BinRead<Args<'a> = Args>, b28: for<'a> BinRead<Args<'a> = Args>, b29: for<'a> BinRead<Args<'a> = Args>, b30: for<'a> BinRead<Args<'a> = Args>, b31: for<'a> BinRead<Args<'a> = Args>, b32: for<'a> BinRead<Args<'a> = Args>> BinRead for (b25, b26, b27, b28, b29, b30, b31, b32)

Source§

type Args<'a> = Args

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, args: Self::Args<'_>, ) -> BinResult<Self>

Source§

impl<Args: Clone, b26: for<'a> BinRead<Args<'a> = Args>, b27: for<'a> BinRead<Args<'a> = Args>, b28: for<'a> BinRead<Args<'a> = Args>, b29: for<'a> BinRead<Args<'a> = Args>, b30: for<'a> BinRead<Args<'a> = Args>, b31: for<'a> BinRead<Args<'a> = Args>, b32: for<'a> BinRead<Args<'a> = Args>> BinRead for (b26, b27, b28, b29, b30, b31, b32)

Source§

type Args<'a> = Args

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, args: Self::Args<'_>, ) -> BinResult<Self>

Source§

impl<Args: Clone, b27: for<'a> BinRead<Args<'a> = Args>, b28: for<'a> BinRead<Args<'a> = Args>, b29: for<'a> BinRead<Args<'a> = Args>, b30: for<'a> BinRead<Args<'a> = Args>, b31: for<'a> BinRead<Args<'a> = Args>, b32: for<'a> BinRead<Args<'a> = Args>> BinRead for (b27, b28, b29, b30, b31, b32)

Source§

type Args<'a> = Args

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, args: Self::Args<'_>, ) -> BinResult<Self>

Source§

impl<Args: Clone, b28: for<'a> BinRead<Args<'a> = Args>, b29: for<'a> BinRead<Args<'a> = Args>, b30: for<'a> BinRead<Args<'a> = Args>, b31: for<'a> BinRead<Args<'a> = Args>, b32: for<'a> BinRead<Args<'a> = Args>> BinRead for (b28, b29, b30, b31, b32)

Source§

type Args<'a> = Args

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, args: Self::Args<'_>, ) -> BinResult<Self>

Source§

impl<Args: Clone, b29: for<'a> BinRead<Args<'a> = Args>, b30: for<'a> BinRead<Args<'a> = Args>, b31: for<'a> BinRead<Args<'a> = Args>, b32: for<'a> BinRead<Args<'a> = Args>> BinRead for (b29, b30, b31, b32)

Source§

type Args<'a> = Args

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, args: Self::Args<'_>, ) -> BinResult<Self>

Source§

impl<Args: Clone, b30: for<'a> BinRead<Args<'a> = Args>, b31: for<'a> BinRead<Args<'a> = Args>, b32: for<'a> BinRead<Args<'a> = Args>> BinRead for (b30, b31, b32)

Source§

type Args<'a> = Args

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, args: Self::Args<'_>, ) -> BinResult<Self>

Source§

impl<Args: Clone, b31: for<'a> BinRead<Args<'a> = Args>, b32: for<'a> BinRead<Args<'a> = Args>> BinRead for (b31, b32)

Source§

type Args<'a> = Args

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, args: Self::Args<'_>, ) -> BinResult<Self>

Source§

impl<Args: Clone, b32: for<'a> BinRead<Args<'a> = Args>> BinRead for (b32,)

Source§

type Args<'a> = Args

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, args: Self::Args<'_>, ) -> BinResult<Self>

Source§

impl<B> BinRead for Vec<B>
where B: BinRead + 'static, for<'a> B::Args<'a>: Clone,

Source§

type Args<'a> = VecArgs<<B as BinRead>::Args<'a>>

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, args: Self::Args<'_>, ) -> BinResult<Self>

Source§

impl<B, const N: usize> BinRead for [B; N]
where B: BinRead, for<'a> B::Args<'a>: Clone,

Source§

type Args<'a> = <B as BinRead>::Args<'a>

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, args: Self::Args<'_>, ) -> BinResult<Self>

Source§

impl<T> BinRead for PhantomData<T>

Source§

type Args<'a> = ()

Source§

fn read_options<R: Read + Seek>( _: &mut R, _: Endian, (): Self::Args<'_>, ) -> BinResult<Self>

Source§

impl<T: BinRead> BinRead for Option<T>

Source§

type Args<'a> = <T as BinRead>::Args<'a>

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, args: Self::Args<'_>, ) -> BinResult<Self>

Source§

impl<T: BinRead> BinRead for Box<T>

Source§

type Args<'a> = <T as BinRead>::Args<'a>

Source§

fn read_options<R: Read + Seek>( reader: &mut R, endian: Endian, args: Self::Args<'_>, ) -> BinResult<Self>

Implementors§

Source§

impl BinRead for NullString

Source§

type Args<'a> = ()

Source§

impl BinRead for NullWideString

Source§

type Args<'a> = ()

Source§

impl<Ptr, Value> BinRead for FilePtr<Ptr, Value>
where Ptr: for<'a> BinRead<Args<'a> = ()> + IntoSeekFrom, Value: BinRead,

Source§

type Args<'a> = FilePtrArgs<<Value as BinRead>::Args<'a>>

Source§

impl<T: BinRead> BinRead for PosValue<T>

Source§

type Args<'a> = <T as BinRead>::Args<'a>