[−][src]Struct debugid::DebugId
Unique identifier for debug information files and their debug information.
This type is analogous to CodeId
, except that it identifies a debug file instead of the actual
library or executable. One some platforms, a DebugId
is an alias for a CodeId
but the exact
rules around this are complex. On Windows, the identifiers are completely different and refer to
separate files.
The string representation must be between 33 and 40 characters long and consist of:
- 36 character hyphenated hex representation of the UUID field
- 1-16 character lowercase hex representation of the u32 appendix
The debug identifier is compatible to Google Breakpad. Use DebugId::breakpad
to get a
breakpad string representation of this debug identifier.
Example
use std::str::FromStr; use debugid::DebugId; let id = DebugId::from_str("dfb8e43a-f242-3d73-a453-aeb6a777ef75-a")?; assert_eq!("dfb8e43a-f242-3d73-a453-aeb6a777ef75-a".to_string(), id.to_string());
Methods
impl DebugId
[src]
pub fn nil() -> Self
[src]
Constructs an empty debug identifier, containing only zeros.
pub fn from_uuid(uuid: Uuid) -> Self
[src]
Constructs a DebugId
from its uuid
.
pub fn from_parts(uuid: Uuid, appendix: u32) -> Self
[src]
Constructs a DebugId
from its uuid
and appendix
parts.
pub fn from_guid_age(guid: &[u8], age: u32) -> Result<Self, ParseDebugIdError>
[src]
Constructs a DebugId
from a Microsoft little-endian GUID and age.
pub fn from_breakpad(string: &str) -> Result<Self, ParseDebugIdError>
[src]
Parses a breakpad identifier from a string.
pub fn uuid(&self) -> Uuid
[src]
Returns the UUID part of the code module's debug_identifier.
pub fn appendix(&self) -> u32
[src]
Returns the appendix part of the code module's debug identifier.
On Windows, this is an incrementing counter to identify the build. On all other platforms, this value will always be zero.
pub fn is_nil(&self) -> bool
[src]
Returns whether this identifier is nil, i.e. it consists only of zeros.
pub fn breakpad(&self) -> BreakpadFormat
[src]
Returns a wrapper which when formatted via fmt::Display
will format a
a breakpad identifier.
Trait Implementations
impl Copy for DebugId
[src]
impl PartialEq<DebugId> for DebugId
[src]
impl Default for DebugId
[src]
impl Clone for DebugId
[src]
fn clone(&self) -> DebugId
[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]
Performs copy-assignment from source
. Read more
impl Ord for DebugId
[src]
fn cmp(&self, other: &DebugId) -> Ordering
[src]
fn max(self, other: Self) -> Self
1.21.0[src]
Compares and returns the maximum of two values. Read more
fn min(self, other: Self) -> Self
1.21.0[src]
Compares and returns the minimum of two values. Read more
fn clamp(self, min: Self, max: Self) -> Self
[src]
clamp
)Restrict a value to a certain interval. Read more
impl From<Uuid> for DebugId
[src]
impl From<(Uuid, u32)> for DebugId
[src]
impl Eq for DebugId
[src]
impl PartialOrd<DebugId> for DebugId
[src]
fn partial_cmp(&self, other: &DebugId) -> Option<Ordering>
[src]
fn lt(&self, other: &DebugId) -> bool
[src]
fn le(&self, other: &DebugId) -> bool
[src]
fn gt(&self, other: &DebugId) -> bool
[src]
fn ge(&self, other: &DebugId) -> bool
[src]
impl Display for DebugId
[src]
impl Debug for DebugId
[src]
impl Hash for DebugId
[src]
fn hash<__H: Hasher>(&self, state: &mut __H)
[src]
fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher,
1.3.0[src]
H: Hasher,
Feeds a slice of this type into the given [Hasher
]. Read more
impl FromStr for DebugId
[src]
type Err = ParseDebugIdError
The associated error which can be returned from parsing.
fn from_str(string: &str) -> Result<DebugId, ParseDebugIdError>
[src]
Auto Trait Implementations
Blanket Implementations
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T> ToString for T where
T: Display + ?Sized,
[src]
T: Display + ?Sized,
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
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.
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>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,