twitter_tool/
user_config.rs1use crate::twitter_client::api;
2use serde::{Deserialize, Serialize};
3use std::collections::HashMap;
4
5#[derive(Clone, Debug, Default, Serialize, Deserialize)]
6pub struct UserConfig {
7 pub starred_accounts: HashMap<String, api::User>,
8}
9
10impl UserConfig {
11 pub fn is_starred(&self, user_id: &str) -> bool {
12 self.starred_accounts.contains_key(user_id)
13 }
14
15 pub fn star_account(&mut self, user: &api::User) {
16 self.starred_accounts
17 .insert(user.id.to_string(), user.clone());
18 }
19
20 pub fn unstar_account(&mut self, user: &api::User) {
21 self.starred_accounts.remove(&user.id.to_string());
22 }
23}