pub enum LocationResult {
Address(u64),
RegisterAddress {
register: u16,
offset: Option<i64>,
size: Option<u64>,
},
ComputedLocation {
steps: Vec<ComputeStep>,
},
}Expand description
Memory location results - expression produces an address to be read via bpf_probe_read_user
Variants§
Address(u64)
Absolute memory address (DW_OP_addr)
RegisterAddress
Register-based address with optional offset (DW_OP_breg*) The register value will be read from pt_regs in eBPF
ComputedLocation
Complex computed address from multi-step expression Will be evaluated step by step in eBPF
Fields
§
steps: Vec<ComputeStep>Expression that computes the final address
Implementations§
Trait Implementations§
Source§impl Clone for LocationResult
impl Clone for LocationResult
Source§fn clone(&self) -> LocationResult
fn clone(&self) -> LocationResult
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for LocationResult
impl Debug for LocationResult
Source§impl Display for LocationResult
impl Display for LocationResult
Source§impl PartialEq for LocationResult
impl PartialEq for LocationResult
impl StructuralPartialEq for LocationResult
Auto Trait Implementations§
impl Freeze for LocationResult
impl RefUnwindSafe for LocationResult
impl Send for LocationResult
impl Sync for LocationResult
impl Unpin for LocationResult
impl UnwindSafe for LocationResult
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more