pub trait HasReceiveContext<Error: Default = ()>: HasCommonData {
type ReceiveData;
// Required methods
fn open(data: Self::ReceiveData) -> Self;
fn invoker(&self) -> AccountAddress;
fn self_address(&self) -> ContractAddress;
fn sender(&self) -> Address;
fn owner(&self) -> AccountAddress;
fn named_entrypoint(&self) -> OwnedEntrypointName;
}
Expand description
Types which can act as receive contexts.
§Deprecation notice
This trait is deprecated along with
crate::test_infrastructure
.
Use ReceiveContext
instead unless you
intend to use the deprecated test infrastructure.
See the crate documentation for more details.
Required Associated Types§
type ReceiveData
Required Methods§
Sourcefn open(data: Self::ReceiveData) -> Self
fn open(data: Self::ReceiveData) -> Self
Open the receive context for reading and accessing values.
Sourcefn invoker(&self) -> AccountAddress
fn invoker(&self) -> AccountAddress
Who is the account that initiated the top-level transaction this invocation is a part of.
Sourcefn self_address(&self) -> ContractAddress
fn self_address(&self) -> ContractAddress
The address of the contract being invoked.
Sourcefn sender(&self) -> Address
fn sender(&self) -> Address
The immediate sender of the message. In general different from the invoker.
Sourcefn owner(&self) -> AccountAddress
fn owner(&self) -> AccountAddress
Account which created the contract instance.
Sourcefn named_entrypoint(&self) -> OwnedEntrypointName
fn named_entrypoint(&self) -> OwnedEntrypointName
Get the name of the entrypoint that was named. In case a default entrypoint is invoked this can be different from the name of the entrypoint that is being executed.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.