Enum soroban_env_host::xdr::HostFunction
pub enum HostFunction {
InvokeContract(InvokeContractArgs),
CreateContract(CreateContractArgs),
UploadContractWasm(BytesM),
}
Expand description
HostFunction is an XDR Union defines as:
union HostFunction switch (HostFunctionType type)
{
case HOST_FUNCTION_TYPE_INVOKE_CONTRACT:
InvokeContractArgs invokeContract;
case HOST_FUNCTION_TYPE_CREATE_CONTRACT:
CreateContractArgs createContract;
case HOST_FUNCTION_TYPE_UPLOAD_CONTRACT_WASM:
opaque wasm<>;
};
Variants§
Implementations§
§impl HostFunction
impl HostFunction
pub const VARIANTS: [HostFunctionType; 3] = _
pub const VARIANTS_STR: [&'static str; 3] = _
pub const fn name(&self) -> &'static str
pub const fn discriminant(&self) -> HostFunctionType
pub const fn variants() -> [HostFunctionType; 3]
Trait Implementations§
§impl<'arbitrary> Arbitrary<'arbitrary> for HostFunction
impl<'arbitrary> Arbitrary<'arbitrary> for HostFunction
§fn arbitrary(u: &mut Unstructured<'arbitrary>) -> Result<HostFunction, Error>
fn arbitrary(u: &mut Unstructured<'arbitrary>) -> Result<HostFunction, Error>
Generate an arbitrary value of
Self
from the given unstructured data. Read more§fn arbitrary_take_rest(
u: Unstructured<'arbitrary>
) -> Result<HostFunction, Error>
fn arbitrary_take_rest( u: Unstructured<'arbitrary> ) -> Result<HostFunction, Error>
Generate an arbitrary value of
Self
from the entirety of the given
unstructured data. Read more§impl Clone for HostFunction
impl Clone for HostFunction
§fn clone(&self) -> HostFunction
fn clone(&self) -> HostFunction
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 HostFunction
impl Debug for HostFunction
§impl Discriminant<HostFunctionType> for HostFunction
impl Discriminant<HostFunctionType> for HostFunction
fn discriminant(&self) -> HostFunctionType
§impl Hash for HostFunction
impl Hash for HostFunction
§impl Ord for HostFunction
impl Ord for HostFunction
§impl PartialEq for HostFunction
impl PartialEq for HostFunction
§fn eq(&self, other: &HostFunction) -> bool
fn eq(&self, other: &HostFunction) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.§impl PartialOrd for HostFunction
impl PartialOrd for HostFunction
§fn partial_cmp(&self, other: &HostFunction) -> Option<Ordering>
fn partial_cmp(&self, other: &HostFunction) -> 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 HostFunction
impl ReadXdr for HostFunction
§fn read_xdr<R>(r: &mut Limited<R>) -> Result<HostFunction, Error>where
R: Read,
fn read_xdr<R>(r: &mut Limited<R>) -> Result<HostFunction, 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<HostFunctionType> for HostFunction
impl Variants<HostFunctionType> for HostFunction
fn variants() -> Iter<'static, HostFunctionType>
§impl WriteXdr for HostFunction
impl WriteXdr for HostFunction
impl Eq for HostFunction
impl StructuralPartialEq for HostFunction
impl Union<HostFunctionType> for HostFunction
Auto Trait Implementations§
impl RefUnwindSafe for HostFunction
impl Send for HostFunction
impl Sync for HostFunction
impl Unpin for HostFunction
impl UnwindSafe for HostFunction
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.