github.com/okex/exchain@v1.8.0/libs/tendermint/mempool/codec.go (about)

     1  package mempool
     2  
     3  import (
     4  	amino "github.com/tendermint/go-amino"
     5  )
     6  
     7  var cdc = amino.NewCodec()
     8  
     9  var txMessageAminoTypePrefix []byte
    10  
    11  func init() {
    12  	RegisterMessages(cdc)
    13  
    14  	txMessageAminoTypePrefix = initTxMessageAminoTypePrefix(cdc)
    15  }
    16  
    17  func initTxMessageAminoTypePrefix(cdc *amino.Codec) []byte {
    18  	txMessageAminoTypePrefix := make([]byte, 8)
    19  	tpl, err := cdc.GetTypePrefix(&TxMessage{}, txMessageAminoTypePrefix)
    20  	if err != nil {
    21  		panic(err)
    22  	}
    23  	txMessageAminoTypePrefix = txMessageAminoTypePrefix[:tpl]
    24  	return txMessageAminoTypePrefix
    25  }
    26  
    27  // getTxMessageAminoTypePrefix returns the amino type prefix of TxMessage, the result is readonly!
    28  func getTxMessageAminoTypePrefix() []byte {
    29  	return txMessageAminoTypePrefix
    30  }