pub enum GovernanceError {
Show 125 variants InvalidInstruction = 500, RealmAlreadyExists = 501, InvalidRealm = 502, InvalidGoverningTokenMint = 503, GoverningTokenOwnerMustSign = 504, GoverningTokenOwnerOrDelegateMustSign = 505, AllVotesMustBeRelinquishedToWithdrawGoverningTokens = 506, InvalidTokenOwnerRecordAccountAddress = 507, InvalidGoverningMintForTokenOwnerRecord = 508, InvalidRealmForTokenOwnerRecord = 509, InvalidProposalForProposalTransaction = 510, InvalidSignatoryAddress = 511, SignatoryAlreadySignedOff = 512, SignatoryMustSign = 513, InvalidProposalOwnerAccount = 514, InvalidProposalForVoterRecord = 515, InvalidGoverningTokenOwnerForVoteRecord = 516, InvalidVoteThresholdPercentage = 517, ProposalAlreadyExists = 518, VoteAlreadyExists = 519, NotEnoughTokensToCreateProposal = 520, InvalidStateCannotEditSignatories = 521, InvalidProposalState = 522, InvalidStateCannotEditTransactions = 523, InvalidStateCannotExecuteTransaction = 524, CannotExecuteTransactionWithinHoldUpTime = 525, TransactionAlreadyExecuted = 526, InvalidTransactionIndex = 527, TransactionHoldUpTimeBelowRequiredMin = 528, TransactionAlreadyExists = 529, InvalidStateCannotSignOff = 530, InvalidStateCannotVote = 531, InvalidStateCannotFinalize = 532, InvalidStateCannotCancelProposal = 533, VoteAlreadyRelinquished = 534, CannotFinalizeVotingInProgress = 535, ProposalVotingTimeExpired = 536, InvalidSignatoryMint = 537, InvalidGovernanceForProposal = 538, InvalidGoverningMintForProposal = 539, MintAuthorityMustSign = 540, InvalidMintAuthority = 541, MintHasNoAuthority = 542, SplTokenAccountWithInvalidOwner = 543, SplTokenMintWithInvalidOwner = 544, SplTokenAccountNotInitialized = 545, SplTokenAccountDoesNotExist = 546, SplTokenInvalidTokenAccountData = 547, SplTokenInvalidMintAccountData = 548, SplTokenMintNotInitialized = 549, SplTokenMintDoesNotExist = 550, InvalidProgramDataAccountAddress = 551, InvalidProgramDataAccountData = 552, InvalidUpgradeAuthority = 553, UpgradeAuthorityMustSign = 554, ProgramNotUpgradable = 555, InvalidTokenOwner = 556, TokenOwnerMustSign = 557, VoteThresholdTypeNotSupported = 558, VoteWeightSourceNotSupported = 559, Legacy1 = 560, GovernancePdaMustSign = 561, TransactionAlreadyFlaggedWithError = 562, InvalidRealmForGovernance = 563, InvalidAuthorityForRealm = 564, RealmHasNoAuthority = 565, RealmAuthorityMustSign = 566, InvalidGoverningTokenHoldingAccount = 567, RealmCouncilMintChangeIsNotSupported = 568, InvalidMaxVoterWeightAbsoluteValue = 569, InvalidMaxVoterWeightSupplyFraction = 570, NotEnoughTokensToCreateGovernance = 571, TooManyOutstandingProposals = 572, AllProposalsMustBeFinalisedToWithdrawGoverningTokens = 573, InvalidVoterWeightRecordForRealm = 574, InvalidVoterWeightRecordForGoverningTokenMint = 575, InvalidVoterWeightRecordForTokenOwner = 576, VoterWeightRecordExpired = 577, InvalidRealmConfigForRealm = 578, TokenOwnerRecordAlreadyExists = 579, GoverningTokenDepositsNotAllowed = 580, InvalidVoteChoiceWeightPercentage = 581, VoteTypeNotSupported = 582, InvalidProposalOptions = 583, ProposalIsNotExecutable = 584, DenyVoteIsNotAllowed = 585, CannotExecuteDefeatedOption = 586, VoterWeightRecordInvalidAction = 587, VoterWeightRecordInvalidActionTarget = 588, InvalidMaxVoterWeightRecordForRealm = 589, InvalidMaxVoterWeightRecordForGoverningTokenMint = 590, MaxVoterWeightRecordExpired = 591, NotSupportedVoteType = 592, RealmConfigChangeNotAllowed = 593, GovernanceConfigChangeNotAllowed = 594, AtLeastOneVoteThresholdRequired = 595, ReservedBufferMustBeEmpty = 596, CannotRelinquishInFinalizingState = 597, InvalidRealmConfigAddress = 598, CannotDepositDormantTokens = 599, CannotWithdrawMembershipTokens = 600, CannotRevokeGoverningTokens = 601, InvalidRevokeAmount = 602, InvalidGoverningTokenSource = 603, CannotChangeCommunityTokenTypeToMembership = 604, VoterWeightThresholdDisabled = 605, VoteNotAllowedInCoolOffTime = 606, CannotRefundProposalDeposit = 607, InvalidProposalForProposalDeposit = 608, InvalidDepositExemptProposalCount = 609, GoverningTokenMintNotAllowedToVote = 610, InvalidDepositPayerForProposalDeposit = 611, InvalidStateNotFinal = 612, InvalidStateToCompleteProposal = 613, InvalidNumberOfVoteChoices = 614, RankedVoteIsNotSupported = 615, ChoiceWeightMustBe100Percent = 616, SingleChoiceOnlyIsAllowed = 617, AtLeastSingleChoiceIsRequired = 618, TotalVoteWeightMustBe100Percent = 619, InvalidMultiChoiceProposalParameters = 620, InvalidGovernanceForRequiredSignatory = 621, SignatoryRecordAlreadyExists = 622, InstructionDeprecated = 623, MissingRequiredSignatories = 624,
}
Expand description

