Skip to main content

qubit_function/mutators/
mod.rs

1/*******************************************************************************
2 *
3 *    Copyright (c) 2025 - 2026 Haixing Hu.
4 *
5 *    SPDX-License-Identifier: Apache-2.0
6 *
7 *    Licensed under the Apache License, Version 2.0.
8 *
9 ******************************************************************************/
10//! # Mutators Module
11//!
12//! This module provides mutator-related functional programming abstractions
13//! for modifying values in-place through mutable references.
14//!
15
16pub(crate) mod macros;
17pub mod mutator;
18pub mod mutator_once;
19pub mod stateful_mutator;
20
21pub use mutator::{
22    ArcConditionalMutator,
23    ArcMutator,
24    BoxConditionalMutator,
25    BoxMutator,
26    FnMutatorOps,
27    Mutator,
28    RcConditionalMutator,
29    RcMutator,
30};
31pub use mutator_once::{
32    BoxConditionalMutatorOnce,
33    BoxMutatorOnce,
34    FnMutatorOnceOps,
35    MutatorOnce,
36};
37pub use stateful_mutator::{
38    ArcConditionalStatefulMutator,
39    ArcStatefulMutator,
40    BoxConditionalStatefulMutator,
41    BoxStatefulMutator,
42    FnMutStatefulMutatorOps,
43    RcConditionalStatefulMutator,
44    RcStatefulMutator,
45    StatefulMutator,
46};