rive_cache_inmemory/config.rs
1/// Configuration for an [`InMemoryCache`].
2///
3/// [`InMemoryCache`]: crate::InMemoryCache
4#[derive(Debug, Clone)]
5pub struct Config {
6 /// Whether to cache users
7 pub cache_users: bool,
8
9 /// Whether to cache servers
10 pub cache_servers: bool,
11
12 /// Whether to cache channels
13 pub cache_channels: bool,
14
15 /// Whether to cache messages
16 pub cache_messages: bool,
17
18 /// Whether to cache emojis
19 pub cache_emojis: bool,
20
21 /// Whether to cache members
22 pub cache_members: bool,
23}
24
25impl Config {
26 /// Create a new [`Config`].
27 ///
28 /// All resource caching are enabled by default.
29 ///
30 /// [`Config`]: crate::Config
31 pub const fn new() -> Self {
32 Self {
33 cache_users: true,
34 cache_servers: true,
35 cache_channels: true,
36 cache_messages: true,
37 cache_emojis: true,
38 cache_members: true,
39 }
40 }
41}
42
43impl Default for Config {
44 fn default() -> Self {
45 Self::new()
46 }
47}