From bdc0e90275827eb6314052e38799b2023a95ea3b Mon Sep 17 00:00:00 2001 From: lotusirous <5105237+lotusirous@users.noreply.github.com> Date: Mon, 13 Dec 2021 18:12:15 +0900 Subject: [PATCH] Add ordered in printing --- main.go | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/main.go b/main.go index 90d9bcc..08a4127 100644 --- a/main.go +++ b/main.go @@ -12,11 +12,13 @@ import ( "io" "os" "path/filepath" + "sort" ) // HashGroup composes the name to hash hash function type HashGroup map[string]hash.Hash +// Values extracts the values from group hash. func (h HashGroup) Values() map[string]string { out := make(map[string]string) for name, v := range h { @@ -119,8 +121,15 @@ func main() { fmt.Fprintf(fd, "Cannot digest: %v", err) os.Exit(1) } - for name, v := range hashes { - fmt.Fprintf(fd, "%s: %s\n", name, v) + // sort by key since the go map is unordered + keys := make([]string, 0, len(hashes)) + for k := range hashes { + keys = append(keys, k) + } + sort.Strings(keys) + + for _, name := range keys { + fmt.Fprintf(fd, "%s: %s\n", name, hashes[name]) } }