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