Struct solana_program::stake::state::Delegation [−][src]
pub struct Delegation {
pub voter_pubkey: Pubkey,
pub stake: u64,
pub activation_epoch: Epoch,
pub deactivation_epoch: Epoch,
pub warmup_cooldown_rate: f64,
}
Fields
voter_pubkey: Pubkey
to whom the stake is delegated
stake: u64
activated stake amount, set at delegate() time
activation_epoch: Epoch
epoch at which this stake was activated, std::Epoch::MAX if is a bootstrap stake
deactivation_epoch: Epoch
epoch the stake was deactivated, std::Epoch::MAX if not deactivated
warmup_cooldown_rate: f64
how much stake we can activate per-epoch as a fraction of currently effective stake
Implementations
pub fn new(
voter_pubkey: &Pubkey,
stake: u64,
activation_epoch: Epoch,
warmup_cooldown_rate: f64
) -> Self
pub fn stake_activating_and_deactivating(
&self,
target_epoch: Epoch,
history: Option<&StakeHistory>
) -> StakeActivationStatus
Trait Implementations
impl BorshDeserialize for Delegation where
Pubkey: BorshDeserialize,
u64: BorshDeserialize,
Epoch: BorshDeserialize,
Epoch: BorshDeserialize,
f64: BorshDeserialize,
impl BorshDeserialize for Delegation where
Pubkey: BorshDeserialize,
u64: BorshDeserialize,
Epoch: BorshDeserialize,
Epoch: BorshDeserialize,
f64: BorshDeserialize,
impl BorshSchema for Delegation where
Pubkey: BorshSchema,
u64: BorshSchema,
Epoch: BorshSchema,
Epoch: BorshSchema,
f64: BorshSchema,
impl BorshSchema for Delegation where
Pubkey: BorshSchema,
u64: BorshSchema,
Epoch: BorshSchema,
Epoch: BorshSchema,
f64: BorshSchema,
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 Delegation where
Pubkey: BorshSerialize,
u64: BorshSerialize,
Epoch: BorshSerialize,
Epoch: BorshSerialize,
f64: BorshSerialize,
impl BorshSerialize for Delegation where
Pubkey: BorshSerialize,
u64: BorshSerialize,
Epoch: BorshSerialize,
Epoch: BorshSerialize,
f64: BorshSerialize,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
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 Delegation
impl Send for Delegation
impl Sync for Delegation
impl Unpin for Delegation
impl UnwindSafe for Delegation
Blanket Implementations
pub default fn visit_for_abi(
&self,
digester: &mut AbiDigester
) -> Result<AbiDigester, DigestError>
pub default fn visit_for_abi(
&self,
_digester: &mut AbiDigester
) -> Result<AbiDigester, DigestError>
Mutably borrows from an owned value. Read more