openehr-lang 0.0.129

openEHR LANG BMM/P_BMM object model, generated from BMM: generations v1_0 (LANG 1.0.0) and v1_1 (LANG 1.1.0, current; the stable BMM v2.x unit beside the paused BMM3 unit), plus hand-written ODIN/BEL/EL readers
Documentation
// @generated by openehr-codegen from BMM (`EL_INSTANCE_REF`) — DO NOT EDIT.
// SPDX-FileCopyrightText: Cadasto B.V.
// SPDX-FileCopyrightText: openEHR Foundation
// SPDX-License-Identifier: Apache-2.0

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

use crate::v1_0::bmm::core::feature::bmm_instantiable::BmmInstantiable;
use crate::v1_0::bmm::expression::el_function_agent::ElFunctionAgent;
use crate::v1_0::bmm::expression::el_function_call::ElFunctionCall;
use crate::v1_0::bmm::expression::el_instantiable_ref::ElInstantiableRef;
use crate::v1_0::bmm::expression::el_literal::ElLiteral;
use crate::v1_0::bmm::expression::el_procedure_agent::ElProcedureAgent;
use crate::v1_0::bmm::expression::el_self_ref::ElSelfRef;
use crate::v1_0::bmm::expression::el_tuple::ElTuple;
use crate::v1_0::bmm::expression::el_type_ref::ElTypeRef;

/// Closed subtype set of `EL_INSTANCE_REF`, dispatched on each payload's `_type`.
///
/// A reference to an instance of any kind.
#[doc(alias = "EL_INSTANCE_REF")]
#[derive(Debug, Clone, PartialEq)]
pub enum ElInstanceRef {
    /// The `EL_FUNCTION_AGENT` subtype of `EL_INSTANCE_REF`.
    ElFunctionAgent(Box<ElFunctionAgent>),
    /// The `EL_FUNCTION_CALL` subtype of `EL_INSTANCE_REF`.
    ElFunctionCall(Box<ElFunctionCall>),
    /// The `EL_INSTANTIABLE_REF` subtype of `EL_INSTANCE_REF`.
    ElInstantiableRef(Box<ElInstantiableRef<BmmInstantiable>>),
    /// The `EL_LITERAL` subtype of `EL_INSTANCE_REF`.
    ElLiteral(ElLiteral),
    /// The `EL_PROCEDURE_AGENT` subtype of `EL_INSTANCE_REF`.
    ElProcedureAgent(Box<ElProcedureAgent>),
    /// The `EL_SELF_REF` subtype of `EL_INSTANCE_REF`.
    ElSelfRef(ElSelfRef),
    /// The `EL_TUPLE` subtype of `EL_INSTANCE_REF`.
    ElTuple(ElTuple),
    /// The `EL_TYPE_REF` subtype of `EL_INSTANCE_REF`.
    ElTypeRef(ElTypeRef),
}