Errors that may be returned by the Governance program

Variants§

§

InvalidInstruction = 500

Invalid instruction passed to program

§

RealmAlreadyExists = 501

Realm with the given name and governing mints already exists

§

InvalidRealm = 502

Invalid Realm

§

InvalidGoverningTokenMint = 503

Invalid Governing Token Mint

§

GoverningTokenOwnerMustSign = 504

Governing Token Owner must sign transaction

§

GoverningTokenOwnerOrDelegateMustSign = 505

Governing Token Owner or Delegate must sign transaction

§

AllVotesMustBeRelinquishedToWithdrawGoverningTokens = 506

All votes must be relinquished to withdraw governing tokens

§

InvalidTokenOwnerRecordAccountAddress = 507

Invalid Token Owner Record account address

§

InvalidGoverningMintForTokenOwnerRecord = 508

Invalid GoverningMint for TokenOwnerRecord

§

InvalidRealmForTokenOwnerRecord = 509

Invalid Realm for TokenOwnerRecord

§

InvalidProposalForProposalTransaction = 510

Invalid Proposal for ProposalTransaction,

§

InvalidSignatoryAddress = 511

Invalid Signatory account address

§

SignatoryAlreadySignedOff = 512

Signatory already signed off

§

SignatoryMustSign = 513

Signatory must sign

§

InvalidProposalOwnerAccount = 514

Invalid Proposal Owner

§

InvalidProposalForVoterRecord = 515

Invalid Proposal for VoterRecord

§

InvalidGoverningTokenOwnerForVoteRecord = 516

Invalid GoverningTokenOwner for VoteRecord

§

InvalidVoteThresholdPercentage = 517

Invalid Governance config: Vote threshold percentage out of range“

§

ProposalAlreadyExists = 518

Proposal for the given Governance, Governing Token Mint and index already exists

§

VoteAlreadyExists = 519

Token Owner already voted on the Proposal

§

NotEnoughTokensToCreateProposal = 520

Owner doesn’t have enough governing tokens to create Proposal

§

InvalidStateCannotEditSignatories = 521

Invalid State: Can’t edit Signatories

§

InvalidProposalState = 522

Invalid Proposal state

§

InvalidStateCannotEditTransactions = 523

Invalid State: Can’t edit transactions

§

