#[repr(C)]pub struct ProposalTransactionV2 {
pub account_type: GovernanceAccountType,
pub proposal: Pubkey,
pub option_index: u8,
pub transaction_index: u16,
pub hold_up_time: u32,
pub instructions: Vec<InstructionData>,
pub executed_at: Option<UnixTimestamp>,
pub execution_status: TransactionExecutionStatus,
pub reserved_v2: [u8; 8],
}
Expand description
Account for an instruction to be executed for Proposal
Fields
account_type: GovernanceAccountType
Governance Account type
proposal: Pubkey
The Proposal the instruction belongs to
option_index: u8
The option index the instruction belongs to
transaction_index: u16
Unique transaction index within it’s parent Proposal
hold_up_time: u32
Minimum waiting time in seconds for the instruction to be executed once proposal is voted on
instructions: Vec<InstructionData>
Instructions to execute The instructions will be signed by Governance PDA the Proposal belongs to
executed_at: Option<UnixTimestamp>
Executed at flag
execution_status: TransactionExecutionStatus
Instruction execution status
reserved_v2: [u8; 8]
Reserved space for versions v2 and onwards Note: This space won’t be available to v1 accounts until runtime supports resizing
Implementations
Trait Implementations
Returns max account size or None if max size is not known and actual instance size should be used
impl BorshDeserialize for ProposalTransactionV2 where
GovernanceAccountType: BorshDeserialize,
Pubkey: BorshDeserialize,
u8: BorshDeserialize,
u16: BorshDeserialize,
u32: BorshDeserialize,
Vec<InstructionData>: BorshDeserialize,
Option<UnixTimestamp>: BorshDeserialize,
TransactionExecutionStatus: BorshDeserialize,
[u8; 8]: BorshDeserialize,
impl BorshDeserialize for ProposalTransactionV2 where
GovernanceAccountType: BorshDeserialize,
Pubkey: BorshDeserialize,
u8: BorshDeserialize,
u16: BorshDeserialize,
u32: BorshDeserialize,
Vec<InstructionData>: BorshDeserialize,
Option<UnixTimestamp>: BorshDeserialize,
TransactionExecutionStatus: BorshDeserialize,
[u8; 8]: BorshDeserialize,
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
fn add_definition(
declaration: String,
definition: Definition,
definitions: &mut HashMap<String, Definition, RandomState>
)
fn add_definition(
declaration: String,
definition: Definition,
definitions: &mut HashMap<String, Definition, RandomState>
)
Helper method to add a single type definition to the map.
impl BorshSerialize for ProposalTransactionV2 where
GovernanceAccountType: BorshSerialize,
Pubkey: BorshSerialize,
u8: BorshSerialize,
u16: BorshSerialize,
u32: BorshSerialize,
Vec<InstructionData>: BorshSerialize,
Option<UnixTimestamp>: BorshSerialize,
TransactionExecutionStatus: BorshSerialize,
[u8; 8]: BorshSerialize,
impl BorshSerialize for ProposalTransactionV2 where
GovernanceAccountType: BorshSerialize,
Pubkey: BorshSerialize,
u8: BorshSerialize,
u16: BorshSerialize,
u32: BorshSerialize,
Vec<InstructionData>: BorshSerialize,
Option<UnixTimestamp>: BorshSerialize,
TransactionExecutionStatus: BorshSerialize,
[u8; 8]: BorshSerialize,
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
impl RefUnwindSafe for ProposalTransactionV2
impl Send for ProposalTransactionV2
impl Sync for ProposalTransactionV2
impl Unpin for ProposalTransactionV2
impl UnwindSafe for ProposalTransactionV2
Blanket Implementations
pub default fn example() -> T
Mutably borrows from an owned value. Read more