pub trait AssetMoveCalls {
type Error;
// Required methods
fn new_asset<T: Serialize + MoveType>(
inner: T,
mutable: bool,
transferable: bool,
deletable: bool,
package: ObjectID,
) -> Result<ProgrammableTransactionBcs, Self::Error>;
fn delete<T: MoveType>(
asset: ObjectRef,
package: ObjectID,
) -> Result<ProgrammableTransactionBcs, Self::Error>;
fn transfer<T: MoveType>(
asset: ObjectRef,
recipient: IotaAddress,
package: ObjectID,
) -> Result<ProgrammableTransactionBcs, Self::Error>;
fn make_tx(
proposal: (ObjectID, SequenceNumber),
cap: ObjectRef,
asset: ObjectRef,
asset_type_param: TypeTag,
package: ObjectID,
function_name: &'static str,
) -> Result<ProgrammableTransactionBcs, Self::Error>;
fn accept_proposal(
proposal: (ObjectID, SequenceNumber),
recipient_cap: ObjectRef,
asset: ObjectRef,
asset_type_param: TypeTag,
package: ObjectID,
) -> Result<ProgrammableTransactionBcs, Self::Error>;
fn conclude_or_cancel(
proposal: (ObjectID, SequenceNumber),
sender_cap: ObjectRef,
asset: ObjectRef,
asset_type_param: TypeTag,
package: ObjectID,
) -> Result<ProgrammableTransactionBcs, Self::Error>;
fn update<T: MoveType + Serialize>(
asset: ObjectRef,
new_content: T,
package: ObjectID,
) -> Result<ProgrammableTransactionBcs, Self::Error>;
}
Required Associated Types§
Required Methods§
fn new_asset<T: Serialize + MoveType>( inner: T, mutable: bool, transferable: bool, deletable: bool, package: ObjectID, ) -> Result<ProgrammableTransactionBcs, Self::Error>
fn delete<T: MoveType>( asset: ObjectRef, package: ObjectID, ) -> Result<ProgrammableTransactionBcs, Self::Error>
fn transfer<T: MoveType>( asset: ObjectRef, recipient: IotaAddress, package: ObjectID, ) -> Result<ProgrammableTransactionBcs, Self::Error>
fn make_tx( proposal: (ObjectID, SequenceNumber), cap: ObjectRef, asset: ObjectRef, asset_type_param: TypeTag, package: ObjectID, function_name: &'static str, ) -> Result<ProgrammableTransactionBcs, Self::Error>
fn accept_proposal( proposal: (ObjectID, SequenceNumber), recipient_cap: ObjectRef, asset: ObjectRef, asset_type_param: TypeTag, package: ObjectID, ) -> Result<ProgrammableTransactionBcs, Self::Error>
fn conclude_or_cancel( proposal: (ObjectID, SequenceNumber), sender_cap: ObjectRef, asset: ObjectRef, asset_type_param: TypeTag, package: ObjectID, ) -> Result<ProgrammableTransactionBcs, Self::Error>
fn update<T: MoveType + Serialize>( asset: ObjectRef, new_content: T, package: ObjectID, ) -> Result<ProgrammableTransactionBcs, Self::Error>
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.