uuid_by_string/
uuid_no_namespace.rs1#[path="./common.rs"]
2mod common;
3
4#[deprecated = "Generating UUID v3 and v5 is non-standard, see RFC-4122"]
5pub fn generate(target: &str) -> String {
6 #[allow(deprecated)]
7 generate_v5(target)
8}
9
10fn generate_common(target: &str, f: &dyn Fn(Vec<u8>) -> [u8; 16], version: u8) -> String {
11 let target_char_buffer = target.as_bytes();
12 let buffer = target_char_buffer.to_vec();
13 let result = f(buffer);
14 return common::hash_to_uuid(result, version);
15}
16
17#[deprecated = "Generating UUID v3 and v5 is non-standard, see RFC-4122"]
18pub fn generate_v3(target: &str) -> String {
19 generate_common(target, &common::md5_hash, 3)
20}
21
22#[deprecated = "Generating UUID v3 and v5 is non-standard, see RFC-4122"]
23pub fn generate_v5(target: &str) -> String {
24 generate_common(target, &common::sha1_hash, 5)
25}