pub trait RuleAPI: Clone + Sync + Send {
    // Required methods
    fn label(&self) -> &String;
    fn delete<'tx>(
        &mut self,
        transaction: &'tx Transaction<'tx>
    ) -> BoxPromise<'tx, Result>;
    fn set_label<'tx>(
        &mut self,
        transaction: &'tx Transaction<'tx>,
        new_label: String
    ) -> BoxPromise<'tx, Result>;

    // Provided method
    fn is_deleted<'tx>(
        &self,
        transaction: &'tx Transaction<'tx>
    ) -> BoxPromise<'tx, Result<bool>> { ... }
}

Required Methods§

source

fn label(&self) -> &String

Retrieves the unique label of the rule.

source

fn delete<'tx>( &mut self, transaction: &'tx Transaction<'tx> ) -> BoxPromise<'tx, Result>

Deletes this rule.

§Arguments
  • transaction – The current Transaction
§Examples
rule.delete(transaction).await
source

fn set_label<'tx>( &mut self, transaction: &'tx Transaction<'tx>, new_label: String ) -> BoxPromise<'tx, Result>

Renames the label of the rule. The new label must remain unique.

§Arguments
  • transaction – The current Transaction
  • new_label – The new label to be given to the rule
§Examples
rule.set_label(transaction, new_label).await

Provided Methods§

source

fn is_deleted<'tx>( &self, transaction: &'tx Transaction<'tx> ) -> BoxPromise<'tx, Result<bool>>

Check if this rule has been deleted.

§Arguments
  • transaction – The current Transaction
§Examples
rule.is_deleted(transaction).await

Object Safety§

This trait is not object safe.

Implementors§