Struct idalib_sys::segment::segment_t

#[repr(C, align(8))]
pub struct segment_t { /* private fields */ }
Expand description

Describes a program segment

Implementations§

§

impl segment_t

pub unsafe fn compare(self: &segment_t, r: &segment_t) -> c_int

pub unsafe fn new() -> impl New<Output = Self>

Constructor

§

impl segment_t

pub unsafe fn is_16bit(&self) -> bool

Is a 16-bit segment?

§

impl segment_t

pub unsafe fn is_32bit(&self) -> bool

Is a 32-bit segment?

§

impl segment_t

pub unsafe fn is_64bit(&self) -> bool

Is a 64-bit segment?

§

impl segment_t

pub unsafe fn abits(&self) -> c_int

Get number of address bits

§

impl segment_t

pub unsafe fn abytes(&self) -> c_int

Get number of address bytes

§

impl segment_t

pub unsafe fn comorg(&self) -> bool

\name Segment flag: ORG directive See #SFL_COMORG @{

§

impl segment_t

pub unsafe fn set_comorg(self: Pin<&mut Self>)

§

impl segment_t

pub unsafe fn clr_comorg(self: Pin<&mut Self>)

§

impl segment_t

pub unsafe fn ob_ok(&self) -> bool

\name Segment flag: orgbase See #SFL_OBOK @{

§

impl segment_t

pub unsafe fn set_ob_ok(self: Pin<&mut Self>)

§

impl segment_t

pub unsafe fn clr_ob_ok(self: Pin<&mut Self>)

§

impl segment_t

pub unsafe fn is_visible_segm(&self) -> bool

\name Segment flag: hidden See #SFL_HIDDEN @{

§

impl segment_t

pub unsafe fn set_visible_segm(self: Pin<&mut Self>, visible: bool)

§

impl segment_t

pub unsafe fn is_debugger_segm(&self) -> bool

\name Segment flag: debugger segment See #SFL_DEBUG @{

§

impl segment_t

pub unsafe fn set_debugger_segm(self: Pin<&mut Self>, debseg: bool)

§

impl segment_t

pub unsafe fn is_loader_segm(&self) -> bool

\name Segment flag: loader segment See #SFL_LOADER @{

§

impl segment_t

pub unsafe fn set_loader_segm(self: Pin<&mut Self>, ldrseg: bool)

§

impl segment_t

pub unsafe fn is_hidden_segtype(&self) -> bool

\name Segment flag: hide segment type See #SFL_HIDETYPE @{

§

impl segment_t

pub unsafe fn set_hidden_segtype(self: Pin<&mut Self>, hide: bool)

§

impl segment_t

pub unsafe fn is_header_segm(&self) -> bool

\name Segment flag: header segment See #SFL_HEADER @{

§

impl segment_t

pub unsafe fn set_header_segm(self: Pin<&mut Self>, on: bool)

§

impl segment_t

pub unsafe fn is_ephemeral_segm(&self) -> bool

Ephemeral segments are not analyzed automatically (no flirt, no functions unless required, etc). Most likely these segments will be destroyed at the end of the debugging session unless the user changes their status.

§

impl segment_t

pub unsafe fn update(self: Pin<&mut Self>) -> bool

Update segment information. You must call this function after modification of segment characteristics. Note that not all fields of segment structure may be modified directly, there are special functions to modify some fields. \return success

Trait Implementations§

§

impl AsRef<range_t> for segment_t

§

fn as_ref(self: &segment_t) -> &range_t

Converts this type into a shared reference of the (usually inferred) input type.
§

impl CopyNew for segment_t

§

unsafe fn copy_new(other: &segment_t, this: Pin<&mut MaybeUninit<segment_t>>)

Synthesized copy constructor.

§

impl Drop for segment_t

§

fn drop(self: &mut segment_t)

Synthesized destructor.

§

impl ExternType for segment_t

§

type Id = (s, e, g, m, e, n, t, __, t)

A type-level representation of the type’s C++ namespace and type name. Read more
§

type Kind = Opaque

§

impl MakeCppStorage for segment_t

§

unsafe fn allocate_uninitialized_cpp_storage() -> *mut segment_t

Allocates heap space for this type in C++ and return a pointer to that space, but do not initialize that space (i.e. do not yet call a constructor). Read more
§

unsafe fn free_uninitialized_cpp_storage(arg0: *mut segment_t)

Frees a C++ allocation which has not yet had a constructor called. Read more
§

impl MoveNew for segment_t

§

unsafe fn move_new( other: Pin<MoveRef<'_, segment_t>>, this: Pin<&mut MaybeUninit<segment_t>>, )

Synthesized move constructor.

§

impl SharedPtrTarget for segment_t

§

impl UniquePtrTarget for segment_t

§

impl VectorElement for segment_t

§

impl WeakPtrTarget for segment_t

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

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

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

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

source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

source§

type Error = Infallible

The type returned in the event of a conversion error.
source§

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

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

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

Performs the conversion.