Struct odra_modules::access::OwnableHostRef

source ·
pub struct OwnableHostRef { /* private fields */ }
Expand description

Ownable Host Ref.

Implementations§

source§

impl OwnableHostRef

source

pub fn init(&mut self)

Initializes the module setting the caller as the initial owner.

source

pub fn transfer_ownership(&mut self, new_owner: &Address)

Transfers ownership of the module to new_owner. This function can only be accessed by the current owner of the module.

source

pub fn renounce_ownership(&mut self)

If the contract’s owner chooses to renounce their ownership, the contract will no longer have an owner. This means that any functions that can only be accessed by the owner will no longer be available.

The function can only be called by the current owner, and it will permanently remove the owner’s privileges.

source

pub fn get_owner(&self) -> Address

Returns the address of the current owner.

source

pub fn assert_owner(&self, address: &Address)

Reverts with Error::CallerNotTheOwner if the function called by any account other than the owner.

source

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

Returns the optional address of the current owner.

source

pub fn unchecked_transfer_ownership(&mut self, new_owner: Option<Address>)

Unchecked version of the ownership transfer. It emits an event and sets the new owner.

source§

impl OwnableHostRef

source

pub fn try_init(&mut self) -> OdraResult<()>

Initializes the module setting the caller as the initial owner. Does not fail in case of error, returns odra::OdraResult instead.

source

pub fn try_transfer_ownership(&mut self, new_owner: &Address) -> OdraResult<()>

Transfers ownership of the module to new_owner. This function can only be accessed by the current owner of the module. Does not fail in case of error, returns odra::OdraResult instead.

source

pub fn try_renounce_ownership(&mut self) -> OdraResult<()>

If the contract’s owner chooses to renounce their ownership, the contract will no longer have an owner. This means that any functions that can only be accessed by the owner will no longer be available.

The function can only be called by the current owner, and it will permanently remove the owner’s privileges. Does not fail in case of error, returns odra::OdraResult instead.

source

pub fn try_get_owner(&self) -> OdraResult<Address>

Returns the address of the current owner. Does not fail in case of error, returns odra::OdraResult instead.

source

pub fn try_assert_owner(&self, address: &Address) -> OdraResult<()>

Reverts with Error::CallerNotTheOwner if the function called by any account other than the owner. Does not fail in case of error, returns odra::OdraResult instead.

source

pub fn try_get_optional_owner(&self) -> OdraResult<Option<Address>>

Returns the optional address of the current owner. Does not fail in case of error, returns odra::OdraResult instead.

source

pub fn try_unchecked_transfer_ownership( &mut self, new_owner: Option<Address>, ) -> OdraResult<()>

Unchecked version of the ownership transfer. It emits an event and sets the new owner. Does not fail in case of error, returns odra::OdraResult instead.

Trait Implementations§

source§

impl EntryPointsCallerProvider for OwnableHostRef

source§

fn entry_points_caller(env: &HostEnv) -> EntryPointsCaller

Returns an EntryPointsCaller for the given host environment.
source§

impl HasIdent for OwnableHostRef

source§

fn ident() -> String

Returns the contract’s ident.
source§

impl HostRef for OwnableHostRef

source§

fn new(address: Address, env: HostEnv) -> Self

Creates a new host side reference to a contract.
source§

fn with_tokens(&self, tokens: U512) -> Self

Creates a new host reference with attached tokens, based on the current instance. Read more
source§

fn address(&self) -> &Address

Returns the address of the contract.
source§

fn env(&self) -> &HostEnv

Returns the host environment.
source§

fn get_event<T>(&self, index: i32) -> Result<T, EventError>

Returns the n-th event emitted by the contract. Read more
source§

fn last_call(&self) -> ContractCallResult

Returns a detailed information about the last call of the contract.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Addressable for T
where T: HostRef,

source§

fn address(&self) -> &Address

Returns a reference to the Address of the type.
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<R> Deployer for R

source§

fn deploy<T>(env: &HostEnv, init_args: T) -> R
where T: InitArgs,

Deploys a contract with given init args. Read more
source§

fn try_deploy<T>(env: &HostEnv, init_args: T) -> Result<R, OdraError>
where T: InitArgs,

Tries to deploy a contract with given init args. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> HostRefLoader for T

source§

fn load(env: &HostEnv, address: Address) -> T

Loads an existing contract from the host environment.
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, 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.