Struct object::macho::SegmentCommand64
source · [−]#[repr(C)]pub struct SegmentCommand64<E: Endian> {
pub cmd: U32<E>,
pub cmdsize: U32<E>,
pub segname: [u8; 16],
pub vmaddr: U64<E>,
pub vmsize: U64<E>,
pub fileoff: U64<E>,
pub filesize: U64<E>,
pub maxprot: U32<E>,
pub initprot: U32<E>,
pub nsects: U32<E>,
pub flags: U32<E>,
}
Expand description
64-bit segment load command.
The 64-bit segment load command indicates that a part of this file is to be
mapped into a 64-bit task’s address space. If the 64-bit segment has
sections then Section64
structures directly follow the 64-bit segment
command and their size is reflected in cmdsize
.
Fields
cmd: U32<E>
LC_SEGMENT_64
cmdsize: U32<E>
includes sizeof section_64 structs
segname: [u8; 16]
segment name
vmaddr: U64<E>
memory address of this segment
vmsize: U64<E>
memory size of this segment
fileoff: U64<E>
file offset of this segment
filesize: U64<E>
amount to map from the file
maxprot: U32<E>
maximum VM protection
initprot: U32<E>
initial VM protection
nsects: U32<E>
number of sections in segment
flags: U32<E>
flags
Trait Implementations
sourceimpl<E: Clone + Endian> Clone for SegmentCommand64<E>
impl<E: Clone + Endian> Clone for SegmentCommand64<E>
sourcefn clone(&self) -> SegmentCommand64<E>
fn clone(&self) -> SegmentCommand64<E>
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
sourceimpl<E: Debug + Endian> Debug for SegmentCommand64<E>
impl<E: Debug + Endian> Debug for SegmentCommand64<E>
sourceimpl<Endian: Endian> Segment for SegmentCommand64<Endian>
impl<Endian: Endian> Segment for SegmentCommand64<Endian>
type Word = u64
type Endian = Endian
type Section = Section64<Self::Endian>
fn from_command(
command: LoadCommandData<'_, Self::Endian>
) -> Result<Option<(&Self, &[u8])>>
fn cmd(&self, endian: Self::Endian) -> u32
fn cmdsize(&self, endian: Self::Endian) -> u32
fn segname(&self) -> &[u8; 16]
fn vmaddr(&self, endian: Self::Endian) -> Self::Word
fn vmsize(&self, endian: Self::Endian) -> Self::Word
fn fileoff(&self, endian: Self::Endian) -> Self::Word
fn filesize(&self, endian: Self::Endian) -> Self::Word
fn maxprot(&self, endian: Self::Endian) -> u32
fn initprot(&self, endian: Self::Endian) -> u32
fn nsects(&self, endian: Self::Endian) -> u32
fn flags(&self, endian: Self::Endian) -> u32
sourcefn name(&self) -> &[u8]ⓘNotable traits for &'_ [u8]impl<'_> Read for &'_ [u8]impl<'_> Write for &'_ mut [u8]
fn name(&self) -> &[u8]ⓘNotable traits for &'_ [u8]impl<'_> Read for &'_ [u8]impl<'_> Write for &'_ mut [u8]
Return the segname
bytes up until the null terminator.
sourcefn file_range(&self, endian: Self::Endian) -> (u64, u64)
fn file_range(&self, endian: Self::Endian) -> (u64, u64)
Return the offset and size of the segment in the file.
impl<E: Copy + Endian> Copy for SegmentCommand64<E>
impl<E: Endian> Pod for SegmentCommand64<E>
Auto Trait Implementations
impl<E> RefUnwindSafe for SegmentCommand64<E> where
E: RefUnwindSafe,
impl<E> Send for SegmentCommand64<E> where
E: Send,
impl<E> Sync for SegmentCommand64<E> where
E: Sync,
impl<E> Unpin for SegmentCommand64<E> where
E: Unpin,
impl<E> UnwindSafe for SegmentCommand64<E> where
E: UnwindSafe,
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcefn clone_into(&self, target: &mut T)
fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more