///|
pub fn demo_uuid_library() -> Unit {
println("=== UUID Library Demo ===")
println(demo())
println("\n=== Additional Examples ===")
// Generate some UUIDs of different versions
let v4_uuid = v4()
let v7_uuid = v7()
println("Random UUID (v4): " + v4_uuid.to_string())
println("Time-ordered UUID (v7): " + v7_uuid.to_string())
// Name-based UUIDs
let v3_uuid = v3(ns_dns, "example.com")
let v5_uuid = v5(ns_dns, "example.com")
println("Name-based UUID v3 (DNS + example.com): " + v3_uuid.to_string())
println("Name-based UUID v5 (DNS + example.com): " + v5_uuid.to_string())
// Custom UUID
let custom_data : FixedArray[Byte] = FixedArray::make(16, b'\x42')
let v8_uuid = v8(custom_data)
println("Custom UUID (v8): " + v8_uuid.to_string())
println("\n=== Testing String Parsing ===")
let uuid_str = v4_uuid.to_string()
match from_string(uuid_str) {
Some(parsed) =>
if parsed == v4_uuid {
println("✓ String parsing works correctly")
} else {
println("✗ String parsing failed")
}
None => println("✗ Failed to parse UUID string")
}
}