Struct db_sqlx_postgres::Database
source · [−]pub struct Database {
pub pool: PgPool,
}
Fields
pool: PgPool
Trait Implementations
sourceimpl MCDatabase for Database
impl MCDatabase for Database
sourcefn ping<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = bool> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn ping<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = bool> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
ping DB
sourcefn register<'life0, 'life1, 'async_trait>(
&'life0 self,
p: &'life1 Register<'_>
) -> Pin<Box<dyn Future<Output = DBResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn register<'life0, 'life1, 'async_trait>(
&'life0 self,
p: &'life1 Register<'_>
) -> Pin<Box<dyn Future<Output = DBResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
register a new user
sourcefn delete_user<'life0, 'life1, 'async_trait>(
&'life0 self,
username: &'life1 str
) -> Pin<Box<dyn Future<Output = DBResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn delete_user<'life0, 'life1, 'async_trait>(
&'life0 self,
username: &'life1 str
) -> Pin<Box<dyn Future<Output = DBResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
delete a user
sourcefn username_exists<'life0, 'life1, 'async_trait>(
&'life0 self,
username: &'life1 str
) -> Pin<Box<dyn Future<Output = DBResult<bool>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn username_exists<'life0, 'life1, 'async_trait>(
&'life0 self,
username: &'life1 str
) -> Pin<Box<dyn Future<Output = DBResult<bool>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
check if username exists
sourcefn get_email<'life0, 'life1, 'async_trait>(
&'life0 self,
username: &'life1 str
) -> Pin<Box<dyn Future<Output = DBResult<Option<String>>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn get_email<'life0, 'life1, 'async_trait>(
&'life0 self,
username: &'life1 str
) -> Pin<Box<dyn Future<Output = DBResult<Option<String>>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
get user email
sourcefn email_exists<'life0, 'life1, 'async_trait>(
&'life0 self,
email: &'life1 str
) -> Pin<Box<dyn Future<Output = DBResult<bool>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn email_exists<'life0, 'life1, 'async_trait>(
&'life0 self,
email: &'life1 str
) -> Pin<Box<dyn Future<Output = DBResult<bool>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
check if email exists
sourcefn update_email<'life0, 'life1, 'async_trait>(
&'life0 self,
p: &'life1 UpdateEmail<'_>
) -> Pin<Box<dyn Future<Output = DBResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn update_email<'life0, 'life1, 'async_trait>(
&'life0 self,
p: &'life1 UpdateEmail<'_>
) -> Pin<Box<dyn Future<Output = DBResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
update a user’s email
sourcefn get_password<'life0, 'life1, 'async_trait>(
&'life0 self,
l: &'life1 Login<'_>
) -> Pin<Box<dyn Future<Output = DBResult<NameHash>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn get_password<'life0, 'life1, 'async_trait>(
&'life0 self,
l: &'life1 Login<'_>
) -> Pin<Box<dyn Future<Output = DBResult<NameHash>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
get a user’s password
sourcefn update_password<'life0, 'life1, 'async_trait>(
&'life0 self,
p: &'life1 NameHash
) -> Pin<Box<dyn Future<Output = DBResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn update_password<'life0, 'life1, 'async_trait>(
&'life0 self,
p: &'life1 NameHash
) -> Pin<Box<dyn Future<Output = DBResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
update user’s password
sourcefn update_username<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
current: &'life1 str,
new: &'life2 str
) -> Pin<Box<dyn Future<Output = DBResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait,
fn update_username<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
current: &'life1 str,
new: &'life2 str
) -> Pin<Box<dyn Future<Output = DBResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait,
update username
sourcefn get_secret<'life0, 'life1, 'async_trait>(
&'life0 self,
username: &'life1 str
) -> Pin<Box<dyn Future<Output = DBResult<Secret>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn get_secret<'life0, 'life1, 'async_trait>(
&'life0 self,
username: &'life1 str
) -> Pin<Box<dyn Future<Output = DBResult<Secret>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
get a user’s secret
sourcefn update_secret<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
username: &'life1 str,
secret: &'life2 str
) -> Pin<Box<dyn Future<Output = DBResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait,
fn update_secret<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
username: &'life1 str,
secret: &'life2 str
) -> Pin<Box<dyn Future<Output = DBResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait,
update a user’s secret
sourcefn create_captcha<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
username: &'life1 str,
p: &'life2 CreateCaptcha<'_>
) -> Pin<Box<dyn Future<Output = DBResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait,
fn create_captcha<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
username: &'life1 str,
p: &'life2 CreateCaptcha<'_>
) -> Pin<Box<dyn Future<Output = DBResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait,
create new captcha
sourcefn get_captcha_config<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
username: &'life1 str,
key: &'life2 str
) -> Pin<Box<dyn Future<Output = DBResult<Captcha>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait,
fn get_captcha_config<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
username: &'life1 str,
key: &'life2 str
) -> Pin<Box<dyn Future<Output = DBResult<Captcha>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait,
Get captcha config
sourcefn get_all_user_captchas<'life0, 'life1, 'async_trait>(
&'life0 self,
username: &'life1 str
) -> Pin<Box<dyn Future<Output = DBResult<Vec<Captcha>>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn get_all_user_captchas<'life0, 'life1, 'async_trait>(
&'life0 self,
username: &'life1 str
) -> Pin<Box<dyn Future<Output = DBResult<Vec<Captcha>>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Get all captchas belonging to user
sourcefn update_captcha_metadata<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
username: &'life1 str,
p: &'life2 CreateCaptcha<'_>
) -> Pin<Box<dyn Future<Output = DBResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait,
fn update_captcha_metadata<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
username: &'life1 str,
p: &'life2 CreateCaptcha<'_>
) -> Pin<Box<dyn Future<Output = DBResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait,
update captcha metadata; doesn’t change captcha key
sourcefn update_captcha_key<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
username: &'life1 str,
old_key: &'life2 str,
new_key: &'life3 str
) -> Pin<Box<dyn Future<Output = DBResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
Self: 'async_trait,
fn update_captcha_key<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
username: &'life1 str,
old_key: &'life2 str,
new_key: &'life3 str
) -> Pin<Box<dyn Future<Output = DBResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
Self: 'async_trait,
update captcha key; doesn’t change metadata
sourcefn add_captcha_levels<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
username: &'life1 str,
captcha_key: &'life2 str,
levels: &'life3 [Level]
) -> Pin<Box<dyn Future<Output = DBResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
Self: 'async_trait,
fn add_captcha_levels<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
username: &'life1 str,
captcha_key: &'life2 str,
levels: &'life3 [Level]
) -> Pin<Box<dyn Future<Output = DBResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
Self: 'async_trait,
Add levels to captcha
sourcefn captcha_exists<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
username: Option<&'life1 str>,
captcha_key: &'life2 str
) -> Pin<Box<dyn Future<Output = DBResult<bool>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait,
fn captcha_exists<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
username: Option<&'life1 str>,
captcha_key: &'life2 str
) -> Pin<Box<dyn Future<Output = DBResult<bool>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait,
check if captcha exists
sourcefn delete_captcha_levels<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
username: &'life1 str,
captcha_key: &'life2 str
) -> Pin<Box<dyn Future<Output = DBResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait,
fn delete_captcha_levels<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
username: &'life1 str,
captcha_key: &'life2 str
) -> Pin<Box<dyn Future<Output = DBResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait,
Delete all levels of a captcha
sourcefn delete_captcha<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
username: &'life1 str,
captcha_key: &'life2 str
) -> Pin<Box<dyn Future<Output = DBResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait,
fn delete_captcha<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
username: &'life1 str,
captcha_key: &'life2 str
) -> Pin<Box<dyn Future<Output = DBResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait,
Delete captcha
sourcefn get_captcha_levels<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
username: Option<&'life1 str>,
captcha_key: &'life2 str
) -> Pin<Box<dyn Future<Output = DBResult<Vec<Level>>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait,
fn get_captcha_levels<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
username: Option<&'life1 str>,
captcha_key: &'life2 str
) -> Pin<Box<dyn Future<Output = DBResult<Vec<Level>>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait,
Get captcha levels
sourcefn get_captcha_cooldown<'life0, 'life1, 'async_trait>(
&'life0 self,
captcha_key: &'life1 str
) -> Pin<Box<dyn Future<Output = DBResult<i32>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn get_captcha_cooldown<'life0, 'life1, 'async_trait>(
&'life0 self,
captcha_key: &'life1 str
) -> Pin<Box<dyn Future<Output = DBResult<i32>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Get captcha’s cooldown period
sourcefn add_traffic_pattern<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
username: &'life1 str,
captcha_key: &'life2 str,
pattern: &'life3 TrafficPattern
) -> Pin<Box<dyn Future<Output = DBResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
Self: 'async_trait,
fn add_traffic_pattern<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
username: &'life1 str,
captcha_key: &'life2 str,
pattern: &'life3 TrafficPattern
) -> Pin<Box<dyn Future<Output = DBResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
Self: 'async_trait,
Add traffic configuration
sourcefn get_traffic_pattern<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
username: &'life1 str,
captcha_key: &'life2 str
) -> Pin<Box<dyn Future<Output = DBResult<TrafficPattern>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait,
fn get_traffic_pattern<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
username: &'life1 str,
captcha_key: &'life2 str
) -> Pin<Box<dyn Future<Output = DBResult<TrafficPattern>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait,
Get traffic configuration
sourcefn delete_traffic_pattern<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
username: &'life1 str,
captcha_key: &'life2 str
) -> Pin<Box<dyn Future<Output = DBResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait,
fn delete_traffic_pattern<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
username: &'life1 str,
captcha_key: &'life2 str
) -> Pin<Box<dyn Future<Output = DBResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait,
Delete traffic configuration
sourcefn create_notification<'life0, 'life1, 'async_trait>(
&'life0 self,
p: &'life1 AddNotification<'_>
) -> Pin<Box<dyn Future<Output = DBResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn create_notification<'life0, 'life1, 'async_trait>(
&'life0 self,
p: &'life1 AddNotification<'_>
) -> Pin<Box<dyn Future<Output = DBResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
create new notification
sourcefn get_all_unread_notifications<'life0, 'life1, 'async_trait>(
&'life0 self,
username: &'life1 str
) -> Pin<Box<dyn Future<Output = DBResult<Vec<Notification>>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn get_all_unread_notifications<'life0, 'life1, 'async_trait>(
&'life0 self,
username: &'life1 str
) -> Pin<Box<dyn Future<Output = DBResult<Vec<Notification>>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
get all unread notifications
sourcefn mark_notification_read<'life0, 'life1, 'async_trait>(
&'life0 self,
username: &'life1 str,
id: i32
) -> Pin<Box<dyn Future<Output = DBResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn mark_notification_read<'life0, 'life1, 'async_trait>(
&'life0 self,
username: &'life1 str,
id: i32
) -> Pin<Box<dyn Future<Output = DBResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
mark a notification read
sourcefn record_fetch<'life0, 'life1, 'async_trait>(
&'life0 self,
key: &'life1 str
) -> Pin<Box<dyn Future<Output = DBResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn record_fetch<'life0, 'life1, 'async_trait>(
&'life0 self,
key: &'life1 str
) -> Pin<Box<dyn Future<Output = DBResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
record PoWConfig fetches
sourcefn record_solve<'life0, 'life1, 'async_trait>(
&'life0 self,
key: &'life1 str
) -> Pin<Box<dyn Future<Output = DBResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn record_solve<'life0, 'life1, 'async_trait>(
&'life0 self,
key: &'life1 str
) -> Pin<Box<dyn Future<Output = DBResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
record PoWConfig solves
sourcefn record_confirm<'life0, 'life1, 'async_trait>(
&'life0 self,
key: &'life1 str
) -> Pin<Box<dyn Future<Output = DBResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn record_confirm<'life0, 'life1, 'async_trait>(
&'life0 self,
key: &'life1 str
) -> Pin<Box<dyn Future<Output = DBResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
record PoWConfig confirms
sourcefn fetch_config_fetched<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
user: &'life1 str,
key: &'life2 str
) -> Pin<Box<dyn Future<Output = DBResult<Vec<i64>>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait,
fn fetch_config_fetched<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
user: &'life1 str,
key: &'life2 str
) -> Pin<Box<dyn Future<Output = DBResult<Vec<i64>>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait,
featch PoWConfig fetches
sourcefn fetch_solve<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
user: &'life1 str,
key: &'life2 str
) -> Pin<Box<dyn Future<Output = DBResult<Vec<i64>>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait,
fn fetch_solve<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
user: &'life1 str,
key: &'life2 str
) -> Pin<Box<dyn Future<Output = DBResult<Vec<i64>>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait,
featch PoWConfig solves
sourcefn fetch_confirm<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
user: &'life1 str,
key: &'life2 str
) -> Pin<Box<dyn Future<Output = DBResult<Vec<i64>>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait,
fn fetch_confirm<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
user: &'life1 str,
key: &'life2 str
) -> Pin<Box<dyn Future<Output = DBResult<Vec<i64>>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait,
featch PoWConfig confirms
Auto Trait Implementations
impl !RefUnwindSafe for Database
impl Send for Database
impl Sync for Database
impl Unpin for Database
impl !UnwindSafe for Database
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> CloneSPDatabase for T where
T: 'static + MCDatabase + Clone,
impl<T> CloneSPDatabase for T where
T: 'static + MCDatabase + Clone,
sourcefn clone_db(&self) -> Box<dyn MCDatabase + 'static, Global>
fn clone_db(&self) -> Box<dyn MCDatabase + 'static, Global>
clone DB
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcefn clone_into(&self, target: &mut T)
fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
fn vzip(self) -> V
sourceimpl<T> WithSubscriber for T
impl<T> WithSubscriber for T
sourcefn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
sourcefn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more