Struct sov_accounts::Accounts

source ·
pub struct Accounts<C: Context> {
    pub address: C::Address,
    /* private fields */
}
Expand description

A module responsible for managing accounts on the rollup.

Fields§

§address: C::Address

The address of the sov-accounts module.

Trait Implementations§

source§

impl<C: Clone + Context> Clone for Accounts<C>where C::Address: Clone, C::PublicKey: Clone,

source§

fn clone(&self) -> Accounts<C>

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<C: Context> Default for Accounts<C>

source§

fn default() -> Self

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

impl<C: Context> Module for Accounts<C>

§

type Context = C

Execution context.
§

type Config = AccountConfig<C>

Configuration for the genesis method.
§

type CallMessage = CallMessage<C>

Module defined argument to the call method.
source§

fn genesis( &self, config: &Self::Config, working_set: &mut WorkingSet<C::Storage> ) -> Result<(), Error>

Genesis is called when a rollup is deployed and can be used to set initial state values in the module.
source§

fn call( &self, msg: Self::CallMessage, context: &Self::Context, working_set: &mut WorkingSet<C::Storage> ) -> Result<CallResponse, Error>

Call allows interaction with the module and invokes state changes. It takes a module defined type and a context as parameters.
source§

impl<C: Context> ModuleInfo for Accounts<C>

§

type Context = C

source§

fn prefix(&self) -> Prefix

Returns the prefix of the module.
source§

fn address(&self) -> &<Self::Context as Spec>::Address

Returns address of the module.
source§

fn dependencies(&self) -> Vec<&<Self::Context as Spec>::Address>

Returns addresses of all the other modules this module is dependent on
source§

impl<C: Context> TxHooks for Accounts<C>

§

type Context = C

source§

fn pre_dispatch_tx_hook( &self, tx: &Transaction<C>, working_set: &mut WorkingSet<<Self::Context as Spec>::Storage> ) -> Result<<Self::Context as Spec>::Address>

Runs just before a transaction is dispatched to an appropriate module. TODO: Why does it return address? Does it implies that it should do signature verification. Can other code rely on that assumption?
source§

fn post_dispatch_tx_hook( &self, tx: &Transaction<Self::Context>, working_set: &mut WorkingSet<<Self::Context as Spec>::Storage> ) -> Result<()>

Runs after the tx is dispatched to an appropriate module. IF this hook returns error rollup panics

Auto Trait Implementations§

§

impl<C> RefUnwindSafe for Accounts<C>where <C as Spec>::Address: RefUnwindSafe, <C as Spec>::PublicKey: RefUnwindSafe,

§

impl<C> Send for Accounts<C>

§

impl<C> Sync for Accounts<C>

§

impl<C> Unpin for Accounts<C>where <C as Spec>::Address: Unpin, <C as Spec>::PublicKey: Unpin,

§

impl<C> UnwindSafe for Accounts<C>where <C as Spec>::Address: UnwindSafe, <C as Spec>::PublicKey: UnwindSafe,

Blanket Implementations§

source§

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

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

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

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere 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> Genesis for Twhere T: Module,

§

type Context = <T as Module>::Context

§

type Config = <T as Module>::Config

Initial configuration for the module.
source§

fn genesis( &self, config: &<T as Genesis>::Config, working_set: &mut WorkingSet<<<T as Genesis>::Context as Spec>::Storage> ) -> Result<(), Error>

Initializes the state of the rollup.
source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for Twhere 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<T> for T

§

type Output = T

Should always be Self
source§

impl<T> ToOwned for Twhere 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 Twhere 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 Twhere 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.
source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more