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  }