Struct lido::state::RewardDistribution [−][src]
pub struct RewardDistribution {
pub treasury_fee: u32,
pub validation_fee: u32,
pub developer_fee: u32,
pub st_sol_appreciation: u32,
}Expand description
Determines how rewards are split up among these parties, represented as the number of parts of the total. For example, if each party has 1 part, then they all get an equal share of the reward.
Fields
treasury_fee: u32validation_fee: u32developer_fee: u32st_sol_appreciation: u32Implementations
Split the reward according to the distribution defined in this instance.
Fees are all rounded down, and the remainder goes to stSOL appreciation.
This means that the outputs may not sum to the input, even when
st_sol_appreciation is 0.
Returns the fee amounts in SOL. stSOL should be minted for those when they get distributed. This acts like a deposit: it is like the fee recipients received their fee in SOL outside of Solido, and then deposited it. The remaining SOL, which is not taken as a fee, acts as a donation to the pool, and makes the SOL value of stSOL go up. It is not included in the output, as nothing needs to be done to handle it.
Trait Implementations
impl BorshDeserialize for RewardDistribution where
u32: BorshDeserialize,
u32: BorshDeserialize,
u32: BorshDeserialize,
u32: BorshDeserialize,
impl BorshDeserialize for RewardDistribution where
u32: BorshDeserialize,
u32: BorshDeserialize,
u32: BorshDeserialize,
u32: BorshDeserialize,
impl BorshSchema for RewardDistribution where
u32: BorshSchema,
u32: BorshSchema,
u32: BorshSchema,
u32: BorshSchema,
impl BorshSchema for RewardDistribution where
u32: BorshSchema,
u32: BorshSchema,
u32: BorshSchema,
u32: 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 RewardDistribution where
u32: BorshSerialize,
u32: BorshSerialize,
u32: BorshSerialize,
u32: BorshSerialize,
impl BorshSerialize for RewardDistribution where
u32: BorshSerialize,
u32: BorshSerialize,
u32: BorshSerialize,
u32: BorshSerialize,
Returns the “default value” for a type. 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 RewardDistribution
impl Send for RewardDistribution
impl Sync for RewardDistribution
impl Unpin for RewardDistribution
impl UnwindSafe for RewardDistribution
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>
pub default fn example() -> T
Mutably borrows from an owned value. Read more