Skip to main content

sark_core/request/frame/
mod.rs

1//! Request frame projection failure.
2
3use std::{convert, mem};
4
5use o3::mem::rc;
6
7#[doc(hidden)]
8pub mod proof;
9pub mod raw;
10mod seal;
11
12pub(super) use seal::Seal;
13
14#[repr(u8)]
15#[derive(Clone, Copy, Debug, PartialEq, Eq)]
16pub enum Error<R = convert::Infallible> {
17    Order {
18        start: usize,
19        end: usize,
20        capacity: usize,
21    },
22    Bounds {
23        start: usize,
24        end: usize,
25        capacity: usize,
26    },
27    Retain(R),
28}
29
30const _: () = {
31    assert!(mem::size_of::<Error>() == mem::size_of::<usize>() * 4);
32    assert!(mem::size_of::<Option<Error>>() == mem::size_of::<Error>());
33    assert!(mem::size_of::<Result<(), Error>>() == mem::size_of::<Error>());
34    assert!(!mem::needs_drop::<Error>());
35    assert!(mem::size_of::<Error<rc::Error>>() == mem::size_of::<Error>());
36};