Struct solana_program::stake::state::Stake
source · pub struct Stake {
pub delegation: Delegation,
pub credits_observed: u64,
}
Fields§
§delegation: Delegation
§credits_observed: u64
credits observed is credits from vote account state when delegated or redeemed
Implementations§
source§impl Stake
impl Stake
pub fn stake( &self, epoch: Epoch, history: Option<&StakeHistory>, new_rate_activation_epoch: Option<Epoch> ) -> u64
pub fn split( &mut self, remaining_stake_delta: u64, split_stake_amount: u64 ) -> Result<Self, StakeError>
pub fn deactivate(&mut self, epoch: Epoch) -> Result<(), StakeError>
Trait Implementations§
source§impl BorshDeserialize for Stakewhere
Delegation: BorshDeserialize,
u64: BorshDeserialize,
impl BorshDeserialize for Stakewhere Delegation: BorshDeserialize, u64: BorshDeserialize,
fn deserialize_reader<R: Read>(reader: &mut R) -> Result<Self, Error>
source§fn deserialize(buf: &mut &[u8]) -> Result<Self, Error>
fn deserialize(buf: &mut &[u8]) -> Result<Self, Error>
Deserializes this instance from a given slice of bytes.
Updates the buffer to point at the remaining bytes.
source§fn try_from_slice(v: &[u8]) -> Result<Self, Error>
fn try_from_slice(v: &[u8]) -> Result<Self, Error>
Deserialize this instance from a slice of bytes.
fn try_from_reader<R>(reader: &mut R) -> Result<Self, Error>where R: Read,
source§impl BorshSchema for Stakewhere
Delegation: BorshSchema,
u64: BorshSchema,
impl BorshSchema for Stakewhere Delegation: BorshSchema, u64: BorshSchema,
source§fn declaration() -> Declaration
fn declaration() -> Declaration
Get the name of the type without brackets.
source§fn add_definitions_recursively(
definitions: &mut HashMap<Declaration, Definition>
)
fn add_definitions_recursively( definitions: &mut HashMap<Declaration, Definition> )
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.
source§fn add_definition(
declaration: String,
definition: Definition,
definitions: &mut HashMap<String, Definition>
)
fn add_definition( declaration: String, definition: Definition, definitions: &mut HashMap<String, Definition> )
Helper method to add a single type definition to the map.
fn schema_container() -> BorshSchemaContainer
source§impl BorshSerialize for Stakewhere
Delegation: BorshSerialize,
u64: BorshSerialize,
impl BorshSerialize for Stakewhere Delegation: BorshSerialize, u64: BorshSerialize,
source§impl<'de> Deserialize<'de> for Stake
impl<'de> Deserialize<'de> for Stake
source§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
source§impl PartialEq for Stake
impl PartialEq for Stake
impl Copy for Stake
impl StructuralPartialEq for Stake
Auto Trait Implementations§
impl RefUnwindSafe for Stake
impl Send for Stake
impl Sync for Stake
impl Unpin for Stake
impl UnwindSafe for Stake
Blanket Implementations§
source§impl<T> AbiEnumVisitor for Twhere
T: Serialize + ?Sized,
impl<T> AbiEnumVisitor for Twhere T: Serialize + ?Sized,
default fn visit_for_abi( &self, _digester: &mut AbiDigester ) -> Result<AbiDigester, DigestError>
source§impl<T> AbiEnumVisitor for Twhere
T: Serialize + AbiExample + ?Sized,
impl<T> AbiEnumVisitor for Twhere T: Serialize + AbiExample + ?Sized,
default fn visit_for_abi( &self, digester: &mut AbiDigester ) -> Result<AbiDigester, DigestError>
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more