Enum TransactionData
#[non_exhaustive]pub enum TransactionData {
V1(TransactionV1),
}Expand description
Transaction
§BCS
The BCS serialized form for this type is defined by the following ABNF:
transaction = %d00 transaction-v1
transaction-v1 = transaction-kind address gas-payment transaction-expirationVariants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
V1(TransactionV1)
Implementations§
§impl Transaction
impl Transaction
pub fn digest(&self) -> Digest
pub fn from_bcs(bytes: &[u8]) -> Result<Transaction, Error>
pub fn from_bcs(bytes: &[u8]) -> Result<Transaction, Error>
Deserialize a transaction from a Vec<u8> of BCS bytes.
pub fn from_base64(bytes: &str) -> Result<Transaction, Error>
pub fn from_base64(bytes: &str) -> Result<Transaction, Error>
Deserialize a transaction from a base64-encoded string.
§impl Transaction
impl Transaction
pub fn signing_digest(&self) -> [u8; 32]
pub fn signing_digest_hex(&self) -> String
§impl Transaction
impl Transaction
pub fn as_v1(&self) -> &TransactionV1
pub fn as_v1(&self) -> &TransactionV1
Converts this into a v1 if it is a v1 variant, or panics otherwise.
pub fn as_v1_mut(&mut self) -> &mut TransactionV1
pub fn as_v1_mut(&mut self) -> &mut TransactionV1
Converts this into a mut v1 if it is a v1 variant, or panics otherwise.
pub fn as_v1_opt(&self) -> Option<&TransactionV1>
pub fn as_v1_opt(&self) -> Option<&TransactionV1>
Converts this into a v1 if it is a v1 variant, or returns None otherwise.
pub fn as_v1_mut_opt(&mut self) -> Option<&mut TransactionV1>
pub fn as_v1_mut_opt(&mut self) -> Option<&mut TransactionV1>
Converts this into a mut v1 if it is a v1 variant, or returns None otherwise.
pub fn into_v1_opt(self) -> Option<TransactionV1>
pub fn into_v1_opt(self) -> Option<TransactionV1>
Converts this into a v1 if it is a v1 variant, or returns None otherwise.
pub fn into_v1(self) -> TransactionV1
pub fn into_v1(self) -> TransactionV1
Converts this into a v1 if it is a v1 variant, or panics otherwise.
Trait Implementations§
§impl Arbitrary for Transaction
impl Arbitrary for Transaction
§type Parameters = ()
type Parameters = ()
The type of parameters that
arbitrary_with accepts for configuration
of the generated Strategy. Parameters must implement Default.§type Strategy = BoxedStrategy<Transaction>
type Strategy = BoxedStrategy<Transaction>
The type of
Strategy used to generate values of type Self.§fn arbitrary_with(
args_shared: <Transaction as Arbitrary>::Parameters,
) -> <Transaction as Arbitrary>::Strategy
fn arbitrary_with( args_shared: <Transaction as Arbitrary>::Parameters, ) -> <Transaction as Arbitrary>::Strategy
§impl Clone for Transaction
impl Clone for Transaction
§fn clone(&self) -> Transaction
fn clone(&self) -> Transaction
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read more§impl Debug for Transaction
impl Debug for Transaction
§impl<'de> Deserialize<'de> for Transaction
impl<'de> Deserialize<'de> for Transaction
§fn deserialize<__D>(
__deserializer: __D,
) -> Result<Transaction, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<Transaction, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
§impl From<TransactionV1> for Transaction
impl From<TransactionV1> for Transaction
§fn from(v1: TransactionV1) -> Transaction
fn from(v1: TransactionV1) -> Transaction
Converts to this type from the input type.
§impl Hash for Transaction
impl Hash for Transaction
§impl PartialEq for Transaction
impl PartialEq for Transaction
§impl Serialize for Transaction
impl Serialize for Transaction
§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Serialize this value into the given Serde serializer. Read more
Source§impl TransactionDataAPI for TransactionData
impl TransactionDataAPI for TransactionData
Source§fn sender(&self) -> IotaAddress
fn sender(&self) -> IotaAddress
Returns the address of the transaction sender.
Source§fn kind(&self) -> &TransactionKind
fn kind(&self) -> &TransactionKind
Returns a reference to the transaction kind.
Source§fn kind_mut(&mut self) -> &mut TransactionKind
fn kind_mut(&mut self) -> &mut TransactionKind
Returns a mutable reference to the transaction kind.
Source§fn into_kind(self) -> TransactionKind
fn into_kind(self) -> TransactionKind
Consumes self and returns the transaction kind.
Source§fn signers(&self) -> NonEmpty<IotaAddress>
fn signers(&self) -> NonEmpty<IotaAddress>
Returns the transaction signer(s). Includes both the sender and the gas
owner if they differ (i.e. for sponsored transactions).
Source§fn gas_data(&self) -> &GasData
fn gas_data(&self) -> &GasData
Returns a reference to the gas data (owner, payment objects, price,
budget).
Source§fn gas_owner(&self) -> IotaAddress
fn gas_owner(&self) -> IotaAddress
Returns the address that owns the gas payment objects.
Source§fn gas_budget(&self) -> u64
fn gas_budget(&self) -> u64
Returns the gas budget for this transaction.
Source§fn expiration(&self) -> &TransactionExpiration
fn expiration(&self) -> &TransactionExpiration
Returns the transaction expiration.
Returns a list of the transaction data shared input objects. Read more
Source§fn move_calls(&self) -> Vec<(&ObjectID, &str, &str)>
fn move_calls(&self) -> Vec<(&ObjectID, &str, &str)>
Returns a list of Move calls as
(package_id, module_name, function_name) tuples.Source§fn input_objects(&self) -> UserInputResult<Vec<InputObjectKind>>
fn input_objects(&self) -> UserInputResult<Vec<InputObjectKind>>
Returns all input objects required by this transaction.
Source§fn receiving_objects(&self) -> Vec<ObjectRef>
fn receiving_objects(&self) -> Vec<ObjectRef>
Returns object references for all objects being received in this
transaction.
Source§fn validity_check(&self, config: &ProtocolConfig) -> UserInputResult
fn validity_check(&self, config: &ProtocolConfig) -> UserInputResult
Validates the transaction data against the given protocol config,
including gas checks.
Source§fn validity_check_no_gas_check(
&self,
config: &ProtocolConfig,
) -> UserInputResult
fn validity_check_no_gas_check( &self, config: &ProtocolConfig, ) -> UserInputResult
Validates the transaction data against the given protocol config,
skipping gas-related checks.
Source§fn is_sponsored_tx(&self) -> bool
fn is_sponsored_tx(&self) -> bool
Check if the transaction is sponsored (namely gas owner != sender)
Source§fn check_sponsorship(&self) -> UserInputResult
fn check_sponsorship(&self) -> UserInputResult
Check if the transaction is compliant with sponsorship.
Source§fn is_end_of_epoch_tx(&self) -> bool
fn is_end_of_epoch_tx(&self) -> bool
returns true if the transaction is one that is specially sequenced to
run at the very end of the epoch
Source§fn is_system_tx(&self) -> bool
fn is_system_tx(&self) -> bool
Returns
true if this is a system transaction.Source§fn is_genesis_tx(&self) -> bool
fn is_genesis_tx(&self) -> bool
Returns
true if this is the genesis transaction.Source§fn sender_mut_for_testing(&mut self) -> &mut IotaAddress
fn sender_mut_for_testing(&mut self) -> &mut IotaAddress
Returns a mutable reference to the sender address. Testing only.
Source§fn gas_data_mut(&mut self) -> &mut GasData
fn gas_data_mut(&mut self) -> &mut GasData
Returns a mutable reference to the gas data.
Source§fn expiration_mut_for_testing(&mut self) -> &mut TransactionExpiration
fn expiration_mut_for_testing(&mut self) -> &mut TransactionExpiration
Returns a mutable reference to the expiration. Testing only.
Source§fn new_system_transaction(kind: TransactionKind) -> TransactionData
fn new_system_transaction(kind: TransactionKind) -> TransactionData
Creates a new system transaction with no gas payment. Used for
validator-initiated transactions (epoch changes, checkpoints, etc.).
Source§fn new(
kind: TransactionKind,
sender: IotaAddress,
gas_payment: ObjectRef,
gas_budget: u64,
gas_price: u64,
) -> TransactionData
fn new( kind: TransactionKind, sender: IotaAddress, gas_payment: ObjectRef, gas_budget: u64, gas_price: u64, ) -> TransactionData
Creates a new transaction with a single gas payment coin. The sender
is also the gas owner.
Source§fn new_with_gas_coins(
kind: TransactionKind,
sender: IotaAddress,
gas_payment: Vec<ObjectRef>,
gas_budget: u64,
gas_price: u64,
) -> TransactionData
fn new_with_gas_coins( kind: TransactionKind, sender: IotaAddress, gas_payment: Vec<ObjectRef>, gas_budget: u64, gas_price: u64, ) -> TransactionData
Creates a new transaction with multiple gas payment coins. The sender
is also the gas owner.
Source§fn new_with_gas_coins_allow_sponsor(
kind: TransactionKind,
sender: IotaAddress,
gas_payment: Vec<ObjectRef>,
gas_budget: u64,
gas_price: u64,
gas_sponsor: IotaAddress,
) -> TransactionData
fn new_with_gas_coins_allow_sponsor( kind: TransactionKind, sender: IotaAddress, gas_payment: Vec<ObjectRef>, gas_budget: u64, gas_price: u64, gas_sponsor: IotaAddress, ) -> TransactionData
Creates a new transaction with multiple gas payment coins and a
separate gas sponsor. Use this for sponsored transactions where
the gas owner differs from the sender.
Source§fn new_with_gas_data(
kind: TransactionKind,
sender: IotaAddress,
gas_data: GasData,
) -> TransactionData
fn new_with_gas_data( kind: TransactionKind, sender: IotaAddress, gas_data: GasData, ) -> TransactionData
Creates a new transaction from a pre-built
GasData struct.Source§fn new_move_call(
sender: IotaAddress,
package: ObjectID,
module: Identifier,
function: Identifier,
type_arguments: Vec<TypeTag>,
gas_payment: ObjectRef,
arguments: Vec<CallArg>,
gas_budget: u64,
gas_price: u64,
) -> Result<TransactionData>
fn new_move_call( sender: IotaAddress, package: ObjectID, module: Identifier, function: Identifier, type_arguments: Vec<TypeTag>, gas_payment: ObjectRef, arguments: Vec<CallArg>, gas_budget: u64, gas_price: u64, ) -> Result<TransactionData>
Creates a transaction that calls a single Move function with a single
gas payment coin.
Source§fn new_move_call_with_gas_coins(
sender: IotaAddress,
package: ObjectID,
module: Identifier,
function: Identifier,
type_arguments: Vec<TypeTag>,
gas_payment: Vec<ObjectRef>,
arguments: Vec<CallArg>,
gas_budget: u64,
gas_price: u64,
) -> Result<TransactionData>
fn new_move_call_with_gas_coins( sender: IotaAddress, package: ObjectID, module: Identifier, function: Identifier, type_arguments: Vec<TypeTag>, gas_payment: Vec<ObjectRef>, arguments: Vec<CallArg>, gas_budget: u64, gas_price: u64, ) -> Result<TransactionData>
Creates a transaction that calls a single Move function with multiple
gas payment coins.
Source§fn new_transfer(
recipient: IotaAddress,
object_ref: ObjectRef,
sender: IotaAddress,
gas_payment: ObjectRef,
gas_budget: u64,
gas_price: u64,
) -> TransactionData
fn new_transfer( recipient: IotaAddress, object_ref: ObjectRef, sender: IotaAddress, gas_payment: ObjectRef, gas_budget: u64, gas_price: u64, ) -> TransactionData
Creates a transaction that transfers an object to a recipient.
Source§fn new_transfer_iota(
recipient: IotaAddress,
sender: IotaAddress,
amount: Option<u64>,
gas_payment: ObjectRef,
gas_budget: u64,
gas_price: u64,
) -> TransactionData
fn new_transfer_iota( recipient: IotaAddress, sender: IotaAddress, amount: Option<u64>, gas_payment: ObjectRef, gas_budget: u64, gas_price: u64, ) -> TransactionData
Creates a transaction that transfers IOTA coins to a recipient.
If
amount is None, the entire gas coin balance (minus gas fees)
is transferred.Source§fn new_transfer_iota_allow_sponsor(
recipient: IotaAddress,
sender: IotaAddress,
amount: Option<u64>,
gas_payment: ObjectRef,
gas_budget: u64,
gas_price: u64,
gas_sponsor: IotaAddress,
) -> TransactionData
fn new_transfer_iota_allow_sponsor( recipient: IotaAddress, sender: IotaAddress, amount: Option<u64>, gas_payment: ObjectRef, gas_budget: u64, gas_price: u64, gas_sponsor: IotaAddress, ) -> TransactionData
Creates a sponsored transaction that transfers IOTA coins to a
recipient. If
amount is None, the entire gas coin balance
(minus gas fees) is transferred.Source§fn new_pay(
sender: IotaAddress,
coins: Vec<ObjectRef>,
recipients: Vec<IotaAddress>,
amounts: Vec<u64>,
gas_payment: ObjectRef,
gas_budget: u64,
gas_price: u64,
) -> Result<TransactionData>
fn new_pay( sender: IotaAddress, coins: Vec<ObjectRef>, recipients: Vec<IotaAddress>, amounts: Vec<u64>, gas_payment: ObjectRef, gas_budget: u64, gas_price: u64, ) -> Result<TransactionData>
Creates a transaction that pays multiple recipients from a set of
input coins. The coins are merged and then split to satisfy the
specified amounts.
Source§fn new_pay_iota(
sender: IotaAddress,
coins: Vec<ObjectRef>,
recipients: Vec<IotaAddress>,
amounts: Vec<u64>,
gas_payment: ObjectRef,
gas_budget: u64,
gas_price: u64,
) -> Result<TransactionData>
fn new_pay_iota( sender: IotaAddress, coins: Vec<ObjectRef>, recipients: Vec<IotaAddress>, amounts: Vec<u64>, gas_payment: ObjectRef, gas_budget: u64, gas_price: u64, ) -> Result<TransactionData>
Creates a transaction that pays multiple recipients using IOTA coins.
Similar to
Self::new_pay but the gas coin is also used as an
input coin.Source§fn new_pay_all_iota(
sender: IotaAddress,
coins: Vec<ObjectRef>,
recipient: IotaAddress,
gas_payment: ObjectRef,
gas_budget: u64,
gas_price: u64,
) -> TransactionData
fn new_pay_all_iota( sender: IotaAddress, coins: Vec<ObjectRef>, recipient: IotaAddress, gas_payment: ObjectRef, gas_budget: u64, gas_price: u64, ) -> TransactionData
Creates a transaction that sends all IOTA from the given coins to a
single recipient. The gas coin is included as an input coin.
Source§fn new_split_coin(
sender: IotaAddress,
coin: ObjectRef,
amounts: Vec<u64>,
gas_payment: ObjectRef,
gas_budget: u64,
gas_price: u64,
) -> TransactionData
fn new_split_coin( sender: IotaAddress, coin: ObjectRef, amounts: Vec<u64>, gas_payment: ObjectRef, gas_budget: u64, gas_price: u64, ) -> TransactionData
Creates a transaction that splits a coin into multiple coins with the
specified amounts.
Source§fn new_module(
sender: IotaAddress,
gas_payment: ObjectRef,
modules: Vec<Vec<u8>>,
dep_ids: Vec<ObjectID>,
gas_budget: u64,
gas_price: u64,
) -> TransactionData
fn new_module( sender: IotaAddress, gas_payment: ObjectRef, modules: Vec<Vec<u8>>, dep_ids: Vec<ObjectID>, gas_budget: u64, gas_price: u64, ) -> TransactionData
Creates a transaction that publishes new Move modules.
Source§fn new_upgrade(
sender: IotaAddress,
gas_payment: ObjectRef,
package_id: ObjectID,
modules: Vec<Vec<u8>>,
dep_ids: Vec<ObjectID>,
(upgrade_capability, capability_owner): (ObjectRef, Owner),
upgrade_policy: u8,
digest: Vec<u8>,
gas_budget: u64,
gas_price: u64,
) -> Result<TransactionData>
fn new_upgrade( sender: IotaAddress, gas_payment: ObjectRef, package_id: ObjectID, modules: Vec<Vec<u8>>, dep_ids: Vec<ObjectID>, (upgrade_capability, capability_owner): (ObjectRef, Owner), upgrade_policy: u8, digest: Vec<u8>, gas_budget: u64, gas_price: u64, ) -> Result<TransactionData>
Creates a transaction that upgrades an existing Move package.
Requires the upgrade capability object and the upgrade policy.
Source§fn new_programmable(
sender: IotaAddress,
gas_payment: Vec<ObjectRef>,
pt: ProgrammableTransaction,
gas_budget: u64,
gas_price: u64,
) -> TransactionData
fn new_programmable( sender: IotaAddress, gas_payment: Vec<ObjectRef>, pt: ProgrammableTransaction, gas_budget: u64, gas_price: u64, ) -> TransactionData
Creates a programmable transaction with multiple gas payment coins.
The sender is also the gas owner.
Source§fn new_programmable_allow_sponsor(
sender: IotaAddress,
gas_payment: Vec<ObjectRef>,
pt: ProgrammableTransaction,
gas_budget: u64,
gas_price: u64,
sponsor: IotaAddress,
) -> TransactionData
fn new_programmable_allow_sponsor( sender: IotaAddress, gas_payment: Vec<ObjectRef>, pt: ProgrammableTransaction, gas_budget: u64, gas_price: u64, sponsor: IotaAddress, ) -> TransactionData
Creates a programmable transaction with multiple gas payment coins
and a separate gas sponsor.
Source§fn message_version(&self) -> u64
fn message_version(&self) -> u64
Returns the internal message version number.
Source§fn execution_parts(&self) -> (TransactionKind, IotaAddress, GasData)
fn execution_parts(&self) -> (TransactionKind, IotaAddress, GasData)
Consumes self and returns the transaction kind, sender address, and
gas payment object references as a tuple.
impl Eq for Transaction
impl StructuralPartialEq for Transaction
Auto Trait Implementations§
impl Freeze for Transaction
impl RefUnwindSafe for Transaction
impl Send for Transaction
impl Sync for Transaction
impl Unpin for Transaction
impl UnsafeUnpin for Transaction
impl UnwindSafe for Transaction
Blanket Implementations§
§impl<U> As for U
impl<U> As for U
§fn as_<T>(self) -> Twhere
T: CastFrom<U>,
fn as_<T>(self) -> Twhere
T: CastFrom<U>,
Casts
self to type T. The semantics of numeric casting with the as operator are followed, so <T as As>::as_::<U> can be used in the same way as T as U for numeric conversions. Read more§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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
Mutably borrows from an owned value. Read more
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
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§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,
Causes
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,
Causes
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,
Causes
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,
Causes
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,
Causes
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,
Causes
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,
Causes
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,
Causes
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,
Formats each item in a sequence. Read more
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> 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>
Converts
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>
Converts
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> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a Request§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request§impl<L> LayerExt<L> for L
impl<L> LayerExt<L> for L
§fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
Applies the layer to a service and wraps it in [
Layered].§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,
Pipes by value. This is generally the method you want to use. Read more
§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,
Borrows
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,
Mutably borrows
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
Borrows
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
Mutably borrows
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
Borrows
self, then passes self.deref() into the pipe function.§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<T> SignableBytes for Twhere
T: BcsSignable,
impl<T> SignableBytes for Twhere
T: BcsSignable,
§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
Immutable access to the
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
Mutable access to the
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
Immutable access to the
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
Mutable access to the
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
Immutable access to the
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
Mutable access to the
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
Calls
.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
Calls
.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
Calls
.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
Calls
.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
Calls
.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
Calls
.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
Calls
.tap_deref() only in debug builds, and is erased in release
builds.