Struct pprof::protos::Location [−][src]
pub struct Location { pub id: u64, pub mapping_id: u64, pub address: u64, pub line: Vec<Line>, pub is_folded: bool, }
Expand description
Describes function and line table debug information.
Fields
id: u64
Unique nonzero id for the location. A profile could use instruction addresses or any integer sequence as ids.
mapping_id: u64
The id of the corresponding profile.Mapping for this location. It can be unset if the mapping is unknown or not applicable for this profile type.
address: u64
The instruction address for this location, if available. It should be within [Mapping.memory_start…Mapping.memory_limit] for the corresponding mapping. A non-leaf address may be in the middle of a call instruction. It is up to display tools to find the beginning of the instruction if necessary.
line: Vec<Line>
Multiple line indicates this location has inlined functions, where the last entry represents the caller into which the preceding entries were inlined.
E.g., if memcpy() is inlined into printf: line[0].function_name == “memcpy” line[1].function_name == “printf”
is_folded: bool
Provides an indication that multiple symbols map to this location’s address, for example due to identical code folding by the linker. In that case the line information above represents one of the multiple symbols. This field must be recomputed when the symbolization state of the profile changes.
Trait Implementations
fn merge_field<B>(
&mut self,
tag: u32,
wire_type: WireType,
buf: &mut B,
ctx: DecodeContext
) -> Result<(), DecodeError> where
B: Buf,
Returns the encoded length of the message without a length delimiter.
Encodes the message to a buffer. Read more
Encodes the message with a length-delimiter to a buffer. Read more
Decodes an instance of the message from a buffer. Read more
fn decode_length_delimited<B>(buf: B) -> Result<Self, DecodeError> where
Self: Default,
B: Buf,
fn decode_length_delimited<B>(buf: B) -> Result<Self, DecodeError> where
Self: Default,
B: Buf,
Decodes a length-delimited instance of the message from the buffer.
Decodes an instance of the message from a buffer, and merges it into self
. Read more
Decodes a length-delimited instance of the message from buffer, and
merges it into self
. Read more
Auto Trait Implementations
impl RefUnwindSafe for Location
impl UnwindSafe for Location
Blanket Implementations
Mutably borrows from an owned value. Read more
pub fn vzip(self) -> V