pub struct Mysql {
pub pool: MySqlPool,
}Fields§
§pool: MySqlPoolTrait Implementations§
Source§impl Database for Mysql
impl Database for Mysql
Source§fn get_user_tracker_key<'life0, 'async_trait>(
&'life0 self,
user_id: i64,
) -> Pin<Box<dyn Future<Output = Option<TrackerKey>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_user_tracker_key<'life0, 'async_trait>(
&'life0 self,
user_id: i64,
) -> Pin<Box<dyn Future<Output = Option<TrackerKey>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Gets User Tracker Key
§Panics
Will panic if the input time overflows the u64 seconds overflows the i64 type.
(this will naturally happen in 292.5 billion years)
Source§fn get_database_driver(&self) -> Driver
fn get_database_driver(&self) -> Driver
Return current database driver.
fn new<'life0, 'async_trait>(
database_url: &'life0 str,
) -> Pin<Box<dyn Future<Output = Self> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Source§fn insert_user_and_get_id<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
username: &'life1 str,
email: &'life2 str,
password_hash: &'life3 str,
) -> Pin<Box<dyn Future<Output = Result<i64, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
fn insert_user_and_get_id<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
username: &'life1 str,
email: &'life2 str,
password_hash: &'life3 str,
) -> Pin<Box<dyn Future<Output = Result<i64, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
Add new user and return the newly inserted
user_id.Source§fn get_user_from_id<'life0, 'async_trait>(
&'life0 self,
user_id: i64,
) -> Pin<Box<dyn Future<Output = Result<User, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_user_from_id<'life0, 'async_trait>(
&'life0 self,
user_id: i64,
) -> Pin<Box<dyn Future<Output = Result<User, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get
User from user_id.Source§fn get_user_authentication_from_id<'life0, 'async_trait>(
&'life0 self,
user_id: UserId,
) -> Pin<Box<dyn Future<Output = Result<UserAuthentication, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_user_authentication_from_id<'life0, 'async_trait>(
&'life0 self,
user_id: UserId,
) -> Pin<Box<dyn Future<Output = Result<UserAuthentication, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get
UserAuthentication from user_id.Source§fn get_user_profile_from_username<'life0, 'life1, 'async_trait>(
&'life0 self,
username: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<UserProfile, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get_user_profile_from_username<'life0, 'life1, 'async_trait>(
&'life0 self,
username: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<UserProfile, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Get
UserProfile from username.Source§fn get_user_compact_from_id<'life0, 'async_trait>(
&'life0 self,
user_id: i64,
) -> Pin<Box<dyn Future<Output = Result<UserCompact, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_user_compact_from_id<'life0, 'async_trait>(
&'life0 self,
user_id: i64,
) -> Pin<Box<dyn Future<Output = Result<UserCompact, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get
UserCompact from user_id.Source§fn count_users<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<i64, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn count_users<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<i64, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get total user count.
Source§fn ban_user<'life0, 'life1, 'async_trait>(
&'life0 self,
user_id: i64,
reason: &'life1 str,
date_expiry: NaiveDateTime,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn ban_user<'life0, 'life1, 'async_trait>(
&'life0 self,
user_id: i64,
reason: &'life1 str,
date_expiry: NaiveDateTime,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Ban user with
user_id, reason and date_expiry.Source§fn grant_admin_role<'life0, 'async_trait>(
&'life0 self,
user_id: i64,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn grant_admin_role<'life0, 'async_trait>(
&'life0 self,
user_id: i64,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Grant a user the administrator role.
Source§fn verify_email<'life0, 'async_trait>(
&'life0 self,
user_id: i64,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn verify_email<'life0, 'async_trait>(
&'life0 self,
user_id: i64,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Verify a user’s email with
user_id.Source§fn add_tracker_key<'life0, 'life1, 'async_trait>(
&'life0 self,
user_id: i64,
tracker_key: &'life1 TrackerKey,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn add_tracker_key<'life0, 'life1, 'async_trait>(
&'life0 self,
user_id: i64,
tracker_key: &'life1 TrackerKey,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Link a
TrackerKey to a certain user with user_id.Source§fn delete_user<'life0, 'async_trait>(
&'life0 self,
user_id: i64,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn delete_user<'life0, 'async_trait>(
&'life0 self,
user_id: i64,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Delete user and all related user data with
user_id.Source§fn insert_category_and_get_id<'life0, 'life1, 'async_trait>(
&'life0 self,
category_name: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<i64, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn insert_category_and_get_id<'life0, 'life1, 'async_trait>(
&'life0 self,
category_name: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<i64, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Add a new category and return
category_id.Source§fn get_category_from_id<'life0, 'async_trait>(
&'life0 self,
category_id: i64,
) -> Pin<Box<dyn Future<Output = Result<Category, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_category_from_id<'life0, 'async_trait>(
&'life0 self,
category_id: i64,
) -> Pin<Box<dyn Future<Output = Result<Category, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get
Category from category_id.Source§fn get_category_from_name<'life0, 'life1, 'async_trait>(
&'life0 self,
category_name: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Category, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get_category_from_name<'life0, 'life1, 'async_trait>(
&'life0 self,
category_name: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Category, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Get
Category from category_name.Source§fn get_categories<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<Category>, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_categories<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<Category>, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get all categories as
Vec<Category>.Source§fn delete_category<'life0, 'life1, 'async_trait>(
&'life0 self,
category_name: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn delete_category<'life0, 'life1, 'async_trait>(
&'life0 self,
category_name: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Delete category with
category_name.Source§fn get_torrents_search_sorted_paginated<'life0, 'life1, 'life2, 'life3, 'life4, 'async_trait>(
&'life0 self,
search: &'life1 Option<String>,
categories: &'life2 Option<Vec<String>>,
tags: &'life3 Option<Vec<String>>,
sort: &'life4 Sorting,
offset: u64,
limit: u8,
) -> Pin<Box<dyn Future<Output = Result<TorrentsResponse, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
'life4: 'async_trait,
fn get_torrents_search_sorted_paginated<'life0, 'life1, 'life2, 'life3, 'life4, 'async_trait>(
&'life0 self,
search: &'life1 Option<String>,
categories: &'life2 Option<Vec<String>>,
tags: &'life3 Option<Vec<String>>,
sort: &'life4 Sorting,
offset: u64,
limit: u8,
) -> Pin<Box<dyn Future<Output = Result<TorrentsResponse, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
'life4: 'async_trait,
Get results of a torrent search in a paginated and sorted form as
TorrentsResponse from search, categories, sort, offset and page_size.Source§fn insert_torrent_and_get_id<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
torrent: &'life1 Torrent,
uploader_id: UserId,
category_id: i64,
title: &'life2 str,
description: &'life3 str,
) -> Pin<Box<dyn Future<Output = Result<i64, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
fn insert_torrent_and_get_id<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
torrent: &'life1 Torrent,
uploader_id: UserId,
category_id: i64,
title: &'life2 str,
description: &'life3 str,
) -> Pin<Box<dyn Future<Output = Result<i64, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
Add new torrent and return the newly inserted
torrent_id with torrent, uploader_id, category_id, title and description.Source§fn get_torrent_info_from_id<'life0, 'async_trait>(
&'life0 self,
torrent_id: i64,
) -> Pin<Box<dyn Future<Output = Result<DbTorrentInfo, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_torrent_info_from_id<'life0, 'async_trait>(
&'life0 self,
torrent_id: i64,
) -> Pin<Box<dyn Future<Output = Result<DbTorrentInfo, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get torrent’s info as
DbTorrentInfo from torrent_id.Source§fn get_torrent_info_from_info_hash<'life0, 'life1, 'async_trait>(
&'life0 self,
info_hash: &'life1 InfoHash,
) -> Pin<Box<dyn Future<Output = Result<DbTorrentInfo, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get_torrent_info_from_info_hash<'life0, 'life1, 'async_trait>(
&'life0 self,
info_hash: &'life1 InfoHash,
) -> Pin<Box<dyn Future<Output = Result<DbTorrentInfo, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Get torrent’s info as
DbTorrentInfo from torrent InfoHash.Source§fn get_torrent_files_from_id<'life0, 'async_trait>(
&'life0 self,
torrent_id: i64,
) -> Pin<Box<dyn Future<Output = Result<Vec<TorrentFile>, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_torrent_files_from_id<'life0, 'async_trait>(
&'life0 self,
torrent_id: i64,
) -> Pin<Box<dyn Future<Output = Result<Vec<TorrentFile>, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get all torrent’s files as
Vec<TorrentFile> from torrent_id.Source§fn get_torrent_announce_urls_from_id<'life0, 'async_trait>(
&'life0 self,
torrent_id: i64,
) -> Pin<Box<dyn Future<Output = Result<Vec<Vec<String>>, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_torrent_announce_urls_from_id<'life0, 'async_trait>(
&'life0 self,
torrent_id: i64,
) -> Pin<Box<dyn Future<Output = Result<Vec<Vec<String>>, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get all torrent’s announce urls as
Vec<Vec<String>> from torrent_id.Source§fn get_torrent_listing_from_id<'life0, 'async_trait>(
&'life0 self,
torrent_id: i64,
) -> Pin<Box<dyn Future<Output = Result<TorrentListing, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_torrent_listing_from_id<'life0, 'async_trait>(
&'life0 self,
torrent_id: i64,
) -> Pin<Box<dyn Future<Output = Result<TorrentListing, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get
TorrentListing from torrent_id.Source§fn get_torrent_listing_from_info_hash<'life0, 'life1, 'async_trait>(
&'life0 self,
info_hash: &'life1 InfoHash,
) -> Pin<Box<dyn Future<Output = Result<TorrentListing, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get_torrent_listing_from_info_hash<'life0, 'life1, 'async_trait>(
&'life0 self,
info_hash: &'life1 InfoHash,
) -> Pin<Box<dyn Future<Output = Result<TorrentListing, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Get
TorrentListing from InfoHash.Source§fn get_all_torrents_compact<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<TorrentCompact>, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn get_all_torrents_compact<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<TorrentCompact>, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get all torrents as
Vec<TorrentCompact>.Source§fn update_torrent_title<'life0, 'life1, 'async_trait>(
&'life0 self,
torrent_id: i64,
title: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn update_torrent_title<'life0, 'life1, 'async_trait>(
&'life0 self,
torrent_id: i64,
title: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Update a torrent’s title with
torrent_id and title.Source§fn update_torrent_description<'life0, 'life1, 'async_trait>(
&'life0 self,
torrent_id: i64,
description: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn update_torrent_description<'life0, 'life1, 'async_trait>(
&'life0 self,
torrent_id: i64,
description: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Update a torrent’s description with
torrent_id and description.Source§fn update_torrent_category<'life0, 'async_trait>(
&'life0 self,
torrent_id: i64,
category_id: CategoryId,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn update_torrent_category<'life0, 'async_trait>(
&'life0 self,
torrent_id: i64,
category_id: CategoryId,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Update a torrent’s category with
torrent_id and category_id.Source§fn add_tag<'life0, 'life1, 'async_trait>(
&'life0 self,
name: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn add_tag<'life0, 'life1, 'async_trait>(
&'life0 self,
name: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Add a new tag.
Source§fn delete_tag<'life0, 'async_trait>(
&'life0 self,
tag_id: TagId,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn delete_tag<'life0, 'async_trait>(
&'life0 self,
tag_id: TagId,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Delete a tag.
Source§fn add_torrent_tag_link<'life0, 'async_trait>(
&'life0 self,
torrent_id: i64,
tag_id: TagId,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn add_torrent_tag_link<'life0, 'async_trait>(
&'life0 self,
torrent_id: i64,
tag_id: TagId,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Add a tag to torrent.
Source§fn add_torrent_tag_links<'life0, 'life1, 'async_trait>(
&'life0 self,
torrent_id: i64,
tag_ids: &'life1 [TagId],
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn add_torrent_tag_links<'life0, 'life1, 'async_trait>(
&'life0 self,
torrent_id: i64,
tag_ids: &'life1 [TagId],
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Add multiple tags to a torrent at once.
Source§fn delete_torrent_tag_link<'life0, 'async_trait>(
&'life0 self,
torrent_id: i64,
tag_id: TagId,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn delete_torrent_tag_link<'life0, 'async_trait>(
&'life0 self,
torrent_id: i64,
tag_id: TagId,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Remove a tag from torrent.
Source§fn delete_all_torrent_tag_links<'life0, 'async_trait>(
&'life0 self,
torrent_id: i64,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn delete_all_torrent_tag_links<'life0, 'async_trait>(
&'life0 self,
torrent_id: i64,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Remove all tags from torrent.
Source§fn get_tag_from_name<'life0, 'life1, 'async_trait>(
&'life0 self,
name: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<TorrentTag, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn get_tag_from_name<'life0, 'life1, 'async_trait>(
&'life0 self,
name: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<TorrentTag, Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Get tag from name.
Get all tags as
Vec<TorrentTag>.Get tags for
torrent_id.Source§fn update_tracker_info<'life0, 'life1, 'async_trait>(
&'life0 self,
torrent_id: i64,
tracker_url: &'life1 str,
seeders: i64,
leechers: i64,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn update_tracker_info<'life0, 'life1, 'async_trait>(
&'life0 self,
torrent_id: i64,
tracker_url: &'life1 str,
seeders: i64,
leechers: i64,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Update the seeders and leechers info for a torrent with
torrent_id, tracker_url, seeders and leechers.Source§fn delete_torrent<'life0, 'async_trait>(
&'life0 self,
torrent_id: i64,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn delete_torrent<'life0, 'async_trait>(
&'life0 self,
torrent_id: i64,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Delete a torrent with
torrent_id.Source§fn delete_all_database_rows<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn delete_all_database_rows<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
DELETES ALL DATABASE ROWS, ONLY CALL THIS IF YOU KNOW WHAT YOU’RE DOING!
Auto Trait Implementations§
impl Freeze for Mysql
impl !RefUnwindSafe for Mysql
impl Send for Mysql
impl Sync for Mysql
impl Unpin for Mysql
impl !UnwindSafe for Mysql
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more