summaryrefslogtreecommitdiff
path: root/src/user
diff options
context:
space:
mode:
Diffstat (limited to 'src/user')
-rw-r--r--src/user/id.rs25
1 files changed, 6 insertions, 19 deletions
diff --git a/src/user/id.rs b/src/user/id.rs
index bc14c1f..3ad8d16 100644
--- a/src/user/id.rs
+++ b/src/user/id.rs
@@ -1,25 +1,12 @@
-use crate::id::Id as BaseId;
-
// Stable identifier for a User. Prefixed with `U`. Users created before March, 2025 may have an `L`
// prefix, instead.
-#[derive(Clone, Debug, Eq, PartialEq, sqlx::Type, serde::Serialize)]
-#[sqlx(transparent)]
-pub struct Id(BaseId);
-
-impl From<BaseId> for Id {
- fn from(id: BaseId) -> Self {
- Self(id)
- }
-}
+pub type Id = crate::id::Id<User>;
-impl Id {
- pub fn generate() -> Self {
- BaseId::generate("U")
- }
-}
+#[derive(Clone, Debug, Default, Eq, Hash, Ord, PartialEq, PartialOrd)]
+pub struct User;
-impl std::fmt::Display for Id {
- fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
- self.0.fmt(f)
+impl crate::id::Prefix for User {
+ fn prefix(&self) -> &'static str {
+ "U"
}
}