github.com/fibonacci-chain/fbc@v0.0.0-20231124064014-c7636198c1e9/x/staking/types/pool.go (about) 1 package types 2 3 import ( 4 "fmt" 5 6 sdk "github.com/fibonacci-chain/fbc/libs/cosmos-sdk/types" 7 ) 8 9 // names used as root for pool module accounts: 10 // 11 // - NotBondedPool -> "not_bonded_tokens_pool" 12 // 13 // - BondedPool -> "bonded_tokens_pool" 14 const ( 15 NotBondedPoolName = "not_bonded_tokens_pool" 16 BondedPoolName = "bonded_tokens_pool" 17 ) 18 19 // Pool - tracking bonded and not-bonded token supply of the bond denomination 20 type Pool struct { 21 // tokens which are not bonded to a validator (unbonded or unbonding) 22 NotBondedTokens sdk.Dec `json:"not_bonded_tokens" yaml:"not_bonded_tokens"` 23 // tokens which are currently bonded to a validator 24 BondedTokens sdk.Dec `json:"bonded_tokens" yaml:"bonded_tokens"` 25 } 26 27 // NewPool creates a new Pool instance used for queries 28 func NewPool(notBonded, bonded sdk.Dec) Pool { 29 return Pool{ 30 NotBondedTokens: notBonded, 31 BondedTokens: bonded, 32 } 33 } 34 35 // String returns a human readable string representation of Pool 36 func (p Pool) String() string { 37 return fmt.Sprintf(`Pool: 38 Not Bonded Tokens: %s 39 Bonded Tokens: %s`, p.NotBondedTokens, 40 p.BondedTokens) 41 }