Skip to main content

noodles_refget/sequence/
metadata.rs

1mod alias;
2pub(crate) mod builder;
3
4pub use self::alias::Alias;
5pub(crate) use self::builder::Builder;
6
7use serde::Deserialize;
8
9/// Sequence metadata.
10#[derive(Clone, Debug, Deserialize, Eq, PartialEq)]
11pub struct Metadata {
12    md5: String,
13    ga4gh: Option<String>,
14    length: u32,
15    aliases: Vec<Alias>,
16}
17
18impl Metadata {
19    /// Returns the MD5 digest in hexadecimal.
20    pub fn md5(&self) -> &str {
21        &self.md5
22    }
23
24    /// Returns the ga4gh digest in hexadecimal.
25    pub fn ga4gh(&self) -> Option<&str> {
26        self.ga4gh.as_deref()
27    }
28
29    /// Returns the length.
30    pub fn length(&self) -> u32 {
31        self.length
32    }
33
34    /// Returns the known aliases.
35    pub fn aliases(&self) -> &[Alias] {
36        &self.aliases
37    }
38}