plexor_core/erasure/
error.rs1use std::any::TypeId;
10use thiserror::Error;
11
12#[derive(Error, Debug)]
14pub enum ErasureError {
15 #[error(
17 "Neuron type mismatch: expected payload type {expected_payload_type:?} and codec type {expected_codec_type:?}, but found payload type {actual_payload_type:?} and codec type {actual_codec_type:?}"
18 )]
19 NeuronTypeMismatch {
20 expected_payload_type: TypeId,
21 expected_codec_type: TypeId,
22 actual_payload_type: TypeId,
23 actual_codec_type: TypeId,
24 },
25
26 #[error(
28 "Payload type mismatch: expected payload type {expected_payload_type:?} and codec type {expected_codec_type:?}, but found payload type {actual_payload_type:?} and codec type {actual_codec_type:?}"
29 )]
30 PayloadTypeMismatch {
31 expected_payload_type: TypeId,
32 expected_codec_type: TypeId,
33 actual_payload_type: TypeId,
34 actual_codec_type: TypeId,
35 },
36
37 #[error(
39 "Synapse type mismatch: expected payload type {expected_payload_type:?} and codec type {expected_codec_type:?}, but found payload type {actual_payload_type:?} and codec type {actual_codec_type:?}"
40 )]
41 SynapseTypeMismatch {
42 expected_payload_type: TypeId,
43 expected_codec_type: TypeId,
44 actual_payload_type: TypeId,
45 actual_codec_type: TypeId,
46 },
47}
48
49pub type ErasureResult<T> = Result<T, ErasureError>;