type Hash

Hash是一个被所有hash函数实现的公共接口

  1. type Hash interface {
  2. // 通过嵌入的匿名io.Writer接口的Write方法向hash中添加更多数据,永远不返回错误
  3. io.Writer
  4. // 返回添加b到当前的hash值后的新切片,不会改变底层的hash状态
  5. Sum(b []byte) []byte
  6. // 重设hash为无数据输入的状态
  7. Reset()
  8. // 返回Sum会返回的切片的长度
  9. Size() int
  10. // 返回hash底层的块大小;Write方法可以接受任何大小的数据,
  11. // 但提供的数据是块大小的倍数时效率更高
  12. BlockSize() int
  13. }


type Hash32

Hash32是一个被所有32位hash函数实现的公共接口

  1. type Hash32 interface {
  2. Hash
  3. Sum32() uint32
  4. }

type Hash64

Hash64是一个被所有64位hash函数实现的公共接口

  1. type Hash64 interface {
  2. Hash
  3. Sum64() uint64
  4. }