Enum rustrict::BlockReason
source · #[non_exhaustive]
pub enum BlockReason {
Inappropriate(Type),
Unsafe {
remaining: Duration,
targeted: bool,
},
Repetitious(usize),
Spam(Duration),
Muted(Duration),
Empty,
}Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Inappropriate(Type)
The particular message was severely inappropriate, more specifically, Type.
Unsafe
Fields
Recent messages were generally inappropriate, and this message isn’t on the safe list.
Alternatively, if targeted is false, safe mode was configured globally.
Try again after Duration.
Repetitious(usize)
This message was too similar to usize recent messages.
Spam(Duration)
Too many messages per unit time, try again after Duration.
Muted(Duration)
Manually muted for Duration.
Empty
Message was, at least after censoring, completely empty.
Implementations§
source§impl BlockReason
impl BlockReason
sourcepub fn generic_str(self) -> &'static str
pub fn generic_str(self) -> &'static str
You may display BlockReason in any manner you choose, but this will return a reasonable
default warning to send to the user.
Examples found in repository?
533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565
pub fn contextual_string(self) -> String {
match self {
Self::Inappropriate(typ) => String::from(if typ.is(Type::OFFENSIVE) {
"Your message was held for being highly offensive"
} else if typ.is(Type::SEXUAL) {
"Your message was held for being overly sexual"
} else if typ.is(Type::MEAN) {
"Your message was held for being overly mean"
} else {
"Your message was held for severe profanity"
}),
Self::Unsafe {
remaining,
targeted: true,
} => format!(
"You have been restricted for {} due to profanity/spam",
FormattedDuration(remaining)
),
Self::Unsafe {
remaining,
targeted: false,
} => format!("Safe mode is active for {}", FormattedDuration(remaining)),
Self::Repetitious(count) => {
format!("Your message was too similar to {} recent messages", count)
}
Self::Spam(dur) => format!(
"You have been muted for {} due to excessive frequency",
FormattedDuration(dur)
),
Self::Muted(dur) => format!("You have been muted for {}", FormattedDuration(dur)),
_ => String::from(self.generic_str()),
}
}pub fn contextual_str(self) -> String
sourcepub fn contextual_string(self) -> String
pub fn contextual_string(self) -> String
You may display BlockReason in any manner you choose, but this will return a reasonable
default warning to send to the user that includes some context (such as how long they are
muted for).
Trait Implementations§
source§impl Clone for BlockReason
impl Clone for BlockReason
source§fn clone(&self) -> BlockReason
fn clone(&self) -> BlockReason
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moresource§impl Debug for BlockReason
impl Debug for BlockReason
source§impl PartialEq<BlockReason> for BlockReason
impl PartialEq<BlockReason> for BlockReason
source§fn eq(&self, other: &BlockReason) -> bool
fn eq(&self, other: &BlockReason) -> bool
self and other values to be equal, and is used
by ==.