Skip to main content

chunked_wal/api/
wal_types.rs

1//! Associated types used by the generic WAL implementation.
2
3use std::fmt::Debug;
4
5use codeq::Codec;
6
7use crate::Callback;
8
9/// Defines the concrete types used by the WAL.
10pub trait WalTypes
11where Self: Debug + Default + PartialEq + Eq + Clone + 'static
12{
13    type Action: Debug + Clone + Codec + Send + 'static;
14
15    type Checkpoint: Debug
16        + Clone
17        + PartialEq
18        + Eq
19        + Codec
20        + Send
21        + Sync
22        + 'static;
23
24    /// Callback handlers for notification of an IO operation.
25    type Callback: Callback;
26}