]> Cypherpunks repositories - gostls13.git/commitdiff
go/ast: return Examples in name order
authorAndrew Gerrand <adg@golang.org>
Thu, 16 Feb 2012 02:08:35 +0000 (13:08 +1100)
committerAndrew Gerrand <adg@golang.org>
Thu, 16 Feb 2012 02:08:35 +0000 (13:08 +1100)
R=bradfitz
CC=golang-dev
https://golang.org/cl/5673061

src/pkg/go/ast/example.go

index 33a836894a2f526737aa66635913d9e5769be6c5..dec496b6f47a3583661a5347c94ba075c24e5608 100644 (file)
@@ -9,6 +9,7 @@ package ast
 import (
        "go/token"
        "regexp"
+       "sort"
        "strings"
        "unicode"
        "unicode/utf8"
@@ -66,6 +67,7 @@ func Examples(files ...*File) []*Example {
                }
                list = append(list, flist...)
        }
+       sort.Sort(exampleByName(list))
        return list
 }
 
@@ -106,3 +108,9 @@ func isTest(name, prefix string) bool {
        rune, _ := utf8.DecodeRuneInString(name[len(prefix):])
        return !unicode.IsLower(rune)
 }
+
+type exampleByName []*Example
+
+func (s exampleByName) Len() int           { return len(s) }
+func (s exampleByName) Swap(i, j int)      { s[i], s[j] = s[j], s[i] }
+func (s exampleByName) Less(i, j int) bool { return s[i].Name < s[j].Name }