nominal_api_conjure/conjure/objects/module/
module_version.rs1#[derive(
2 Debug,
3 Clone,
4 conjure_object::serde::Deserialize,
5 conjure_object::serde::Serialize,
6 PartialEq,
7 Eq,
8 PartialOrd,
9 Ord,
10 Hash,
11 Default,
12 conjure_object::log_safety::derive::LogSafe
13)]
14#[serde(crate = "conjure_object::serde", transparent)]
15pub struct ModuleVersion(#[assert_is_safe] pub String);
16impl std::fmt::Display for ModuleVersion {
17 fn fmt(&self, fmt: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
18 std::fmt::Display::fmt(&self.0, fmt)
19 }
20}
21impl conjure_object::Plain for ModuleVersion {
22 fn fmt(&self, fmt: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
23 conjure_object::Plain::fmt(&self.0, fmt)
24 }
25}
26impl conjure_object::FromPlain for ModuleVersion {
27 type Err = <String as conjure_object::FromPlain>::Err;
28 #[inline]
29 fn from_plain(s: &str) -> Result<ModuleVersion, Self::Err> {
30 conjure_object::FromPlain::from_plain(s).map(ModuleVersion)
31 }
32}
33impl std::convert::From<String> for ModuleVersion {
34 #[inline]
35 fn from(v: String) -> Self {
36 ModuleVersion(std::convert::From::from(v))
37 }
38}
39impl std::ops::Deref for ModuleVersion {
40 type Target = String;
41 #[inline]
42 fn deref(&self) -> &String {
43 &self.0
44 }
45}
46impl std::ops::DerefMut for ModuleVersion {
47 #[inline]
48 fn deref_mut(&mut self) -> &mut String {
49 &mut self.0
50 }
51}
52impl std::convert::AsRef<String> for ModuleVersion {
53 #[inline]
54 fn as_ref(&self) -> &String {
55 &self.0
56 }
57}