identity_iota_interaction::rpc_types

Trait IotaData

pub trait IotaData: Sized {
    type ObjectType;
    type PackageType;

    // Required methods
    fn try_from_object(
        object: MoveObject,
        layout: MoveStructLayout,
    ) -> Result<Self, Error>;
    fn try_from_package(package: MovePackage) -> Result<Self, Error>;
    fn try_as_move(&self) -> Option<&Self::ObjectType>;
    fn try_into_move(self) -> Option<Self::ObjectType>;
    fn try_as_package(&self) -> Option<&Self::PackageType>;
    fn type_(&self) -> Option<&StructTag>;
}

Required Associated Types§

Required Methods§

fn try_from_object( object: MoveObject, layout: MoveStructLayout, ) -> Result<Self, Error>

fn try_from_package(package: MovePackage) -> Result<Self, Error>

fn try_as_move(&self) -> Option<&Self::ObjectType>

fn try_into_move(self) -> Option<Self::ObjectType>

fn try_as_package(&self) -> Option<&Self::PackageType>

fn type_(&self) -> Option<&StructTag>

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§