"fmt"
"io"
"io/fs"
+ "maps"
"path"
"slices"
"strings"
// Write PAX records to the output.
isGlobal := hdr.Typeflag == TypeXGlobalHeader
if len(paxHdrs) > 0 || isGlobal {
- // Sort keys for deterministic ordering.
- var keys []string
- for k := range paxHdrs {
- keys = append(keys, k)
- }
- slices.Sort(keys)
-
// Write each record to a buffer.
var buf strings.Builder
- for _, k := range keys {
+ // Sort keys for deterministic ordering.
+ for _, k := range slices.Sorted(maps.Keys(paxHdrs)) {
rec, err := formatPAXRecord(k, paxHdrs[k])
if err != nil {
return err
"errors"
"fmt"
"io"
+ "maps"
"math/rand/v2"
"reflect"
"runtime"
func Drivers() []string {
driversMu.RLock()
defer driversMu.RUnlock()
- list := make([]string, 0, len(drivers))
- for name := range drivers {
- list = append(list, name)
- }
- slices.Sort(list)
- return list
+ return slices.Sorted(maps.Keys(drivers))
}
// A NamedArg is a named argument. NamedArg values may be used as
"internal/coverage"
"internal/coverage/cmerge"
"io"
+ "maps"
"slices"
"strings"
"text/tabwriter"
if _, err := fmt.Fprintf(w, "mode: %s\n", fm.cm.String()); err != nil {
return err
}
- pkgs := make([]string, 0, len(fm.pm))
- for importpath := range fm.pm {
- pkgs = append(pkgs, importpath)
- }
- slices.Sort(pkgs)
- for _, importpath := range pkgs {
+ for _, importpath := range slices.Sorted(maps.Keys(fm.pm)) {
p := fm.pm[importpath]
units := make([]extcu, 0, len(p.unitTable))
for u := range p.unitTable {
allStmts := uint64(0)
covStmts := uint64(0)
- pkgs := make([]string, 0, len(fm.pm))
- for importpath := range fm.pm {
- pkgs = append(pkgs, importpath)
- }
- slices.Sort(pkgs)
-
// Emit functions for each package, sorted by import path.
- for _, importpath := range pkgs {
+ for _, importpath := range slices.Sorted(maps.Keys(fm.pm)) {
p := fm.pm[importpath]
if len(p.unitTable) == 0 {
continue
"internal/coverage/stringtab"
"internal/coverage/uleb128"
"io"
+ "maps"
"os"
"slices"
)
}
cfw.csh.StrTabLen = uint32(len(ws.BytesWritten())) - hdrsz
- akeys := make([]string, 0, len(args))
- for k := range args {
- akeys = append(akeys, k)
- }
- slices.Sort(akeys)
+ akeys := slices.Sorted(maps.Keys(args))
wrULEB128 := func(v uint) error {
cfw.tmp = cfw.tmp[:0]
import (
"errors"
"fmt"
+ "maps"
"slices"
"strings"
"unicode"
b.WriteString(strings.ToLower(sub))
}
- attrs := make([]string, 0, len(param))
- for a := range param {
- attrs = append(attrs, a)
- }
- slices.Sort(attrs)
-
- for _, attribute := range attrs {
+ for _, attribute := range slices.Sorted(maps.Keys(param)) {
value := param[attribute]
b.WriteByte(';')
b.WriteByte(' ')
"errors"
"fmt"
"io"
+ "maps"
"net/textproto"
"slices"
"strings"
fmt.Fprintf(&b, "--%s\r\n", w.boundary)
}
- keys := make([]string, 0, len(header))
- for k := range header {
- keys = append(keys, k)
- }
- slices.Sort(keys)
- for _, k := range keys {
+ for _, k := range slices.Sorted(maps.Keys(header)) {
for _, v := range header[k] {
fmt.Fprintf(&b, "%s: %s\r\n", k, v)
}
import (
"fmt"
"io"
+ "maps"
"net/http"
"os"
"path"
fmt.Printf("test=Hello CGI\r\n")
- keys := make([]string, 0, len(params))
- for k := range params {
- keys = append(keys, k)
- }
- slices.Sort(keys)
- for _, key := range keys {
+ for _, key := range slices.Sorted(maps.Keys(params)) {
fmt.Printf("param-%s=%s\r\n", key, params.Get(key))
}
envs := envMap(os.Environ())
- keys = make([]string, 0, len(envs))
- for k := range envs {
- keys = append(keys, k)
- }
- slices.Sort(keys)
- for _, key := range keys {
+ for _, key := range slices.Sorted(maps.Keys(envs)) {
fmt.Printf("env-%s=%s\r\n", key, envs[key])
}
"hash"
"io"
"log"
+ "maps"
"net"
. "net/http"
"net/http/httptest"
func TestTrailersClientToServer(t *testing.T) { run(t, testTrailersClientToServer) }
func testTrailersClientToServer(t *testing.T, mode testMode) {
cst := newClientServerTest(t, mode, HandlerFunc(func(w ResponseWriter, r *Request) {
- var decl []string
- for k := range r.Trailer {
- decl = append(decl, k)
- }
- slices.Sort(decl)
-
slurp, err := io.ReadAll(r.Body)
if err != nil {
t.Errorf("Server reading request body: %v", err)
if r.Trailer == nil {
io.WriteString(w, "nil Trailer")
} else {
+ decl := slices.Sorted(maps.Keys(r.Trailer))
fmt.Fprintf(w, "decl: %v, vals: %s, %s",
decl,
r.Trailer.Get("Client-Trailer-A"),
import (
"errors"
"fmt"
+ "maps"
"path"
"slices"
"strconv"
return ""
}
var buf strings.Builder
- keys := make([]string, 0, len(v))
- for k := range v {
- keys = append(keys, k)
- }
- slices.Sort(keys)
- for _, k := range keys {
+ for _, k := range slices.Sorted(maps.Keys(v)) {
vs := v[k]
keyEscaped := QueryEscape(k)
for _, v := range vs {
"fmt"
"io"
"io/fs"
+ "maps"
"path"
"slices"
"strings"
}
delete(found, ".")
if len(expected) == 0 && len(found) > 0 {
- var list []string
- for k := range found {
- if k != "." {
- list = append(list, k)
- }
- }
- slices.Sort(list)
+ list := slices.Sorted(maps.Keys(found))
if len(list) > 15 {
list = append(list[:10], "...")
}