Enum soroban_sdk::xdr::ScSpecType
#[repr(i32)]pub enum ScSpecType {
Show 25 variants
Val = 0,
Bool = 1,
Void = 2,
Error = 3,
U32 = 4,
I32 = 5,
U64 = 6,
I64 = 7,
Timepoint = 8,
Duration = 9,
U128 = 10,
I128 = 11,
U256 = 12,
I256 = 13,
Bytes = 14,
String = 16,
Symbol = 17,
Address = 19,
Option = 1_000,
Result = 1_001,
Vec = 1_002,
Map = 1_004,
Tuple = 1_005,
BytesN = 1_006,
Udt = 2_000,
}
Expand description
ScSpecType is an XDR Enum defines as:
enum SCSpecType
{
SC_SPEC_TYPE_VAL = 0,
// Types with no parameters.
SC_SPEC_TYPE_BOOL = 1,
SC_SPEC_TYPE_VOID = 2,
SC_SPEC_TYPE_ERROR = 3,
SC_SPEC_TYPE_U32 = 4,
SC_SPEC_TYPE_I32 = 5,
SC_SPEC_TYPE_U64 = 6,
SC_SPEC_TYPE_I64 = 7,
SC_SPEC_TYPE_TIMEPOINT = 8,
SC_SPEC_TYPE_DURATION = 9,
SC_SPEC_TYPE_U128 = 10,
SC_SPEC_TYPE_I128 = 11,
SC_SPEC_TYPE_U256 = 12,
SC_SPEC_TYPE_I256 = 13,
SC_SPEC_TYPE_BYTES = 14,
SC_SPEC_TYPE_STRING = 16,
SC_SPEC_TYPE_SYMBOL = 17,
SC_SPEC_TYPE_ADDRESS = 19,
// Types with parameters.
SC_SPEC_TYPE_OPTION = 1000,
SC_SPEC_TYPE_RESULT = 1001,
SC_SPEC_TYPE_VEC = 1002,
SC_SPEC_TYPE_MAP = 1004,
SC_SPEC_TYPE_TUPLE = 1005,
SC_SPEC_TYPE_BYTES_N = 1006,
// User defined types.
SC_SPEC_TYPE_UDT = 2000
};
Variants§
Val = 0
Bool = 1
Void = 2
Error = 3
U32 = 4
I32 = 5
U64 = 6
I64 = 7
Timepoint = 8
Duration = 9
U128 = 10
I128 = 11
U256 = 12
I256 = 13
Bytes = 14
String = 16
Symbol = 17
Address = 19
Option = 1_000
Result = 1_001
Vec = 1_002
Map = 1_004
Tuple = 1_005
BytesN = 1_006
Udt = 2_000
Implementations§
§impl ScSpecType
impl ScSpecType
pub const VARIANTS: [ScSpecType; 25] = _
pub const VARIANTS_STR: [&'static str; 25] = _
pub const fn name(&self) -> &'static str
pub const fn variants() -> [ScSpecType; 25]
Trait Implementations§
§impl<'arbitrary> Arbitrary<'arbitrary> for ScSpecType
impl<'arbitrary> Arbitrary<'arbitrary> for ScSpecType
§fn arbitrary(u: &mut Unstructured<'arbitrary>) -> Result<ScSpecType, Error>
fn arbitrary(u: &mut Unstructured<'arbitrary>) -> Result<ScSpecType, Error>
Generate an arbitrary value of
Self
from the given unstructured data. Read more§fn arbitrary_take_rest(u: Unstructured<'arbitrary>) -> Result<ScSpecType, Error>
fn arbitrary_take_rest(u: Unstructured<'arbitrary>) -> Result<ScSpecType, Error>
Generate an arbitrary value of
Self
from the entirety of the given
unstructured data. Read more§impl Clone for ScSpecType
impl Clone for ScSpecType
§fn clone(&self) -> ScSpecType
fn clone(&self) -> ScSpecType
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 ScSpecType
impl Debug for ScSpecType
§impl<'de> Deserialize<'de> for ScSpecType
impl<'de> Deserialize<'de> for ScSpecType
§fn deserialize<__D>(
__deserializer: __D
) -> Result<ScSpecType, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D
) -> Result<ScSpecType, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
§impl Discriminant<ScSpecType> for ScSpecTypeDef
impl Discriminant<ScSpecType> for ScSpecTypeDef
fn discriminant(&self) -> ScSpecType
§impl Display for ScSpecType
impl Display for ScSpecType
§impl Hash for ScSpecType
impl Hash for ScSpecType
§impl Ord for ScSpecType
impl Ord for ScSpecType
§impl PartialEq for ScSpecType
impl PartialEq for ScSpecType
§fn eq(&self, other: &ScSpecType) -> bool
fn eq(&self, other: &ScSpecType) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.§impl PartialOrd for ScSpecType
impl PartialOrd for ScSpecType
§fn partial_cmp(&self, other: &ScSpecType) -> Option<Ordering>
fn partial_cmp(&self, other: &ScSpecType) -> 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 ScSpecType
impl ReadXdr for ScSpecType
§fn read_xdr<R>(r: &mut Limited<R>) -> Result<ScSpecType, Error>where
R: Read,
fn read_xdr<R>(r: &mut Limited<R>) -> Result<ScSpecType, 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 ScSpecType
impl Serialize for ScSpecType
§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 TryFrom<i32> for ScSpecType
impl TryFrom<i32> for ScSpecType
§impl Variants<ScSpecType> for ScSpecType
impl Variants<ScSpecType> for ScSpecType
fn variants() -> Iter<'static, ScSpecType>
§impl Variants<ScSpecType> for ScSpecTypeDef
impl Variants<ScSpecType> for ScSpecTypeDef
fn variants() -> Iter<'static, ScSpecType>
§impl WriteXdr for ScSpecType
impl WriteXdr for ScSpecType
impl Copy for ScSpecType
impl Enum for ScSpecType
impl Eq for ScSpecType
impl StructuralEq for ScSpecType
impl StructuralPartialEq for ScSpecType
impl Union<ScSpecType> for ScSpecTypeDef
Auto Trait Implementations§
impl RefUnwindSafe for ScSpecType
impl Send for ScSpecType
impl Sync for ScSpecType
impl Unpin for ScSpecType
impl UnwindSafe for ScSpecType
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.