openehr-lang 0.0.128

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

//! The openEHR `EL_AGENT` 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_procedure_agent::ElProcedureAgent;

/// Closed subtype set of `EL_AGENT`, dispatched on each payload's `_type`.
///
/// A delayed routine call, whose arguments may be open, partially closed or closed.
///
/// Generated by special reference to a routine, usually via a dedicated keyword, such as 'lambda' or 'agent', or other special syntax.
///
/// Instances may include closed delayed calls like `calculate_age (dob="1987-09-13", today="2019-06-03")` but also partially open calls such as `format_structure (struct=?, style=3)`, where `struct` is an open argument.
///
/// Evaluation type (i.e. type of runtime evaluated form) is `BMM_SIGNATURE`.
#[doc(alias = "EL_AGENT")]
#[derive(Debug, Clone, PartialEq)]
pub enum ElAgent {
    /// The `EL_FUNCTION_AGENT` subtype of `EL_AGENT`.
    ElFunctionAgent(ElFunctionAgent),
    /// The `EL_PROCEDURE_AGENT` subtype of `EL_AGENT`.
    ElProcedureAgent(ElProcedureAgent),
}