Enum soroban_sdk::xdr::LedgerKey
pub enum LedgerKey {
Account(LedgerKeyAccount),
Trustline(LedgerKeyTrustLine),
Offer(LedgerKeyOffer),
Data(LedgerKeyData),
ClaimableBalance(LedgerKeyClaimableBalance),
LiquidityPool(LedgerKeyLiquidityPool),
ContractData(LedgerKeyContractData),
ContractCode(LedgerKeyContractCode),
ConfigSetting(LedgerKeyConfigSetting),
Ttl(LedgerKeyTtl),
}
Expand description
LedgerKey is an XDR Union defines as:
union LedgerKey switch (LedgerEntryType type)
{
case ACCOUNT:
struct
{
AccountID accountID;
} account;
case TRUSTLINE:
struct
{
AccountID accountID;
TrustLineAsset asset;
} trustLine;
case OFFER:
struct
{
AccountID sellerID;
int64 offerID;
} offer;
case DATA:
struct
{
AccountID accountID;
string64 dataName;
} data;
case CLAIMABLE_BALANCE:
struct
{
ClaimableBalanceID balanceID;
} claimableBalance;
case LIQUIDITY_POOL:
struct
{
PoolID liquidityPoolID;
} liquidityPool;
case CONTRACT_DATA:
struct
{
SCAddress contract;
SCVal key;
ContractDataDurability durability;
} contractData;
case CONTRACT_CODE:
struct
{
Hash hash;
} contractCode;
case CONFIG_SETTING:
struct
{
ConfigSettingID configSettingID;
} configSetting;
case TTL:
struct
{
// Hash of the LedgerKey that is associated with this TTLEntry
Hash keyHash;
} ttl;
};
Variants§
Account(LedgerKeyAccount)
Trustline(LedgerKeyTrustLine)
Offer(LedgerKeyOffer)
Data(LedgerKeyData)
ClaimableBalance(LedgerKeyClaimableBalance)
LiquidityPool(LedgerKeyLiquidityPool)
ContractData(LedgerKeyContractData)
ContractCode(LedgerKeyContractCode)
ConfigSetting(LedgerKeyConfigSetting)
Ttl(LedgerKeyTtl)
Implementations§
§impl LedgerKey
impl LedgerKey
pub const VARIANTS: [LedgerEntryType; 10] = _
pub const VARIANTS_STR: [&'static str; 10] = _
pub const fn name(&self) -> &'static str
pub const fn discriminant(&self) -> LedgerEntryType
pub const fn variants() -> [LedgerEntryType; 10]
Trait Implementations§
§impl<'arbitrary> Arbitrary<'arbitrary> for LedgerKey
impl<'arbitrary> Arbitrary<'arbitrary> for LedgerKey
§fn arbitrary(u: &mut Unstructured<'arbitrary>) -> Result<LedgerKey, Error>
fn arbitrary(u: &mut Unstructured<'arbitrary>) -> Result<LedgerKey, Error>
Generate an arbitrary value of
Self
from the given unstructured data. Read more§fn arbitrary_take_rest(u: Unstructured<'arbitrary>) -> Result<LedgerKey, Error>
fn arbitrary_take_rest(u: Unstructured<'arbitrary>) -> Result<LedgerKey, Error>
Generate an arbitrary value of
Self
from the entirety of the given
unstructured data. Read more§impl<'de> Deserialize<'de> for LedgerKey
impl<'de> Deserialize<'de> for LedgerKey
§fn deserialize<__D>(
__deserializer: __D
) -> Result<LedgerKey, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D
) -> Result<LedgerKey, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
§impl Discriminant<LedgerEntryType> for LedgerKey
impl Discriminant<LedgerEntryType> for LedgerKey
fn discriminant(&self) -> LedgerEntryType
§impl Ord for LedgerKey
impl Ord for LedgerKey
§impl PartialOrd for LedgerKey
impl PartialOrd for LedgerKey
§fn partial_cmp(&self, other: &LedgerKey) -> Option<Ordering>
fn partial_cmp(&self, other: &LedgerKey) -> 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 LedgerKey
impl ReadXdr for LedgerKey
§fn read_xdr<R>(r: &mut Limited<R>) -> Result<LedgerKey, Error>where
R: Read,
fn read_xdr<R>(r: &mut Limited<R>) -> Result<LedgerKey, 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 Serialize for LedgerKey
impl Serialize for LedgerKey
§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
§impl Variants<LedgerEntryType> for LedgerKey
impl Variants<LedgerEntryType> for LedgerKey
fn variants() -> Iter<'static, LedgerEntryType>
impl Eq for LedgerKey
impl StructuralEq for LedgerKey
impl StructuralPartialEq for LedgerKey
impl Union<LedgerEntryType> for LedgerKey
Auto Trait Implementations§
impl RefUnwindSafe for LedgerKey
impl Send for LedgerKey
impl Sync for LedgerKey
impl Unpin for LedgerKey
impl UnwindSafe for LedgerKey
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
§impl<T, U, V, E, C> Compare<(T, U, V)> for Cwhere
C: Compare<T, Error = E, Error = E, Error = E> + Compare<U> + Compare<V>,
impl<T, U, V, E, C> Compare<(T, U, V)> for Cwhere
C: Compare<T, Error = E, Error = E, Error = E> + Compare<U> + Compare<V>,
§impl<T, U, V, W, E, C> Compare<(T, U, V, W)> for Cwhere
C: Compare<T, Error = E, Error = E, Error = E, Error = E> + Compare<U> + Compare<V> + Compare<W>,
impl<T, U, V, W, E, C> Compare<(T, U, V, W)> for Cwhere
C: Compare<T, Error = E, Error = E, Error = E, Error = E> + Compare<U> + Compare<V> + Compare<W>,
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>
§impl<T, U, V, W, X, E, C> Compare<(T, U, V, W, X)> for Cwhere
C: Compare<T, Error = E, Error = E, Error = E, Error = E, Error = E> + Compare<U> + Compare<V> + Compare<W> + Compare<X>,
impl<T, U, V, W, X, E, C> Compare<(T, U, V, W, X)> for Cwhere
C: Compare<T, Error = E, Error = E, Error = E, Error = E, Error = E> + Compare<U> + Compare<V> + Compare<W> + Compare<X>,
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.