Vendor things
This commit is contained in:
parent
5deceec006
commit
977e3c17e5
19434 changed files with 10682014 additions and 0 deletions
93
third-party/vendor/uuid/README.md
vendored
Normal file
93
third-party/vendor/uuid/README.md
vendored
Normal file
|
|
@ -0,0 +1,93 @@
|
|||
# `uuid`
|
||||
|
||||
[](https://crates.io/crates/uuid)
|
||||
[](https://github.com/uuid-rs/uuid/actions/workflows/ci.yml)
|
||||
|
||||
Here's an example of a UUID:
|
||||
|
||||
```text
|
||||
67e55044-10b1-426f-9247-bb680e5fe0c8
|
||||
```
|
||||
|
||||
A UUID is a unique 128-bit value, stored as 16 octets, and regularly
|
||||
formatted as a hex string in five groups. UUIDs are used to assign unique
|
||||
identifiers to entities without requiring a central allocating authority.
|
||||
|
||||
They are particularly useful in distributed systems, though can be used in
|
||||
disparate areas, such as databases and network protocols. Typically a UUID
|
||||
is displayed in a readable string form as a sequence of hexadecimal digits,
|
||||
separated into groups by hyphens.
|
||||
|
||||
The uniqueness property is not strictly guaranteed, however for all
|
||||
practical purposes, it can be assumed that an unintentional collision would
|
||||
be extremely unlikely.
|
||||
|
||||
## Getting started
|
||||
|
||||
Add the following to your `Cargo.toml`:
|
||||
|
||||
```toml
|
||||
[dependencies.uuid]
|
||||
version = "1.7.0"
|
||||
features = [
|
||||
"v4", # Lets you generate random UUIDs
|
||||
"fast-rng", # Use a faster (but still sufficiently random) RNG
|
||||
"macro-diagnostics", # Enable better diagnostics for compile-time UUIDs
|
||||
]
|
||||
```
|
||||
|
||||
When you want a UUID, you can generate one:
|
||||
|
||||
```rust
|
||||
use uuid::Uuid;
|
||||
|
||||
let id = Uuid::new_v4();
|
||||
```
|
||||
|
||||
If you have a UUID value, you can use its string literal form inline:
|
||||
|
||||
```rust
|
||||
use uuid::{uuid, Uuid};
|
||||
|
||||
const ID: Uuid = uuid!("67e55044-10b1-426f-9247-bb680e5fe0c8");
|
||||
```
|
||||
|
||||
You can also parse UUIDs without needing any crate features:
|
||||
|
||||
```rust
|
||||
use uuid::{Uuid, Version};
|
||||
|
||||
let my_uuid = Uuid::parse_str("67e55044-10b1-426f-9247-bb680e5fe0c8")?;
|
||||
|
||||
assert_eq!(Some(Version::Random), my_uuid.get_version());
|
||||
```
|
||||
|
||||
If you'd like to parse UUIDs _really_ fast, check out the [`uuid-simd`](https://github.com/nugine/uuid-simd)
|
||||
library.
|
||||
|
||||
For more details on using `uuid`, [see the library documentation](https://docs.rs/uuid/1.7.0/uuid).
|
||||
|
||||
## References
|
||||
|
||||
* [`uuid` library docs](https://docs.rs/uuid/1.7.0/uuid).
|
||||
* [Wikipedia: Universally Unique Identifier](http://en.wikipedia.org/wiki/Universally_unique_identifier).
|
||||
* [RFC4122: A Universally Unique IDentifier (UUID) URN Namespace](http://tools.ietf.org/html/rfc4122).
|
||||
|
||||
---
|
||||
# License
|
||||
|
||||
Licensed under either of
|
||||
|
||||
* Apache License, Version 2.0, (LICENSE-APACHE or https://www.apache.org/licenses/LICENSE-2.0)
|
||||
* MIT license (LICENSE-MIT or https://opensource.org/licenses/MIT)
|
||||
|
||||
at your option.
|
||||
|
||||
|
||||
[](https://app.fossa.com/projects/git%2Bgithub.com%2Fuuid-rs%2Fuuid?ref=badge_large)
|
||||
|
||||
## Contribution
|
||||
|
||||
Unless you explicitly state otherwise, any contribution intentionally submitted
|
||||
for inclusion in the work by you, as defined in the Apache-2.0 license, shall
|
||||
be dual licensed as above, without any additional terms or conditions.
|
||||
Loading…
Add table
Add a link
Reference in a new issue