Radish alpha
h
Radicle Heartwood Protocol & Stack
Radicle
Git (anonymous pull)
Log in to clone via SSH
radicle: TypedId improvements
Fintan Halpenny committed 2 years ago
commit 71d4cb012880b091779a6d39ee073d8d7ea3eff3
parent 2fe0cca6d97700c4ef78c9f04b8ae52865ca9910
1 file changed +7 -1
modified radicle/src/cob.rs
@@ -21,7 +21,7 @@ pub use radicle_cob::{
pub use radicle_cob::{create, get, git, list, remove, update};

/// The exact identifier for a particular COB.
-
#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)]
+
#[derive(Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash, serde::Serialize)]
pub struct TypedId {
    /// The identifier of the COB in the store.
    pub id: ObjectId,
@@ -51,6 +51,12 @@ impl TypedId {
        self.type_name == *patch::TYPENAME
    }

+
    /// Returns `true` is the [`TypedId::type_name`] is for an
+
    /// [`identity::Identity`].
+
    pub fn is_identity(&self) -> bool {
+
        self.type_name == *identity::TYPENAME
+
    }
+

    /// Parse a [`crate::git::Namespaced`] refname into a [`TypedId`].
    ///
    /// All namespaces are stripped before parsing the suffix for the