pub struct AccessControl {
    pub owner: Owner,
    pub whitelist: Whitelist,
}
Expand description

A AccessControl module storage definition.

Fields§

§owner: Owner§whitelist: Whitelist

Implementations§

source§

impl AccessControl

source

pub fn init(&mut self, address: Address)

Module constructor.

Initializes submodules.

See Owner and Whitelist.

source

pub fn propose_new_owner(&mut self, owner: Address)

Proposes a change of ownership of the contract. Owner will be changed if accepted by propsed new owner. Only the current owner is permited to call this method.

§Errors

Throws NotAnOwner if caller is not the current owner.

source

pub fn accept_new_owner(&mut self)

Accepts the new owner proposition. This can be called only by the proposed owner.

§Events

Emits OwnerChanged, AddedToWhitelist events.

source

pub fn add_to_whitelist(&mut self, address: Address)

Adds a new address to the whitelist.

§Errors

Throws NotAnOwner if the caller is not the current owner.

§Events

Emits AddedToWhitelist event.

source

pub fn remove_from_whitelist(&mut self, address: Address)

Removes the address from the whitelist.

§Errors

Throws NotAnOwner if caller is not the current owner.

§Events

It emits RemovedFromWhitelist

source

pub fn is_whitelisted(&self, address: Address) -> bool

Checks whether the given address is added to the whitelist. See Whitelist.

source

pub fn ensure_whitelisted(&self)

Verifies whether the current caller address is added to the whitelist.

source

pub fn get_owner(&self) -> Option<Address>

Returns the address of the current owner.

See Owner.

Trait Implementations§

source§

impl Clone for AccessControl

source§

fn clone(&self) -> AccessControl

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl DynamicInstance for AccessControl

source§

fn instance(namespace: &[u8]) -> Self

source§

impl HasEvents for AccessControl

source§

fn events() -> Vec<Event>

source§

impl Node for AccessControl

source§

const IS_LEAF: bool = false

source§

const COUNT: u32 = 3u32

source§

fn __keys() -> Vec<String>

source§

impl OdraItem for AccessControl

source§

impl StaticInstance for AccessControl

source§

fn instance<'a>(keys: &'a [&'a str]) -> (Self, &'a [&'a str])

Consumes keys required to create an instance, returns the instance with the remaining keys.

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> Same for T

§

type Output = T

Should always be Self
source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

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

§

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>,

§

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.