github.com/annchain/OG@v0.0.9/og/message_archive/message_key.go (about)

     1  package message_archive
     2  
     3  //type MsgKey struct {
     4  //	data [common.HashLength + 2]byte
     5  //}
     6  //
     7  //func (k MsgKey) GetType() (BinaryMessageType, error) {
     8  //	if len(k.data) != common.HashLength+2 {
     9  //		return 0, errors.New("size err")
    10  //	}
    11  //	return BinaryMessageType(binary.BigEndian.Uint16(k.data[0:2])), nil
    12  //}
    13  //
    14  //func (k MsgKey) GetHash() (common.Hash, error) {
    15  //	if len(k.data) != common.HashLength+2 {
    16  //		return common.Hash{}, errors.New("size err")
    17  //	}
    18  //	return common.BytesToHash(k.data[2:]), nil
    19  //}
    20  //
    21  //func NewMsgKey(m BinaryMessageType, hash common.Hash) MsgKey {
    22  //	var key MsgKey
    23  //	b := make([]byte, 2)
    24  //	//use one key for tx and sequencer
    25  //	if m == MessageTypeNewSequencer {
    26  //		m = MessageTypeNewTx
    27  //	}
    28  //	binary.BigEndian.PutUint16(b, uint16(m))
    29  //	copy(key.data[:], b)
    30  //	copy(key.data[2:], hash.ToBytes())
    31  //	return key
    32  //}