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 (`BMM_STATEMENT_ITEM`) — DO NOT EDIT.
// SPDX-FileCopyrightText: Vernum Projecten B.V.
// SPDX-FileCopyrightText: openEHR Foundation
// SPDX-License-Identifier: Apache-2.0

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

use crate::v2_4::bmm3::statement::bmm_assertion::BmmAssertion;
use crate::v2_4::bmm3::statement::bmm_assignment::BmmAssignment;
use crate::v2_4::bmm3::statement::bmm_declaration::BmmDeclaration;
use crate::v2_4::bmm3::statement::bmm_procedure_call::BmmProcedureCall;
use crate::v2_4::bmm3::statement::bmm_statement_block::BmmStatementBlock;
use openehr_lang::v1_1::bmm3::statement::bmm_action_table::BmmActionTable;

/// Closed subtype set of `BMM_STATEMENT_ITEM`, dispatched on each payload's `_type`.
///
/// Abstract parent of statement types representing a locally defined routine body.
#[doc(alias = "BMM_STATEMENT_ITEM")]
#[derive(Debug, Clone, PartialEq)]
pub enum BmmStatementItem {
    /// The `BMM_ACTION_TABLE` subtype of `BMM_STATEMENT_ITEM`.
    BmmActionTable(BmmActionTable),
    /// The `BMM_ASSERTION` subtype of `BMM_STATEMENT_ITEM`.
    BmmAssertion(BmmAssertion),
    /// The `BMM_ASSIGNMENT` subtype of `BMM_STATEMENT_ITEM`.
    BmmAssignment(BmmAssignment),
    /// The `BMM_DECLARATION` subtype of `BMM_STATEMENT_ITEM`.
    BmmDeclaration(BmmDeclaration),
    /// The `BMM_PROCEDURE_CALL` subtype of `BMM_STATEMENT_ITEM`.
    BmmProcedureCall(BmmProcedureCall),
    /// The `BMM_STATEMENT_BLOCK` subtype of `BMM_STATEMENT_ITEM`.
    BmmStatementBlock(BmmStatementBlock),
}