#[repr(C)]
pub struct GovernanceV2 { pub account_type: GovernanceAccountType, pub realm: Pubkey, pub governed_account: Pubkey, pub proposals_count: u32, pub config: GovernanceConfig, pub reserved: [u8; 6], pub voting_proposal_count: u16, pub reserved_v2: [u8; 128], }
Expand description

Governance Account

Fields

account_type: GovernanceAccountType

Account type. It can be Uninitialized, Governance, ProgramGovernance, TokenGovernance or MintGovernance

realm: Pubkey

Governance Realm

governed_account: Pubkey

Account governed by this Governance and/or PDA identity seed It can be Program account, Mint account, Token account or any other account

Note: The account doesn’t have to exist. In that case the field is only a PDA seed

Note: Setting governed_account doesn’t give any authority over the governed account The relevant authorities for specific account types must still be transferred to the Governance PDA Ex: mint_authority/freeze_authority for a Mint account or upgrade_authority for a Program account should be transferred to the Governance PDA

proposals_count: u32

Running count of proposals

config: GovernanceConfig

Governance config

reserved: [u8; 6]

Reserved space for future versions

voting_proposal_count: u16

The number of proposals in voting state in the Governance

reserved_v2: [u8; 128]

Reserved space for versions v2 and onwards Note: This space won’t be available to v1 accounts until runtime supports resizing

Implementations

Returns Governance PDA seeds

Serializes account into the target buffer

Trait Implementations

Returns max account size or None if max size is not known and actual instance size should be used

Deserializes this instance from a given slice of bytes. Updates the buffer to point at the remaining bytes. Read more

Deserialize this instance from a slice of bytes.

Get the name of the type without brackets.

Recursively, using DFS, add type definitions required for this type. For primitive types this is an empty map. Type definition explains how to serialize/deserialize a type. Read more

Helper method to add a single type definition to the map.

Serialize this instance into a vector of bytes.

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Formats the value using the given formatter. Read more

Is initialized

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Performs the conversion.

Performs the conversion.

Should always be Self

The resulting type after obtaining ownership.

Creates owned data from borrowed data, usually by cloning. Read more

🔬 This is a nightly-only experimental API. (toowned_clone_into)

Uses borrowed data to replace owned data, usually by cloning. Read more

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.