// Copyright 2020 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. package maphash_test import ( "fmt" "hash/maphash" ) func Example() { // The zero Hash value is valid and ready to use; setting an // initial seed is not necessary. var h maphash.Hash // Add a string to the hash, and print the current hash value. h.WriteString("hello, ") fmt.Printf("%#x\n", h.Sum64()) // Append additional data (in the form of a byte array). h.Write([]byte{'w', 'o', 'r', 'l', 'd'}) fmt.Printf("%#x\n", h.Sum64()) // Reset discards all data previously added to the Hash, without // changing its seed. h.Reset() // Use SetSeed to create a new Hash h2 which will behave // identically to h. var h2 maphash.Hash h2.SetSeed(h.Seed()) h.WriteString("same") h2.WriteString("same") fmt.Printf("%#x == %#x\n", h.Sum64(), h2.Sum64()) }