[−][src]Struct uuid::builder::Builder
A builder struct for creating a Uuid
Examples
Creating a v4 Uuid
from externally generated bytes:
use uuid::{Builder, Variant, Version}; let random_bytes = rng(); let uuid = Builder::from_bytes(random_bytes) .set_variant(Variant::RFC4122) .set_version(Version::Random) .build();
Methods
impl Builder
[src]
pub fn from_bytes(b: Bytes) -> Self
[src]
Creates a Builder
using the supplied big-endian bytes.
Examples
Basic usage:
use uuid::Builder; use uuid::Bytes; let bytes: Bytes = [ 70, 235, 208, 238, 14, 109, 67, 201, 185, 13, 204, 195, 90, 145, 63, 62, ]; let mut builder = Builder::from_bytes(bytes); let uuid = builder.build().to_hyphenated().to_string(); let expected_uuid = String::from("46ebd0ee-0e6d-43c9-b90d-ccc35a913f3e"); assert_eq!(expected_uuid, uuid);
An incorrect number of bytes:
ⓘThis example deliberately fails to compile
use uuid::Builder; use uuid::Bytes; let bytes: Bytes = [4, 54, 67, 12, 43, 2, 98, 76]; // doesn't compile let uuid = Builder::from_bytes(bytes);
pub fn from_slice(b: &[u8]) -> Result<Self, BytesError>
[src]
Creates a Builder
using the supplied big-endian bytes.
Errors
This function will return an error if b
has any length other than 16.
Examples
Basic usage:
use uuid::Builder; let bytes = [4, 54, 67, 12, 43, 2, 98, 76, 32, 50, 87, 5, 1, 33, 43, 87]; let builder = Builder::from_slice(&bytes); let uuid = builder.map(|mut builder| builder.build().to_hyphenated().to_string()); let expected_uuid = Ok(String::from("0436430c-2b02-624c-2032-570501212b57")); assert_eq!(expected_uuid, uuid);
An incorrect number of bytes:
use uuid::prelude::*; use uuid::Builder; let bytes = [4, 54, 67, 12, 43, 2, 98, 76]; let builder = Builder::from_slice(&bytes); assert!(builder.is_err());
pub fn from_fields(
d1: u32,
d2: u16,
d3: u16,
d4: &[u8]
) -> Result<Self, BytesError>
[src]
d1: u32,
d2: u16,
d3: u16,
d4: &[u8]
) -> Result<Self, BytesError>
Creates a Builder
from four field values.
Errors
This function will return an error if d4
's length is not 8 bytes.
Examples
Basic usage:
use uuid::Builder; let d4 = [12, 3, 9, 56, 54, 43, 8, 9]; let builder = Builder::from_fields(42, 12, 5, &d4); let uuid = builder.map(|mut builder| builder.build().to_hyphenated().to_string()); let expected_uuid = Ok(String::from("0000002a-000c-0005-0c03-0938362b0809")); assert_eq!(expected_uuid, uuid);
An invalid length:
use uuid::prelude::*; let d4 = [12]; let builder = uuid::Builder::from_fields(42, 12, 5, &d4); assert!(builder.is_err());
pub fn nil() -> Self
[src]
Creates a Builder
with an initial Uuid::nil
Examples
Basic usage:
use uuid::Builder; let mut builder = Builder::nil(); assert_eq!( builder.build().to_hyphenated().to_string(), "00000000-0000-0000-0000-000000000000" );
pub fn set_variant(&mut self, v: Variant) -> &mut Self
[src]
Specifies the variant of the internal Uuid
.
pub fn set_version(&mut self, v: Version) -> &mut Self
[src]
Specifies the version number of the internal Uuid
.
pub fn build(&mut self) -> Uuid
[src]
Trait Implementations
Auto Trait Implementations
Blanket Implementations
impl<T, U> Into for T where
U: From<T>,
[src]
U: From<T>,
impl<T> From for T
[src]
impl<T, U> TryFrom 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> Borrow for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T, U> TryInto 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> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> SendSyncUnwindSafe for T where
T: Send + Sync + UnwindSafe + ?Sized,
[src]
T: Send + Sync + UnwindSafe + ?Sized,