Derive Macro shank::ShankType

source ·
#[derive(ShankType)]
Expand description

Annotates a struct or enum that shank will consider a type containing de/serializable data.

The macro does not generate any code. The annotation is used to indicate to shank-idl that the the type should be included in the program’s IDL.

Example

use shank::ShankType;

#[derive(ShankType)]
pub struct Metadata {
    pub update_authority: Pubkey,
    pub mint: Pubkey,
    pub primary_sale_happened: bool,
}

Note

The fields of a ShankType struct or enum can reference other types as long as they are annotated with ShankType, BorshSerialize or BorshDeserialize.