InvalidStateCannotExecuteTransaction = 524

Invalid State: Can’t execute transaction

§

CannotExecuteTransactionWithinHoldUpTime = 525

Can’t execute transaction within its hold up time

§

TransactionAlreadyExecuted = 526

Transaction already executed

§

InvalidTransactionIndex = 527

Invalid Transaction index

§

TransactionHoldUpTimeBelowRequiredMin = 528

Transaction hold up time is below the min specified by Governance

§

TransactionAlreadyExists = 529

Transaction at the given index for the Proposal already exists

§

InvalidStateCannotSignOff = 530

Invalid State: Can’t sign off

§

InvalidStateCannotVote = 531

Invalid State: Can’t vote

§

InvalidStateCannotFinalize = 532

Invalid State: Can’t finalize vote

§

InvalidStateCannotCancelProposal = 533

Invalid State: Can’t cancel Proposal

§

VoteAlreadyRelinquished = 534

Vote already relinquished

§

CannotFinalizeVotingInProgress = 535

Can’t finalize vote. Voting still in progress

§

ProposalVotingTimeExpired = 536

Proposal voting time expired

§

InvalidSignatoryMint = 537

Invalid Signatory Mint

§

InvalidGovernanceForProposal = 538

Proposal does not belong to the given Governance

§

InvalidGoverningMintForProposal = 539

Proposal does not belong to given Governing Mint“

§

MintAuthorityMustSign = 540

Current mint authority must sign transaction

§

InvalidMintAuthority = 541

Invalid mint authority

§

MintHasNoAuthority = 542

Mint has no authority

§

SplTokenAccountWithInvalidOwner = 543

–– SPL Token Tools Errors –– Invalid Token account owner

§

SplTokenMintWithInvalidOwner = 544

Invalid Mint account owner

§

SplTokenAccountNotInitialized = 545

Token Account is not initialized

§

SplTokenAccountDoesNotExist = 546

Token Account doesn’t exist

§

SplTokenInvalidTokenAccountData = 547

Token account data is invalid

§

SplTokenInvalidMintAccountData = 548

Token mint account data is invalid

§

SplTokenMintNotInitialized = 549

Token Mint is not initialized

§

SplTokenMintDoesNotExist = 550

Token Mint account doesn’t exist

§

InvalidProgramDataAccountAddress = 551

–– Bpf Upgradable Loader Tools Errors –– Invalid ProgramData account Address

§

InvalidProgramDataAccountData = 552

Invalid ProgramData account data

§

InvalidUpgradeAuthority = 553

Provided upgrade authority doesn’t match current program upgrade authority

§

UpgradeAuthorityMustSign = 554

Current program upgrade authority must sign transaction

§

ProgramNotUpgradable = 555

Given program is not upgradable

§

InvalidTokenOwner = 556

Invalid token owner

§

TokenOwnerMustSign = 557

Current token owner must sign transaction

§

VoteThresholdTypeNotSupported = 558

Given VoteThresholdType is not supported

§

VoteWeightSourceNotSupported = 559

Given VoteWeightSource is not supported

§

Legacy1 = 560

Legacy1

§

GovernancePdaMustSign = 561

Governance PDA must sign

§

TransactionAlreadyFlaggedWithError = 562

Transaction already flagged with error

§

InvalidRealmForGovernance = 563

Invalid Realm for Governance

§

InvalidAuthorityForRealm = 564

Invalid Authority for Realm

§

RealmHasNoAuthority = 565

Realm has no authority

§

RealmAuthorityMustSign = 566

Realm authority must sign

§

InvalidGoverningTokenHoldingAccount = 567

Invalid governing token holding account

§

RealmCouncilMintChangeIsNotSupported = 568

Realm council mint change is not supported

§

InvalidMaxVoterWeightAbsoluteValue = 569

Invalid max voter weight absolute value

§

InvalidMaxVoterWeightSupplyFraction = 570

Invalid max voter weight supply fraction

§

NotEnoughTokensToCreateGovernance = 571

Owner doesn’t have enough governing tokens to create Governance

§

TooManyOutstandingProposals = 572

Too many outstanding proposals

§

