1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#![allow(rust_2018_idioms)]

use super::*;

use crate::sync::Guard;

/// A handle to an ongoing pagecache transaction. Ensures
/// that any state which is removed from a shared in-memory
/// data structure is not destroyed until all possible
/// readers have concluded.
pub struct Tx<'a, PM, P, R>
where
    PM: 'a,
    P: 'static + Send + Sync,
    R: 'a,
{
    _guard: Guard,
    _pc: &'a PageCache<PM, P, R>,
}