Struct ImportObjectHeader

struct ImportObjectHeader { ... }

Fields

sig1: crate::endian::U16<crate::endian::LittleEndian>

Must be IMAGE_FILE_MACHINE_UNKNOWN

sig2: crate::endian::U16<crate::endian::LittleEndian>

Must be IMPORT_OBJECT_HDR_SIG2.

version: crate::endian::U16<crate::endian::LittleEndian>
machine: crate::endian::U16<crate::endian::LittleEndian>
time_date_stamp: crate::endian::U32<crate::endian::LittleEndian>

Time/date stamp

size_of_data: crate::endian::U32<crate::endian::LittleEndian>

particularly useful for incremental links

ordinal_or_hint: crate::endian::U16<crate::endian::LittleEndian>

if grf & IMPORT_OBJECT_ORDINAL

name_type: crate::endian::U16<crate::endian::LittleEndian>

Implementations

impl pe::ImportObjectHeader

fn parse<'data, R: ReadRef<'data>>(data: R, offset: &mut u64) -> Result<&'data Self>

Read the short import header.

Also checks that the signature and version are valid. Directly following this header will be the string data.

fn parse_data<'data, R: ReadRef<'data>>(self: &Self, data: R, offset: &mut u64) -> Result<ImportObjectData<'data>>

Parse the data following the header.

fn import_type(self: &Self) -> u16

The type of import.

This is one of the IMPORT_OBJECT_* constants.

fn name_type(self: &Self) -> u16

The type of import name.

This is one of the IMPORT_OBJECT_* constants.

impl Clone for ImportObjectHeader

fn clone(self: &Self) -> ImportObjectHeader

impl Copy for ImportObjectHeader

impl Debug for ImportObjectHeader

fn fmt(self: &Self, f: &mut $crate::fmt::Formatter<'_>) -> $crate::fmt::Result

impl Freeze for ImportObjectHeader

impl Pod for ImportObjectHeader

impl RefUnwindSafe for ImportObjectHeader

impl Send for ImportObjectHeader

impl Sync for ImportObjectHeader

impl Unpin for ImportObjectHeader

impl UnwindSafe for ImportObjectHeader

impl<T> Any for ImportObjectHeader

fn type_id(self: &Self) -> TypeId

impl<T> Borrow for ImportObjectHeader

fn borrow(self: &Self) -> &T

impl<T> BorrowMut for ImportObjectHeader

fn borrow_mut(self: &mut Self) -> &mut T

impl<T> CloneToUninit for ImportObjectHeader

unsafe fn clone_to_uninit(self: &Self, dest: *mut u8)

impl<T> From for ImportObjectHeader

fn from(t: T) -> T

Returns the argument unchanged.

impl<T> ToOwned for ImportObjectHeader

fn to_owned(self: &Self) -> T
fn clone_into(self: &Self, target: &mut T)

impl<T, U> Into for ImportObjectHeader

fn into(self: Self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of [From]<T> for U chooses to do.

impl<T, U> TryFrom for ImportObjectHeader

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

impl<T, U> TryInto for ImportObjectHeader

fn try_into(self: Self) -> Result<U, <U as TryFrom<T>>::Error>