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

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

use crate::v2_4::aom2::rules::expr_constraint::ExprConstraint;
use crate::v2_4::beom::core::expr_function_call::ExprFunctionCall;
use crate::v2_4::beom::core::expr_value_ref::ExprValueRef;
use openehr_lang::v1_1::beom::core::expr_literal::ExprLiteral;
use openehr_lang::v1_1::beom::core::expr_variable_ref::ExprVariableRef;

/// Closed subtype set of `EXPR_LEAF`, dispatched on each payload's `_type`.
///
/// Meta-type representing one of:
///
/// * a manifest constant of any primitive type;
/// * a path referring to a value in the archetype;
/// * a constraint;
/// * a variable reference.
#[doc(alias = "EXPR_LEAF")]
#[derive(Debug, Clone, PartialEq)]
pub enum ExprLeaf {
    /// The `EXPR_CONSTRAINT` subtype of `EXPR_LEAF`.
    ExprConstraint(ExprConstraint),
    /// The `EXPR_FUNCTION_CALL` subtype of `EXPR_LEAF`.
    ExprFunctionCall(ExprFunctionCall),
    /// The `EXPR_LITERAL` subtype of `EXPR_LEAF`.
    ExprLiteral(ExprLiteral),
    /// The `EXPR_VALUE_REF` subtype of `EXPR_LEAF`.
    ExprValueRef(ExprValueRef),
    /// The `EXPR_VARIABLE_REF` subtype of `EXPR_LEAF`.
    ExprVariableRef(ExprVariableRef),
}