summaryrefslogtreecommitdiff
path: root/crates/vcs_data/src/data/member.rs
diff options
context:
space:
mode:
author魏曹先生 <1992414357@qq.com>2026-01-12 04:28:28 +0800
committer魏曹先生 <1992414357@qq.com>2026-01-12 04:51:34 +0800
commitc5fb22694e95f12c24b8d8af76999be7aea3fcec (patch)
tree399d8a24ce491fb635f3d09f2123290fe784059e /crates/vcs_data/src/data/member.rs
parent444754489aca0454eb54e15a49fb8a6db0b68a07 (diff)
Reorganize crate structure and move documentation files
Diffstat (limited to 'crates/vcs_data/src/data/member.rs')
-rw-r--r--crates/vcs_data/src/data/member.rs71
1 files changed, 0 insertions, 71 deletions
diff --git a/crates/vcs_data/src/data/member.rs b/crates/vcs_data/src/data/member.rs
deleted file mode 100644
index 7e99488..0000000
--- a/crates/vcs_data/src/data/member.rs
+++ /dev/null
@@ -1,71 +0,0 @@
-use std::collections::HashMap;
-
-use cfg_file::ConfigFile;
-use serde::{Deserialize, Serialize};
-use string_proc::snake_case;
-
-pub type MemberId = String;
-
-#[derive(Debug, Eq, Clone, ConfigFile, Serialize, Deserialize)]
-pub struct Member {
- /// Member ID, the unique identifier of the member
- #[serde(rename = "id")]
- id: String,
-
- /// Member metadata
- #[serde(rename = "meta")]
- metadata: HashMap<String, String>,
-}
-
-impl Default for Member {
- fn default() -> Self {
- Self::new("default_user")
- }
-}
-
-impl PartialEq for Member {
- fn eq(&self, other: &Self) -> bool {
- self.id == other.id
- }
-}
-
-impl std::fmt::Display for Member {
- fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
- write!(f, "{}", self.id)
- }
-}
-
-impl std::convert::AsRef<str> for Member {
- fn as_ref(&self) -> &str {
- &self.id
- }
-}
-
-impl Member {
- /// Create member struct by id
- pub fn new(new_id: impl Into<String>) -> Self {
- Self {
- id: snake_case!(new_id.into()),
- metadata: HashMap::new(),
- }
- }
-
- /// Get member id
- pub fn id(&self) -> String {
- self.id.clone()
- }
-
- /// Get metadata
- pub fn metadata(&self, key: impl Into<String>) -> Option<&String> {
- self.metadata.get(&key.into())
- }
-
- /// Set metadata
- pub fn set_metadata(
- &mut self,
- key: impl AsRef<str>,
- value: impl Into<String>,
- ) -> Option<String> {
- self.metadata.insert(key.as_ref().to_string(), value.into())
- }
-}