github.com/Finschia/finschia-sdk@v0.48.1/x/authz/genesis.go (about) 1 package authz 2 3 import ( 4 cdctypes "github.com/Finschia/finschia-sdk/codec/types" 5 ) 6 7 // NewGenesisState creates new GenesisState object 8 func NewGenesisState(entries []GrantAuthorization) *GenesisState { 9 return &GenesisState{ 10 Authorization: entries, 11 } 12 } 13 14 // ValidateGenesis check the given genesis state has no integrity issues 15 func ValidateGenesis(data GenesisState) error { 16 return nil 17 } 18 19 // DefaultGenesisState - Return a default genesis state 20 func DefaultGenesisState() *GenesisState { 21 return &GenesisState{} 22 } 23 24 var _ cdctypes.UnpackInterfacesMessage = GenesisState{} 25 26 // UnpackInterfaces implements UnpackInterfacesMessage.UnpackInterfaces 27 func (data GenesisState) UnpackInterfaces(unpacker cdctypes.AnyUnpacker) error { 28 for _, a := range data.Authorization { 29 err := a.UnpackInterfaces(unpacker) 30 if err != nil { 31 return err 32 } 33 } 34 return nil 35 } 36 37 // UnpackInterfaces implements UnpackInterfacesMessage.UnpackInterfaces 38 func (msg GrantAuthorization) UnpackInterfaces(unpacker cdctypes.AnyUnpacker) error { 39 var a Authorization 40 return unpacker.UnpackAny(msg.Authorization, &a) 41 }