AllProposalsMustBeFinalisedToWithdrawGoverningTokens = 573

All proposals must be finalized to withdraw governing tokens

§

InvalidVoterWeightRecordForRealm = 574

Invalid VoterWeightRecord for Realm

§

InvalidVoterWeightRecordForGoverningTokenMint = 575

Invalid VoterWeightRecord for GoverningTokenMint

§

InvalidVoterWeightRecordForTokenOwner = 576

Invalid VoterWeightRecord for TokenOwner

§

VoterWeightRecordExpired = 577

VoterWeightRecord expired

§

InvalidRealmConfigForRealm = 578

Invalid RealmConfig for Realm

§

TokenOwnerRecordAlreadyExists = 579

TokenOwnerRecord already exists

§

GoverningTokenDepositsNotAllowed = 580

Governing token deposits not allowed

§

InvalidVoteChoiceWeightPercentage = 581

Invalid vote choice weight percentage

§

VoteTypeNotSupported = 582

Vote type not supported

§

InvalidProposalOptions = 583

InvalidProposalOptions

§

ProposalIsNotExecutable = 584

Proposal is not not executable

§

DenyVoteIsNotAllowed = 585

Deny vote is not allowed

§

CannotExecuteDefeatedOption = 586

Cannot execute defeated option

§

VoterWeightRecordInvalidAction = 587

VoterWeightRecord invalid action

§

VoterWeightRecordInvalidActionTarget = 588

VoterWeightRecord invalid action target

§

InvalidMaxVoterWeightRecordForRealm = 589

Invalid MaxVoterWeightRecord for Realm

§

InvalidMaxVoterWeightRecordForGoverningTokenMint = 590

Invalid MaxVoterWeightRecord for GoverningTokenMint

§

MaxVoterWeightRecordExpired = 591

MaxVoterWeightRecord expired

§

NotSupportedVoteType = 592

Not supported VoteType

§

RealmConfigChangeNotAllowed = 593

RealmConfig change not allowed

§

GovernanceConfigChangeNotAllowed = 594

GovernanceConfig change not allowed

§

AtLeastOneVoteThresholdRequired = 595

At least one VoteThreshold is required

§

ReservedBufferMustBeEmpty = 596

Reserved buffer must be empty

§

CannotRelinquishInFinalizingState = 597

Cannot Relinquish in Finalizing state

§

InvalidRealmConfigAddress = 598

Invalid RealmConfig account address

§

CannotDepositDormantTokens = 599

Cannot deposit dormant tokens

§

CannotWithdrawMembershipTokens = 600

Cannot withdraw membership tokens

§

CannotRevokeGoverningTokens = 601

Cannot revoke GoverningTokens

§

InvalidRevokeAmount = 602

Invalid Revoke amount

§

InvalidGoverningTokenSource = 603

Invalid GoverningToken source

§

CannotChangeCommunityTokenTypeToMembership = 604

Cannot change community TokenType to Membership

§

VoterWeightThresholdDisabled = 605

Voter weight threshold disabled

§

VoteNotAllowedInCoolOffTime = 606

Vote not allowed in cool off time

§

CannotRefundProposalDeposit = 607

Cannot refund ProposalDeposit

§

InvalidProposalForProposalDeposit = 608

Invalid Proposal for ProposalDeposit

§

InvalidDepositExemptProposalCount = 609

Invalid deposit_exempt_proposal_count

§

GoverningTokenMintNotAllowedToVote = 610

GoverningTokenMint not allowed to vote

§

InvalidDepositPayerForProposalDeposit = 611

Invalid deposit Payer for ProposalDeposit

§

InvalidStateNotFinal = 612

Invalid State: Proposal is not in final state

§

InvalidStateToCompleteProposal = 613

Invalid state for proposal state transition to Completed

§

InvalidNumberOfVoteChoices = 614

Invalid number of vote choices

§

RankedVoteIsNotSupported = 615

Ranked vote is not supported

§

ChoiceWeightMustBe100Percent = 616

Choice weight must be 100%

§

SingleChoiceOnlyIsAllowed = 617

Single choice only is allowed

§

AtLeastSingleChoiceIsRequired = 618

