pub struct Context { /* private fields */ }Expand description
Context is useful for taking moderation actions on a per-user basis i.e. each user would get their own Context.
Implementations
sourceimpl Context
impl Context
pub fn new() -> Self
sourcepub fn process(&mut self, message: String) -> Result<String, BlockReason>
pub fn process(&mut self, message: String) -> Result<String, BlockReason>
Takes user message, returns censored message trimmed of whitespace (if it should be sent)
or BlockReason (explaining why it should be blocked entirely).
sourcepub fn process_with_options(
&mut self,
message: String,
options: &ContextProcessingOptions
) -> Result<String, BlockReason>
pub fn process_with_options(
&mut self,
message: String,
options: &ContextProcessingOptions
) -> Result<String, BlockReason>
Takes user message, returns censored message trimmed of whitespace (if it should be sent)
or BlockReason (explaining why it should be blocked entirely).
Takes a set of options for fine-tuning the processing.
sourcepub fn restricted_for(&self) -> Option<Duration>
pub fn restricted_for(&self) -> Option<Duration>
Returns how long the user is restricted to Type::SAFE for, if at all.
sourcepub fn mute_for(&mut self, duration: Duration)
pub fn mute_for(&mut self, duration: Duration)
Manually mute this user’s messages for a duration. Overwrites any previous manual mute.
Passing Duration::ZERO will therefore un-mute.
sourcepub fn restrict_for(&mut self, duration: Duration)
pub fn restrict_for(&mut self, duration: Duration)
Manually restrict this user’s messages to known safe phrases for a duration. Overwrites any
previous manual restriction. Passing Duration::ZERO will therefore un-restrict.
sourcepub fn report(&mut self)
pub fn report(&mut self)
Call if another user “reports” this user’s message(s). The function of reports is for suspicion of bad behavior to be confirmed faster.
sourcepub fn reports(&self) -> usize
pub fn reports(&self) -> usize
Returns number of reports received via Self::report(). It is not guaranteed that the full
range of usize of reports will be counted (currently only u8::MAX are counted).
sourcepub fn exonerate(&mut self)
pub fn exonerate(&mut self)
Clear suspicion and reports, and automatic mutes (not manual mute or rate limit).
sourcepub fn total(&self) -> usize
pub fn total(&self) -> usize
Returns total number of messages processed. It is not guaranteed that the full
range of usize of messages will be counted (currently only u16::MAX are counted).
sourcepub fn total_inappropriate(&self) -> usize
pub fn total_inappropriate(&self) -> usize
Returns total number of messages processed that were Type::INAPPROPRIATE. It is not
guaranteed that the full range of usize of messages will be counted (currently only
u16::MAX are counted).
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for Context
impl Send for Context
impl Sync for Context
impl Unpin for Context
impl UnwindSafe for Context
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcepub fn borrow_mut(&mut self) -> &mut T
pub fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more