// @generated by openehr-codegen from BMM (`EL_FEATURE_REF`) — DO NOT EDIT.
// SPDX-FileCopyrightText: Cadasto B.V.
// SPDX-FileCopyrightText: openEHR Foundation
// SPDX-License-Identifier: Apache-2.0
//! The openEHR `EL_FEATURE_REF` spec class, generated from the vendored BMM
//! meta-model.
use crate::v1_1::bmm3::expression::el_function_agent::ElFunctionAgent;
use crate::v1_1::bmm3::expression::el_function_call::ElFunctionCall;
use crate::v1_1::bmm3::expression::el_procedure_agent::ElProcedureAgent;
use crate::v1_1::bmm3::expression::el_property_ref::ElPropertyRef;
use crate::v1_1::bmm3::expression::el_static_ref::ElStaticRef;
/// Closed subtype set of `EL_FEATURE_REF`, dispatched on each payload's `_type`.
///
/// A reference that is scoped by a containing entity and requires a context qualifier if it is not the currently scoping entity.
#[doc(alias = "EL_FEATURE_REF")]
#[derive(Debug, Clone, PartialEq)]
pub enum ElFeatureRef {
/// The `EL_FUNCTION_AGENT` subtype of `EL_FEATURE_REF`.
ElFunctionAgent(ElFunctionAgent),
/// The `EL_FUNCTION_CALL` subtype of `EL_FEATURE_REF`.
ElFunctionCall(ElFunctionCall),
/// The `EL_PROCEDURE_AGENT` subtype of `EL_FEATURE_REF`.
ElProcedureAgent(ElProcedureAgent),
/// The `EL_PROPERTY_REF` subtype of `EL_FEATURE_REF`.
ElPropertyRef(ElPropertyRef),
/// The `EL_STATIC_REF` subtype of `EL_FEATURE_REF`.
ElStaticRef(ElStaticRef),
}