arcis 0.13.2

A standard library of types and functions for writing MPC circuits with the Arcis framework.
Documentation
//! Free functions from [`std::mem`] accepted by the arcis interpreter.
//!
//! See the [parent module docs](super) for how to read this module.

const STUB_MSG: &str = "arcis::std::mem is documentation-only; \
    inside `#[encrypted]` code the interpreter intercepts the real function before this stub runs.";

/// Moves `src` into `dest`, returning the previous value of `dest`.
///
/// Mirrors [`std::mem::replace`].
pub fn replace<T>(dest: &mut T, src: T) -> T {
    unimplemented!("{STUB_MSG}")
}

/// Swaps the values of `x` and `y` without deinitializing either.
///
/// Mirrors [`std::mem::swap`].
pub fn swap<T>(x: &mut T, y: &mut T) {
    unimplemented!("{STUB_MSG}")
}