pub struct Marker {
pub name: String,
pub at: usize,
}Expand description
Where a place inside a function that has a name of its own ended up.
What asks for one is GNU’s address of a label in the initializer of an object with static storage duration. A label is somewhere a jump goes and a jump is a distance the assembler works out, so no ordinary label is in the symbol table at all. An image is the other case: it is in another section, so what it holds is a relocation, and a relocation names a symbol.
The name is never one the program wrote, so nothing outside this file looks it up and it is always local: it is here for a relocation in this same file to resolve against, and a linker that offered it to another file would be offering the middle of a function.
Fields§
§name: StringThe name, which is whatever the compiler minted for it.
at: usizeWhere it is, as an offset into the same bytes Extent::start is one into.
Trait Implementations§
impl Eq for Marker
impl StructuralPartialEq for Marker
Auto Trait Implementations§
impl Freeze for Marker
impl RefUnwindSafe for Marker
impl Send for Marker
impl Sync for Marker
impl Unpin for Marker
impl UnsafeUnpin for Marker
impl UnwindSafe for Marker
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.