pub trait TrackingCopyEntityExt<R> {
type Error;
Show 15 methods
// Required methods
fn runtime_footprint_by_entity_addr(
&self,
entity_addr: EntityAddr,
) -> Result<RuntimeFootprint, Self::Error>;
fn runtime_footprint_by_hash_addr(
&mut self,
hash_addr: HashAddr,
) -> Result<RuntimeFootprint, Self::Error>;
fn runtime_footprint_by_account_hash(
&mut self,
protocol_version: ProtocolVersion,
account_hash: AccountHash,
) -> Result<(EntityAddr, RuntimeFootprint), Self::Error>;
fn authorized_runtime_footprint_by_account(
&mut self,
protocol_version: ProtocolVersion,
account_hash: AccountHash,
authorization_keys: &BTreeSet<AccountHash>,
administrative_accounts: &BTreeSet<AccountHash>,
) -> Result<(RuntimeFootprint, EntityAddr), Self::Error>;
fn authorized_runtime_footprint_with_access_rights(
&mut self,
protocol_version: ProtocolVersion,
initiating_address: AccountHash,
authorization_keys: &BTreeSet<AccountHash>,
administrative_accounts: &BTreeSet<AccountHash>,
) -> Result<(EntityAddr, RuntimeFootprint, ContextAccessRights), TrackingCopyError>;
fn system_entity_runtime_footprint(
&mut self,
protocol_version: ProtocolVersion,
) -> Result<(EntityAddr, RuntimeFootprint, ContextAccessRights), TrackingCopyError>;
fn migrate_named_keys(
&mut self,
entity_addr: EntityAddr,
named_keys: NamedKeys,
) -> Result<(), Self::Error>;
fn migrate_entry_points(
&mut self,
entity_addr: EntityAddr,
entry_points: EntryPoints,
) -> Result<(), Self::Error>;
fn upsert_uref_to_named_keys(
&mut self,
entity_addr: EntityAddr,
name: &str,
named_keys: &NamedKeys,
uref: URef,
stored_value: StoredValue,
) -> Result<(), Self::Error>;
fn migrate_account(
&mut self,
account_hash: AccountHash,
protocol_version: ProtocolVersion,
) -> Result<(), Self::Error>;
fn create_new_addressable_entity_on_transfer(
&mut self,
account_hash: AccountHash,
main_purse: URef,
protocol_version: ProtocolVersion,
) -> Result<(), Self::Error>;
fn create_addressable_entity_from_account(
&mut self,
account: Account,
protocol_version: ProtocolVersion,
) -> Result<(), Self::Error>;
fn migrate_package(
&mut self,
contract_package_key: Key,
protocol_version: ProtocolVersion,
) -> Result<(), Self::Error>;
fn fees_purse(
&mut self,
protocol_version: ProtocolVersion,
fees_purse_handling: FeesPurseHandling,
) -> Result<URef, TrackingCopyError>;
fn system_contract_named_key(
&mut self,
system_contract_name: &str,
name: &str,
) -> Result<Option<Key>, Self::Error>;
}Expand description
Higher-level operations on the state via a TrackingCopy.
Required Associated Types§
Required Methods§
Sourcefn runtime_footprint_by_entity_addr(
&self,
entity_addr: EntityAddr,
) -> Result<RuntimeFootprint, Self::Error>
fn runtime_footprint_by_entity_addr( &self, entity_addr: EntityAddr, ) -> Result<RuntimeFootprint, Self::Error>
Gets a runtime information by entity_addr.
Sourcefn runtime_footprint_by_hash_addr(
&mut self,
hash_addr: HashAddr,
) -> Result<RuntimeFootprint, Self::Error>
fn runtime_footprint_by_hash_addr( &mut self, hash_addr: HashAddr, ) -> Result<RuntimeFootprint, Self::Error>
Gets a runtime information by hash_addr.
Sourcefn runtime_footprint_by_account_hash(
&mut self,
protocol_version: ProtocolVersion,
account_hash: AccountHash,
) -> Result<(EntityAddr, RuntimeFootprint), Self::Error>
fn runtime_footprint_by_account_hash( &mut self, protocol_version: ProtocolVersion, account_hash: AccountHash, ) -> Result<(EntityAddr, RuntimeFootprint), Self::Error>
Gets a runtime information by account hash.
Get runtime information for an account if authorized, else error.
Returns runtime information and access rights if authorized, else error.
Sourcefn system_entity_runtime_footprint(
&mut self,
protocol_version: ProtocolVersion,
) -> Result<(EntityAddr, RuntimeFootprint, ContextAccessRights), TrackingCopyError>
fn system_entity_runtime_footprint( &mut self, protocol_version: ProtocolVersion, ) -> Result<(EntityAddr, RuntimeFootprint, ContextAccessRights), TrackingCopyError>
Returns runtime information for systemic functionality.
Sourcefn migrate_named_keys(
&mut self,
entity_addr: EntityAddr,
named_keys: NamedKeys,
) -> Result<(), Self::Error>
fn migrate_named_keys( &mut self, entity_addr: EntityAddr, named_keys: NamedKeys, ) -> Result<(), Self::Error>
Migrate the NamedKeys for a entity.
Sourcefn migrate_entry_points(
&mut self,
entity_addr: EntityAddr,
entry_points: EntryPoints,
) -> Result<(), Self::Error>
fn migrate_entry_points( &mut self, entity_addr: EntityAddr, entry_points: EntryPoints, ) -> Result<(), Self::Error>
Migrate entry points from and older structure to top level entries.
Sourcefn upsert_uref_to_named_keys(
&mut self,
entity_addr: EntityAddr,
name: &str,
named_keys: &NamedKeys,
uref: URef,
stored_value: StoredValue,
) -> Result<(), Self::Error>
fn upsert_uref_to_named_keys( &mut self, entity_addr: EntityAddr, name: &str, named_keys: &NamedKeys, uref: URef, stored_value: StoredValue, ) -> Result<(), Self::Error>
Upsert uref value to global state and imputed entity’s named keys.
Sourcefn migrate_account(
&mut self,
account_hash: AccountHash,
protocol_version: ProtocolVersion,
) -> Result<(), Self::Error>
fn migrate_account( &mut self, account_hash: AccountHash, protocol_version: ProtocolVersion, ) -> Result<(), Self::Error>
Migrate Account to AddressableEntity.
Sourcefn create_new_addressable_entity_on_transfer(
&mut self,
account_hash: AccountHash,
main_purse: URef,
protocol_version: ProtocolVersion,
) -> Result<(), Self::Error>
fn create_new_addressable_entity_on_transfer( &mut self, account_hash: AccountHash, main_purse: URef, protocol_version: ProtocolVersion, ) -> Result<(), Self::Error>
Create an addressable entity to receive transfer.
Sourcefn create_addressable_entity_from_account(
&mut self,
account: Account,
protocol_version: ProtocolVersion,
) -> Result<(), Self::Error>
fn create_addressable_entity_from_account( &mut self, account: Account, protocol_version: ProtocolVersion, ) -> Result<(), Self::Error>
Create an addressable entity instance using the field data of an account instance.
Sourcefn migrate_package(
&mut self,
contract_package_key: Key,
protocol_version: ProtocolVersion,
) -> Result<(), Self::Error>
fn migrate_package( &mut self, contract_package_key: Key, protocol_version: ProtocolVersion, ) -> Result<(), Self::Error>
Migrate ContractPackage to Package.
Sourcefn fees_purse(
&mut self,
protocol_version: ProtocolVersion,
fees_purse_handling: FeesPurseHandling,
) -> Result<URef, TrackingCopyError>
fn fees_purse( &mut self, protocol_version: ProtocolVersion, fees_purse_handling: FeesPurseHandling, ) -> Result<URef, TrackingCopyError>
Returns fee purse.