use std::collections::BTreeMap;
use std::sync::LazyLock;
use fhir_types::schema::Schemas;
use super::{Model, TypeKind, primitive_types};
static PRIMITIVES: LazyLock<BTreeMap<&'static str, TypeKind>> =
LazyLock::new(|| primitive_types(&fhir_types::r4::schema::SCHEMAS));
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq)]
pub struct R4;
impl Model for R4 {
fn schemas(&self) -> &'static Schemas {
&fhir_types::r4::schema::SCHEMAS
}
fn primitives(&self) -> &BTreeMap<&'static str, TypeKind> {
&PRIMITIVES
}
}