Struct solana_stake_program::stake_state::Delegation
[−]pub struct Delegation {
pub voter_pubkey: Pubkey,
pub stake: u64,
pub activation_epoch: u64,
pub deactivation_epoch: u64,
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: u64
epoch at which this stake was activated, std::Epoch::MAX if is a bootstrap stake
deactivation_epoch: u64
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
impl Delegation
impl Delegation
pub fn new(
voter_pubkey: &Pubkey,
stake: u64,
activation_epoch: u64,
warmup_cooldown_rate: f64
) -> Delegation
pub fn is_bootstrap(&self) -> bool
pub fn stake(&self, epoch: u64, history: Option<&StakeHistory>) -> u64
pub fn stake_activating_and_deactivating(
&self,
target_epoch: u64,
history: Option<&StakeHistory>
) -> StakeHistoryEntry
Trait Implementations
impl AbiExample for Delegation
impl AbiExample for Delegation
fn example() -> Delegation
impl BorshDeserialize for Delegation where
Pubkey: BorshDeserialize,
u64: BorshDeserialize,
f64: BorshDeserialize,
impl BorshDeserialize for Delegation where
Pubkey: BorshDeserialize,
u64: BorshDeserialize,
f64: BorshDeserialize,
fn deserialize(buf: &mut &[u8]) -> Result<Delegation, Error>
fn deserialize(buf: &mut &[u8]) -> Result<Delegation, Error>
Deserializes this instance from a given slice of bytes. Updates the buffer to point at the remaining bytes. Read more
impl BorshSchema for Delegation where
Pubkey: BorshSchema,
u64: BorshSchema,
f64: BorshSchema,
impl BorshSchema for Delegation where
Pubkey: BorshSchema,
u64: BorshSchema,
f64: BorshSchema,
fn declaration() -> String
fn declaration() -> String
Get the name of the type without brackets.
fn add_definitions_recursively(
definitions: &mut HashMap<String, Definition, RandomState>
)
fn add_definitions_recursively(
definitions: &mut HashMap<String, Definition, RandomState>
)
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.
fn schema_container() -> BorshSchemaContainer
impl BorshSerialize for Delegation where
Pubkey: BorshSerialize,
u64: BorshSerialize,
f64: BorshSerialize,
impl BorshSerialize for Delegation where
Pubkey: BorshSerialize,
u64: BorshSerialize,
f64: BorshSerialize,
impl Clone for Delegation
impl Clone for Delegation
fn clone(&self) -> Delegation
fn clone(&self) -> Delegation
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
impl Debug for Delegation
impl Debug for Delegation
impl Default for Delegation
impl Default for Delegation
fn default() -> Delegation
fn default() -> Delegation
Returns the “default value” for a type. Read more
impl<'de> Deserialize<'de> for Delegation
impl<'de> Deserialize<'de> for Delegation
fn deserialize<__D>(
__deserializer: __D
) -> Result<Delegation, <__D as Deserializer<'de>>::Error> where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D
) -> Result<Delegation, <__D as Deserializer<'de>>::Error> where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl PartialEq<Delegation> for Delegation
impl PartialEq<Delegation> for Delegation
fn eq(&self, other: &Delegation) -> bool
fn eq(&self, other: &Delegation) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
fn ne(&self, other: &Delegation) -> bool
fn ne(&self, other: &Delegation) -> bool
This method tests for !=
.
impl Serialize for Delegation
impl Serialize for Delegation
fn serialize<__S>(
&self,
__serializer: __S
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error> where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error> where
__S: Serializer,
Serialize this value into the given Serde serializer. Read more
impl Copy for Delegation
impl StructuralPartialEq for Delegation
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
sourceimpl<T> AbiEnumVisitor for T where
T: Serialize + ?Sized,
impl<T> AbiEnumVisitor for T where
T: Serialize + ?Sized,
default fn visit_for_abi(
&self,
_digester: &mut AbiDigester
) -> Result<AbiDigester, DigestError>
sourceimpl<T> AbiEnumVisitor for T where
T: Serialize + AbiExample + ?Sized,
impl<T> AbiEnumVisitor for T where
T: Serialize + AbiExample + ?Sized,
default fn visit_for_abi(
&self,
digester: &mut AbiDigester
) -> Result<AbiDigester, DigestError>
sourceimpl<T> AbiExample for T
impl<T> AbiExample for T
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
impl<T> Pointable for T
impl<T> Pointable for T
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcefn clone_into(&self, target: &mut T)
fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
fn vzip(self) -> V
sourceimpl<T> WithSubscriber for T
impl<T> WithSubscriber for T
sourcefn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
sourcefn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more