fhirbolt_model/generated/r4/types/
id.rs

1// Generated on 2023-05-17 by fhirbolt-codegen v0.10.0
2#[doc = "Base StructureDefinition for id type: Any combination of letters, numerals, \"-\" and \".\", with a length limit of 64 characters.  (This might be an integer, an unprefixed OID, UUID or any other identifier pattern that meets these constraints.)  Ids are case-insensitive."]
3#[derive(Debug, Clone, PartialEq)]
4pub struct Id {
5    #[doc = "unique id for the element within a resource (for internal references)"]
6    pub r#id: Option<std::string::String>,
7    #[doc = "May be used to represent additional information that is not part of the basic definition of the resource. To make the use of extensions safe and manageable, there is a strict set of governance  applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension."]
8    pub r#extension: Vec<super::super::types::Extension>,
9    #[doc = "Primitive value for id"]
10    pub r#value: Option<std::string::String>,
11}
12#[allow(clippy::derivable_impls)]
13impl Default for Id {
14    fn default() -> Self {
15        Self {
16            r#id: Default::default(),
17            r#extension: Default::default(),
18            r#value: Default::default(),
19        }
20    }
21}
22impl<I: Into<std::string::String>> From<I> for Id {
23    fn from(v: I) -> Self {
24        Id {
25            value: Some(v.into()),
26            ..Default::default()
27        }
28    }
29}