Struct AsyncRoleSystemBuilder

Source
pub struct AsyncRoleSystemBuilder<S>
where S: Storage + Send + Sync,
{ /* private fields */ }
Expand description

Async role system builder for easy configuration.

Implementations§

Source§

impl<S> AsyncRoleSystemBuilder<S>
where S: Storage + Send + Sync + Default,

Source

pub fn new() -> Self

Create a new builder with default storage.

Source§

impl<S> AsyncRoleSystemBuilder<S>
where S: Storage + Send + Sync,

Source

pub fn with_storage(storage: S) -> Self

Create a new builder with custom storage.

Source

pub fn config(self, config: RoleSystemConfig) -> Self

Set the configuration.

Source

pub fn max_hierarchy_depth(self, depth: usize) -> Self

Set the maximum hierarchy depth.

Source

pub fn enable_caching(self, enabled: bool) -> Self

Enable or disable permission caching.

Source

pub fn cache_ttl_seconds(self, ttl: u64) -> Self

Set the cache TTL in seconds.

Source

pub fn enable_audit(self, enabled: bool) -> Self

Enable or disable audit logging.

Source

pub fn build(self) -> AsyncRoleSystem<S>
where S: Default,

Build the async role system.

Source

pub fn build_with_storage(self, storage: S) -> AsyncRoleSystem<S>

Build the async role system with provided storage.

Trait Implementations§

Source§

impl<S> Default for AsyncRoleSystemBuilder<S>
where S: Storage + Send + Sync + Default,

Source§

fn default() -> Self

Returns the “default value” for a type. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.