pub enum BatchTransition {
V0(BatchTransitionV0),
V1(BatchTransitionV1),
}Variants§
Implementations§
Source§impl BatchTransition
impl BatchTransition
Sourcepub fn requests_gas_sponsorship(&self) -> bool
pub fn requests_gas_sponsorship(&self) -> bool
Whether every transition of the batch asks the contract owner to pay its gas: each one is
a document transition whose token payment info requests ContractOwner or
PreferContractOwner. Only the data contracts can say whether that request is honoured,
so this is what the minimum balance pre-check can know before they are loaded.
Sourcepub fn validate_estimated_principal(
&self,
identity_known_balance: Credits,
) -> Result<SimpleConsensusValidationResult, ProtocolError>
pub fn validate_estimated_principal( &self, identity_known_balance: Credits, ) -> Result<SimpleConsensusValidationResult, ProtocolError>
The minimum balance pre-check of a batch that asks the contract owner to pay its gas: the document owner still funds the principal (document purchases and the collateral of contested creates) from their own balance, but not the per-transition fee minimum, which fee validation then judges against whoever ends up paying.
Sourcepub fn validate_estimated_principal_with_shielded_compute(
&self,
identity_known_balance: Credits,
platform_version: &PlatformVersion,
) -> Result<SimpleConsensusValidationResult, ProtocolError>
pub fn validate_estimated_principal_with_shielded_compute( &self, identity_known_balance: Credits, platform_version: &PlatformVersion, ) -> Result<SimpleConsensusValidationResult, ProtocolError>
The principal a sponsored batch’s signer funds, plus the compute fee of the Orchard bundles it carries.
A sponsor pays the gas of a batch that executes, but a sub-transition its state validation replaces with a nonce bump takes the sponsor off the whole batch, and the signer pays for the work that ran on it. So the signer has to hold what the verification costs even while a sponsor is expected to pay it: whichever way the batch ends, somebody can be charged for the proofs already verified. A batch carrying no bundle adds nothing and is asked for its principal alone, as before.
Sourcepub fn shielded_bundle_compute_fee(
&self,
platform_version: &PlatformVersion,
) -> Result<Credits, ProtocolError>
pub fn shielded_bundle_compute_fee( &self, platform_version: &PlatformVersion, ) -> Result<Credits, ProtocolError>
The shielded compute fee the batch’s Orchard bundles will be charged: one bundle verification plus the per-action work, summed over the sub-transitions that carry a bundle, each priced exactly as the transformer that builds it prices it.
A bundle is carried either by a token transition against a shielded pool or by a document whose token cost is paid out of the payment token’s pool.
Sourcepub fn validate_estimated_fee_with_shielded_compute(
&self,
identity_known_balance: Credits,
platform_version: &PlatformVersion,
) -> Result<SimpleConsensusValidationResult, ProtocolError>
pub fn validate_estimated_fee_with_shielded_compute( &self, identity_known_balance: Credits, platform_version: &PlatformVersion, ) -> Result<SimpleConsensusValidationResult, ProtocolError>
The minimum balance pre-check of a batch, reserving the shielded compute fee of the bundles it carries on top of the flat per-sub-transition minimum.
The flat minimum is orders of magnitude below what one bundle costs, and reserving only that leaves the Halo 2 verification unfunded. A claim into a pool makes the gap exploitable: its claimable amount is only known against state, so its proof is skipped in check tx, and a signer holding only the flat minimum passes the mempool without any verification running. Every validator then runs it inside block validation, where the concurrency permit that guards admission does not apply, and the batch is refused unpaid — nothing charged, the identity contract nonce untouched — so the same bytes replay. Reserving the fee here refuses the batch before the proof work is done, and refuses nothing that could have been executed: every bundle-carrying sub-transition is charged this same fee as its action is built, before anything about it can fail, so a signer who cannot cover it is refused by fee validation in any case.
That last claim rests on a number, not on the structure. The floor asks for
flat_minimum + compute_fee where fee validation asks for metered_fee + compute_fee,
so the floor refuses somebody fee validation would not exactly when
metered_fee < flat_minimum. A sub-transition carrying a bundle writes notes and
nullifiers, whose metered storage alone prices it two orders of magnitude above the
flat minimum, so no such batch exists. Anything that lets a bundle ride on a
sub-transition cheaper than the flat minimum reopens that band; the same reasoning is
recorded on SystemLimits::max_transitions_in_documents_batch, which is where the
shape of a batch is decided.
The caller decides whether to ask for it. A batch that asks the contract owner to pay its gas is not asked, because the compute fee is gas.
Source§impl BatchTransition
impl BatchTransition
pub fn validate_base_structure( &self, platform_version: &PlatformVersion, ) -> Result<SimpleConsensusValidationResult, ProtocolError>
Source§impl BatchTransition
impl BatchTransition
pub fn feature_version(&self) -> FeatureVersion
pub fn verify_protocol_version( &self, protocol_version: u32, ) -> Result<bool, ProtocolError>
Trait Implementations§
Source§impl<'__de, __Context> BorrowDecode<'__de, __Context> for BatchTransition
impl<'__de, __Context> BorrowDecode<'__de, __Context> for BatchTransition
Source§fn borrow_decode<__D: BorrowDecoder<'__de, Context = __Context>>(
decoder: &mut __D,
) -> Result<Self, DecodeError>
fn borrow_decode<__D: BorrowDecoder<'__de, Context = __Context>>( decoder: &mut __D, ) -> Result<Self, DecodeError>
Source§impl<'__de, __Context> BorrowDecodeUntrusted<'__de, __Context> for BatchTransition
impl<'__de, __Context> BorrowDecodeUntrusted<'__de, __Context> for BatchTransition
Source§fn borrow_decode_untrusted<__D: BorrowUntrustedDecoder<'__de, Context = __Context>>(
decoder: &mut __D,
) -> Result<Self, DecodeError>
fn borrow_decode_untrusted<__D: BorrowUntrustedDecoder<'__de, Context = __Context>>( decoder: &mut __D, ) -> Result<Self, DecodeError>
Source§impl Clone for BatchTransition
impl Clone for BatchTransition
Source§fn clone(&self) -> BatchTransition
fn clone(&self) -> BatchTransition
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for BatchTransition
impl Debug for BatchTransition
Source§impl<__Context> Decode<__Context> for BatchTransition
impl<__Context> Decode<__Context> for BatchTransition
Source§impl<__Context> DecodeUntrusted<__Context> for BatchTransition
impl<__Context> DecodeUntrusted<__Context> for BatchTransition
Source§fn decode_untrusted<__D: UntrustedDecoder<Context = __Context>>(
decoder: &mut __D,
) -> Result<Self, DecodeError>
fn decode_untrusted<__D: UntrustedDecoder<Context = __Context>>( decoder: &mut __D, ) -> Result<Self, DecodeError>
Source§impl<'de> Deserialize<'de> for BatchTransition
impl<'de> Deserialize<'de> for BatchTransition
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl DocumentsBatchTransitionAccessorsV0 for BatchTransition
impl DocumentsBatchTransitionAccessorsV0 for BatchTransition
Source§fn transitions_iter(&self) -> Self::IterType<'_>
fn transitions_iter(&self) -> Self::IterType<'_>
Iterator for BatchedTransitionRef items.
Source§type IterType<'a> = DocumentBatchIterator<'a>
where
Self: 'a
type IterType<'a> = DocumentBatchIterator<'a> where Self: 'a
fn transitions_len(&self) -> usize
fn transitions_are_empty(&self) -> bool
fn first_transition(&self) -> Option<BatchedTransitionRef<'_>>
fn first_transition_mut(&mut self) -> Option<BatchedTransitionMutRef<'_>>
fn contains_document_transition(&self) -> bool
fn contains_token_transition(&self) -> bool
Source§impl DocumentsBatchTransitionMethodsV0 for BatchTransition
impl DocumentsBatchTransitionMethodsV0 for BatchTransition
fn all_document_purchases_amount( &self, ) -> Result<Option<Credits>, ProtocolError>
fn all_conflicting_index_collateral_voting_funds( &self, ) -> Result<Option<Credits>, ProtocolError>
fn set_transitions(&mut self, transitions: Vec<BatchedTransition>)
fn set_identity_contract_nonce( &mut self, identity_contract_nonce: IdentityNonce, )
async fn new_document_creation_transition_from_document<S: Signer<IdentityPublicKey>>( document: Document, document_type: DocumentTypeRef<'_>, entropy: [u8; 32], identity_public_key: &IdentityPublicKey, identity_contract_nonce: IdentityNonce, user_fee_increase: UserFeeIncrease, token_payment_info: Option<TokenPaymentInfo>, signer: &S, platform_version: &PlatformVersion, options: Option<StateTransitionCreationOptions>, ) -> Result<StateTransition, ProtocolError>
async fn new_document_replacement_transition_from_document<S: Signer<IdentityPublicKey>>( document: Document, document_type: DocumentTypeRef<'_>, identity_public_key: &IdentityPublicKey, identity_contract_nonce: IdentityNonce, user_fee_increase: UserFeeIncrease, token_payment_info: Option<TokenPaymentInfo>, signer: &S, platform_version: &PlatformVersion, options: Option<StateTransitionCreationOptions>, ) -> Result<StateTransition, ProtocolError>
async fn new_document_transfer_transition_from_document<S: Signer<IdentityPublicKey>>( document: Document, document_type: DocumentTypeRef<'_>, recipient_owner_id: Identifier, identity_public_key: &IdentityPublicKey, identity_contract_nonce: IdentityNonce, user_fee_increase: UserFeeIncrease, token_payment_info: Option<TokenPaymentInfo>, signer: &S, platform_version: &PlatformVersion, options: Option<StateTransitionCreationOptions>, ) -> Result<StateTransition, ProtocolError>
async fn new_document_deletion_transition_from_document<S: Signer<IdentityPublicKey>>( document: Document, document_type: DocumentTypeRef<'_>, identity_public_key: &IdentityPublicKey, identity_contract_nonce: IdentityNonce, user_fee_increase: UserFeeIncrease, token_payment_info: Option<TokenPaymentInfo>, signer: &S, platform_version: &PlatformVersion, options: Option<StateTransitionCreationOptions>, ) -> Result<StateTransition, ProtocolError>
async fn new_document_update_price_transition_from_document<S: Signer<IdentityPublicKey>>( document: Document, document_type: DocumentTypeRef<'_>, price: Credits, identity_public_key: &IdentityPublicKey, identity_contract_nonce: IdentityNonce, user_fee_increase: UserFeeIncrease, token_payment_info: Option<TokenPaymentInfo>, signer: &S, platform_version: &PlatformVersion, options: Option<StateTransitionCreationOptions>, ) -> Result<StateTransition, ProtocolError>
async fn new_document_purchase_transition_from_document<S: Signer<IdentityPublicKey>>( document: Document, document_type: DocumentTypeRef<'_>, new_owner_id: Identifier, price: Credits, identity_public_key: &IdentityPublicKey, identity_contract_nonce: IdentityNonce, user_fee_increase: UserFeeIncrease, token_payment_info: Option<TokenPaymentInfo>, signer: &S, platform_version: &PlatformVersion, options: Option<StateTransitionCreationOptions>, ) -> Result<StateTransition, ProtocolError>
fn combined_security_level_requirement( &self, get_data_contract_security_level_requirement: Option<impl Fn(Identifier, String) -> Result<SecurityLevel, ProtocolError>>, ) -> Result<Vec<SecurityLevel>, ProtocolError>
Source§impl DocumentsBatchTransitionMethodsV1 for BatchTransition
impl DocumentsBatchTransitionMethodsV1 for BatchTransition
Source§async fn new_token_mint_transition<S: Signer<IdentityPublicKey>>(
token_id: Identifier,
owner_id: Identifier,
data_contract_id: Identifier,
token_contract_position: TokenContractPosition,
amount: TokenAmount,
issued_to_identity_id: Option<Identifier>,
public_note: Option<String>,
using_group_info: Option<GroupStateTransitionInfoStatus>,
identity_public_key: &IdentityPublicKey,
identity_contract_nonce: IdentityNonce,
user_fee_increase: UserFeeIncrease,
signer: &S,
platform_version: &PlatformVersion,
options: Option<StateTransitionCreationOptions>,
) -> Result<StateTransition, ProtocolError>
async fn new_token_mint_transition<S: Signer<IdentityPublicKey>>( token_id: Identifier, owner_id: Identifier, data_contract_id: Identifier, token_contract_position: TokenContractPosition, amount: TokenAmount, issued_to_identity_id: Option<Identifier>, public_note: Option<String>, using_group_info: Option<GroupStateTransitionInfoStatus>, identity_public_key: &IdentityPublicKey, identity_contract_nonce: IdentityNonce, user_fee_increase: UserFeeIncrease, signer: &S, platform_version: &PlatformVersion, options: Option<StateTransitionCreationOptions>, ) -> Result<StateTransition, ProtocolError>
StateTransition to mint new tokens. Read moreSource§async fn new_token_burn_transition<S: Signer<IdentityPublicKey>>(
token_id: Identifier,
owner_id: Identifier,
data_contract_id: Identifier,
token_contract_position: u16,
amount: TokenAmount,
public_note: Option<String>,
using_group_info: Option<GroupStateTransitionInfoStatus>,
identity_public_key: &IdentityPublicKey,
identity_contract_nonce: IdentityNonce,
user_fee_increase: UserFeeIncrease,
signer: &S,
platform_version: &PlatformVersion,
options: Option<StateTransitionCreationOptions>,
) -> Result<StateTransition, ProtocolError>
async fn new_token_burn_transition<S: Signer<IdentityPublicKey>>( token_id: Identifier, owner_id: Identifier, data_contract_id: Identifier, token_contract_position: u16, amount: TokenAmount, public_note: Option<String>, using_group_info: Option<GroupStateTransitionInfoStatus>, identity_public_key: &IdentityPublicKey, identity_contract_nonce: IdentityNonce, user_fee_increase: UserFeeIncrease, signer: &S, platform_version: &PlatformVersion, options: Option<StateTransitionCreationOptions>, ) -> Result<StateTransition, ProtocolError>
StateTransition to burn tokens, permanently removing them from circulation. Read moreSource§async fn new_token_transfer_transition<S: Signer<IdentityPublicKey>>(
token_id: Identifier,
owner_id: Identifier,
data_contract_id: Identifier,
token_contract_position: u16,
amount: TokenAmount,
recipient_id: Identifier,
public_note: Option<String>,
shared_encrypted_note: Option<SharedEncryptedNote>,
private_encrypted_note: Option<PrivateEncryptedNote>,
identity_public_key: &IdentityPublicKey,
identity_contract_nonce: IdentityNonce,
user_fee_increase: UserFeeIncrease,
signer: &S,
platform_version: &PlatformVersion,
options: Option<StateTransitionCreationOptions>,
) -> Result<StateTransition, ProtocolError>
async fn new_token_transfer_transition<S: Signer<IdentityPublicKey>>( token_id: Identifier, owner_id: Identifier, data_contract_id: Identifier, token_contract_position: u16, amount: TokenAmount, recipient_id: Identifier, public_note: Option<String>, shared_encrypted_note: Option<SharedEncryptedNote>, private_encrypted_note: Option<PrivateEncryptedNote>, identity_public_key: &IdentityPublicKey, identity_contract_nonce: IdentityNonce, user_fee_increase: UserFeeIncrease, signer: &S, platform_version: &PlatformVersion, options: Option<StateTransitionCreationOptions>, ) -> Result<StateTransition, ProtocolError>
StateTransition to transfer tokens from one identity to another. Read moreSource§async fn new_token_shield_transition<S: Signer<IdentityPublicKey>>(
token_id: Identifier,
owner_id: Identifier,
data_contract_id: Identifier,
token_contract_position: u16,
amount: TokenAmount,
bundle: OrchardBundleParams,
identity_public_key: &IdentityPublicKey,
identity_contract_nonce: IdentityNonce,
user_fee_increase: UserFeeIncrease,
signer: &S,
platform_version: &PlatformVersion,
options: Option<StateTransitionCreationOptions>,
) -> Result<StateTransition, ProtocolError>
async fn new_token_shield_transition<S: Signer<IdentityPublicKey>>( token_id: Identifier, owner_id: Identifier, data_contract_id: Identifier, token_contract_position: u16, amount: TokenAmount, bundle: OrchardBundleParams, identity_public_key: &IdentityPublicKey, identity_contract_nonce: IdentityNonce, user_fee_increase: UserFeeIncrease, signer: &S, platform_version: &PlatformVersion, options: Option<StateTransitionCreationOptions>, ) -> Result<StateTransition, ProtocolError>
StateTransition moving amount of a token from owner_id’s identity token
balance into the token’s shielded pool. Read moreSource§async fn new_token_mint_to_pool_transition<S: Signer<IdentityPublicKey>>(
token_id: Identifier,
owner_id: Identifier,
data_contract_id: Identifier,
token_contract_position: u16,
amount: TokenAmount,
bundle: OrchardBundleParams,
public_note: Option<String>,
using_group_info: Option<GroupStateTransitionInfoStatus>,
identity_public_key: &IdentityPublicKey,
identity_contract_nonce: IdentityNonce,
user_fee_increase: UserFeeIncrease,
signer: &S,
platform_version: &PlatformVersion,
options: Option<StateTransitionCreationOptions>,
) -> Result<StateTransition, ProtocolError>
async fn new_token_mint_to_pool_transition<S: Signer<IdentityPublicKey>>( token_id: Identifier, owner_id: Identifier, data_contract_id: Identifier, token_contract_position: u16, amount: TokenAmount, bundle: OrchardBundleParams, public_note: Option<String>, using_group_info: Option<GroupStateTransitionInfoStatus>, identity_public_key: &IdentityPublicKey, identity_contract_nonce: IdentityNonce, user_fee_increase: UserFeeIncrease, signer: &S, platform_version: &PlatformVersion, options: Option<StateTransitionCreationOptions>, ) -> Result<StateTransition, ProtocolError>
StateTransition minting amount of a token straight into the token’s shielded
pool as the notes in bundle. owner_id must be authorized to mint; it signs and pays the
credits fee. A group action is set up exactly like a transparent mint. Read moreSource§async fn new_token_burn_from_pool_transition<S: Signer<IdentityPublicKey>>(
token_id: Identifier,
owner_id: Identifier,
data_contract_id: Identifier,
token_contract_position: u16,
amount: TokenAmount,
bundle: OrchardBundleParams,
public_note: Option<String>,
using_group_info: Option<GroupStateTransitionInfoStatus>,
identity_public_key: &IdentityPublicKey,
identity_contract_nonce: IdentityNonce,
user_fee_increase: UserFeeIncrease,
signer: &S,
platform_version: &PlatformVersion,
options: Option<StateTransitionCreationOptions>,
) -> Result<StateTransition, ProtocolError>
async fn new_token_burn_from_pool_transition<S: Signer<IdentityPublicKey>>( token_id: Identifier, owner_id: Identifier, data_contract_id: Identifier, token_contract_position: u16, amount: TokenAmount, bundle: OrchardBundleParams, public_note: Option<String>, using_group_info: Option<GroupStateTransitionInfoStatus>, identity_public_key: &IdentityPublicKey, identity_contract_nonce: IdentityNonce, user_fee_increase: UserFeeIncrease, signer: &S, platform_version: &PlatformVersion, options: Option<StateTransitionCreationOptions>, ) -> Result<StateTransition, ProtocolError>
StateTransition destroying amount of a token held in the token’s shielded
pool by spending the notes in bundle. owner_id must be authorized to burn; it signs
and pays the credits fee. Read moreSource§async fn new_token_claim_to_pool_transition<S: Signer<IdentityPublicKey>>(
token_id: Identifier,
owner_id: Identifier,
data_contract_id: Identifier,
token_contract_position: u16,
distribution_type: TokenDistributionType,
claim_up_to: Option<u64>,
bundle: OrchardBundleParams,
public_note: Option<String>,
identity_public_key: &IdentityPublicKey,
identity_contract_nonce: IdentityNonce,
user_fee_increase: UserFeeIncrease,
signer: &S,
platform_version: &PlatformVersion,
options: Option<StateTransitionCreationOptions>,
) -> Result<StateTransition, ProtocolError>
async fn new_token_claim_to_pool_transition<S: Signer<IdentityPublicKey>>( token_id: Identifier, owner_id: Identifier, data_contract_id: Identifier, token_contract_position: u16, distribution_type: TokenDistributionType, claim_up_to: Option<u64>, bundle: OrchardBundleParams, public_note: Option<String>, identity_public_key: &IdentityPublicKey, identity_contract_nonce: IdentityNonce, user_fee_increase: UserFeeIncrease, signer: &S, platform_version: &PlatformVersion, options: Option<StateTransitionCreationOptions>, ) -> Result<StateTransition, ProtocolError>
StateTransition claiming a distribution straight into the token’s shielded
pool as the notes in bundle. claim_up_to names the cycle-aligned moment a perpetual
claim pays out to, so the bundle’s value can be predicted; owner_id signs and pays the
credits fee.Source§async fn new_token_direct_purchase_to_pool_transition<S: Signer<IdentityPublicKey>>(
token_id: Identifier,
owner_id: Identifier,
data_contract_id: Identifier,
token_contract_position: u16,
token_count: TokenAmount,
total_agreed_price: Credits,
bundle: OrchardBundleParams,
identity_public_key: &IdentityPublicKey,
identity_contract_nonce: IdentityNonce,
user_fee_increase: UserFeeIncrease,
signer: &S,
platform_version: &PlatformVersion,
options: Option<StateTransitionCreationOptions>,
) -> Result<StateTransition, ProtocolError>
async fn new_token_direct_purchase_to_pool_transition<S: Signer<IdentityPublicKey>>( token_id: Identifier, owner_id: Identifier, data_contract_id: Identifier, token_contract_position: u16, token_count: TokenAmount, total_agreed_price: Credits, bundle: OrchardBundleParams, identity_public_key: &IdentityPublicKey, identity_contract_nonce: IdentityNonce, user_fee_increase: UserFeeIncrease, signer: &S, platform_version: &PlatformVersion, options: Option<StateTransitionCreationOptions>, ) -> Result<StateTransition, ProtocolError>
StateTransition buying token_count tokens for at most total_agreed_price
credits and receiving them shielded as the notes in bundle. owner_id pays the price
and the credits fee.Source§async fn new_token_unshield_transition<S: Signer<IdentityPublicKey>>(
token_id: Identifier,
owner_id: Identifier,
data_contract_id: Identifier,
token_contract_position: u16,
amount: TokenAmount,
recipient_id: Identifier,
bundle: OrchardBundleParams,
identity_public_key: &IdentityPublicKey,
identity_contract_nonce: IdentityNonce,
user_fee_increase: UserFeeIncrease,
signer: &S,
platform_version: &PlatformVersion,
options: Option<StateTransitionCreationOptions>,
) -> Result<StateTransition, ProtocolError>
async fn new_token_unshield_transition<S: Signer<IdentityPublicKey>>( token_id: Identifier, owner_id: Identifier, data_contract_id: Identifier, token_contract_position: u16, amount: TokenAmount, recipient_id: Identifier, bundle: OrchardBundleParams, identity_public_key: &IdentityPublicKey, identity_contract_nonce: IdentityNonce, user_fee_increase: UserFeeIncrease, signer: &S, platform_version: &PlatformVersion, options: Option<StateTransitionCreationOptions>, ) -> Result<StateTransition, ProtocolError>
StateTransition moving amount of a token out of the token’s shielded pool
into recipient_id’s identity token balance. owner_id signs and pays the credits fee. Read moreSource§async fn new_token_shielded_transfer_transition<S: Signer<IdentityPublicKey>>(
token_id: Identifier,
owner_id: Identifier,
data_contract_id: Identifier,
token_contract_position: u16,
bundle: OrchardBundleParams,
identity_public_key: &IdentityPublicKey,
identity_contract_nonce: IdentityNonce,
user_fee_increase: UserFeeIncrease,
signer: &S,
platform_version: &PlatformVersion,
options: Option<StateTransitionCreationOptions>,
) -> Result<StateTransition, ProtocolError>
async fn new_token_shielded_transfer_transition<S: Signer<IdentityPublicKey>>( token_id: Identifier, owner_id: Identifier, data_contract_id: Identifier, token_contract_position: u16, bundle: OrchardBundleParams, identity_public_key: &IdentityPublicKey, identity_contract_nonce: IdentityNonce, user_fee_increase: UserFeeIncrease, signer: &S, platform_version: &PlatformVersion, options: Option<StateTransitionCreationOptions>, ) -> Result<StateTransition, ProtocolError>
StateTransition transferring a token inside its shielded pool. owner_id
signs and pays the credits fee. Read moreSource§async fn new_token_freeze_transition<S: Signer<IdentityPublicKey>>(
token_id: Identifier,
owner_id: Identifier,
data_contract_id: Identifier,
token_contract_position: u16,
freeze_identity_id: Identifier,
public_note: Option<String>,
using_group_info: Option<GroupStateTransitionInfoStatus>,
identity_public_key: &IdentityPublicKey,
identity_contract_nonce: IdentityNonce,
user_fee_increase: UserFeeIncrease,
signer: &S,
platform_version: &PlatformVersion,
options: Option<StateTransitionCreationOptions>,
) -> Result<StateTransition, ProtocolError>
async fn new_token_freeze_transition<S: Signer<IdentityPublicKey>>( token_id: Identifier, owner_id: Identifier, data_contract_id: Identifier, token_contract_position: u16, freeze_identity_id: Identifier, public_note: Option<String>, using_group_info: Option<GroupStateTransitionInfoStatus>, identity_public_key: &IdentityPublicKey, identity_contract_nonce: IdentityNonce, user_fee_increase: UserFeeIncrease, signer: &S, platform_version: &PlatformVersion, options: Option<StateTransitionCreationOptions>, ) -> Result<StateTransition, ProtocolError>
StateTransition to freeze tokens belonging to a specific identity. Read moreSource§async fn new_token_unfreeze_transition<S: Signer<IdentityPublicKey>>(
token_id: Identifier,
owner_id: Identifier,
data_contract_id: Identifier,
token_contract_position: u16,
unfreeze_identity_id: Identifier,
public_note: Option<String>,
using_group_info: Option<GroupStateTransitionInfoStatus>,
identity_public_key: &IdentityPublicKey,
identity_contract_nonce: IdentityNonce,
user_fee_increase: UserFeeIncrease,
signer: &S,
platform_version: &PlatformVersion,
options: Option<StateTransitionCreationOptions>,
) -> Result<StateTransition, ProtocolError>
async fn new_token_unfreeze_transition<S: Signer<IdentityPublicKey>>( token_id: Identifier, owner_id: Identifier, data_contract_id: Identifier, token_contract_position: u16, unfreeze_identity_id: Identifier, public_note: Option<String>, using_group_info: Option<GroupStateTransitionInfoStatus>, identity_public_key: &IdentityPublicKey, identity_contract_nonce: IdentityNonce, user_fee_increase: UserFeeIncrease, signer: &S, platform_version: &PlatformVersion, options: Option<StateTransitionCreationOptions>, ) -> Result<StateTransition, ProtocolError>
StateTransition to unfreeze tokens previously frozen for a specific identity. Read moreSource§async fn new_token_destroy_frozen_funds_transition<S: Signer<IdentityPublicKey>>(
token_id: Identifier,
owner_id: Identifier,
data_contract_id: Identifier,
token_contract_position: u16,
frozen_identity_id: Identifier,
public_note: Option<String>,
using_group_info: Option<GroupStateTransitionInfoStatus>,
identity_public_key: &IdentityPublicKey,
identity_contract_nonce: IdentityNonce,
user_fee_increase: UserFeeIncrease,
signer: &S,
platform_version: &PlatformVersion,
options: Option<StateTransitionCreationOptions>,
) -> Result<StateTransition, ProtocolError>
async fn new_token_destroy_frozen_funds_transition<S: Signer<IdentityPublicKey>>( token_id: Identifier, owner_id: Identifier, data_contract_id: Identifier, token_contract_position: u16, frozen_identity_id: Identifier, public_note: Option<String>, using_group_info: Option<GroupStateTransitionInfoStatus>, identity_public_key: &IdentityPublicKey, identity_contract_nonce: IdentityNonce, user_fee_increase: UserFeeIncrease, signer: &S, platform_version: &PlatformVersion, options: Option<StateTransitionCreationOptions>, ) -> Result<StateTransition, ProtocolError>
StateTransition to destroy previously frozen tokens, removing them permanently from supply. Read moreSource§async fn new_token_emergency_action_transition<S: Signer<IdentityPublicKey>>(
token_id: Identifier,
owner_id: Identifier,
data_contract_id: Identifier,
token_contract_position: u16,
emergency_action: TokenEmergencyAction,
public_note: Option<String>,
using_group_info: Option<GroupStateTransitionInfoStatus>,
identity_public_key: &IdentityPublicKey,
identity_contract_nonce: IdentityNonce,
user_fee_increase: UserFeeIncrease,
signer: &S,
platform_version: &PlatformVersion,
options: Option<StateTransitionCreationOptions>,
) -> Result<StateTransition, ProtocolError>
async fn new_token_emergency_action_transition<S: Signer<IdentityPublicKey>>( token_id: Identifier, owner_id: Identifier, data_contract_id: Identifier, token_contract_position: u16, emergency_action: TokenEmergencyAction, public_note: Option<String>, using_group_info: Option<GroupStateTransitionInfoStatus>, identity_public_key: &IdentityPublicKey, identity_contract_nonce: IdentityNonce, user_fee_increase: UserFeeIncrease, signer: &S, platform_version: &PlatformVersion, options: Option<StateTransitionCreationOptions>, ) -> Result<StateTransition, ProtocolError>
StateTransition to execute an emergency action for a token. Read moreSource§async fn new_token_config_update_transition<S: Signer<IdentityPublicKey>>(
token_id: Identifier,
owner_id: Identifier,
data_contract_id: Identifier,
token_contract_position: u16,
update_token_configuration_item: TokenConfigurationChangeItem,
public_note: Option<String>,
using_group_info: Option<GroupStateTransitionInfoStatus>,
identity_public_key: &IdentityPublicKey,
identity_contract_nonce: IdentityNonce,
user_fee_increase: UserFeeIncrease,
signer: &S,
platform_version: &PlatformVersion,
options: Option<StateTransitionCreationOptions>,
) -> Result<StateTransition, ProtocolError>
async fn new_token_config_update_transition<S: Signer<IdentityPublicKey>>( token_id: Identifier, owner_id: Identifier, data_contract_id: Identifier, token_contract_position: u16, update_token_configuration_item: TokenConfigurationChangeItem, public_note: Option<String>, using_group_info: Option<GroupStateTransitionInfoStatus>, identity_public_key: &IdentityPublicKey, identity_contract_nonce: IdentityNonce, user_fee_increase: UserFeeIncrease, signer: &S, platform_version: &PlatformVersion, options: Option<StateTransitionCreationOptions>, ) -> Result<StateTransition, ProtocolError>
StateTransition to update the configuration of a token. Read moreSource§async fn new_token_claim_transition<S: Signer<IdentityPublicKey>>(
token_id: Identifier,
owner_id: Identifier,
data_contract_id: Identifier,
token_contract_position: u16,
distribution_type: TokenDistributionType,
public_note: Option<String>,
identity_public_key: &IdentityPublicKey,
identity_contract_nonce: IdentityNonce,
user_fee_increase: UserFeeIncrease,
signer: &S,
platform_version: &PlatformVersion,
options: Option<StateTransitionCreationOptions>,
) -> Result<StateTransition, ProtocolError>
async fn new_token_claim_transition<S: Signer<IdentityPublicKey>>( token_id: Identifier, owner_id: Identifier, data_contract_id: Identifier, token_contract_position: u16, distribution_type: TokenDistributionType, public_note: Option<String>, identity_public_key: &IdentityPublicKey, identity_contract_nonce: IdentityNonce, user_fee_increase: UserFeeIncrease, signer: &S, platform_version: &PlatformVersion, options: Option<StateTransitionCreationOptions>, ) -> Result<StateTransition, ProtocolError>
StateTransition to claim tokens from a distribution source. Read moreSource§async fn new_token_change_direct_purchase_price_transition<S: Signer<IdentityPublicKey>>(
token_id: Identifier,
owner_id: Identifier,
data_contract_id: Identifier,
token_contract_position: u16,
token_pricing_schedule: Option<TokenPricingSchedule>,
public_note: Option<String>,
using_group_info: Option<GroupStateTransitionInfoStatus>,
identity_public_key: &IdentityPublicKey,
identity_contract_nonce: IdentityNonce,
user_fee_increase: UserFeeIncrease,
signer: &S,
platform_version: &PlatformVersion,
options: Option<StateTransitionCreationOptions>,
) -> Result<StateTransition, ProtocolError>
async fn new_token_change_direct_purchase_price_transition<S: Signer<IdentityPublicKey>>( token_id: Identifier, owner_id: Identifier, data_contract_id: Identifier, token_contract_position: u16, token_pricing_schedule: Option<TokenPricingSchedule>, public_note: Option<String>, using_group_info: Option<GroupStateTransitionInfoStatus>, identity_public_key: &IdentityPublicKey, identity_contract_nonce: IdentityNonce, user_fee_increase: UserFeeIncrease, signer: &S, platform_version: &PlatformVersion, options: Option<StateTransitionCreationOptions>, ) -> Result<StateTransition, ProtocolError>
StateTransition to set or update the price of a token for direct purchase. Read moreSource§async fn new_token_direct_purchase_transition<S: Signer<IdentityPublicKey>>(
token_id: Identifier,
owner_id: Identifier,
data_contract_id: Identifier,
token_contract_position: u16,
amount: TokenAmount,
total_agreed_price: Credits,
identity_public_key: &IdentityPublicKey,
identity_contract_nonce: IdentityNonce,
user_fee_increase: UserFeeIncrease,
signer: &S,
platform_version: &PlatformVersion,
options: Option<StateTransitionCreationOptions>,
) -> Result<StateTransition, ProtocolError>
async fn new_token_direct_purchase_transition<S: Signer<IdentityPublicKey>>( token_id: Identifier, owner_id: Identifier, data_contract_id: Identifier, token_contract_position: u16, amount: TokenAmount, total_agreed_price: Credits, identity_public_key: &IdentityPublicKey, identity_contract_nonce: IdentityNonce, user_fee_increase: UserFeeIncrease, signer: &S, platform_version: &PlatformVersion, options: Option<StateTransitionCreationOptions>, ) -> Result<StateTransition, ProtocolError>
StateTransition to perform a direct purchase of tokens by a user. Read moreSource§impl Encode for BatchTransition
impl Encode for BatchTransition
Source§impl FeatureVersioned for BatchTransition
impl FeatureVersioned for BatchTransition
fn feature_version(&self) -> FeatureVersion
Source§impl From<BatchTransition> for StateTransition
impl From<BatchTransition> for StateTransition
Source§fn from(value: BatchTransition) -> Self
fn from(value: BatchTransition) -> Self
Source§impl From<BatchTransitionV0> for BatchTransition
impl From<BatchTransitionV0> for BatchTransition
Source§fn from(value: BatchTransitionV0) -> Self
fn from(value: BatchTransitionV0) -> Self
Source§impl From<BatchTransitionV1> for BatchTransition
impl From<BatchTransitionV1> for BatchTransition
Source§fn from(value: BatchTransitionV1) -> Self
fn from(value: BatchTransitionV1) -> Self
Source§impl JsonConvertible for BatchTransition
Available on crate features json-conversion and serde-conversion only.
impl JsonConvertible for BatchTransition
json-conversion and serde-conversion only.Source§impl OptionallyAssetLockProved for BatchTransition
impl OptionallyAssetLockProved for BatchTransition
Source§fn optional_asset_lock_proof(&self) -> Option<&AssetLockProof>
fn optional_asset_lock_proof(&self) -> Option<&AssetLockProof>
Source§impl PartialEq for BatchTransition
impl PartialEq for BatchTransition
Source§impl PlatformDeserializableTrusted for BatchTransition
impl PlatformDeserializableTrusted for BatchTransition
Source§fn deserialize_from_bytes_trusted_with_bytes_len(
data: &[u8],
) -> Result<(Self, usize), ProtocolError>where
Self: Sized,
fn deserialize_from_bytes_trusted_with_bytes_len(
data: &[u8],
) -> Result<(Self, usize), ProtocolError>where
Self: Sized,
Source§fn deserialize_from_bytes_trusted_no_limit_with_bytes_len(
data: &[u8],
) -> Result<(Self, usize), ProtocolError>where
Self: Sized,
fn deserialize_from_bytes_trusted_no_limit_with_bytes_len(
data: &[u8],
) -> Result<(Self, usize), ProtocolError>where
Self: Sized,
Self::deserialize_from_bytes_trusted_with_bytes_len without the
byte budget.Source§fn deserialize_from_bytes_trusted(data: &[u8]) -> Result<Self, ProtocolError>where
Self: Sized,
fn deserialize_from_bytes_trusted(data: &[u8]) -> Result<Self, ProtocolError>where
Self: Sized,
Self::deserialize_from_bytes_trusted_exact
refuses them.fn deserialize_from_bytes_trusted_no_limit(
data: &[u8],
) -> Result<Self, ProtocolError>where
Self: Sized,
Source§fn deserialize_from_bytes_trusted_exact(
data: &[u8],
) -> Result<Self, ProtocolError>where
Self: Sized,
fn deserialize_from_bytes_trusted_exact(
data: &[u8],
) -> Result<Self, ProtocolError>where
Self: Sized,
Self::deserialize_from_bytes_trusted that also refuses bytes left
over after the value.Source§impl PlatformDeserializableUntrusted for BatchTransition
impl PlatformDeserializableUntrusted for BatchTransition
Source§fn deserialize_from_bytes_untrusted_with_bytes_len(
data: &[u8],
) -> Result<(Self, usize), ProtocolError>where
Self: Sized,
fn deserialize_from_bytes_untrusted_with_bytes_len(
data: &[u8],
) -> Result<(Self, usize), ProtocolError>where
Self: Sized,
Source§fn deserialize_from_bytes_untrusted_no_limit_with_bytes_len(
data: &[u8],
) -> Result<(Self, usize), ProtocolError>where
Self: Sized,
fn deserialize_from_bytes_untrusted_no_limit_with_bytes_len(
data: &[u8],
) -> Result<(Self, usize), ProtocolError>where
Self: Sized,
Self::deserialize_from_bytes_untrusted_with_bytes_len without the
byte budget.Source§fn deserialize_from_bytes_untrusted(data: &[u8]) -> Result<Self, ProtocolError>where
Self: Sized,
fn deserialize_from_bytes_untrusted(data: &[u8]) -> Result<Self, ProtocolError>where
Self: Sized,
Self::deserialize_from_bytes_untrusted_exact
refuses them.fn deserialize_from_bytes_untrusted_no_limit(
data: &[u8],
) -> Result<Self, ProtocolError>where
Self: Sized,
Source§fn deserialize_from_bytes_untrusted_exact(
data: &[u8],
) -> Result<Self, ProtocolError>where
Self: Sized,
fn deserialize_from_bytes_untrusted_exact(
data: &[u8],
) -> Result<Self, ProtocolError>where
Self: Sized,
Self::deserialize_from_bytes_untrusted that also refuses bytes left
over after the value. Read moreSource§impl PlatformVersionEncode for BatchTransition
impl PlatformVersionEncode for BatchTransition
Source§fn platform_encode<__E: Encoder>(
&self,
encoder: &mut __E,
platform_version: &PlatformVersion,
) -> Result<(), EncodeError>
fn platform_encode<__E: Encoder>( &self, encoder: &mut __E, platform_version: &PlatformVersion, ) -> Result<(), EncodeError>
Source§impl<'__de> PlatformVersionedBorrowDecode<'__de> for BatchTransition
impl<'__de> PlatformVersionedBorrowDecode<'__de> for BatchTransition
Source§fn platform_versioned_borrow_decode<__D: BorrowDecoder<'__de, Context = BincodeContext>>(
decoder: &mut __D,
platform_version: &PlatformVersion,
) -> Result<Self, DecodeError>
fn platform_versioned_borrow_decode<__D: BorrowDecoder<'__de, Context = BincodeContext>>( decoder: &mut __D, platform_version: &PlatformVersion, ) -> Result<Self, DecodeError>
Source§impl PlatformVersionedDecode for BatchTransition
impl PlatformVersionedDecode for BatchTransition
Source§fn platform_versioned_decode<__D: Decoder<Context = BincodeContext>>(
decoder: &mut __D,
platform_version: &PlatformVersion,
) -> Result<Self, DecodeError>
fn platform_versioned_decode<__D: Decoder<Context = BincodeContext>>( decoder: &mut __D, platform_version: &PlatformVersion, ) -> Result<Self, DecodeError>
Source§impl Serialize for BatchTransition
impl Serialize for BatchTransition
Source§impl Signable for BatchTransition
impl Signable for BatchTransition
fn signable_bytes(&self) -> Result<Vec<u8>, ProtocolError>
Source§impl StateTransitionEstimatedFeeValidation for BatchTransition
impl StateTransitionEstimatedFeeValidation for BatchTransition
Source§fn calculate_min_required_fee(
&self,
platform_version: &PlatformVersion,
) -> Result<Credits, ProtocolError>
fn calculate_min_required_fee( &self, platform_version: &PlatformVersion, ) -> Result<Credits, ProtocolError>
Source§impl StateTransitionFieldTypes for BatchTransition
impl StateTransitionFieldTypes for BatchTransition
fn binary_property_paths() -> Vec<&'static str>
fn identifiers_property_paths() -> Vec<&'static str>
fn signature_property_paths() -> Vec<&'static str>
Source§impl StateTransitionHasUserFeeIncrease for BatchTransition
impl StateTransitionHasUserFeeIncrease for BatchTransition
Source§fn user_fee_increase(&self) -> UserFeeIncrease
fn user_fee_increase(&self) -> UserFeeIncrease
Source§fn set_user_fee_increase(&mut self, user_fee_increase: UserFeeIncrease)
fn set_user_fee_increase(&mut self, user_fee_increase: UserFeeIncrease)
Source§impl StateTransitionIdentityEstimatedFeeValidation for BatchTransition
impl StateTransitionIdentityEstimatedFeeValidation for BatchTransition
Source§fn validate_estimated_fee(
&self,
identity_known_balance: Credits,
platform_version: &PlatformVersion,
) -> Result<SimpleConsensusValidationResult, ProtocolError>
fn validate_estimated_fee( &self, identity_known_balance: Credits, platform_version: &PlatformVersion, ) -> Result<SimpleConsensusValidationResult, ProtocolError>
Source§impl StateTransitionIdentitySigned for BatchTransition
impl StateTransitionIdentitySigned for BatchTransition
fn signature_public_key_id(&self) -> KeyID
fn set_signature_public_key_id(&mut self, key_id: KeyID)
Source§fn security_level_requirement(&self, purpose: Purpose) -> Vec<SecurityLevel>
fn security_level_requirement(&self, purpose: Purpose) -> Vec<SecurityLevel>
Source§fn purpose_requirement(&self) -> Vec<Purpose>
fn purpose_requirement(&self) -> Vec<Purpose>
Source§fn verify_public_key_level_and_purpose(
&self,
public_key: &IdentityPublicKey,
options: StateTransitionSigningOptions,
) -> Result<(), ProtocolError>
fn verify_public_key_level_and_purpose( &self, public_key: &IdentityPublicKey, options: StateTransitionSigningOptions, ) -> Result<(), ProtocolError>
fn verify_public_key_is_enabled( &self, public_key: &IdentityPublicKey, ) -> Result<(), ProtocolError>
Source§impl StateTransitionLike for BatchTransition
impl StateTransitionLike for BatchTransition
Source§fn modified_data_ids(&self) -> Vec<Identifier>
fn modified_data_ids(&self) -> Vec<Identifier>
Returns ID of the created contract
Source§fn state_transition_type(&self) -> StateTransitionType
fn state_transition_type(&self) -> StateTransitionType
returns the type of State Transition
Source§fn state_transition_protocol_version(&self) -> FeatureVersion
fn state_transition_protocol_version(&self) -> FeatureVersion
Source§fn unique_identifiers(&self) -> Vec<String>
fn unique_identifiers(&self) -> Vec<String>
Source§fn is_document_state_transition(&self) -> bool
fn is_document_state_transition(&self) -> bool
Source§fn is_data_contract_state_transition(&self) -> bool
fn is_data_contract_state_transition(&self) -> bool
Source§fn is_identity_state_transition(&self) -> bool
fn is_identity_state_transition(&self) -> bool
Source§fn is_voting_state_transition(&self) -> bool
fn is_voting_state_transition(&self) -> bool
Source§impl StateTransitionOwned for BatchTransition
impl StateTransitionOwned for BatchTransition
Source§fn owner_id(&self) -> Identifier
fn owner_id(&self) -> Identifier
impl StructuralPartialEq for BatchTransition
Source§impl ValueConvertible for BatchTransition
Available on crate features serde-conversion and value-conversion only.
impl ValueConvertible for BatchTransition
serde-conversion and value-conversion only.fn to_object(&self) -> Result<Value, ProtocolError>where
Self: Sized,
fn into_object(self) -> Result<Value, ProtocolError>where
Self: Sized,
fn from_object(value: Value) -> Result<Self, ProtocolError>where
Self: Sized,
fn from_object_ref(value: &Value) -> Result<Self, ProtocolError>where
Self: Sized,
Auto Trait Implementations§
impl Freeze for BatchTransition
impl RefUnwindSafe for BatchTransition
impl Send for BatchTransition
impl Sync for BatchTransition
impl Unpin for BatchTransition
impl UnsafeUnpin for BatchTransition
impl UnwindSafe for BatchTransition
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Conv for T
impl<T> Conv for T
§impl<T> CostsExt for T
impl<T> CostsExt for T
§fn wrap_with_cost(self, cost: OperationCost) -> CostContext<Self>where
Self: Sized,
fn wrap_with_cost(self, cost: OperationCost) -> CostContext<Self>where
Self: Sized,
CostContext object with provided costs.§fn wrap_fn_cost(
self,
f: impl FnOnce(&Self) -> OperationCost,
) -> CostContext<Self>where
Self: Sized,
fn wrap_fn_cost(
self,
f: impl FnOnce(&Self) -> OperationCost,
) -> CostContext<Self>where
Self: Sized,
CostContext object with costs computed using the
value getting wrapped.§impl<'de, T> DefaultBorrowDecode<'de> for Twhere
T: BorrowDecode<'de, ()>,
impl<'de, T> DefaultBorrowDecode<'de> for Twhere
T: BorrowDecode<'de, ()>,
fn borrow_decode<D>(decoder: &mut D) -> Result<Self, DecodeError>
§impl<T> DefaultDecode for T
impl<T> DefaultDecode for T
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
§impl<T> FmtForward for T
impl<T> FmtForward for T
§fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
self to use its Binary implementation when Debug-formatted.§fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
self to use its Display implementation when
Debug-formatted.§fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
self to use its LowerExp implementation when
Debug-formatted.§fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
self to use its LowerHex implementation when
Debug-formatted.§fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
self to use its Octal implementation when Debug-formatted.§fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
self to use its Pointer implementation when
Debug-formatted.§fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
self to use its UpperExp implementation when
Debug-formatted.§fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
self to use its UpperHex implementation when
Debug-formatted.§fn fmt_list(self) -> FmtList<Self>where
&'a Self: for<'a> IntoIterator,
fn fmt_list(self) -> FmtList<Self>where
&'a Self: for<'a> IntoIterator,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more§impl<T, U> IntoOnNetwork<U> for Twhere
U: FromOnNetwork<T>,
impl<T, U> IntoOnNetwork<U> for Twhere
U: FromOnNetwork<T>,
§fn into_on_network(self, network: Network) -> U
fn into_on_network(self, network: Network) -> U
Calls U::from_on_network(self).
§impl<T, U> IntoPlatformVersioned<U> for Twhere
U: FromPlatformVersioned<T>,
impl<T, U> IntoPlatformVersioned<U> for Twhere
U: FromPlatformVersioned<T>,
§fn into_platform_versioned(self, platform_version: &PlatformVersion) -> U
fn into_platform_versioned(self, platform_version: &PlatformVersion) -> U
§impl<T> Pipe for Twhere
T: ?Sized,
impl<T> Pipe for Twhere
T: ?Sized,
§fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
§fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
self and passes that borrow into the pipe function. Read more§fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
self and passes that borrow into the pipe function. Read more§fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
§fn pipe_borrow_mut<'a, B, R>(
&'a mut self,
func: impl FnOnce(&'a mut B) -> R,
) -> R
fn pipe_borrow_mut<'a, B, R>( &'a mut self, func: impl FnOnce(&'a mut B) -> R, ) -> R
§fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
self, then passes self.as_ref() into the pipe function.§fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
self, then passes self.as_mut() into the pipe
function.§fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
self, then passes self.deref() into the pipe function.§impl<T> Pointable for T
impl<T> Pointable for T
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
§impl<T> Tap for T
impl<T> Tap for T
§fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
Borrow<B> of a value. Read more§fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
BorrowMut<B> of a value. Read more§fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
AsRef<R> view of a value. Read more§fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
AsMut<R> view of a value. Read more§fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
Deref::Target of a value. Read more§fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
Deref::Target of a value. Read more§fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
.tap() only in debug builds, and is erased in release builds.§fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
.tap_mut() only in debug builds, and is erased in release
builds.§fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
.tap_borrow() only in debug builds, and is erased in release
builds.§fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
.tap_borrow_mut() only in debug builds, and is erased in release
builds.§fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
.tap_ref() only in debug builds, and is erased in release
builds.§fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
.tap_ref_mut() only in debug builds, and is erased in release
builds.§fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
.tap_deref() only in debug builds, and is erased in release
builds.