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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
//! `grapple_db` is a library designed to simplify interactions with various databases.
//! It offers a flexible architecture that allows you to select the database client you need and utilize it according to your requirements.
//! The library can be easily integrated into your project using feature flags.
// region: --- Modules
use async_trait;
// -- Modules
// endregion: --- Modules
/// Trait for paginating through stream models.
///
/// This trait provides methods to fetch the next page of items and skip
/// pages in the stream. It requires the model type to be `Send` and `Sync` for
/// safe concurrent access.
///
/// # Methods
///
/// - `next_page`: Fetches the next page of items from the stream.
/// - `skip_page`: Skips the current page in the stream without retrieving items.
/// - `skip_pages`: Skips `page_count` pages in the stream without retrieving items.
/// - `page_items`: Returns the items of the current page.