calcPoolTokensForDeposit static method
Calculate the pool tokens that should be minted for a deposit of stakeLamports
Implementation
static BigInt calcPoolTokensForDeposit(
StakePoolAccount stakePoolAccount,
BigInt stakeLamports,
) {
if (stakePoolAccount.poolTokenSupply == BigInt.zero ||
stakePoolAccount.totalLamports == BigInt.zero) {
return stakeLamports;
}
final numerator = stakeLamports * stakePoolAccount.poolTokenSupply;
if (numerator == BigInt.zero) return BigInt.zero;
return BigRational(
numerator,
denominator: stakePoolAccount.totalLamports,
).toBigInt();
}