Struct uuid::Uuid
[−]
[src]
pub struct Uuid { // some fields omitted }
A Universally Unique Identifier (UUID)
Methods
impl Uuid
[src]
fn nil() -> Uuid
Returns a nil or empty UUID (containing all zeroes)
fn new(v: UuidVersion) -> Option<Uuid>
Create a new UUID of the specified version.
Note that not all versions can be generated currently and None
will be
returned if the specified version cannot be generated.
To generate a random UUID (UuidVersion::Random
), then the rand
feature must be enabled for this crate.
fn from_fields(d1: u32, d2: u16, d3: u16, d4: &[u8]) -> Result<Uuid, ParseError>
Creates a UUID using the supplied field values
Arguments
d1
A 32-bit wordd2
A 16-bit wordd3
A 16-bit wordd4
Array of 8 octets
Errors
This function will return an error if d4
's length is not 8 bytes.
fn from_bytes(b: &[u8]) -> Result<Uuid, ParseError>
fn get_variant(&self) -> Option<UuidVariant>
Returns the variant of the UUID structure
This determines the interpretation of the structure of the UUID. Currently only the RFC4122 variant is generated by this module.
fn get_version_num(&self) -> usize
Returns the version number of the UUID
This represents the algorithm used to generate the contents.
Currently only the Random (V4) algorithm is supported by this module. There are security and privacy implications for using older versions - see Wikipedia: Universally Unique Identifier for details.
fn get_version(&self) -> Option<UuidVersion>
Returns the version of the UUID
This represents the algorithm used to generate the contents
fn as_bytes(&self) -> &[u8; 16]
Return an array of 16 octets containing the UUID data
fn simple(&self) -> Simple
Returns a wrapper which when formatted via fmt::Display
will format a
string of 32 hexadecimal digits.
Examples
use uuid::Uuid; let uuid = Uuid::nil(); assert_eq!(uuid.simple().to_string(), "00000000000000000000000000000000");
fn hyphenated(&self) -> Hyphenated
Returns a wrapper which when formatted via fmt::Display
will format a
string of hexadecimal digits separated into gropus with a hyphen.
Examples
use uuid::Uuid; let uuid = Uuid::nil(); assert_eq!(uuid.hyphenated().to_string(), "00000000-0000-0000-0000-000000000000");
fn urn(&self) -> Urn
Returns a wrapper which when formatted via fmt::Display
will format a
string of the UUID as a full URN string.
Examples
use uuid::Uuid; let uuid = Uuid::nil(); assert_eq!(uuid.urn().to_string(), "urn:uuid:00000000-0000-0000-0000-000000000000");
fn parse_str(input: &str) -> Result<Uuid, ParseError>
Parses a UUID from a string of hexadecimal digits with optional hyphens
Any of the formats generated by this module (simple, hyphenated, urn) are supported by this parsing function.
fn is_nil(&self) -> bool
Tests if the UUID is nil
Trait Implementations
impl Ord for Uuid
[src]
fn cmp(&self, __arg_0: &Uuid) -> Ordering
This method returns an Ordering
between self
and other
. Read more
impl PartialOrd for Uuid
[src]
fn partial_cmp(&self, __arg_0: &Uuid) -> Option<Ordering>
This method returns an ordering between self
and other
values if one exists. Read more
fn lt(&self, __arg_0: &Uuid) -> bool
This method tests less than (for self
and other
) and is used by the <
operator. Read more
fn le(&self, __arg_0: &Uuid) -> bool
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
fn gt(&self, __arg_0: &Uuid) -> bool
This method tests greater than (for self
and other
) and is used by the >
operator. Read more
fn ge(&self, __arg_0: &Uuid) -> bool
This method tests greater than or equal to (for self
and other
) and is used by the >=
operator. Read more
impl Eq for Uuid
[src]
impl PartialEq for Uuid
[src]
fn eq(&self, __arg_0: &Uuid) -> bool
This method tests for self
and other
values to be equal, and is used by ==
. Read more
fn ne(&self, __arg_0: &Uuid) -> bool
This method tests for !=
.
impl Clone for Uuid
[src]
fn clone(&self) -> Uuid
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0
Performs copy-assignment from source
. Read more
impl Copy for Uuid
[src]
impl Default for Uuid
[src]
impl FromStr for Uuid
[src]
type Err = ParseError
The associated error which can be returned from parsing.
fn from_str(us: &str) -> Result<Uuid, ParseError>
Parse a hex string and interpret as a UUID
Accepted formats are a sequence of 32 hexadecimal characters, with or without hyphens (grouped as 8, 4, 4, 4, 12).
impl Debug for Uuid
[src]
impl Display for Uuid
[src]
impl Hash for Uuid
[src]
fn hash<S: Hasher>(&self, state: &mut S)
Feeds this value into the state given, updating the hasher as necessary.
fn hash_slice<H>(data: &[Self], state: &mut H) where H: Hasher
1.3.0
Feeds a slice of this type into the state provided.