feature_set/
since.rs

1use semver::Version;
2
3/// `Since` describes when a feature is added or removed.
4#[derive(Debug, Clone)]
5pub struct Since {
6    /// The date when a feature is added or removed.
7    pub(crate) date: &'static str,
8
9    /// The version when a feature is added or removed.
10    pub(crate) version: Version,
11}
12
13impl Since {
14    /// Create a new `Since` instance.
15    pub const fn new(date: &'static str, ver: (u64, u64, u64)) -> Self {
16        Self {
17            date,
18            version: Version::new(ver.0, ver.1, ver.2),
19        }
20    }
21
22    /// Get the date when a feature is added or removed.
23    pub fn date(&self) -> &'static str {
24        self.date
25    }
26
27    /// Get the version when a feature is added or removed.
28    pub fn version(&self) -> &Version {
29        &self.version
30    }
31}