Enum soroban_env_host::xdr::OperationBody
pub enum OperationBody {
Show 27 variants
CreateAccount(CreateAccountOp),
Payment(PaymentOp),
PathPaymentStrictReceive(PathPaymentStrictReceiveOp),
ManageSellOffer(ManageSellOfferOp),
CreatePassiveSellOffer(CreatePassiveSellOfferOp),
SetOptions(SetOptionsOp),
ChangeTrust(ChangeTrustOp),
AllowTrust(AllowTrustOp),
AccountMerge(MuxedAccount),
Inflation,
ManageData(ManageDataOp),
BumpSequence(BumpSequenceOp),
ManageBuyOffer(ManageBuyOfferOp),
PathPaymentStrictSend(PathPaymentStrictSendOp),
CreateClaimableBalance(CreateClaimableBalanceOp),
ClaimClaimableBalance(ClaimClaimableBalanceOp),
BeginSponsoringFutureReserves(BeginSponsoringFutureReservesOp),
EndSponsoringFutureReserves,
RevokeSponsorship(RevokeSponsorshipOp),
Clawback(ClawbackOp),
ClawbackClaimableBalance(ClawbackClaimableBalanceOp),
SetTrustLineFlags(SetTrustLineFlagsOp),
LiquidityPoolDeposit(LiquidityPoolDepositOp),
LiquidityPoolWithdraw(LiquidityPoolWithdrawOp),
InvokeHostFunction(InvokeHostFunctionOp),
ExtendFootprintTtl(ExtendFootprintTtlOp),
RestoreFootprint(RestoreFootprintOp),
}
Expand description
OperationBody is an XDR NestedUnion defines as:
union switch (OperationType type)
{
case CREATE_ACCOUNT:
CreateAccountOp createAccountOp;
case PAYMENT:
PaymentOp paymentOp;
case PATH_PAYMENT_STRICT_RECEIVE:
PathPaymentStrictReceiveOp pathPaymentStrictReceiveOp;
case MANAGE_SELL_OFFER:
ManageSellOfferOp manageSellOfferOp;
case CREATE_PASSIVE_SELL_OFFER:
CreatePassiveSellOfferOp createPassiveSellOfferOp;
case SET_OPTIONS:
SetOptionsOp setOptionsOp;
case CHANGE_TRUST:
ChangeTrustOp changeTrustOp;
case ALLOW_TRUST:
AllowTrustOp allowTrustOp;
case ACCOUNT_MERGE:
MuxedAccount destination;
case INFLATION:
void;
case MANAGE_DATA:
ManageDataOp manageDataOp;
case BUMP_SEQUENCE:
BumpSequenceOp bumpSequenceOp;
case MANAGE_BUY_OFFER:
ManageBuyOfferOp manageBuyOfferOp;
case PATH_PAYMENT_STRICT_SEND:
PathPaymentStrictSendOp pathPaymentStrictSendOp;
case CREATE_CLAIMABLE_BALANCE:
CreateClaimableBalanceOp createClaimableBalanceOp;
case CLAIM_CLAIMABLE_BALANCE:
ClaimClaimableBalanceOp claimClaimableBalanceOp;
case BEGIN_SPONSORING_FUTURE_RESERVES:
BeginSponsoringFutureReservesOp beginSponsoringFutureReservesOp;
case END_SPONSORING_FUTURE_RESERVES:
void;
case REVOKE_SPONSORSHIP:
RevokeSponsorshipOp revokeSponsorshipOp;
case CLAWBACK:
ClawbackOp clawbackOp;
case CLAWBACK_CLAIMABLE_BALANCE:
ClawbackClaimableBalanceOp clawbackClaimableBalanceOp;
case SET_TRUST_LINE_FLAGS:
SetTrustLineFlagsOp setTrustLineFlagsOp;
case LIQUIDITY_POOL_DEPOSIT:
LiquidityPoolDepositOp liquidityPoolDepositOp;
case LIQUIDITY_POOL_WITHDRAW:
LiquidityPoolWithdrawOp liquidityPoolWithdrawOp;
case INVOKE_HOST_FUNCTION:
InvokeHostFunctionOp invokeHostFunctionOp;
case EXTEND_FOOTPRINT_TTL:
ExtendFootprintTTLOp extendFootprintTTLOp;
case RESTORE_FOOTPRINT:
RestoreFootprintOp restoreFootprintOp;
}
Variants§
CreateAccount(CreateAccountOp)
Payment(PaymentOp)
PathPaymentStrictReceive(PathPaymentStrictReceiveOp)
ManageSellOffer(ManageSellOfferOp)
CreatePassiveSellOffer(CreatePassiveSellOfferOp)
SetOptions(SetOptionsOp)
ChangeTrust(ChangeTrustOp)
AllowTrust(AllowTrustOp)
AccountMerge(MuxedAccount)
Inflation
ManageData(ManageDataOp)
BumpSequence(BumpSequenceOp)
ManageBuyOffer(ManageBuyOfferOp)
PathPaymentStrictSend(PathPaymentStrictSendOp)
CreateClaimableBalance(CreateClaimableBalanceOp)
ClaimClaimableBalance(ClaimClaimableBalanceOp)
BeginSponsoringFutureReserves(BeginSponsoringFutureReservesOp)
EndSponsoringFutureReserves
RevokeSponsorship(RevokeSponsorshipOp)
Clawback(ClawbackOp)
ClawbackClaimableBalance(ClawbackClaimableBalanceOp)
SetTrustLineFlags(SetTrustLineFlagsOp)
LiquidityPoolDeposit(LiquidityPoolDepositOp)
LiquidityPoolWithdraw(LiquidityPoolWithdrawOp)
InvokeHostFunction(InvokeHostFunctionOp)
ExtendFootprintTtl(ExtendFootprintTtlOp)
RestoreFootprint(RestoreFootprintOp)
Implementations§
§impl OperationBody
impl OperationBody
pub const VARIANTS: [OperationType; 27] = _
pub const VARIANTS_STR: [&'static str; 27] = _
pub const fn name(&self) -> &'static str
pub const fn discriminant(&self) -> OperationType
pub const fn variants() -> [OperationType; 27]
Trait Implementations§
§impl<'arbitrary> Arbitrary<'arbitrary> for OperationBody
impl<'arbitrary> Arbitrary<'arbitrary> for OperationBody
§fn arbitrary(u: &mut Unstructured<'arbitrary>) -> Result<OperationBody, Error>
fn arbitrary(u: &mut Unstructured<'arbitrary>) -> Result<OperationBody, Error>
Generate an arbitrary value of
Self
from the given unstructured data. Read more§fn arbitrary_take_rest(
u: Unstructured<'arbitrary>
) -> Result<OperationBody, Error>
fn arbitrary_take_rest( u: Unstructured<'arbitrary> ) -> Result<OperationBody, Error>
Generate an arbitrary value of
Self
from the entirety of the given
unstructured data. Read more§impl Clone for OperationBody
impl Clone for OperationBody
§fn clone(&self) -> OperationBody
fn clone(&self) -> OperationBody
Returns a copy 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 OperationBody
impl Debug for OperationBody
§impl Discriminant<OperationType> for OperationBody
impl Discriminant<OperationType> for OperationBody
fn discriminant(&self) -> OperationType
§impl Hash for OperationBody
impl Hash for OperationBody
§impl Ord for OperationBody
impl Ord for OperationBody
§impl PartialEq for OperationBody
impl PartialEq for OperationBody
§fn eq(&self, other: &OperationBody) -> bool
fn eq(&self, other: &OperationBody) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.§impl PartialOrd for OperationBody
impl PartialOrd for OperationBody
§fn partial_cmp(&self, other: &OperationBody) -> Option<Ordering>
fn partial_cmp(&self, other: &OperationBody) -> Option<Ordering>
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for
self
and other
) and is used by the <=
operator. Read more§impl ReadXdr for OperationBody
impl ReadXdr for OperationBody
§fn read_xdr<R>(r: &mut Limited<R>) -> Result<OperationBody, Error>where
R: Read,
fn read_xdr<R>(r: &mut Limited<R>) -> Result<OperationBody, Error>where
R: Read,
Read the XDR and construct the type. Read more
§fn read_xdr_base64<R>(r: &mut Limited<R>) -> Result<Self, Error>where
R: Read,
fn read_xdr_base64<R>(r: &mut Limited<R>) -> Result<Self, Error>where
R: Read,
Construct the type from the XDR bytes base64 encoded. Read more
§fn read_xdr_to_end<R>(r: &mut Limited<R>) -> Result<Self, Error>where
R: Read,
fn read_xdr_to_end<R>(r: &mut Limited<R>) -> Result<Self, Error>where
R: Read,
Read the XDR and construct the type, and consider it an error if the
read does not completely consume the read implementation. Read more
§fn read_xdr_base64_to_end<R>(r: &mut Limited<R>) -> Result<Self, Error>where
R: Read,
fn read_xdr_base64_to_end<R>(r: &mut Limited<R>) -> Result<Self, Error>where
R: Read,
Construct the type from the XDR bytes base64 encoded. Read more
§fn read_xdr_into<R>(&mut self, r: &mut Limited<R>) -> Result<(), Error>where
R: Read,
fn read_xdr_into<R>(&mut self, r: &mut Limited<R>) -> Result<(), Error>where
R: Read,
Read the XDR and construct the type. Read more
§fn read_xdr_into_to_end<R>(&mut self, r: &mut Limited<R>) -> Result<(), Error>where
R: Read,
fn read_xdr_into_to_end<R>(&mut self, r: &mut Limited<R>) -> Result<(), Error>where
R: Read,
Read the XDR into the existing value, and consider it an error if the
read does not completely consume the read implementation. Read more
§fn read_xdr_iter<R>(r: &mut Limited<R>) -> ReadXdrIter<&mut R, Self> ⓘwhere
R: Read,
fn read_xdr_iter<R>(r: &mut Limited<R>) -> ReadXdrIter<&mut R, Self> ⓘwhere
R: Read,
Create an iterator that reads the read implementation as a stream of
values that are read into the implementing type. Read more
§fn read_xdr_base64_iter<R>(
r: &mut Limited<R>
) -> ReadXdrIter<DecoderReader<'_, R>, Self> ⓘwhere
R: Read,
fn read_xdr_base64_iter<R>(
r: &mut Limited<R>
) -> ReadXdrIter<DecoderReader<'_, R>, Self> ⓘwhere
R: Read,
Create an iterator that reads the read implementation as a stream of
values that are read into the implementing type.
§impl Variants<OperationType> for OperationBody
impl Variants<OperationType> for OperationBody
fn variants() -> Iter<'static, OperationType>
§impl WriteXdr for OperationBody
impl WriteXdr for OperationBody
impl Eq for OperationBody
impl StructuralEq for OperationBody
impl StructuralPartialEq for OperationBody
impl Union<OperationType> for OperationBody
Auto Trait Implementations§
impl RefUnwindSafe for OperationBody
impl Send for OperationBody
impl Sync for OperationBody
impl Unpin for OperationBody
impl UnwindSafe for OperationBody
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
Mutably borrows from an owned value. Read more
source§impl<T, U, V, W, E, C> Compare<(T, U, V, W)> for C
impl<T, U, V, W, E, C> Compare<(T, U, V, W)> for C
type Error = E
fn compare( &self, a: &(T, U, V, W), b: &(T, U, V, W) ) -> Result<Ordering, <C as Compare<(T, U, V, W)>>::Error>
source§impl<T, U, V, W, X, E, C> Compare<(T, U, V, W, X)> for C
impl<T, U, V, W, X, E, C> Compare<(T, U, V, W, X)> for C
type Error = E
fn compare( &self, a: &(T, U, V, W, X), b: &(T, U, V, W, X) ) -> Result<Ordering, <C as Compare<(T, U, V, W, X)>>::Error>
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.