arcium-core-utils 0.7.3

Arcium core utils
Documentation
use crate::{
    circuit::{
        v1::ops::{FieldPlaintextBinaryOp, FieldPlaintextUnaryOp},
        v2::errors::CircuitError,
    },
    config::MpcConfig,
};

#[derive(Debug, Clone, PartialEq, Eq, thiserror::Error)]
pub enum OpsConversionError {
    #[error("Cannot transform FieldPlaintextUnaryOp {0:?} into BitPlaintextUnaryOp")]
    PlaintextUnaryOpFieldToBit(FieldPlaintextUnaryOp),
    #[error("Cannot transform FieldPlaintextBinaryOp {0:?} into BitPlaintextBinaryOp")]
    PlaintextBinaryOpFieldToBit(FieldPlaintextBinaryOp),
}

#[derive(Debug, Clone, PartialEq, Eq, thiserror::Error)]
pub enum ConversionErrorToV2<C: MpcConfig> {
    #[error("{0}")]
    OpsConversionError(#[from] OpsConversionError),
    #[error("{0}")]
    CircuitError(#[from] CircuitError<C>),
    #[error("Deserialization error: {0}")]
    Deserialization(String),
}