At least single choice is required

§

TotalVoteWeightMustBe100Percent = 619

Total vote weight must be 100%

§

InvalidMultiChoiceProposalParameters = 620

Invalid multi choice proposal parameters

§

InvalidGovernanceForRequiredSignatory = 621

Invalid Governance for RequiredSignatory

§

SignatoryRecordAlreadyExists = 622

SignatoryRecord already exists

§

InstructionDeprecated = 623

Instruction has been removed

§

MissingRequiredSignatories = 624

Proposal is missing signatories required by its governance

Trait Implementations§

source§

impl Clone for GovernanceError

source§

fn clone(&self) -> GovernanceError

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for GovernanceError

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<T> DecodeError<T> for GovernanceError

source§

fn type_of() -> &'static str

source§

impl Display for GovernanceError

source§

fn fmt(&self, __formatter: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Error for GovernanceError

1.30.0 · source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
source§

impl From<GovernanceError> for ProgramError

source§

fn from(e: GovernanceError) -> Self

Converts to this type from the input type.
source§

impl FromPrimitive for GovernanceError

source§

fn from_i64(n: i64) -> Option<Self>

Converts an i64 to return an optional value of this type. If the value cannot be represented by this type, then None is returned.
source§

fn from_u64(n: u64) -> Option<Self>

Converts an u64 to return an optional value of this type. If the value cannot be represented by this type, then None is returned.
source§

fn from_isize(n: isize) -> Option<Self>

Converts an isize to return an optional value of this type. If the value cannot be represented by this type, then None is returned.
source§

fn from_i8(n: i8) -> Option<Self>

Converts an i8 to return an optional value of this type. If the value cannot be represented by this type, then None is returned.
source§

fn from_i16(n: i16) -> Option<Self>

Converts an i16 to return an optional value of this type. If the value cannot be represented by this type, then None is returned.
source§

fn from_i32(n: i32) -> Option<Self>

Converts an i32 to return an optional value of this type. If the value cannot be represented by this type, then None is returned.
source§

fn from_i128(n: i128) -> Option<Self>

Converts an i128 to return an optional value of this type. If the value cannot be represented by this type, then None is returned. Read more
source§

fn from_usize(n: usize) -> Option<Self>

Converts a usize to return an optional value of this type. If the value cannot be represented by this type, then None is returned.
source§

fn from_u8(n: u8) -> Option<Self>

Converts an u8 to return an optional value of this type. If the value cannot be represented by this type, then None is returned.
source§

fn from_u16(n: u16) -> Option<Self>

Converts an u16 to return an optional value of this type. If the value cannot be represented by this type, then None is returned.
source§

fn from_u32(n: u32) -> Option<Self>

Converts an u32 to return an optional value of this type. If the value cannot be represented by this type, then None is returned.
source§

fn from_u128(n: u128) -> Option<Self>

Converts an u128 to return an optional value of this type. If the value cannot be represented by this type, then None is returned. Read more
source§

fn from_f32(n: f32) -> Option<Self>

Converts a f32 to return an optional value of this type. If the value cannot be represented by this type, then None is returned.
source§

fn from_f64(n: f64) -> Option<Self>

Converts a f64 to return an optional value of this type. If the value cannot be represented by this type, then None is returned. Read more
source§

impl PartialEq for GovernanceError

source§

fn eq(&self, other: &GovernanceError) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl PrintProgramError for GovernanceError

source§

fn print<E>(&self)

source§

impl Eq for GovernanceError

source§

impl StructuralEq for GovernanceError

source§

impl StructuralPartialEq for GovernanceError

Auto Trait Implementations§

Blanket Implementations§

§

impl<T> AbiExample for T

§

default fn example() -> T

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

§

impl<T> Pointable for T

§

const ALIGN: usize = _

The alignment of pointer.
§

type Init = T

The type for initializers.
§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
source§

impl<T> Same for T

§

type Output = T

Should always be Self
source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

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

fn clone_into(&self, target: &mut T)

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

impl<T> ToString for T
where T: Display + ?Sized,

source§

default fn to_string(&self) -> String

Converts the given value to a String. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V