# Simple Labeled IDs Simple IDs with associated type labels. ```rust use slid::Id; struct User; let player_a = Id::::new_random(); let player_b = Id::::new_random(); // For all practical purposes, we can assume that 2 random IDs will be unique and different assert_ne!(player_a, player_b); // The label generic helps avoid mixups: struct Product; fn delete_product(id: Id) {} // Doesn't compile, because Id and Id are different // delete_product(player_a); // But you can explicitly cast the label if needed: delete_product(player_a.cast_label()); ``` # Alternatives Note: this library does *not* attempt conform to any UUID standards. Random IDs are plain simple random. If you want the standardized UUIDs, check out [`uuid`](https://crates.io/crates/uuid)