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),
}