Struct haybale::Location [−][src]
Fully describes a code location within the LLVM IR.
Fields
module: &'p Module
func: &'p Function
bb: &'p BasicBlock
instr: BBInstrIndex
source_loc: Option<&'p DebugLoc>
Source location which this IR location corresponds to, if available.
Implementations
impl<'p> Location<'p>
[src]
pub fn to_string_with_module(&self) -> String
[src]
Format this Location
as a string, including the full module name
pub fn to_string_no_module(&self) -> String
[src]
Format this Location
as a string, omitting the module name
pub fn to_string_short_module(&self) -> String
[src]
Format this Location
as a string, including the short module name. The
short module name is the part of the module name after the last /
, if
any; or the full module name, if the module name does not contain a /
.
Trait Implementations
impl<'p> Clone for Location<'p>
[src]
impl<'p> Debug for Location<'p>
[src]
impl<'p> Eq for Location<'p>
[src]
Our implementation of PartialEq
satisfies the requirements of Eq
impl<'p> From<Location<'p>> for LocationDescription<'p>
[src]
fn from(loc: Location<'p>) -> LocationDescription<'_>
[src]
impl<'p> Hash for Location<'p>
[src]
fn hash<H: Hasher>(&self, state: &mut H)
[src]
pub fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher,
1.3.0[src]
H: Hasher,
impl<'p> PartialEq<Location<'p>> for Location<'p>
[src]
Implementation of PartialEq
assumes that module names are unique;
that function names are unique within a module;
and that bb names are unique within a function
Auto Trait Implementations
impl<'p> RefUnwindSafe for Location<'p>
[src]
impl<'p> Send for Location<'p>
[src]
impl<'p> Sync for Location<'p>
[src]
impl<'p> Unpin for Location<'p>
[src]
impl<'p> UnwindSafe for Location<'p>
[src]
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,