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}