Skip to main content

MoveDatatype

Description of a datatype, defined in a Move module.

type MoveDatatype implements IMoveDatatype {
abilities: [MoveAbility!]
asMoveEnum: MoveEnum
asMoveStruct: MoveStruct
module: MoveModule!
name: String!
typeParameters: [MoveDatatypeTypeParameter!]
}

Fields​

MoveDatatype.abilities ● [MoveAbility!] list enum​

Abilities on this datatype definition.

MoveDatatype.asMoveEnum ● MoveEnum object​

Attempts to convert the MoveDatatype to a MoveEnum.

MoveDatatype.asMoveStruct ● MoveStruct object​

Attempts to convert the MoveDatatype to a MoveStruct.

MoveDatatype.module ● MoveModule! non-null object​

The module that this datatype is defined in.

MoveDatatype.name ● String! non-null scalar​

The datatype's unqualified name.

MoveDatatype.typeParameters ● [MoveDatatypeTypeParameter!] list object​

Constraints on the datatype's formal type parameters.

Move bytecode does not name type parameters, so when they are referenced (e.g. in field types), they are identified by their index in this list.

Interfaces​

IMoveDatatype interface​

Interface implemented by all GraphQL types that represent a Move datatype definition (either a struct or an enum definition).

This interface is used to provide a way to access fields that are shared by both structs and enums, e.g., the module that the datatype belongs to, the name of the datatype, type parameters etc.

Member Of​

MoveDatatypeConnection object ● MoveDatatypeEdge object ● MoveModule object