// @generated by openehr-codegen from BMM (`C_SECOND_ORDER`) — DO NOT EDIT.
// SPDX-FileCopyrightText: Vernum Projecten B.V.
// SPDX-FileCopyrightText: openEHR Foundation
// SPDX-License-Identifier: Apache-2.0
// Hand-written spec functions/invariants live in the sibling `*_impl.rs`.
//! The openEHR `C_SECOND_ORDER` spec class, generated from the vendored BMM
//! meta-model.
use crate::v2_4::aom2::constraint_model::c_attribute_tuple::CAttributeTuple;
use crate::v2_4::aom2::constraint_model::c_primitive_tuple::CPrimitiveTuple;
/// Closed subtype set of `C_SECOND_ORDER`, dispatched on each payload's `_type`.
///
/// Abstract parent of classes defining second order constraints.
#[doc(alias = "C_SECOND_ORDER")]
#[derive(Debug, Clone, PartialEq)]
pub enum CSecondOrder {
/// The `C_ATTRIBUTE_TUPLE` subtype of `C_SECOND_ORDER`.
CAttributeTuple(CAttributeTuple),
/// The `C_PRIMITIVE_TUPLE` subtype of `C_SECOND_ORDER`.
CPrimitiveTuple(CPrimitiveTuple),
}