1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
use fmt;
pub use UniversalAppend;
pub use ;
pub use OpenExtra;
pub use ;
pub use UniversalRead;
pub use ;
/// An arbitrary value to distinguish requests.
///
/// Batched universal I/O methods let callers to add an arbitrary user-provided
/// value to each request. This value will be passed back to the caller/callback
/// when the request completes.
///
/// Similar to `user_data` in `io_uring`, but allows arbitrary type, not just
/// `u64`.
///
/// This trait exists for documentation/code navigation purposes only.
/// Element type read from or written to a universal I/O storage.
///
/// Acts as a short alias for `bytemuck::Pod + Send`. The [`Send`] bound is
/// required because some [`UniversalRead`] implementations transfer item
/// buffers across threads (e.g. background fetch in disk-cache / future
/// async backends). All `Pod` types in practice are plain bytes and thus
/// naturally [`Send`], so the bound does not restrict realistic usage.