pub struct ContractObj<A: ContractBase> { /* private fields */ }

Trait Implementations§

source§

impl<A> CallableContract<A> for ContractObj<A>
where for<'b> A::BigUint: BigUintApi + AddAssign<&'b A::BigUint> + SubAssign<&'b A::BigUint> + MulAssign<&'b A::BigUint> + DivAssign<&'b A::BigUint> + RemAssign<&'b A::BigUint> + BitAndAssign<&'b A::BigUint> + BitOrAssign<&'b A::BigUint> + BitXorAssign<&'b A::BigUint>, for<'a, 'b> &'a A::BigUint: Add<&'b A::BigUint, Output = A::BigUint> + Sub<&'b A::BigUint, Output = A::BigUint> + Mul<&'b A::BigUint, Output = A::BigUint> + Div<&'b A::BigUint, Output = A::BigUint> + Rem<&'b A::BigUint, Output = A::BigUint> + BitAnd<&'b A::BigUint, Output = A::BigUint> + BitOr<&'b A::BigUint, Output = A::BigUint> + BitXor<&'b A::BigUint, Output = A::BigUint> + Shr<usize, Output = A::BigUint> + Shl<usize, Output = A::BigUint>, for<'b> A::BigInt: BigIntApi + AddAssign<&'b A::BigInt> + SubAssign<&'b A::BigInt> + MulAssign<&'b A::BigInt> + DivAssign<&'b A::BigInt> + RemAssign<&'b A::BigInt>, for<'a, 'b> &'a A::BigInt: Add<&'b A::BigInt, Output = A::BigInt> + Sub<&'b A::BigInt, Output = A::BigInt> + Mul<&'b A::BigInt, Output = A::BigInt> + Div<&'b A::BigInt, Output = A::BigInt> + Rem<&'b A::BigInt, Output = A::BigInt>, A: ContractBase + ErrorApi + EndpointArgumentApi + EndpointFinishApi + Clone + 'static,

source§

fn call(&self, fn_name: &[u8]) -> bool

source§

fn into_api(self: Box<Self>) -> A

source§

impl<A> ContractBase for ContractObj<A>

§

type BigUint = <A as ContractBase>::BigUint

§

type BigInt = <A as ContractBase>::BigInt

§

type EllipticCurve = <A as ContractBase>::EllipticCurve

§

type Storage = <A as ContractBase>::Storage

Abstracts the lower-level storage functionality.
§

type CallValue = <A as ContractBase>::CallValue

Abstracts the call value handling at the beginning of a function call.
§

type SendApi = <A as ContractBase>::SendApi

Abstracts the sending of MOAX & DCT transactions, as well as async calls.
§

type BlockchainApi = <A as ContractBase>::BlockchainApi

§

type CryptoApi = <A as ContractBase>::CryptoApi

§

type LogApi = <A as ContractBase>::LogApi

§

type ErrorApi = <A as ContractBase>::ErrorApi

source§

fn get_storage_raw(&self) -> Self::Storage

Gateway into the lower-level storage functionality. Storage related annotations make use of this. Using it directly is not recommended.
source§

fn call_value(&self) -> Self::CallValue

Gateway into the call value retrieval functionality. The payment annotations should normally be the ones to handle this, but the developer is also given direct access to the API.
source§

fn send(&self) -> Self::SendApi

Gateway to the functionality related to sending transactions from the current contract.
source§

fn blockchain(&self) -> Self::BlockchainApi

Gateway blockchain info related to the current transaction and to accounts.
source§

fn crypto(&self) -> Self::CryptoApi

Stateless crypto functions provided by the Arwen VM.
source§

fn log_api_raw(&self) -> Self::LogApi

Gateway into the lower-level event log functionality. Gets called in auto-generated Using it directly is not recommended. TODO: consider moving to ContractPrivateApi.
source§

fn error_api(&self) -> Self::ErrorApi

Currently for some auto-generated code involving callbacks. Please avoid using it directly. TODO: find a way to hide this API.
source§

fn proxy<P>(&self, address: Address) -> P
where P: ProxyObjApi<SendApi = Self::SendApi>,

source§

impl<A> ContractPrivateApi for ContractObj<A>

§

type ArgumentApi = A

§

type FinishApi = A

source§

fn argument_api(&self) -> Self::ArgumentApi

source§

fn finish_api(&self) -> Self::FinishApi

source§

impl<A> EndpointWrappers for ContractObj<A>
where for<'b> Self::BigUint: BigUintApi + AddAssign<&'b Self::BigUint> + SubAssign<&'b Self::BigUint> + MulAssign<&'b Self::BigUint> + DivAssign<&'b Self::BigUint> + RemAssign<&'b Self::BigUint> + BitAndAssign<&'b Self::BigUint> + BitOrAssign<&'b Self::BigUint> + BitXorAssign<&'b Self::BigUint>, for<'a, 'b> &'a Self::BigUint: Add<&'b Self::BigUint, Output = Self::BigUint> + Sub<&'b Self::BigUint, Output = Self::BigUint> + Mul<&'b Self::BigUint, Output = Self::BigUint> + Div<&'b Self::BigUint, Output = Self::BigUint> + Rem<&'b Self::BigUint, Output = Self::BigUint> + BitAnd<&'b Self::BigUint, Output = Self::BigUint> + BitOr<&'b Self::BigUint, Output = Self::BigUint> + BitXor<&'b Self::BigUint, Output = Self::BigUint> + Shr<usize, Output = Self::BigUint> + Shl<usize, Output = Self::BigUint>, for<'b> Self::BigInt: BigIntApi + AddAssign<&'b Self::BigInt> + SubAssign<&'b Self::BigInt> + MulAssign<&'b Self::BigInt> + DivAssign<&'b Self::BigInt> + RemAssign<&'b Self::BigInt>, for<'a, 'b> &'a Self::BigInt: Add<&'b Self::BigInt, Output = Self::BigInt> + Sub<&'b Self::BigInt, Output = Self::BigInt> + Mul<&'b Self::BigInt, Output = Self::BigInt> + Div<&'b Self::BigInt, Output = Self::BigInt> + Rem<&'b Self::BigInt, Output = Self::BigInt>, A: ContractBase + ErrorApi + EndpointArgumentApi + EndpointFinishApi + Clone + 'static,

source§

fn call_is_paused(&self)

source§

fn call_pause_endpoint(&self)

source§

fn call_unpause_endpoint(&self)

source§

fn call(&self, fn_name: &[u8]) -> bool

source§

fn callback_selector<'a>( &self, ___cb_data_deserializer___: HexCallDataDeserializer<'a> ) -> CallbackSelectorResult<'a>

source§

fn callback(&self)

source§

impl<A> AutoImpl for ContractObj<A>

Auto Trait Implementations§

§

impl<A> RefUnwindSafe for ContractObj<A>
where A: RefUnwindSafe,

§

impl<A> Send for ContractObj<A>
where A: Send,

§

impl<A> Sync for ContractObj<A>
where A: Sync,

§

impl<A> Unpin for ContractObj<A>
where A: Unpin,

§

impl<A> UnwindSafe for ContractObj<A>
where A: UnwindSafe,

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

§

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.