#move #tags #off-chain #standard #type #instance #object

af-move-type

Standard for representing Move types (MoveType) off-chain and their type tags

4 releases

new 0.8.0 Jan 14, 2025
0.7.3 Jan 14, 2025
0.7.2 Jan 14, 2025
0.7.1 Jan 12, 2025

#34 in Magic Beans

Download history 130/week @ 2025-01-07

130 downloads per month
Used in 10 crates (8 directly)

Apache-2.0

185KB
4K SLoC

Defines the core standard for representing Move types off-chain and their type tags.

The core items are MoveType and MoveTypeTag. These are useful trait bounds to use when dealing with generic off-chain Move type representations. They are implemented for the primitive types that correspond to Move's primitives (integers/bool). Also included is MoveVec, corresponding to vector and defining a pretty Display.

For Move structs (objects), MoveStruct should be used as it has an associated MoveStructTag. The MoveStruct derive macro is exported for automatically creating a MoveStructTag implementation from normal Rust struct declarations.

A specific instance of a Move type is represented by MoveInstance.


lib.rs:

Defines the core standard for representing Move types off-chain and their type tags.

The core items are MoveType and MoveTypeTag. These are useful trait bounds to use when dealing with generic off-chain Move type representations. They are implemented for the primitive types that correspond to Move's primitives (integers/bool). Also included is MoveVec, corresponding to vector and defining a pretty Display.

For Move structs (objects), MoveStruct should be used as it has an associated MoveStructTag. The MoveStruct derive macro is exported for automatically creating a MoveStructTag implementation from normal Rust struct declarations.

A specific instance of a Move type is represented by MoveInstance.

Dependencies

~14MB
~255K SLoC