Trait scroll::ctx::SizeWith[][src]

pub trait SizeWith<Ctx = ()> {
    fn size_with(ctx: &Ctx) -> usize;
}
[]

Gets the size of Self with a Ctx, and in Self::Units. Implementors can then call Gread related functions

The rationale behind this trait is to:

  1. Prevent gread from being used, and the offset being modified based on simply the sizeof the value, which can be a misnomer, e.g., for Leb128, etc.
  2. Allow a context based size, which is useful for 32/64 bit variants for various containers, etc.

Required methods

fn size_with(ctx: &Ctx) -> usize[src]

Implementations on Foreign Types

impl SizeWith<Endian> for u8[src][]

impl SizeWith<Endian> for i8[src][]

impl SizeWith<Endian> for u16[src][]

impl SizeWith<Endian> for i16[src][]

impl SizeWith<Endian> for u32[src][]

impl SizeWith<Endian> for i32[src][]

impl SizeWith<Endian> for u64[src][]

impl SizeWith<Endian> for i64[src][]

impl SizeWith<Endian> for u128[src][]

impl SizeWith<Endian> for i128[src][]

impl SizeWith<Endian> for f32[src][]

impl SizeWith<Endian> for f64[src][]

impl SizeWith<Endian> for usize[src][]

impl SizeWith<Endian> for isize[src][]

Implementors

impl SizeWith<Endian> for CompressionHeader

impl SizeWith<Endian> for CompressionHeader

impl SizeWith<Ctx> for CompressionHeader

impl SizeWith<Ctx> for Header

impl SizeWith<Ctx> for ProgramHeader

impl SizeWith<Endian> for ProgramHeader

impl SizeWith<Endian> for ProgramHeader

impl SizeWith<Endian> for SectionHeader

impl SizeWith<Endian> for SectionHeader

impl SizeWith<Ctx> for SectionHeader

impl SizeWith<Endian> for Sym

impl SizeWith<Endian> for Sym

impl SizeWith<Ctx> for Sym

impl SizeWith<Ctx> for Dyn

impl SizeWith<Endian> for Dyn

impl SizeWith<Endian> for Dyn

impl SizeWith<Endian> for Rela

impl SizeWith<Endian> for Rel

impl SizeWith<Endian> for Rela

impl SizeWith<Endian> for Rel

impl SizeWith<(bool, Ctx)> for Reloc

impl SizeWith<Endian> for Nhdr32

impl SizeWith<Endian> for Nhdr64

impl SizeWith<Endian> for FatHeader

impl SizeWith<Endian> for FatArch

impl SizeWith<Endian> for Header32

impl SizeWith<Endian> for Header64

impl SizeWith<Ctx> for Header

impl SizeWith<Container> for Header

impl SizeWith<Endian> for LoadCommandHeader

impl SizeWith<Endian> for Section32

impl SizeWith<Endian> for Section64

impl SizeWith<Endian> for SegmentCommand32

impl SizeWith<Endian> for SegmentCommand64

impl SizeWith<Endian> for Fvmlib

impl SizeWith<Endian> for FvmlibCommand

impl SizeWith<Endian> for Dylib

impl SizeWith<Endian> for DylibCommand

impl SizeWith<Endian> for SubFrameworkCommand

impl SizeWith<Endian> for SubClientCommand

impl SizeWith<Endian> for SubUmbrellaCommand

impl SizeWith<Endian> for SubLibraryCommand

impl SizeWith<Endian> for PreboundDylibCommand

impl SizeWith<Endian> for DylinkerCommand

impl SizeWith<Endian> for RoutinesCommand32

impl SizeWith<Endian> for RoutinesCommand64

impl SizeWith<Endian> for SymtabCommand

impl SizeWith<Endian> for DysymtabCommand

impl SizeWith<Endian> for DylibTableOfContents

impl SizeWith<Endian> for DylibModule

impl SizeWith<Endian> for DylibModule64

impl SizeWith<Endian> for DylibReference

impl SizeWith<Endian> for TwolevelHintsCommand

impl SizeWith<Endian> for TwolevelHint

impl SizeWith<Endian> for PrebindCksumCommand

impl SizeWith<Endian> for UuidCommand

impl SizeWith<Endian> for RpathCommand

impl SizeWith<Endian> for LinkeditDataCommand

impl SizeWith<Endian> for EncryptionInfoCommand32

impl SizeWith<Endian> for EncryptionInfoCommand64

impl SizeWith<Endian> for VersionMinCommand

impl SizeWith<Endian> for DyldInfoCommand

impl SizeWith<Endian> for LinkerOptionCommand

impl SizeWith<Endian> for SymsegCommand

impl SizeWith<Endian> for IdentCommand

impl SizeWith<Endian> for FvmfileCommand

impl SizeWith<Endian> for EntryPointCommand

impl SizeWith<Endian> for SourceVersionCommand

impl SizeWith<Endian> for DataInCodeEntry

impl SizeWith<Endian> for RelocationInfo

impl SizeWith<Ctx> for Section

impl<'a> SizeWith<Ctx> for Segment<'a>

impl SizeWith<Endian> for Nlist32

impl SizeWith<Endian> for Nlist64

impl SizeWith<Ctx> for Nlist

impl SizeWith<Endian> for DataDirectory

impl SizeWith<Endian> for ImageDebugDirectory

impl SizeWith<Endian> for CoffHeader

impl SizeWith<Endian> for ImportDirectoryEntry

impl SizeWith<Endian> for StandardFields32

impl SizeWith<Endian> for StandardFields64

impl SizeWith<Endian> for WindowsFields32

impl SizeWith<Endian> for WindowsFields64

impl SizeWith<Endian> for Relocation

impl SizeWith<Endian> for SectionTable

impl SizeWith<Endian> for Symbol

impl SizeWith<Endian> for AuxFunctionDefinition

impl SizeWith<Endian> for AuxBeginAndEndFunction

impl SizeWith<Endian> for AuxWeakExternal

impl SizeWith<Endian> for AuxSectionDefinition

impl SizeWith<Endian> for MemberHeader