Documentation ¶
Index ¶
- func Fingerprint(slice []byte) []byte
- func MarshalFixedSize(data interface{}) ([]byte, error)
- func MustHexDecode(s string) []byte
- func Reverse(bz []byte) []byte
- type HexBytes
- func (bz HexBytes) Bytes() []byte
- func (bz HexBytes) Copy() HexBytes
- func (bz HexBytes) Equal(b []byte) bool
- func (bz HexBytes) Format(s fmt.State, verb rune)
- func (bz HexBytes) IsZero() bool
- func (bz HexBytes) Marshal() ([]byte, error)
- func (bz HexBytes) MarshalText() ([]byte, error)
- func (bz HexBytes) ReverseBytes() HexBytes
- func (bz HexBytes) ShortString() string
- func (bz HexBytes) String() string
- func (bz *HexBytes) Unmarshal(data []byte) error
- func (bz *HexBytes) UnmarshalText(data []byte) error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Fingerprint ¶
Fingerprint returns the first 6 bytes of a byte slice. If the slice is less than 6 bytes, the fingerprint contains trailing zeroes.
func MarshalFixedSize ¶
MarshalFixed marshals provided struct as a fixed-size buffer. It processes exported struct fields in the order of their declaration. At this point, it only supports the following data types: * uint16 * int64 * slices * fixed-size arrays
It also supports "tmbytes" tag with the following comma-separated attributes:
- size=N - provide number of elements in the slice (only for slices) to be enforced; if 0 or not provided, size enforcement is responsibility of the caller
Example:
Field []byte `tmbytes:"size=123"`
func MustHexDecode ¶
MustHexDecode decodes hex string to slice of bytes
Types ¶
type HexBytes ¶
type HexBytes []byte
HexBytes is a wrapper around []byte that encodes data as hexadecimal strings for use in JSON.
func (HexBytes) Copy ¶
Copy creates a deep copy of HexBytes. It allocates new buffer and copies data into it.
func (HexBytes) Format ¶
Format writes either address of 0th element in a slice in base 16 notation, with leading 0x (%p), or casts HexBytes to bytes and writes as hexadecimal string to s.
func (HexBytes) MarshalText ¶
MarshalText encodes a HexBytes value as hexadecimal digits. This method is used by json.Marshal.
func (HexBytes) ReverseBytes ¶
ReverseBytes returns a reversed sequence bytes of the current slice of byte
func (HexBytes) ShortString ¶
func (*HexBytes) UnmarshalText ¶
UnmarshalText handles decoding of HexBytes from JSON strings. This method is used by json.Unmarshal. It allows decoding of both hex and base64-encoded byte arrays.