openehr-am 0.0.78

openEHR AM Archetype Model, generated from BMM: generations v1_4 (AM 1.4.0, ADL 1.4) and v2_4 (AM 2.4.0, ADL 2; current)
Documentation
// @generated by openehr-codegen from BMM (`P_BMM_MODEL_ELEMENT`) — DO NOT EDIT.
// SPDX-FileCopyrightText: Vernum Projecten B.V.
// SPDX-FileCopyrightText: openEHR Foundation
// SPDX-License-Identifier: Apache-2.0

//! The openEHR `P_BMM_MODEL_ELEMENT` spec class, generated from the vendored BMM
//! meta-model.

use crate::v2_4::bmm_persistence::p_bmm_class::PBmmClass;
use crate::v2_4::bmm_persistence::p_bmm_container_function_parameter::PBmmContainerFunctionParameter;
use crate::v2_4::bmm_persistence::p_bmm_container_property::PBmmContainerProperty;
use crate::v2_4::bmm_persistence::p_bmm_function::PBmmFunction;
use crate::v2_4::bmm_persistence::p_bmm_generic_function_parameter::PBmmGenericFunctionParameter;
use crate::v2_4::bmm_persistence::p_bmm_generic_parameter::PBmmGenericParameter;
use crate::v2_4::bmm_persistence::p_bmm_generic_property::PBmmGenericProperty;
use crate::v2_4::bmm_persistence::p_bmm_package::PBmmPackage;
use crate::v2_4::bmm_persistence::p_bmm_single_property::PBmmSingleProperty;
use crate::v2_4::bmm_persistence::p_bmm_single_property_open::PBmmSinglePropertyOpen;
use openehr_lang::v1_1::bmm_persistence::p_bmm_constant::PBmmConstant;
use openehr_lang::v1_1::bmm_persistence::p_bmm_single_function_parameter::PBmmSingleFunctionParameter;
use openehr_lang::v1_1::bmm_persistence::p_bmm_single_function_parameter_open::PBmmSingleFunctionParameterOpen;

/// Closed subtype set of `P_BMM_MODEL_ELEMENT`, dispatched on each payload's `_type`.
///
/// Persistent form of `BMM_MODEL_ELEMENT`.
#[doc(alias = "P_BMM_MODEL_ELEMENT")]
#[derive(Debug, Clone, PartialEq)]
pub enum PBmmModelElement {
    /// The `P_BMM_CLASS` subtype of `P_BMM_MODEL_ELEMENT`.
    PBmmClass(PBmmClass),
    /// The `P_BMM_CONSTANT` subtype of `P_BMM_MODEL_ELEMENT`.
    PBmmConstant(PBmmConstant),
    /// The `P_BMM_CONTAINER_FUNCTION_PARAMETER` subtype of `P_BMM_MODEL_ELEMENT`.
    PBmmContainerFunctionParameter(PBmmContainerFunctionParameter),
    /// The `P_BMM_CONTAINER_PROPERTY` subtype of `P_BMM_MODEL_ELEMENT`.
    PBmmContainerProperty(PBmmContainerProperty),
    /// The `P_BMM_FUNCTION` subtype of `P_BMM_MODEL_ELEMENT`.
    PBmmFunction(PBmmFunction),
    /// The `P_BMM_GENERIC_FUNCTION_PARAMETER` subtype of `P_BMM_MODEL_ELEMENT`.
    PBmmGenericFunctionParameter(PBmmGenericFunctionParameter),
    /// The `P_BMM_GENERIC_PARAMETER` subtype of `P_BMM_MODEL_ELEMENT`.
    PBmmGenericParameter(PBmmGenericParameter),
    /// The `P_BMM_GENERIC_PROPERTY` subtype of `P_BMM_MODEL_ELEMENT`.
    PBmmGenericProperty(PBmmGenericProperty),
    /// The `P_BMM_PACKAGE` subtype of `P_BMM_MODEL_ELEMENT`.
    PBmmPackage(PBmmPackage),
    /// The `P_BMM_SINGLE_FUNCTION_PARAMETER` subtype of `P_BMM_MODEL_ELEMENT`.
    PBmmSingleFunctionParameter(PBmmSingleFunctionParameter),
    /// The `P_BMM_SINGLE_FUNCTION_PARAMETER_OPEN` subtype of `P_BMM_MODEL_ELEMENT`.
    PBmmSingleFunctionParameterOpen(PBmmSingleFunctionParameterOpen),
    /// The `P_BMM_SINGLE_PROPERTY` subtype of `P_BMM_MODEL_ELEMENT`.
    PBmmSingleProperty(PBmmSingleProperty),
    /// The `P_BMM_SINGLE_PROPERTY_OPEN` subtype of `P_BMM_MODEL_ELEMENT`.
    PBmmSinglePropertyOpen(PBmmSinglePropertyOpen),
}