gpu-compute-chain/x/cosmostest/types/genesis.go

37 lines
944 B
Go
Raw Normal View History

2022-08-25 16:51:14 -07:00
package types
import (
"fmt"
2022-08-25 16:51:14 -07:00
)
// DefaultIndex is the default capability global index
const DefaultIndex uint64 = 1
// DefaultGenesis returns the default Capability genesis state
func DefaultGenesis() *GenesisState {
return &GenesisState{
NextAuction: nil,
AuctionList: []Auction{},
2022-08-25 16:51:14 -07:00
// this line is used by starport scaffolding # genesis/types/default
Params: DefaultParams(),
}
}
// Validate performs basic genesis state validation returning an error upon any
// failure.
func (gs GenesisState) Validate() error {
// Check for duplicated index in auction
auctionIndexMap := make(map[string]struct{})
for _, elem := range gs.AuctionList {
index := string(AuctionKey(elem.Index))
if _, ok := auctionIndexMap[index]; ok {
return fmt.Errorf("duplicated index for auction")
}
auctionIndexMap[index] = struct{}{}
}
2022-08-25 16:51:14 -07:00
// this line is used by starport scaffolding # genesis/types/validate
return gs.Params.Validate()
}