build(deps): bump golang.org/x/text from 0.38.0 to 0.39.0

Bumps [golang.org/x/text](https://github.com/golang/text) from 0.38.0 to 0.39.0.
- [Release notes](https://github.com/golang/text/releases)
- [Commits](https://github.com/golang/text/compare/v0.38.0...v0.39.0)

---
updated-dependencies:
- dependency-name: golang.org/x/text
  dependency-version: 0.39.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
This commit is contained in:
dependabot[bot]
2026-07-07 14:43:50 +00:00
committed by Ralf Haferkamp
parent e53c77e2be
commit ee478ed6a5
19 changed files with 738 additions and 372 deletions

6
go.mod
View File

@@ -109,7 +109,7 @@ require (
golang.org/x/oauth2 v0.36.0
golang.org/x/sync v0.21.0
golang.org/x/term v0.44.0
golang.org/x/text v0.38.0
golang.org/x/text v0.39.0
google.golang.org/genproto/googleapis/api v0.0.0-20260526163538-3dc84a4a5aaa
google.golang.org/grpc v1.82.0
google.golang.org/protobuf v1.36.11
@@ -388,10 +388,10 @@ require (
go.uber.org/zap v1.27.0 // indirect
go.yaml.in/yaml/v2 v2.4.4 // indirect
go.yaml.in/yaml/v3 v3.0.4 // indirect
golang.org/x/mod v0.36.0 // indirect
golang.org/x/mod v0.37.0 // indirect
golang.org/x/sys v0.46.0 // indirect
golang.org/x/time v0.15.0 // indirect
golang.org/x/tools v0.45.0 // indirect
golang.org/x/tools v0.47.0 // indirect
google.golang.org/genproto v0.0.0-20260319201613-d00831a3d3e7 // indirect
google.golang.org/genproto/googleapis/rpc v0.0.0-20260526163538-3dc84a4a5aaa // indirect
gopkg.in/cenkalti/backoff.v1 v1.1.0 // indirect

12
go.sum
View File

@@ -1399,8 +1399,8 @@ golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4=
golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs=
golang.org/x/mod v0.36.0 h1:JJjpVx6myfUsUdAzZuOSTTmRE0PfZeNWzzvKrP7amb4=
golang.org/x/mod v0.36.0/go.mod h1:moc6ELqsWcOw5Ef3xVprK5ul/MvtVvkIXLziUOICjUQ=
golang.org/x/mod v0.37.0 h1:vF1DjpVEshcIqoEaauuHebaLk1O1forxjxBaVn884JQ=
golang.org/x/mod v0.37.0/go.mod h1:m8S8VeM9r4dzDwjrKO0a1sZP3YjeMamRRlD+fmR2Q/0=
golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
golang.org/x/net v0.0.0-20180906233101-161cd47e91fd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
@@ -1582,8 +1582,8 @@ golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8=
golang.org/x/text v0.9.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8=
golang.org/x/text v0.13.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE=
golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU=
golang.org/x/text v0.38.0 h1:sXmwo9DwP3OK9EZ7PqAdaooSGozfl/3a6/xJcbzPRhE=
golang.org/x/text v0.38.0/go.mod h1:YXZt3QhHUKYT53r2lLKFIVi6Ao1jdzrTR/KQ09qyxF4=
golang.org/x/text v0.39.0 h1:UbZz4pLOvn600D6Oh6GGEI6VAmndrEBLv8/6BEXzyus=
golang.org/x/text v0.39.0/go.mod h1:3UwRclnC2g0TU9x8PZiyfOajCd1zaUNHF9cvqcQZ+ZM=
golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
golang.org/x/time v0.0.0-20191024005414-555d28b269f0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
@@ -1644,8 +1644,8 @@ golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4f
golang.org/x/tools v0.0.0-20210112230658-8b4aab62c064/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA=
golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc=
golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU=
golang.org/x/tools v0.45.0 h1:18qN3FAooORvApf5XjCXgsuayZOEtXf6JK18I3+ONa8=
golang.org/x/tools v0.45.0/go.mod h1:LuUGqqaXcXMEFEruIVJVm5mgDD8vww/z/SR1gQ4uE/0=
golang.org/x/tools v0.47.0 h1:7Kn5x/d1svx/PzryTsqeoZN4TZwqeH5pGWjefhLi/1Q=
golang.org/x/tools v0.47.0/go.mod h1:dFHnyTvFWY212G+h7ZY4Vsp/K3U4/7W9TyVaAul8uCA=
golang.org/x/tools/godoc v0.1.0-deprecated h1:o+aZ1BOj6Hsx/GBdJO/s815sqftjSnrZZwyYTHODvtk=
golang.org/x/tools/godoc v0.1.0-deprecated/go.mod h1:qM63CriJ961IHWmnWa9CjZnBndniPt4a3CK0PVB9bIg=
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=

View File

@@ -249,7 +249,7 @@ func upper(c *context) bool {
return c.copy()
}
// isUpper writes the isUppercase version of the current rune to dst.
// isUpper reports whether the current rune is in upper case.
func isUpper(c *context) bool {
ct := c.caseType()
if c.info&hasMappingMask == 0 || ct == cUpper {

View File

@@ -774,7 +774,7 @@ func nlTitle(c *context) bool {
// From CLDR:
// # Special titlecasing for Dutch initial "ij".
// ::Any-Title();
// # Fix up Ij at the beginning of a "word" (per Any-Title, notUAX #29)
// # Fix up Ij at the beginning of a "word" (per Any-Title, not UAX #29)
// [:^WB=ALetter:] [:WB=Extend:]* [[:WB=MidLetter:][:WB=MidNumLet:]]? { Ij } → IJ ;
if c.src[c.pSrc] != 'I' && c.src[c.pSrc] != 'i' {
return title(c)
@@ -794,7 +794,7 @@ func nlTitleSpan(c *context) bool {
// From CLDR:
// # Special titlecasing for Dutch initial "ij".
// ::Any-Title();
// # Fix up Ij at the beginning of a "word" (per Any-Title, notUAX #29)
// # Fix up Ij at the beginning of a "word" (per Any-Title, not UAX #29)
// [:^WB=ALetter:] [:WB=Extend:]* [[:WB=MidLetter:][:WB=MidNumLet:]]? { Ij } → IJ ;
if c.src[c.pSrc] != 'I' {
return isTitle(c)

View File

@@ -200,8 +200,8 @@ func (c *Collator) Key(buf *Buffer, str []byte) []byte {
// KeyFromString returns the collation key for str.
// Passing the buffer buf may avoid memory allocations.
// The returned slice will point to an allocation in Buffer and will retain
// valid until the next call to buf.ResetKeys().
// The returned slice will point to an allocation in Buffer and will remain
// valid until the next call to buf.Reset().
func (c *Collator) KeyFromString(buf *Buffer, str string) []byte {
// See https://www.unicode.org/reports/tr10/#Main_Algorithm for more details.
buf.init()

View File

@@ -121,8 +121,12 @@ func (p Properties) BoundaryAfter() bool {
//
// When all 6 bits are zero, the character is inert, meaning it is never
// influenced by normalization.
//
// We set flags to 0x80 (high bit 7 unused in quick check data) to indicate an invalid rune.
type qcInfo uint8
func (p Properties) isInvalid() bool { return p.flags == 0x80 }
func (p Properties) isYesC() bool { return p.flags&0x10 == 0 }
func (p Properties) isYesD() bool { return p.flags&0x4 == 0 }
@@ -247,6 +251,9 @@ func (f Form) PropertiesString(s string) Properties {
// to a Properties. See the comment at the top of the file
// for more information on the format.
func compInfo(v uint16, sz int) Properties {
if sz == 0 {
return Properties{flags: 0x80, size: 1}
}
if v == 0 {
return Properties{size: uint8(sz)}
} else if v >= 0x8000 {
@@ -254,7 +261,7 @@ func compInfo(v uint16, sz int) Properties {
size: uint8(sz),
ccc: uint8(v),
tccc: uint8(v),
flags: qcInfo(v >> 8),
flags: qcInfo(v>>8) & 0x3f,
}
if p.ccc > 0 || p.combinesBackward() {
p.nLead = uint8(p.flags & 0x3)

View File

@@ -376,16 +376,12 @@ func nextComposed(i *Iter) []byte {
goto doNorm
}
prevCC = i.info.tccc
sz := int(i.info.size)
if sz == 0 {
sz = 1 // illegal rune: copy byte-by-byte
}
p := outp + sz
p := outp + int(i.info.size)
if p > len(i.buf) {
break
}
outp = p
i.p += sz
i.p += int(i.info.size)
if i.p >= i.rb.nsrc {
i.setDone()
break

View File

@@ -148,7 +148,7 @@ func (f Form) IsNormalString(s string) bool {
// patched buffer and whether the decomposition is still in progress.
func patchTail(rb *reorderBuffer) bool {
info, p := lastRuneStart(&rb.f, rb.out)
if p == -1 || info.size == 0 {
if p == -1 || info.isInvalid() {
return true
}
end := p + int(info.size)
@@ -225,7 +225,7 @@ func doAppend(rb *reorderBuffer, out []byte, p int) []byte {
}
fd := &rb.f
if doMerge {
var info Properties
info := Properties{flags: 0x80, size: 1} // invalid rune
if p < n {
info = fd.info(src, p)
if !info.BoundaryBefore() || info.nLeadingNonStarters() > 0 {
@@ -235,7 +235,7 @@ func doAppend(rb *reorderBuffer, out []byte, p int) []byte {
p = decomposeSegment(rb, p, true)
}
}
if info.size == 0 {
if info.isInvalid() {
rb.doFlush()
// Append incomplete UTF-8 encoding.
return src.appendSlice(rb.out, p, n)
@@ -314,7 +314,7 @@ func (f *formInfo) quickSpan(src input, i, end int, atEOF bool) (n int, ok bool)
continue
}
info := f.info(src, i)
if info.size == 0 {
if info.isInvalid() {
if atEOF {
// include incomplete runes
return n, true
@@ -379,7 +379,7 @@ func (f Form) firstBoundary(src input, nsrc int) int {
// CGJ insertion points correctly. Luckily it doesn't have to.
for {
info := fd.info(src, i)
if info.size == 0 {
if info.isInvalid() {
return -1
}
if s := ss.next(info); s != ssSuccess {
@@ -424,7 +424,7 @@ func (f Form) nextBoundary(src input, nsrc int, atEOF bool) int {
}
fd := formTable[f]
info := fd.info(src, 0)
if info.size == 0 {
if info.isInvalid() {
if atEOF {
return 1
}
@@ -435,7 +435,7 @@ func (f Form) nextBoundary(src input, nsrc int, atEOF bool) int {
for i := int(info.size); i < nsrc; i += int(info.size) {
info = fd.info(src, i)
if info.size == 0 {
if info.isInvalid() {
if atEOF {
return i
}
@@ -465,7 +465,7 @@ func lastBoundary(fd *formInfo, b []byte) int {
if p == -1 {
return -1
}
if info.size == 0 { // ends with incomplete rune
if info.isInvalid() { // ends with incomplete rune
if p == 0 { // starts with incomplete rune
return -1
}
@@ -504,7 +504,7 @@ func lastBoundary(fd *formInfo, b []byte) int {
func decomposeSegment(rb *reorderBuffer, sp int, atEOF bool) int {
// Force one character to be consumed.
info := rb.f.info(rb.src, sp)
if info.size == 0 {
if info.isInvalid() {
return 0
}
if s := rb.ss.next(info); s == ssStarter {
@@ -528,7 +528,7 @@ func decomposeSegment(rb *reorderBuffer, sp int, atEOF bool) int {
break
}
info = rb.f.info(rb.src, sp)
if info.size == 0 {
if info.isInvalid() {
if !atEOF {
return int(iShortSrc)
}

View File

@@ -815,6 +815,12 @@ func (ld *loader) refine(response *DriverResponse) ([]*Package, error) {
needsrc: needsrc,
goVersion: response.GoVersion,
}
// Don't trust the driver to respond with duplicate-free
// package names (go.dev/issue/63822).
if _, ok := ld.pkgs[lpkg.ID]; ok {
return nil, fmt.Errorf("%s response contained duplicate packages for ID %q",
cond(ld.externalDriver, "go/packages driver", "go list"), lpkg.ID)
}
ld.pkgs[lpkg.ID] = lpkg
if rootIndex >= 0 {
initial[rootIndex] = lpkg
@@ -1589,3 +1595,11 @@ func usesExportData(cfg *Config) bool {
}
type unit struct{}
func cond[T any](cond bool, t, f T) T {
if cond {
return t
} else {
return f
}
}

View File

@@ -823,6 +823,9 @@ func (p *iexporter) doDecl(obj types.Object) {
w.pos(m.Pos())
w.string(m.Name())
sig, _ := m.Type().(*types.Signature)
if w.p.version >= iexportVersionGenericMethods && w.bool(sig.TypeParams().Len() > 0) {
w.tparamList(obj.Name()+"."+m.Name(), sig.TypeParams(), obj.Pkg())
}
// Receiver type parameters are type arguments of the receiver type, so
// their name must be qualified before exporting recv.

View File

@@ -48,13 +48,14 @@ func (r *intReader) uint64() uint64 {
// Keep this in sync with constants in iexport.go.
const (
iexportVersionGo1_11 = 0
iexportVersionPosCol = 1
iexportVersionGo1_18 = 2
iexportVersionGenerics = 2
iexportVersion = iexportVersionGenerics
iexportVersionGo1_11 = 0
iexportVersionPosCol = 1
iexportVersionGo1_18 = 2
iexportVersionGenerics = 2
iexportVersionGenericMethods = 3
iexportVersion = iexportVersionGenericMethods
iexportVersionCurrent = 2
iexportVersionCurrent = 3
)
type ident struct {
@@ -179,9 +180,9 @@ func iimportCommon(fset *token.FileSet, getPackages GetPackagesFunc, data []byte
version = int64(r.uint64())
switch version {
case iexportVersionGo1_18, iexportVersionPosCol, iexportVersionGo1_11:
case iexportVersionGenericMethods, iexportVersionGo1_18, iexportVersionPosCol, iexportVersionGo1_11:
default:
if version > iexportVersionGo1_18 {
if version > iexportVersionGenericMethods {
errorf("unstable iexport format version %d, just rebuild compiler and std library", version)
} else {
errorf("unknown iexport format version %d", version)
@@ -614,6 +615,10 @@ func (r *importReader) obj(pkg *types.Package, name string) {
for n := r.uint64(); n > 0; n-- {
mpos := r.pos()
mname := r.ident()
var tpars []*types.TypeParam
if r.p.version >= iexportVersionGenericMethods && r.bool() {
tpars = r.tparamList()
}
recv := r.param(pkg)
// If the receiver has any targs, set those as the
@@ -628,8 +633,7 @@ func (r *importReader) obj(pkg *types.Package, name string) {
rparams[i] = types.Unalias(targs.At(i)).(*types.TypeParam)
}
}
msig := r.signature(pkg, recv, rparams, nil)
msig := r.signature(pkg, recv, rparams, tpars)
named.AddMethod(types.NewFunc(mpos, pkg, mname, msig))
}
}

View File

@@ -273,7 +273,6 @@ func (p *pass) loadPackageNames(ctx context.Context, imports []*ImportInfo) erro
}
unknown = append(unknown, imp.ImportPath)
}
names, err := p.source.LoadPackageNames(ctx, p.srcDir, unknown)
if err != nil {
return err

View File

@@ -74,6 +74,10 @@ func Process(filename string, src []byte, opt *Options) (formatted []byte, err e
// Note that filename's directory influences which imports can be chosen,
// so it is important that filename be accurate.
func FixImports(ctx context.Context, filename string, src []byte, goroot string, logf func(string, ...any), source Source) (fixes []*ImportFix, err error) {
if source == nil {
// In case someone adds a defective call from a new place
panic("source is nil")
}
ctx, done := event.Start(ctx, "imports.FixImports")
defer done()

View File

@@ -12,366 +12,386 @@ type pkginfo struct {
}
var deps = [...]pkginfo{
{"archive/tar", "\x03q\x03F=\x01\n\x01$\x01\x01\x02\x05\b\x02\x01\x02\x02\r"},
{"archive/zip", "\x02\x04g\a\x03\x13\x021=\x01+\x05\x01\x0f\x03\x02\x0f\x04"},
{"bufio", "\x03q\x86\x01D\x15"},
{"bytes", "t+[\x03\fH\x02\x02"},
{"archive/tar", "\x03{\x03F>\x01\n\x01&\x01\x01\x02\x05\b\x02\x01\x02\x02\r"},
{"archive/zip", "\x02\x04j\x0e\x03\x12\x022>\x01-\x05\x01\x0f\x03\x02\x0f\x04"},
{"bufio", "\x03{\x87\x01F\x15"},
{"bytes", "~*]\x03\fJ\x02\x02"},
{"cmp", ""},
{"compress/bzip2", "\x02\x02\xf6\x01A"},
{"compress/flate", "\x02r\x03\x83\x01\f\x033\x01\x03"},
{"compress/gzip", "\x02\x04g\a\x03\x15nU"},
{"compress/lzw", "\x02r\x03\x83\x01"},
{"compress/zlib", "\x02\x04g\a\x03\x13\x01o"},
{"container/heap", "\xbc\x02"},
{"compress/bzip2", "\x02\x02\x81\x02C"},
{"compress/flate", "\x02|\x03\x84\x01\f\x034\x02\x03"},
{"compress/gzip", "\x02\x04j\x0e\x03\x14pW"},
{"compress/lzw", "\x02|\x03\x84\x01"},
{"compress/zlib", "\x02\x04j\x0e\x03\x12\x01q"},
{"container/heap", "\xc9\x02"},
{"container/list", ""},
{"container/ring", ""},
{"context", "t\\p\x01\x0e"},
{"crypto", "\x8a\x01pC"},
{"crypto/aes", "\x10\v\t\x99\x02"},
{"crypto/cipher", "\x03!\x01\x01 \x12\x1c,Z"},
{"crypto/des", "\x10\x16 .,\x9d\x01\x03"},
{"crypto/dsa", "F\x03+\x86\x01\r"},
{"crypto/ecdh", "\x03\v\r\x10\x04\x17\x03\x0f\x1c\x86\x01"},
{"crypto/ecdsa", "\x0e\x05\x03\x05\x01\x10\b\v\x06\x01\x03\x0e\x01\x1c\x86\x01\r\x05L\x01"},
{"crypto/ed25519", "\x0e\x1f\x12\a\x03\b\a\x1cI=C"},
{"crypto/elliptic", "4@\x86\x01\r9"},
{"crypto/fips140", "#\x05\x95\x01\x98\x01"},
{"crypto/hkdf", "0\x15\x01.\x16"},
{"crypto/hmac", "\x1b\x16\x14\x01\x122"},
{"crypto/hpke", "\x03\v\x02\x03\x04\x01\f\x01\x05\x1f\x05\a\x01\x01\x1d\x03\x13\x16\x9b\x01\x1c"},
{"crypto/internal/boring", "\x0e\x02\x0el"},
{"crypto/internal/boring/bbig", "\x1b\xec\x01N"},
{"crypto/internal/boring/bcache", "\xc1\x02\x14"},
{"context", "~]r\x01\x0e"},
{"crypto", "\x93\x01rE"},
{"crypto/aes", "\x10\v\n\xa5\x02"},
{"crypto/cipher", "\x03\"\x01\x01 \x13$+\\"},
{"crypto/des", "\x10\x17 7+\xa1\x01\x03"},
{"crypto/dsa", "G\x034\x87\x01\r"},
{"crypto/ecdh", "\x03\v\r\x11\x04\x17\x03\x10$\x87\x01"},
{"crypto/ecdsa", "\x0e\x05\x03\x05\x01\x11\b\v\x06\x01\x03\x0f\x01$\x87\x01\r\x05O\x01"},
{"crypto/ed25519", "\x0e \x12\a\x03\t\a$I>E"},
{"crypto/elliptic", "5I\x87\x01\r;"},
{"crypto/fips140", "$\x05\x9e\x01\x9b\x01"},
{"crypto/hkdf", "1\x15\x017\x15"},
{"crypto/hmac", "\x1b\x17\x14\x01\x139"},
{"crypto/hpke", "\x03\v\x02\x03\x04\x01\r\x01\x05\x1f\x06\a\x01\x01%\x03\x12\x16\x9f\x01\x1d"},
{"crypto/internal/boring", "\x0e\x02\x0eu"},
{"crypto/internal/boring/bbig", "\x1b\xf7\x01P"},
{"crypto/internal/boring/bcache", "\xce\x02\x14"},
{"crypto/internal/boring/sig", ""},
{"crypto/internal/constanttime", ""},
{"crypto/internal/cryptotest", "\x03\r\v\b%\x10\x19\x06\x13\x12 \x04\x06\t\x19\x01\x11\x11\x1b\x01\a\x05\b\x03\x05\f"},
{"crypto/internal/entropy", "K"},
{"crypto/internal/entropy/v1.0.0", "D0\x95\x018\x14"},
{"crypto/internal/fips140", "C1\xbf\x01\v\x17"},
{"crypto/internal/fips140/aes", "\x03 \x03\x02\x14\x05\x01\x01\x05,\x95\x014"},
{"crypto/internal/fips140/aes/gcm", "#\x01\x02\x02\x02\x12\x05\x01\x06,\x92\x01"},
{"crypto/internal/fips140/alias", "\xd5\x02"},
{"crypto/internal/fips140/bigmod", "(\x19\x01\x06,\x95\x01"},
{"crypto/internal/fips140/check", "#\x0e\a\t\x02\xb7\x01["},
{"crypto/internal/fips140/check/checktest", "(\x8b\x02\""},
{"crypto/internal/fips140/drbg", "\x03\x1f\x01\x01\x04\x14\x05\n)\x86\x01\x0f7\x01"},
{"crypto/internal/fips140/ecdh", "\x03 \x05\x02\n\r3\x86\x01\x0f7"},
{"crypto/internal/fips140/ecdsa", "\x03 \x04\x01\x02\a\x03\x06:\x16pF"},
{"crypto/internal/fips140/ed25519", "\x03 \x05\x02\x04\f:\xc9\x01\x03"},
{"crypto/internal/fips140/edwards25519", "\x1f\t\a\x123\x95\x017"},
{"crypto/internal/fips140/edwards25519/field", "(\x14\x053\x95\x01"},
{"crypto/internal/fips140/hkdf", "\x03 \x05\t\a<\x16"},
{"crypto/internal/fips140/hmac", "\x03 \x15\x01\x01:\x16"},
{"crypto/internal/fips140/mldsa", "\x03\x1c\x04\x05\x02\x0e\x01\x03\x053\x95\x017"},
{"crypto/internal/fips140/mlkem", "\x03 \x05\x02\x0f\x03\x053\xcc\x01"},
{"crypto/internal/fips140/nistec", "\x1f\t\r\f3\x95\x01*\r\x15"},
{"crypto/internal/fips140/nistec/fiat", "(\x148\x95\x01"},
{"crypto/internal/fips140/pbkdf2", "\x03 \x05\t\a<\x16"},
{"crypto/internal/fips140/rsa", "\x03\x1c\x04\x04\x01\x02\x0e\x01\x01\x028\x16pF"},
{"crypto/internal/fips140/sha256", "\x03 \x1e\x01\x06,\x16\x7f"},
{"crypto/internal/fips140/sha3", "\x03 \x19\x05\x012\x95\x01L"},
{"crypto/internal/fips140/sha512", "\x03 \x1e\x01\x06,\x16\x7f"},
{"crypto/internal/fips140/ssh", "(b"},
{"crypto/internal/fips140/subtle", "\x1f\a\x1b\xc8\x01"},
{"crypto/internal/fips140/tls12", "\x03 \x05\t\a\x02:\x16"},
{"crypto/internal/fips140/tls13", "\x03 \x05\b\b\t3\x16"},
{"crypto/internal/fips140cache", "\xb3\x02\r'"},
{"crypto/internal/cryptotest", "\x03\r\v\t%\x11\x1a\r\x12\x12!\x04\x06\n\x19\x01\x11\x11\x1d\x01\a\x03\x02\b\x02\x01\x05\f"},
{"crypto/internal/cryptotest/wycheproof", "\x0e\x12S\x01\f\x01r@\x05\x03\x15\x10"},
{"crypto/internal/entropy", "L"},
{"crypto/internal/entropy/v1.0.0", "E9\x96\x01:\x14"},
{"crypto/internal/fips140", "D:\xc2\x01\v\x17"},
{"crypto/internal/fips140/aes", "\x03!\x03\x02\x14\x05\x01\x01\x055\x96\x016"},
{"crypto/internal/fips140/aes/gcm", "$\x01\x02\x02\x02\x12\x05\x01\x065\x93\x01"},
{"crypto/internal/fips140/alias", "\xe2\x02"},
{"crypto/internal/fips140/bigmod", ")\x19\x01\x065\x96\x01"},
{"crypto/internal/fips140/check", "$\x0e\a\t\x02\xc1\x01]"},
{"crypto/internal/fips140/check/checktest", ")\x97\x02\""},
{"crypto/internal/fips140/drbg", "\x03 \x01\x01\x04\x14\x05\n2\x87\x01\x0f9\x01"},
{"crypto/internal/fips140/ecdh", "\x03!\x05\x02\n\r<\x87\x01\x0f9"},
{"crypto/internal/fips140/ecdsa", "\x03!\x04\x01\x02\a\x03\x06C\x15r\x0f9"},
{"crypto/internal/fips140/ed25519", "\x03!\x05\x02\x04\fC\xcc\x01\x03"},
{"crypto/internal/fips140/edwards25519", "\x1f\n\a\x12<\x96\x019"},
{"crypto/internal/fips140/edwards25519/field", ")\x14\x05<\x96\x01"},
{"crypto/internal/fips140/hkdf", "\x03!\x05\t\aE\x15"},
{"crypto/internal/fips140/hmac", "\x03!\x15\x01\x01C\x15"},
{"crypto/internal/fips140/mldsa", "\x03\x1c\x05\x05\x02\x0e\x01\x03\x05<\x96\x019"},
{"crypto/internal/fips140/mlkem", "\x03!\x05\x02\x0f\x03\x05<\xcf\x01"},
{"crypto/internal/fips140/nistec", "\x1f\n\r\f<\x96\x01,\r\x15"},
{"crypto/internal/fips140/nistec/fiat", ")\x14A\x96\x01"},
{"crypto/internal/fips140/pbkdf2", "\x03!\x05\t\aE\x15"},
{"crypto/internal/fips140/rsa", "\x03\x1c\x05\x04\x01\x02\x0e\x01\x01\x02A\x15rH"},
{"crypto/internal/fips140/sha256", "\x03!\x1e\x01\x065\x15\x81\x01"},
{"crypto/internal/fips140/sha3", "\x03!\x19\x05\x01;\x96\x01N"},
{"crypto/internal/fips140/sha512", "\x03!\x1e\x01\x065\x15\x81\x01"},
{"crypto/internal/fips140/ssh", ")j"},
{"crypto/internal/fips140/subtle", "\x1f\b\x1b\xd2\x01"},
{"crypto/internal/fips140/tls12", "\x03!\x05\t\a\x02C\x15"},
{"crypto/internal/fips140/tls13", "\x03!\x05\b\b\t<\x15"},
{"crypto/internal/fips140cache", "\xc0\x02\r."},
{"crypto/internal/fips140deps", ""},
{"crypto/internal/fips140deps/byteorder", "\xa0\x01"},
{"crypto/internal/fips140deps/cpu", "\xb5\x01\a"},
{"crypto/internal/fips140deps/godebug", "\xbd\x01"},
{"crypto/internal/fips140deps/time", "\xcf\x02"},
{"crypto/internal/fips140hash", "9\x1d4\xcb\x01"},
{"crypto/internal/fips140only", "\x17\x13\x0e\x01\x01Pp"},
{"crypto/internal/fips140deps/byteorder", "\xa9\x01"},
{"crypto/internal/fips140deps/cpu", "\xbe\x01\b"},
{"crypto/internal/fips140deps/godebug", "\xc7\x01"},
{"crypto/internal/fips140deps/time", "\xe2\x02"},
{"crypto/internal/fips140hash", ":\x1e;\xcf\x01"},
{"crypto/internal/fips140only", "\x17\x14\x0e\x01\x01Xr"},
{"crypto/internal/fips140test", ""},
{"crypto/internal/impl", "\xbe\x02"},
{"crypto/internal/rand", "\x1b\x0f s=["},
{"crypto/internal/randutil", "\xfa\x01\x12"},
{"crypto/internal/sysrand", "tq! \r\r\x01\x01\r\x06"},
{"crypto/internal/sysrand/internal/seccomp", "t"},
{"crypto/md5", "\x0e8.\x16\x16i"},
{"crypto/mlkem", "\x0e%"},
{"crypto/mlkem/mlkemtest", "3\x13\b&"},
{"crypto/pbkdf2", "6\x0f\x01.\x16"},
{"crypto/rand", "\x1b\x0f\x1c\x03+\x86\x01\rN"},
{"crypto/rc4", "& .\xc9\x01"},
{"crypto/rsa", "\x0e\r\x01\v\x10\x0e\x01\x03\b\a\x1c\x03\x133=\f\x01"},
{"crypto/sha1", "\x0e\r+\x02,\x16\x16\x15T"},
{"crypto/sha256", "\x0e\r\x1dR"},
{"crypto/sha3", "\x0e+Q\xcb\x01"},
{"crypto/sha512", "\x0e\r\x1fP"},
{"crypto/subtle", "\x1f\x1d\x9f\x01z"},
{"crypto/tls", "\x03\b\x02\x01\x01\x01\x01\x02\x01\x01\x01\x02\x01\x01\x01\t\x01\x18\x01\x0f\x01\x03\x01\x01\x01\x01\x02\x01\x02\x01\x17\x02\x03\x13\x16\x15\b=\x16\x16\r\b\x01\x01\x01\x02\x01\x0e\x06\x02\x01\x0f"},
{"crypto/tls/internal/fips140tls", "\x17\xaa\x02"},
{"crypto/x509", "\x03\v\x01\x01\x01\x01\x01\x01\x01\x017\x06\x01\x01\x02\x05\x0e\x06\x02\x02\x03F\x03:\x01\x02\b\x01\x01\x02\a\x10\x05\x01\x06\a\b\x02\x01\x02\x0f\x02\x01\x01\x02\x03\x01"},
{"crypto/x509/pkix", "j\x06\a\x90\x01H"},
{"database/sql", "\x03\nQ\x16\x03\x83\x01\v\a\"\x05\b\x02\x03\x01\x0e\x02\x02\x02"},
{"database/sql/driver", "\rg\x03\xb7\x01\x0f\x12"},
{"debug/buildinfo", "\x03^\x02\x01\x01\b\a\x03g\x1a\x02\x01+\x0f "},
{"debug/dwarf", "\x03j\a\x03\x83\x011\x11\x01\x01"},
{"debug/elf", "\x03\x06W\r\a\x03g\x1b\x01\f \x17\x01\x17"},
{"debug/gosym", "\x03j\n$\xa1\x01\x01\x01\x02"},
{"debug/macho", "\x03\x06W\r\ng\x1c,\x17\x01"},
{"debug/pe", "\x03\x06W\r\a\x03g\x1c,\x17\x01\x17"},
{"debug/plan9obj", "m\a\x03g\x1c,"},
{"embed", "t+B\x19\x01T"},
{"crypto/internal/impl", "\xcb\x02"},
{"crypto/internal/rand", "\x1b\x10 |>]"},
{"crypto/internal/randutil", "\x85\x02\x12"},
{"crypto/internal/sysrand", "~r!\"\r\r\x01\x01\r\x06"},
{"crypto/internal/sysrand/internal/seccomp", "~"},
{"crypto/md5", "\x0e97\x15\x16k"},
{"crypto/mldsa", "\x0e%K\x87\x01"},
{"crypto/mlkem", "\x0e&"},
{"crypto/mlkem/mlkemtest", "4\x13\t."},
{"crypto/pbkdf2", "7\x0f\x017\x15"},
{"crypto/rand", "\x1b\x10\x1c\x034\x87\x01\rP"},
{"crypto/rc4", "' 7\xcc\x01"},
{"crypto/rsa", "\x0e\r\x01\f\x10\x0e\x01\x03\t\a$\x03\x124>\f\x01"},
{"crypto/sha1", "\x0e\r,\x025\x15\x16\x15V"},
{"crypto/sha256", "\x0e\r\x1eZ"},
{"crypto/sha3", "\x0e,Y\xcf\x01"},
{"crypto/sha512", "\x0e\r X"},
{"crypto/subtle", "\x1f\x1e\xa9\x01|"},
{"crypto/tls", "\x03\b\x02\x01\x01\x01\x01\x02\x01\x01\x01\x01\x01\x01\x01\x01\n\x01\x18\x01\x0f\x01\x01\x03\x01\x01\x01\x01\x02\x01\x02\x01\x1f\x02\x03\x12\x16\x15\t>\x16\x18\r\b\x01\x01\x01\x02\x01\x0e\x06\x03\x01\x15"},
{"crypto/tls/internal/fips140tls", "\x17\xb7\x02"},
{"crypto/x509", "\x03\v\x01\x01\x01\x01\x01\x01\x01\x01\x017\x01\x06\x01\x01\x02\x05\x0f\x06\t\x02\x03F\x03;\x01\x02\b\x01\x01\x02\a\x12\x05\x01\x06\a\b\x02\x01\x02\x0f\x02\x01\x01\x02\x04\x01"},
{"crypto/x509/pkix", "m\x06\x0e\x91\x019\x11"},
{"database/sql", "\x03\nS\x01\x1d\x03\x84\x01\v\a$\x05\b\x02\x03\x01\x0e\x02\x02\x02\x01"},
{"database/sql/driver", "\rT\x1d\x03\xba\x01\x0f\x12\a"},
{"database/sql/internal", ""},
{"debug/buildinfo", "\x03a\x02\x01\x01\b\x0e\x03h\x1a\x02\x01-\x0f "},
{"debug/dwarf", "\x03m\x0e\x03\x84\x013\x11\x01\x01"},
{"debug/elf", "\x03\x06Z\r\x0e\x03h\x1b\x01\f\"\x17\x01\x17"},
{"debug/gosym", "\x03m\x11#\xa5\x01\x01\x01\x02"},
{"debug/macho", "\x03\x06Z\r\x11h\x1c.\x17\x01"},
{"debug/pe", "\x03\x06Z\r\x0e\x03h\x1c.\x17\x01\x17"},
{"debug/plan9obj", "p\x0e\x03h\x1c."},
{"embed", "~*D\x19\x01V"},
{"embed/internal/embedtest", ""},
{"encoding", ""},
{"encoding/ascii85", "\xfa\x01C"},
{"encoding/asn1", "\x03q\x03g(\x01'\r\x02\x01\x11\x03\x01"},
{"encoding/base32", "\xfa\x01A\x02"},
{"encoding/base64", "\xa0\x01ZA\x02"},
{"encoding/binary", "t\x86\x01\f(\r\x05"},
{"encoding/csv", "\x02\x01q\x03\x83\x01D\x13\x02"},
{"encoding/gob", "\x02f\x05\a\x03g\x1c\v\x01\x03\x1d\b\x12\x01\x10\x02"},
{"encoding/hex", "t\x03\x83\x01A\x03"},
{"encoding/json", "\x03\x01d\x04\b\x03\x83\x01\f(\r\x02\x01\x02\x11\x01\x01\x02"},
{"encoding/pem", "\x03i\b\x86\x01A\x03"},
{"encoding/xml", "\x02\x01e\f\x03\x83\x014\x05\n\x01\x02\x11\x02"},
{"errors", "\xd0\x01\x85\x01"},
{"expvar", "qLA\b\v\x15\r\b\x02\x03\x01\x12"},
{"flag", "h\f\x03\x83\x01,\b\x05\b\x02\x01\x11"},
{"fmt", "tF'\x19\f \b\r\x02\x03\x13"},
{"go/ast", "\x03\x01s\x0f\x01s\x03)\b\r\x02\x01\x13\x02"},
{"go/build", "\x02\x01q\x03\x01\x02\x02\b\x02\x01\x17\x1f\x04\x02\b\x1c\x13\x01+\x01\x04\x01\a\b\x02\x01\x13\x02\x02"},
{"go/build/constraint", "t\xc9\x01\x01\x13\x02"},
{"go/constant", "w\x10\x7f\x01\x024\x01\x02\x13"},
{"go/doc", "\x04s\x01\x05\n=61\x10\x02\x01\x13\x02"},
{"go/doc/comment", "\x03t\xc4\x01\x01\x01\x01\x13\x02"},
{"go/format", "\x03t\x01\f\x01\x02sD"},
{"go/importer", "y\a\x01\x02\x04\x01r9"},
{"go/internal/gccgoimporter", "\x02\x01^\x13\x03\x04\f\x01p\x02,\x01\x05\x11\x01\r\b"},
{"go/internal/gcimporter", "\x02u\x10\x010\x05\r0,\x15\x03\x02"},
{"go/internal/scannerhooks", "\x87\x01"},
{"go/internal/srcimporter", "w\x01\x01\v\x03\x01r,\x01\x05\x12\x02\x15"},
{"go/parser", "\x03q\x03\x01\x02\b\x04\x01s\x01+\x06\x12"},
{"go/printer", "w\x01\x02\x03\ns\f \x15\x02\x01\x02\f\x05\x02"},
{"go/scanner", "\x03t\v\x05s2\x10\x01\x14\x02"},
{"go/token", "\x04s\x86\x01>\x02\x03\x01\x10\x02"},
{"go/types", "\x03\x01\x06j\x03\x01\x03\t\x03\x024\x063\x04\x03\t \x06\a\b\x01\x01\x01\x02\x01\x10\x02\x02"},
{"go/version", "\xc2\x01|"},
{"hash", "\xfa\x01"},
{"hash/adler32", "t\x16\x16"},
{"hash/crc32", "t\x16\x16\x15\x8b\x01\x01\x14"},
{"hash/crc64", "t\x16\x16\xa0\x01"},
{"hash/fnv", "t\x16\x16i"},
{"hash/maphash", "\x8a\x01\x11<~"},
{"html", "\xbe\x02\x02\x13"},
{"html/template", "\x03n\x06\x19-=\x01\n!\x05\x01\x02\x03\f\x01\x02\r\x01\x03\x02"},
{"image", "\x02r\x1fg\x0f4\x03\x01"},
{"encoding/ascii85", "\x85\x02E"},
{"encoding/asn1", "\x03{\x03h(\x01)\r\x02\x01\x11\x03\x01"},
{"encoding/base32", "\x85\x02C\x02"},
{"encoding/base64", "\xa9\x01\\C\x02"},
{"encoding/binary", "~\x87\x01\f*\r\x05"},
{"encoding/csv", "\x02\x01{\x03\x84\x01F\x13\x02"},
{"encoding/gob", "\x02i\x05\x0e\x03h\x1c\v\x01\x03\x1f\b\x12\x01\x10\x02"},
{"encoding/hex", "~\x03\x84\x01C\x03"},
{"encoding/json", "\x03\x01g\n\x01\x01\x02\x01\x01\x03\x03\x84\x016\x0f\x01"},
{"encoding/json/internal", "~"},
{"encoding/json/internal/jsonflags", "u"},
{"encoding/json/internal/jsonopts", "u\x01"},
{"encoding/json/internal/jsontest", "\x03f\x15\x03\x83\x01\x01\x012\b\b\x03\x02\x0f"},
{"encoding/json/internal/jsonwire", "\x04r\b\x87\x01\f7\x02\x01\x13\x01\x01"},
{"encoding/json/jsontext", "\x03r\x01\x01\x02\x05\x87\x01\x03\t\x034\x02\x01\x02\x13"},
{"encoding/json/v2", "\x03\x01g\x03\x01\x01\x03\x02\x01\x01\x02\x01\x04\x03\x84\x01\f\x03'\r\x02\x01\x02\x0f\x02\x02"},
{"encoding/pem", "\x03l\x0f\x87\x01C\x03"},
{"encoding/xml", "\x02\x01h\x13\x03\x84\x016\x05\n\x01\x02\x11\x02"},
{"errors", "\xdb\x01\x87\x01"},
{"expvar", "tSB\b\v\x17\r\b\x02\x03\x01\x12"},
{"flag", "k\x13\x03\x84\x01.\b\x05\b\x02\x01\x11"},
{"fmt", "~E)\x19\f\"\b\r\x02\x03\x13"},
{"go/ast", "\x03\x01}\x0e\x01u\x03+\b\r\x02\x01\x13\x02"},
{"go/build", "\x02\x01{\x03\x01\x02\x02\a\x02\x01\x17 \x04\x02\t\x1c\x13\x01-\x01\x04\x01\a\b\x02\x01\x13\x02\x02"},
{"go/build/constraint", "~\xcc\x01\x01\x13\x02"},
{"go/constant", "\x81\x01\x0f\x81\x01\x01\x026\x01\x02\x13"},
{"go/doc", "\x04}\x01\x05\t>73\x10\x02\x01\x13\x02"},
{"go/doc/comment", "\x03~\xc7\x01\x01\x01\x01\x13\x02"},
{"go/format", "\x03~\x01\v\x01\x02uF"},
{"go/importer", "\x83\x01\a\x01\x01\x04\x01t;"},
{"go/internal/gccgoimporter", "\x02\x01a\x1a\x03\x04\v\x01r\x02.\x01\x05\x11\x01\r\b"},
{"go/internal/gcimporter", "\x02\x7f\x0f\x010\x140.\x15\x03\x02"},
{"go/internal/srcimporter", "\x81\x01\x01\x01\n\x03\x01t.\x01\x05\x12\x02\x15"},
{"go/parser", "\x03{\x03\x01\x02\v\x01u\x01-\x06\x12"},
{"go/printer", "\x81\x01\x01\x02\x03\tu\f\"\x15\x02\x01\x02\f\x05\x02"},
{"go/scanner", "\x03~\x0fu4\x10\x01\x14\x02"},
{"go/token", "\x04}\x87\x01@\x02\x03\x01\x10\x02"},
{"go/types", "\x03\x01\x06t\x03\x01\x03\b\x03\x02\x0654\x04\x03\t\"\x06\a\b\x01\x01\x01\x02\x01\x10\x02\x02"},
{"go/version", "\xcc\x01\x7f"},
{"hash", "\x85\x02"},
{"hash/adler32", "~\x15\x16"},
{"hash/crc32", "~\x15\x16\x15\x8f\x01\x01\x14"},
{"hash/crc64", "~\x15\x16\xa4\x01"},
{"hash/fnv", "~\x15\x16k"},
{"hash/maphash", "\x93\x01\x11>\x80\x01"},
{"html", "\xcb\x02\x02\x13"},
{"html/template", "\x03q\r\x18.>\x01\n#\x05\x01\x02\x03\n\x02\x01\x02\r\x01\x03\x02"},
{"image", "\x02|\x1ei\x0f6\x03\x01"},
{"image/color", ""},
{"image/color/palette", "\x93\x01"},
{"image/draw", "\x92\x01\x01\x04"},
{"image/gif", "\x02\x01\x05l\x03\x1b\x01\x01\x01\vZ\x0f"},
{"image/internal/imageutil", "\x92\x01"},
{"image/jpeg", "\x02r\x1e\x01\x04c"},
{"image/png", "\x02\ad\n\x13\x02\x06\x01gC"},
{"index/suffixarray", "\x03j\a\x86\x01\f+\n\x01"},
{"internal/abi", "\xbc\x01\x99\x01"},
{"internal/asan", "\xd5\x02"},
{"internal/bisect", "\xb3\x02\r\x01"},
{"internal/buildcfg", "wHg\x06\x02\x05\n\x01"},
{"internal/bytealg", "\xb5\x01\xa0\x01"},
{"image/color/palette", "\x9c\x01"},
{"image/draw", "\x9b\x01\x01\x04"},
{"image/gif", "\x02\x01\x05v\x03\x1a\x01\x01\x01\v\\\x0f"},
{"image/internal/imageutil", "\x9b\x01"},
{"image/jpeg", "\x02|\x1d\x01\x04e"},
{"image/png", "\x02\ag\x11\x12\x02\x06\x01iE"},
{"index/suffixarray", "\x03m\x0e\x87\x01\f-\n\x01"},
{"internal/abi", "\xc6\x01\x9c\x01"},
{"internal/asan", "\xe2\x02"},
{"internal/bisect", "\xc0\x02\r\x01"},
{"internal/buildcfg", "\x81\x01Hj\x06\x02\x05\n\x01"},
{"internal/bytealg", "\xbe\x01\xa4\x01"},
{"internal/byteorder", ""},
{"internal/cfg", ""},
{"internal/cgrouptest", "w[T\x06\x0f\x02\x01\x04\x01"},
{"internal/chacha8rand", "\xa0\x01\x15\a\x99\x01"},
{"internal/cgrouptest", "\x81\x01\\V\x06\x0f\x02\x01\x04\x01"},
{"internal/chacha8rand", "\xa9\x01\x15\b\x9c\x01"},
{"internal/copyright", ""},
{"internal/coverage", ""},
{"internal/coverage/calloc", ""},
{"internal/coverage/cfile", "q\x06\x17\x17\x01\x02\x01\x01\x01\x01\x01\x01\x01\"\x02',\x06\a\n\x01\x03\x0e\x06"},
{"internal/coverage/cformat", "\x04s.\x04Q\v6\x01\x02\x0e"},
{"internal/coverage/cmerge", "w.a"},
{"internal/coverage/decodecounter", "m\n.\v\x02H,\x17\x18"},
{"internal/coverage/decodemeta", "\x02k\n\x17\x17\v\x02H,"},
{"internal/coverage/encodecounter", "\x02k\n.\f\x01\x02F\v!\x15"},
{"internal/coverage/encodemeta", "\x02\x01j\n\x13\x04\x17\r\x02F,/"},
{"internal/coverage/pods", "\x04s.\x81\x01\x06\x05\n\x02\x01"},
{"internal/coverage/rtcov", "\xd5\x02"},
{"internal/coverage/slicereader", "m\n\x83\x01["},
{"internal/coverage/slicewriter", "w\x83\x01"},
{"internal/coverage/stringtab", "w9\x04F"},
{"internal/coverage/cfile", "t\r\x16\x17\x01\x02\x01\x01\x01\x01\x01\x01\x01$\x02'.\x06\a\n\x01\x03\x0e\x06"},
{"internal/coverage/cformat", "\x04}-\x04S\v8\x01\x02\x0e"},
{"internal/coverage/cmerge", "\x81\x01-c"},
{"internal/coverage/decodecounter", "p\x11-\v\x02J.\x17\x18"},
{"internal/coverage/decodemeta", "\x02n\x11\x16\x17\v\x02J."},
{"internal/coverage/encodecounter", "\x02n\x11-\f\x01\x02H\v#\x15"},
{"internal/coverage/encodemeta", "\x02\x01m\x11\x12\x04\x17\r\x02H./"},
{"internal/coverage/pods", "\x04}-\x85\x01\x06\x05\n\x02\x01"},
{"internal/coverage/rtcov", "\xe2\x02"},
{"internal/coverage/slicereader", "p\x11\x84\x01]"},
{"internal/coverage/slicewriter", "\x81\x01\x84\x01"},
{"internal/coverage/stringtab", "\x81\x018\x04H"},
{"internal/coverage/test", ""},
{"internal/coverage/uleb128", ""},
{"internal/cpu", "\xd5\x02"},
{"internal/dag", "\x04s\xc4\x01\x03"},
{"internal/diff", "\x03t\xc5\x01\x02"},
{"internal/exportdata", "\x02\x01q\x03\x02e\x1c,\x01\x05\x11\x01\x02"},
{"internal/filepathlite", "t+B\x1a@"},
{"internal/fmtsort", "\x04\xaa\x02\r"},
{"internal/fuzz", "\x03\nH\x18\x04\x03\x03\x01\f\x036=\f\x03\x1d\x01\x05\x02\x05\n\x01\x02\x01\x01\r\x04\x02"},
{"internal/cpu", "\xe2\x02"},
{"internal/dag", "\x04}\xc7\x01\x03"},
{"internal/diff", "\x03~\xc8\x01\x02"},
{"internal/exportdata", "\x02\x01{\x03\x02f\x1c.\x01\x05\x11\x01\x02"},
{"internal/filepathlite", "~*D\x1aB"},
{"internal/fmtsort", "\x04\xb7\x02\r"},
{"internal/fuzz", "\x03\nJ\x19\x04\n\x03\x01\v\x037>\f\x03\x1f\x01\x05\x02\x05\n\x01\x02\x01\x01\r\x04\x02"},
{"internal/gate", "\r"},
{"internal/goarch", ""},
{"internal/godebug", "\x9d\x01!\x82\x01\x01\x14"},
{"internal/godebug", "\xa6\x01\"\x85\x01\x01\x14"},
{"internal/godebugs", ""},
{"internal/goexperiment", ""},
{"internal/goos", ""},
{"internal/goroot", "\xa6\x02\x01\x05\x12\x02"},
{"internal/goroot", "\xb3\x02\x01\x05\x12\x02"},
{"internal/gover", "\x04"},
{"internal/goversion", ""},
{"internal/lazyregexp", "\xa6\x02\v\r\x02"},
{"internal/lazytemplate", "\xfa\x01,\x18\x02\r"},
{"internal/msan", "\xd5\x02"},
{"internal/lazyregexp", "\xb3\x02\v\r\x02"},
{"internal/lazytemplate", "\x85\x02.\x18\x02\r"},
{"internal/msan", "\xe2\x02"},
{"internal/nettest", "\x03\nqG@\f\n\x12\x06\x15\x05\x0f"},
{"internal/nettrace", ""},
{"internal/obscuretestdata", "l\x8e\x01,"},
{"internal/oserror", "t"},
{"internal/pkgbits", "\x03R\x18\a\x03\x04\fs\r\x1f\r\n\x01"},
{"internal/obscuretestdata", "o\x96\x01."},
{"internal/oserror", "~"},
{"internal/pkgbits", "\x03T\x19\x0e\x03\x04\vu\r!\r\n\x01"},
{"internal/platform", ""},
{"internal/poll", "tl\x05\x159\r\x01\x01\r\x06"},
{"internal/profile", "\x03\x04m\x03\x83\x017\n\x01\x01\x01\x11"},
{"internal/poll", "~m\x05\x15;\r\x01\x01\r\x06"},
{"internal/profile", "\x03\x04w\x03\x84\x019\n\x01\x01\x01\x11"},
{"internal/profilerecord", ""},
{"internal/race", "\x9b\x01\xba\x01"},
{"internal/reflectlite", "\x9b\x01!;<\""},
{"internal/runtime/atomic", "\xbc\x01\x99\x01"},
{"internal/runtime/cgroup", "\x9f\x01=\x04u"},
{"internal/runtime/exithook", "\xd1\x01\x84\x01"},
{"internal/runtime/gc", "\xbc\x01"},
{"internal/runtime/gc/internal/gen", "\nc\n\x18k\x04\v\x1d\b\x10\x02"},
{"internal/runtime/gc/scan", "\xb5\x01\a\x18\az"},
{"internal/runtime/maps", "\x9b\x01\x01 \n\t\t\x03z"},
{"internal/runtime/math", "\xbc\x01"},
{"internal/race", "\xa4\x01\xbe\x01"},
{"internal/reflectlite", "\xa4\x01\"<>\""},
{"internal/runtime/atomic", "\xc6\x01\x9c\x01"},
{"internal/runtime/cgroup", "\xa8\x01?\x04w"},
{"internal/runtime/exithook", "\xdc\x01\x86\x01"},
{"internal/runtime/gc", "\xc6\x01"},
{"internal/runtime/gc/internal/gen", "\nf\x11\x17m\x04\v\x1f\b\x10\x02"},
{"internal/runtime/gc/scan", "\xbe\x01\b\x19\a|"},
{"internal/runtime/maps", "\xa4\x01\x01\x04\x15\b\x03\a\n\t\x03.N"},
{"internal/runtime/math", "\xc6\x01"},
{"internal/runtime/pprof/label", ""},
{"internal/runtime/startlinetest", ""},
{"internal/runtime/sys", "\xbc\x01\x04"},
{"internal/runtime/syscall/linux", "\xbc\x01\x99\x01"},
{"internal/runtime/sys", "\xc6\x01\x04"},
{"internal/runtime/syscall/linux", "\xc6\x01\x9c\x01"},
{"internal/runtime/wasitest", ""},
{"internal/saferio", "\xfa\x01["},
{"internal/singleflight", "\xc0\x02"},
{"internal/strconv", "\x89\x02L"},
{"internal/stringslite", "\x9f\x01\xb6\x01"},
{"internal/sync", "\x9b\x01!\x13r\x14"},
{"internal/synctest", "\x9b\x01\xba\x01"},
{"internal/syscall/execenv", "\xc2\x02"},
{"internal/syscall/unix", "\xb3\x02\x0e\x01\x13"},
{"internal/sysinfo", "\x02\x01\xb2\x01E,\x18\x02"},
{"internal/saferio", "\x85\x02]"},
{"internal/singleflight", "\xcd\x02"},
{"internal/strconv", "\x94\x02N"},
{"internal/stringslite", "\xa8\x01\xba\x01"},
{"internal/sync", "\xa4\x01\"\x14t\x14"},
{"internal/synctest", "\xa4\x01\xbe\x01"},
{"internal/syscall/execenv", "\xcf\x02"},
{"internal/syscall/unix", "\xeb\x01U\x0e\x01\x13"},
{"internal/sysinfo", "\x02\x01\xbb\x01G.\x18\x02"},
{"internal/syslist", ""},
{"internal/testenv", "\x03\ng\x02\x01*\x1b\x0f0+\x01\x05\a\n\x01\x02\x02\x01\f"},
{"internal/testhash", "\x03\x87\x01p\x118\f"},
{"internal/testlog", "\xc0\x02\x01\x14"},
{"internal/testpty", "t\x03\xaf\x01"},
{"internal/trace", "\x02\x01\x01\x06c\a\x03w\x03\x03\x06\x03\t+\n\x01\x01\x01\x11\x06"},
{"internal/trace/internal/testgen", "\x03j\nu\x03\x02\x03\x011\v\r\x11"},
{"internal/trace/internal/tracev1", "\x03\x01i\a\x03}\x06\f5\x01"},
{"internal/trace/raw", "\x02k\nz\x03\x06C\x01\x13"},
{"internal/trace/testtrace", "\x02\x01q\x03q\x04\x03\x05\x01\x05,\v\x02\b\x02\x01\x05"},
{"internal/testenv", "\x03\nq\x02\x01)\x1c\x100-\x01\x05\a\n\x01\x02\x02\x01\f"},
{"internal/testhash", "\x03\x90\x01r\x11:\f"},
{"internal/testlog", "\xcd\x02\x01\x14"},
{"internal/testpty", "~\x03\xb2\x01"},
{"internal/trace", "\x02\x01\x01\x06f\x0e\x03x\x03\x03\x06\x03\t-\n\x01\x01\x01\x11\x06"},
{"internal/trace/internal/testgen", "\x03m\x11v\x03\x02\x03\x013\v\r\x11"},
{"internal/trace/internal/tracev1", "\x03\x01l\x0e\x03~\x06\f7\x01"},
{"internal/trace/raw", "\x02n\x11{\x03\x06E\x01\x13"},
{"internal/trace/testtrace", "\x02\x01{\x03r\x04\x03\x05\x01\x05.\v\x02\b\x02\x01\x05"},
{"internal/trace/tracev2", ""},
{"internal/trace/traceviewer", "\x02d\v\x06\x1a<\x1f\a\a\x04\b\v\x15\x01\x05\a\n\x01\x02\x0f"},
{"internal/trace/traceviewer", "\x02g\v\r\x19>\x1f\a\a\x04\b\v\x17\x01\x05\a\n\x01\x02\x0f"},
{"internal/trace/traceviewer/format", ""},
{"internal/trace/version", "wz\t"},
{"internal/txtar", "\x03t\xaf\x01\x18"},
{"internal/types/errors", "\xbd\x02"},
{"internal/unsafeheader", "\xd5\x02"},
{"internal/xcoff", "`\r\a\x03g\x1c,\x17\x01"},
{"internal/zstd", "m\a\x03\x83\x01\x0f"},
{"io", "t\xcc\x01"},
{"io/fs", "t+*11\x10\x14\x04"},
{"io/ioutil", "\xfa\x01\x01+\x15\x03"},
{"iter", "\xcf\x01d\""},
{"log", "w\x83\x01\x05'\r\r\x01\x0e"},
{"internal/trace/version", "\x81\x01{\t"},
{"internal/txtar", "\x03~\xb2\x01\x18"},
{"internal/types/errors", "\xca\x02"},
{"internal/unsafeheader", "\xe2\x02"},
{"internal/xcoff", "c\r\x0e\x03h\x1c.\x17\x01"},
{"internal/zstd", "p\x0e\x03\x84\x01\x0f"},
{"io", "~\xcf\x01"},
{"io/fs", "~*,13\x10\x14\x04"},
{"io/ioutil", "\x85\x02\x01-\x15\x03"},
{"iter", "\xda\x01f\""},
{"log", "\x81\x01\x84\x01\x05)\r\r\x01\x0e"},
{"log/internal", ""},
{"log/slog", "\x03\n[\t\x03\x03\x83\x01\x04\x01\x02\x02\x03(\x05\b\x02\x01\x02\x01\x0e\x02\x02\x02"},
{"log/slog", "\x03\n^\t\n\x03H<\x04\x01\x02\x02\x03*\x05\b\x02\x01\x02\x01\x0e\x02\x02\x02"},
{"log/slog/internal", ""},
{"log/slog/internal/benchmarks", "\rg\x03\x83\x01\x06\x03:\x12"},
{"log/slog/internal/buffer", "\xc0\x02"},
{"log/syslog", "t\x03\x87\x01\x12\x16\x18\x02\x0f"},
{"maps", "\xfd\x01X"},
{"math", "\xb5\x01TL"},
{"math/big", "\x03q\x03)\x15E\f\x03\x020\x02\x01\x02\x15"},
{"math/big/internal/asmgen", "\x03\x01s\x92\x012\x03"},
{"math/bits", "\xd5\x02"},
{"math/cmplx", "\x86\x02\x03"},
{"math/rand", "\xbd\x01I:\x01\x14"},
{"math/rand/v2", "t,\x03c\x03L"},
{"mime", "\x02\x01i\b\x03\x83\x01\v!\x15\x03\x02\x11\x02"},
{"mime/multipart", "\x02\x01N#\x03F=\v\x01\a\x02\x15\x02\x06\x0f\x02\x01\x17"},
{"mime/quotedprintable", "\x02\x01t\x83\x01"},
{"net", "\x04\tg+\x1e\n\x05\x13\x01\x01\x04\x15\x01%\x06\r\b\x05\x01\x01\r\x06\a"},
{"net/http", "\x02\x01\x03\x01\x04\x02D\b\x13\x01\a\x03F=\x01\x03\a\x01\x03\x02\x02\x01\x02\x06\x02\x01\x01\n\x01\x01\x05\x01\x02\x05\b\x01\x01\x01\x02\x01\x0e\x02\x02\x02\b\x01\x01\x01"},
{"net/http/cgi", "\x02W\x1b\x03\x83\x01\x04\a\v\x01\x13\x01\x01\x01\x04\x01\x05\x02\b\x02\x01\x11\x0e"},
{"net/http/cookiejar", "\x04p\x03\x99\x01\x01\b\a\x05\x16\x03\x02\x0f\x04"},
{"net/http/fcgi", "\x02\x01\n`\a\x03\x83\x01\x16\x01\x01\x14\x18\x02\x0f"},
{"net/http/httptest", "\x02\x01\nL\x02\x1b\x01\x83\x01\x04\x12\x01\n\t\x02\x17\x01\x02\x0f\x0e"},
{"net/http/httptrace", "\rLnI\x14\n!"},
{"net/http/httputil", "\x02\x01\ng\x03\x83\x01\x04\x0f\x03\x01\x05\x02\x01\v\x01\x19\x02\x01\x0e\x0e"},
{"net/http/internal", "\x02\x01q\x03\x83\x01"},
{"net/http/internal/ascii", "\xbe\x02\x13"},
{"net/http/internal/httpcommon", "\rg\x03\x9f\x01\x0e\x01\x17\x01\x01\x02\x1d\x02"},
{"net/http/internal/testcert", "\xbe\x02"},
{"net/http/pprof", "\x02\x01\nj\x19-\x02\x0e-\x04\x13\x14\x01\r\x04\x03\x01\x02\x01\x11"},
{"log/slog/internal/benchmarks", "\rq\x03\x84\x01\x06\x03<\x12"},
{"log/slog/internal/buffer", "\xcd\x02"},
{"log/syslog", "~\x03\x88\x01\x12\x18\x18\x02\x0f"},
{"maps", "\x88\x02Z"},
{"math", "\xbe\x01VN"},
{"math/big", "\x03{\x03(\x15G\f\x03\x022\x02\x01\x02\x15"},
{"math/big/internal/asmgen", "\x03\x01}\x93\x014\x03"},
{"math/bits", "\xe2\x02"},
{"math/cmplx", "\x91\x02\x03"},
{"math/rand", "\xc7\x01J<\x01\x14"},
{"math/rand/v2", "~+\x03e\x03N"},
{"mime", "\x02\x01l\x0f\x03\x84\x01\v#\x15\x03\x02\x11\x02"},
{"mime/multipart", "\x02\x01P+\x03F>\v\x01\a\x02\x17\x02\x06\x0f\x02\x01\x17"},
{"mime/quotedprintable", "\x02\x01~\x84\x01"},
{"net", "\x04\tq*\x1f\v\x05\x13\x01\x01\x04\x15\x01'\x06\r\b\x05\x01\x01\r\x06\t"},
{"net/http", "\x02\x01\x03\x01\x04\x02N\x14\x0f\x03F>\x01\x03\a\x01\x06\x01\x01\x02\x06\x02\x01\x01\f\x01\x01\x05\x01\x02\x05\b\x01\x01\x01\x02\x01\x0e\x02\x02\x02\n\x01\x03"},
{"net/http/cgi", "\x02Y#\x03\x84\x01\x04\a\v\x01\x15\x01\x01\x01\x04\x01\x05\x02\b\x02\x01\x11\x10"},
{"net/http/cookiejar", "\x04z\x03\x9a\x01\x01\b\t\x05\x16\x03\x02\x0f\x04"},
{"net/http/fcgi", "\x02\x01\nc\x0e\x03\x84\x01\x16\x01\x01\x16\x18\x02\x0f"},
{"net/http/httptest", "\x02\x01\nN\x02#\x01P4\x04\x12\x01\f\t\x02\r\n\x01\x02\x03\f\x06\n"},
{"net/http/httptrace", "\rNwI\x16+"},
{"net/http/httputil", "\x02\x01\nq\x03F>\x04\x0f\x03\x01\x05\x02\x01\r\x01\x19\x02\x01\x0e\x10"},
{"net/http/internal", "\x02\x01m\x0e\x03\x84\x01"},
{"net/http/internal/ascii", "\xcb\x02\x13"},
{"net/http/internal/http2", "\x02\x01\x03\x01\x06F\b\x15\x0e\x03\x84\x01\x01\x03\b\x03\x02\x03\x02\x06\x02\x03\x01\n\x01\x01\b\x05\b\x02\x01\x02\x01\x0e\x10\x02\x02"},
{"net/http/internal/httpcommon", "\rq\x03\xa0\x01\x10\x01\x17\x01\x01\x02\x1f\x02"},
{"net/http/internal/httpsfv", "\xc8\x02\x02\x01\x11\x04"},
{"net/http/internal/testcert", "\xcb\x02"},
{"net/http/pprof", "\x02\x01\nt\x18.\x11-\x04\x13\x16\x01\r\x04\x03\x01\x02\x01\x11"},
{"net/internal/cgotest", ""},
{"net/internal/socktest", "w\xc9\x01\x02"},
{"net/mail", "\x02r\x03\x83\x01\x04\x0f\x03\x14\x1a\x02\x0f\x04"},
{"net/netip", "\x04p+\x01f\x034\x17"},
{"net/rpc", "\x02m\x05\x03\x10\ni\x04\x12\x01\x1d\r\x03\x02"},
{"net/rpc/jsonrpc", "q\x03\x03\x83\x01\x16\x11\x1f"},
{"net/smtp", "\x194\f\x13\b\x03\x83\x01\x16\x14\x1a"},
{"net/textproto", "\x02\x01q\x03\x83\x01\f\n-\x01\x02\x15"},
{"net/url", "t\x03Fc\v\x10\x02\x01\x17"},
{"os", "t+\x01\x19\x03\x10\x14\x01\x03\x01\x05\x10\x018\b\x05\x01\x01\r\x06"},
{"os/exec", "\x03\ngI'\x01\x15\x01+\x06\a\n\x01\x03\x01\r"},
{"os/exec/internal/fdtest", "\xc2\x02"},
{"os/signal", "\r\x99\x02\x15\x05\x02"},
{"os/user", "\x02\x01q\x03\x83\x01,\r\n\x01\x02"},
{"path", "t+\xb4\x01"},
{"path/filepath", "t+\x1aB+\r\b\x03\x04\x11"},
{"plugin", "t"},
{"reflect", "t'\x04\x1d\x13\b\x04\x05\x17\x06\t-\n\x03\x11\x02\x02"},
{"net/internal/socktest", "\x81\x01\xcc\x01\x02"},
{"net/mail", "\x02|\x03\x84\x01\x04\x0f\x03\x16\x1a\x02\x0f\x04"},
{"net/netip", "\x04z*\x01h\x036\x17"},
{"net/rpc", "\x02p\f\x03\x0f\nk\x04\x12\x01\x1f\r\x03\x02"},
{"net/rpc/jsonrpc", "t\n\x03\x84\x01\x16\x13\x1f"},
{"net/smtp", "\x195\r\x14\x0f\x03\x84\x01\x16\x16\x1a"},
{"net/textproto", "\x02\x01{\x03\x84\x01\f\n/\x01\x02\x15"},
{"net/url", "~\x03Ff\v\x10\x02\x01\x17"},
{"os", "~*\x01\x19\x04\x11\x14\x01\x03\x01\x05\x10\x01:\b\x05\x01\x01\r\x06"},
{"os/exec", "\x03\nqI(\x01\x15\x01-\x06\a\n\x01\x03\x01\r"},
{"os/exec/internal/fdtest", "\xcf\x02"},
{"os/signal", "\r\xa6\x02\x15\x05\x02"},
{"os/user", "\x02\x01{\x03\x84\x01.\r\n\x01\x02"},
{"path", "~*\xb8\x01"},
{"path/filepath", "~*\x1aD-\r\b\x03\x04\x11"},
{"plugin", "~"},
{"reflect", "~&\x04\x1e\x03\x11\b\x04\x05\x17\x06\t/\n\x03\x11\x02\x02"},
{"reflect/internal/example1", ""},
{"reflect/internal/example2", ""},
{"regexp", "\x03\xf7\x018\t\x02\x01\x02\x11\x02"},
{"regexp/syntax", "\xbb\x02\x01\x01\x01\x02\x11\x02"},
{"runtime", "\x9b\x01\x04\x01\x03\f\x06\a\x02\x01\x01\x0e\x03\x01\x01\x01\x02\x01\x01\x01\x02\x01\x04\x01\x10\x18L"},
{"runtime/coverage", "\xa7\x01S"},
{"runtime/debug", "wUZ\r\b\x02\x01\x11\x06"},
{"runtime/metrics", "\xbe\x01H-\""},
{"runtime/pprof", "\x02\x01\x01\x03\x06`\a\x03$$\x0f\v!\f \r\b\x01\x01\x01\x02\x02\n\x03\x06"},
{"runtime/race", "\xb9\x02"},
{"regexp", "\x03\x82\x02\x037\t\x02\x01\x02\x11\x02"},
{"regexp/syntax", "\xc8\x02\x01\x01\x01\x02\x11\x02"},
{"runtime", "\xa4\x01\x04\x01\x03\f\x06\b\x02\x01\x01\x0f\x03\x01\x01\x01\x02\x01\x01\x01\x02\x01\x04\x01\x10\x18N"},
{"runtime/coverage", "\xb0\x01U"},
{"runtime/debug", "\x81\x01V\\\r\b\x02\x01\x11\x06"},
{"runtime/metrics", "\xc8\x01I/\""},
{"runtime/pprof", "\x02\x01\x01\x03\x06c\x0e\x03#5\v!\f\"\r\b\x01\x01\x01\x02\x02\n\x03\x06"},
{"runtime/race", "\xc6\x02"},
{"runtime/race/internal/amd64v1", ""},
{"runtime/trace", "\rg\x03z\t9\b\x05\x01\x0e\x06"},
{"slices", "\x04\xf9\x01\fL"},
{"sort", "\xd0\x0192"},
{"strconv", "t+A\x01r"},
{"strings", "t'\x04B\x19\x03\f7\x11\x02\x02"},
{"runtime/trace", "\rq\x03{\t;\b\x05\x01\x0e\x06"},
{"slices", "\x04\x84\x02\fN"},
{"sort", "\xdb\x0194"},
{"strconv", "~*C\x01t"},
{"strings", "~&\x04D\x19\x03\f9\x11\x02\x02"},
{"structs", ""},
{"sync", "\xcf\x01\x13\x01P\x0e\x14"},
{"sync/atomic", "\xd5\x02"},
{"syscall", "t(\x03\x01\x1c\n\x03\x06\r\x04S\b\x05\x01\x14"},
{"testing", "\x03\ng\x02\x01X\x17\x14\f\x05\x1b\x06\x02\x05\x02\x05\x01\x02\x01\x02\x01\x0e\x02\x04"},
{"testing/cryptotest", "QOZ\x124\x03\x12"},
{"testing/fstest", "t\x03\x83\x01\x01\n&\x10\x03\t\b"},
{"testing/internal/testdeps", "\x02\v\xae\x01/\x10,\x03\x05\x03\x06\a\x02\x0f"},
{"testing/iotest", "\x03q\x03\x83\x01\x04"},
{"testing/quick", "v\x01\x8f\x01\x05#\x10\x11"},
{"testing/slogtest", "\rg\x03\x89\x01.\x05\x10\f"},
{"testing/synctest", "\xe3\x01`\x12"},
{"text/scanner", "\x03t\x83\x01,+\x02"},
{"text/tabwriter", "w\x83\x01Y"},
{"text/template", "t\x03C@\x01\n \x01\x05\x01\x02\x05\v\x02\x0e\x03\x02"},
{"text/template/parse", "\x03t\xbc\x01\n\x01\x13\x02"},
{"time", "t+\x1e$(*\r\x02\x13"},
{"time/tzdata", "t\xce\x01\x13"},
{"sync", "\xda\x01\x02\x11\x01R\x0e\x14"},
{"sync/atomic", "\xe2\x02"},
{"syscall", "~'\x03\x01\x1d\n\x04\x06\r\x04U\b\x05\x01\x14"},
{"testing", "\x03\nq\x02\x01Y\x17\x14\f\x05\x1d\x06\x02\x05\x02\x05\x01\x02\x01\x02\x01\x0e\x02\x04"},
{"testing/cryptotest", "SV\\\x126\x03\x12"},
{"testing/fstest", "~\x03\x84\x01\x01\n(\x10\x03\t\b"},
{"testing/internal/testdeps", "\x02\v\xb7\x011\x10.\x03\x05\x03\x06\a\x02\x0f"},
{"testing/iotest", "\x03{\x03\x84\x01\x04"},
{"testing/quick", "\x80\x01\x01\x90\x01\x05%\x10\x11"},
{"testing/slogtest", "\rq\x03\x8a\x010\x05\x10\f"},
{"testing/synctest", "\xee\x01b\f\x06"},
{"text/scanner", "\x03~\x84\x01.+\x02"},
{"text/tabwriter", "\x81\x01\x84\x01["},
{"text/template", "~\x03BB\x01\n\"\x01\x05\x01\x02\x05\v\x02\x0e\x03\x02"},
{"text/template/parse", "\x03~\xbf\x01\n\x01\x13\x02"},
{"time", "~*D(,\r\x02\x13"},
{"time/tzdata", "~\xd1\x01\x13"},
{"unicode", ""},
{"unicode/utf16", ""},
{"unicode/utf8", ""},
{"unique", "\x9b\x01!%\x01Q\r\x01\x14\x12"},
{"unique", "\xa4\x01\"&\x01S\r\x01\x14\x19"},
{"unsafe", ""},
{"vendor/golang.org/x/crypto/chacha20", "\x10]\a\x95\x01*'"},
{"vendor/golang.org/x/crypto/chacha20poly1305", "\x10\aV\a\xe2\x01\x04\x01\a"},
{"vendor/golang.org/x/crypto/cryptobyte", "j\n\x03\x90\x01'!\n"},
{"uuid", "\x03\x01O\x1d\x03\v\xcf\x01\x0f"},
{"vendor/golang.org/x/crypto/chacha20", "\x10`\x0e\x96\x01,)"},
{"vendor/golang.org/x/crypto/chacha20poly1305", "\x10\aY\x0e\xe6\x01\x05\x01\f"},
{"vendor/golang.org/x/crypto/cryptobyte", "m\x11\x03\x91\x01)!\v"},
{"vendor/golang.org/x/crypto/cryptobyte/asn1", ""},
{"vendor/golang.org/x/crypto/internal/alias", "\xd5\x02"},
{"vendor/golang.org/x/crypto/internal/poly1305", "X\x15\x9c\x01"},
{"vendor/golang.org/x/net/dns/dnsmessage", "t\xc7\x01"},
{"vendor/golang.org/x/net/http/httpguts", "\x90\x02\x14\x1a\x15\r"},
{"vendor/golang.org/x/net/http/httpproxy", "t\x03\x99\x01\x10\x05\x01\x18\x15\r"},
{"vendor/golang.org/x/net/http2/hpack", "\x03q\x03\x83\x01F"},
{"vendor/golang.org/x/net/idna", "w\x8f\x018\x15\x10\x02\x01"},
{"vendor/golang.org/x/net/nettest", "\x03j\a\x03\x83\x01\x11\x05\x16\x01\f\n\x01\x02\x02\x01\f"},
{"vendor/golang.org/x/sys/cpu", "\xa6\x02\r\n\x01\x17"},
{"vendor/golang.org/x/text/secure/bidirule", "t\xdf\x01\x11\x01"},
{"vendor/golang.org/x/text/transform", "\x03q\x86\x01Y"},
{"vendor/golang.org/x/text/unicode/bidi", "\x03\bl\x87\x01>\x17"},
{"vendor/golang.org/x/text/unicode/norm", "m\n\x83\x01F\x13\x11"},
{"weak", "\x9b\x01\x98\x01\""},
{"vendor/golang.org/x/crypto/hkdf", "\x18\x01e\x15r"},
{"vendor/golang.org/x/crypto/internal/alias", "\xe2\x02"},
{"vendor/golang.org/x/crypto/internal/poly1305", "Z\x16\xa4\x01"},
{"vendor/golang.org/x/net/dns/dnsmessage", "~\xca\x01"},
{"vendor/golang.org/x/net/http/httpguts", "\x9b\x02\x16\x1a\x15\x10"},
{"vendor/golang.org/x/net/http/httpproxy", "~\x03\x9a\x01\x12\x05\x01\x18\x15\x10"},
{"vendor/golang.org/x/net/http2/hpack", "\x03{\x03\x84\x01H"},
{"vendor/golang.org/x/net/http3", "\x9c\x02@\x06\x0f\x04"},
{"vendor/golang.org/x/net/idna", "\x81\x01\x90\x01:\x13\x02\x17\x02\x01"},
{"vendor/golang.org/x/net/internal/http3", "\rN#\x03\x84\x01\v\x04\a\x01\x05\x10\x01\x16\x02\x01\x02\x0f\x10\x02\x04\x03"},
{"vendor/golang.org/x/net/internal/httpcommon", "\rq\x03\xa0\x01\x10\x01\x17\x01\x01\x02\x1f\x02"},
{"vendor/golang.org/x/net/internal/quic/quicwire", "p"},
{"vendor/golang.org/x/net/nettest", "\x03m\x0e\x03\x84\x01\x11\x05\x18\x01\f\n\x01\x02\x02\x01\f"},
{"vendor/golang.org/x/net/quic", "\x03\n\x01\x01\x01\t:\x04\x04\x15\x03\v\x03\x12r\x06\x06\x06\x04\x12\x06\x15\x02\x01\x02\x01\x01\r\x06\x02\x01\x01\x02\v"},
{"vendor/golang.org/x/sys/cpu", "\xb3\x02\r\n\x01\x17"},
{"vendor/golang.org/x/text/secure/bidirule", "~\xe2\x01\x18\x01"},
{"vendor/golang.org/x/text/transform", "\x03{\x87\x01["},
{"vendor/golang.org/x/text/unicode/bidi", "\x03\bv\x88\x01@\x17"},
{"vendor/golang.org/x/text/unicode/norm", "p\x11\x84\x01H\x13\x18"},
{"weak", "\xa4\x01\x9c\x01\""},
}
// bootstrap is the list of bootstrap packages extracted from cmd/dist.
@@ -408,6 +428,7 @@ var bootstrap = map[string]bool{
"cmd/compile/internal/logopt": true,
"cmd/compile/internal/loong64": true,
"cmd/compile/internal/loopvar": true,
"cmd/compile/internal/midway": true,
"cmd/compile/internal/mips": true,
"cmd/compile/internal/mips64": true,
"cmd/compile/internal/noder": true,
@@ -512,6 +533,7 @@ var bootstrap = map[string]bool{
"internal/race": true,
"internal/runtime/gc": true,
"internal/saferio": true,
"internal/strconv": true,
"internal/syscall/unix": true,
"internal/types/errors": true,
"internal/unsafeheader": true,

View File

@@ -270,6 +270,7 @@ var PackageSymbols = map[string][]Symbol{
{"ContainsRune", Func, 7, "func(b []byte, r rune) bool"},
{"Count", Func, 0, "func(s []byte, sep []byte) int"},
{"Cut", Func, 18, "func(s []byte, sep []byte) (before []byte, after []byte, found bool)"},
{"CutLast", Func, 27, "func(s []byte, sep []byte) (before []byte, after []byte, found bool)"},
{"CutPrefix", Func, 20, "func(s []byte, prefix []byte) (after []byte, found bool)"},
{"CutSuffix", Func, 20, "func(s []byte, suffix []byte) (before []byte, found bool)"},
{"Equal", Func, 0, "func(a []byte, b []byte) bool"},
@@ -538,6 +539,7 @@ var PackageSymbols = map[string][]Symbol{
{"MD4", Const, 0, ""},
{"MD5", Const, 0, ""},
{"MD5SHA1", Const, 0, ""},
{"MLDSAMu", Const, 27, ""},
{"MessageSigner", Type, 25, ""},
{"PrivateKey", Type, 0, ""},
{"PublicKey", Type, 2, ""},
@@ -812,6 +814,40 @@ var PackageSymbols = map[string][]Symbol{
{"Size", Const, 0, ""},
{"Sum", Func, 2, "func(data []byte) [16]byte"},
},
"crypto/mldsa": {
{"(*Options).HashFunc", Method, 27, ""},
{"(*PrivateKey).Bytes", Method, 27, ""},
{"(*PrivateKey).Equal", Method, 27, ""},
{"(*PrivateKey).Public", Method, 27, ""},
{"(*PrivateKey).PublicKey", Method, 27, ""},
{"(*PrivateKey).Sign", Method, 27, ""},
{"(*PrivateKey).SignDeterministic", Method, 27, ""},
{"(*PublicKey).Bytes", Method, 27, ""},
{"(*PublicKey).Equal", Method, 27, ""},
{"(*PublicKey).Parameters", Method, 27, ""},
{"(Parameters).PublicKeySize", Method, 27, ""},
{"(Parameters).SignatureSize", Method, 27, ""},
{"(Parameters).String", Method, 27, ""},
{"GenerateKey", Func, 27, "func(params Parameters) (*PrivateKey, error)"},
{"MLDSA44", Func, 27, "func() Parameters"},
{"MLDSA44PublicKeySize", Const, 27, ""},
{"MLDSA44SignatureSize", Const, 27, ""},
{"MLDSA65", Func, 27, "func() Parameters"},
{"MLDSA65PublicKeySize", Const, 27, ""},
{"MLDSA65SignatureSize", Const, 27, ""},
{"MLDSA87", Func, 27, "func() Parameters"},
{"MLDSA87PublicKeySize", Const, 27, ""},
{"MLDSA87SignatureSize", Const, 27, ""},
{"NewPrivateKey", Func, 27, "func(params Parameters, seed []byte) (*PrivateKey, error)"},
{"NewPublicKey", Func, 27, "func(params Parameters, encoding []byte) (*PublicKey, error)"},
{"Options", Type, 27, ""},
{"Options.Context", Field, 27, ""},
{"Parameters", Type, 27, ""},
{"PrivateKey", Type, 27, ""},
{"PrivateKeySize", Const, 27, ""},
{"PublicKey", Type, 27, ""},
{"Verify", Func, 27, "func(pk *PublicKey, message []byte, signature []byte, opts *Options) error"},
},
"crypto/mlkem": {
{"(*DecapsulationKey1024).Bytes", Method, 24, ""},
{"(*DecapsulationKey1024).Decapsulate", Method, 24, ""},
@@ -1120,6 +1156,7 @@ var PackageSymbols = map[string][]Symbol{
{"ConnectionState.ECHAccepted", Field, 23, ""},
{"ConnectionState.HandshakeComplete", Field, 0, ""},
{"ConnectionState.HelloRetryRequest", Field, 26, ""},
{"ConnectionState.LocalCertificate", Field, 27, ""},
{"ConnectionState.NegotiatedProtocol", Field, 0, ""},
{"ConnectionState.NegotiatedProtocolIsMutual", Field, 0, ""},
{"ConnectionState.OCSPResponse", Field, 5, ""},
@@ -1152,6 +1189,10 @@ var PackageSymbols = map[string][]Symbol{
{"InsecureCipherSuites", Func, 14, "func() []*CipherSuite"},
{"Listen", Func, 0, "func(network string, laddr string, config *Config) (net.Listener, error)"},
{"LoadX509KeyPair", Func, 0, "func(certFile string, keyFile string) (Certificate, error)"},
{"MLDSA44", Const, 27, ""},
{"MLDSA65", Const, 27, ""},
{"MLDSA87", Const, 27, ""},
{"MLKEM1024", Const, 27, ""},
{"NewLRUClientSessionCache", Func, 3, "func(capacity int) ClientSessionCache"},
{"NewListener", Func, 0, "func(inner net.Listener, config *Config) net.Listener"},
{"NewResumptionState", Func, 21, "func(ticket []byte, state *SessionState) (*ClientSessionState, error)"},
@@ -1166,6 +1207,7 @@ var PackageSymbols = map[string][]Symbol{
{"ParseSessionState", Func, 21, "func(data []byte) (*SessionState, error)"},
{"QUICClient", Func, 21, "func(config *QUICConfig) *QUICConn"},
{"QUICConfig", Type, 21, ""},
{"QUICConfig.ClientHelloInfoConn", Field, 27, ""},
{"QUICConfig.EnableSessionEvents", Field, 23, ""},
{"QUICConfig.TLSConfig", Field, 21, ""},
{"QUICConn", Type, 21, ""},
@@ -1334,6 +1376,7 @@ var PackageSymbols = map[string][]Symbol{
{"Certificate.PublicKeyAlgorithm", Field, 0, ""},
{"Certificate.Raw", Field, 0, ""},
{"Certificate.RawIssuer", Field, 0, ""},
{"Certificate.RawSignatureAlgorithm", Field, 27, ""},
{"Certificate.RawSubject", Field, 0, ""},
{"Certificate.RawSubjectPublicKeyInfo", Field, 0, ""},
{"Certificate.RawTBSCertificate", Field, 0, ""},
@@ -1362,6 +1405,7 @@ var PackageSymbols = map[string][]Symbol{
{"CertificateRequest.PublicKey", Field, 3, ""},
{"CertificateRequest.PublicKeyAlgorithm", Field, 3, ""},
{"CertificateRequest.Raw", Field, 3, ""},
{"CertificateRequest.RawSignatureAlgorithm", Field, 27, ""},
{"CertificateRequest.RawSubject", Field, 3, ""},
{"CertificateRequest.RawSubjectPublicKeyInfo", Field, 3, ""},
{"CertificateRequest.RawTBSCertificateRequest", Field, 3, ""},
@@ -1422,6 +1466,10 @@ var PackageSymbols = map[string][]Symbol{
{"KeyUsageKeyEncipherment", Const, 0, ""},
{"MD2WithRSA", Const, 0, ""},
{"MD5WithRSA", Const, 0, ""},
{"MLDSA", Const, 27, ""},
{"MLDSA44", Const, 27, ""},
{"MLDSA65", Const, 27, ""},
{"MLDSA87", Const, 27, ""},
{"MarshalECPrivateKey", Func, 2, "func(key *ecdsa.PrivateKey) ([]byte, error)"},
{"MarshalPKCS1PrivateKey", Func, 0, "func(key *rsa.PrivateKey) []byte"},
{"MarshalPKCS1PublicKey", Func, 10, "func(key *rsa.PublicKey) []byte"},
@@ -1468,6 +1516,7 @@ var PackageSymbols = map[string][]Symbol{
{"RevocationList.Number", Field, 15, ""},
{"RevocationList.Raw", Field, 19, ""},
{"RevocationList.RawIssuer", Field, 19, ""},
{"RevocationList.RawSignatureAlgorithm", Field, 27, ""},
{"RevocationList.RawTBSRevocationList", Field, 19, ""},
{"RevocationList.RevokedCertificateEntries", Field, 21, ""},
{"RevocationList.RevokedCertificates", Field, 15, ""},
@@ -1648,6 +1697,7 @@ var PackageSymbols = map[string][]Symbol{
{"(Scanner).Scan", Method, 0, ""},
{"ColumnType", Type, 8, ""},
{"Conn", Type, 9, ""},
{"ConvertAssign", Func, 27, "func(scanCtx driver.ScanContext, dest any, src driver.Value) error"},
{"DB", Type, 0, ""},
{"DBStats", Type, 5, ""},
{"DBStats.Idle", Field, 11, ""},
@@ -1744,6 +1794,11 @@ var PackageSymbols = map[string][]Symbol{
{"(Rows).Next", Method, 0, ""},
{"(RowsAffected).LastInsertId", Method, 0, ""},
{"(RowsAffected).RowsAffected", Method, 0, ""},
{"(RowsColumnScanner).Close", Method, 27, ""},
{"(RowsColumnScanner).Columns", Method, 27, ""},
{"(RowsColumnScanner).Next", Method, 27, ""},
{"(RowsColumnScanner).NextRow", Method, 27, ""},
{"(RowsColumnScanner).ScanColumn", Method, 27, ""},
{"(RowsColumnTypeDatabaseTypeName).Close", Method, 8, ""},
{"(RowsColumnTypeDatabaseTypeName).ColumnTypeDatabaseTypeName", Method, 8, ""},
{"(RowsColumnTypeDatabaseTypeName).Columns", Method, 8, ""},
@@ -1815,12 +1870,14 @@ var PackageSymbols = map[string][]Symbol{
{"ResultNoRows", Var, 0, ""},
{"Rows", Type, 0, ""},
{"RowsAffected", Type, 0, ""},
{"RowsColumnScanner", Type, 27, ""},
{"RowsColumnTypeDatabaseTypeName", Type, 8, ""},
{"RowsColumnTypeLength", Type, 8, ""},
{"RowsColumnTypeNullable", Type, 8, ""},
{"RowsColumnTypePrecisionScale", Type, 8, ""},
{"RowsColumnTypeScanType", Type, 8, ""},
{"RowsNextResultSet", Type, 8, ""},
{"ScanContext", Type, 27, ""},
{"SessionResetter", Type, 10, ""},
{"Stmt", Type, 0, ""},
{"StmtExecContext", Type, 8, ""},
@@ -5038,24 +5095,32 @@ var PackageSymbols = map[string][]Symbol{
{"(*InvalidUnmarshalError).Error", Method, 0, ""},
{"(*MarshalerError).Error", Method, 0, ""},
{"(*MarshalerError).Unwrap", Method, 13, ""},
{"(*Number).UnmarshalJSONFrom", Method, 27, ""},
{"(*RawMessage).MarshalJSON", Method, 0, ""},
{"(*RawMessage).UnmarshalJSON", Method, 0, ""},
{"(*SyntaxError).Error", Method, 0, ""},
{"(*UnmarshalFieldError).Error", Method, 0, ""},
{"(*UnmarshalTypeError).Error", Method, 0, ""},
{"(*UnmarshalTypeError).Unwrap", Method, 27, ""},
{"(*UnsupportedTypeError).Error", Method, 0, ""},
{"(*UnsupportedValueError).Error", Method, 0, ""},
{"(Delim).String", Method, 5, ""},
{"(Marshaler).MarshalJSON", Method, 0, ""},
{"(Number).Float64", Method, 1, ""},
{"(Number).Int64", Method, 1, ""},
{"(Number).MarshalJSONTo", Method, 27, ""},
{"(Number).String", Method, 1, ""},
{"(RawMessage).MarshalJSON", Method, 8, ""},
{"(Unmarshaler).UnmarshalJSON", Method, 0, ""},
{"CallMethodsWithLegacySemantics", Func, 27, "func(v bool) Options"},
{"Compact", Func, 0, "func(dst *bytes.Buffer, src []byte) error"},
{"Decoder", Type, 0, ""},
{"DefaultOptionsV1", Func, 27, "func() Options"},
{"Delim", Type, 5, ""},
{"Encoder", Type, 0, ""},
{"FormatByteArrayAsArray", Func, 27, "func(v bool) Options"},
{"FormatBytesWithLegacySemantics", Func, 27, "func(v bool) Options"},
{"FormatDurationAsNano", Func, 27, "func(v bool) Options"},
{"HTMLEscape", Func, 0, "func(dst *bytes.Buffer, src []byte)"},
{"Indent", Func, 0, "func(dst *bytes.Buffer, src []byte, prefix string, indent string) error"},
{"InvalidUTF8Error", Type, 0, ""},
@@ -5068,19 +5133,29 @@ var PackageSymbols = map[string][]Symbol{
{"MarshalerError", Type, 0, ""},
{"MarshalerError.Err", Field, 0, ""},
{"MarshalerError.Type", Field, 0, ""},
{"MatchCaseSensitiveDelimiter", Func, 27, "func(v bool) Options"},
{"MergeWithLegacySemantics", Func, 27, "func(v bool) Options"},
{"NewDecoder", Func, 0, "func(r io.Reader) *Decoder"},
{"NewEncoder", Func, 0, "func(w io.Writer) *Encoder"},
{"Number", Type, 1, ""},
{"OmitEmptyWithLegacySemantics", Func, 27, "func(v bool) Options"},
{"Options", Type, 27, ""},
{"ParseBytesWithLooseRFC4648", Func, 27, "func(v bool) Options"},
{"ParseTimeWithLooseRFC3339", Func, 27, "func(v bool) Options"},
{"RawMessage", Type, 0, ""},
{"ReportErrorsWithLegacySemantics", Func, 27, "func(v bool) Options"},
{"StringifyWithLegacySemantics", Func, 27, "func(v bool) Options"},
{"SyntaxError", Type, 0, ""},
{"SyntaxError.Offset", Field, 0, ""},
{"Token", Type, 5, ""},
{"Unmarshal", Func, 0, "func(data []byte, v any) error"},
{"UnmarshalArrayFromAnyLength", Func, 27, "func(v bool) Options"},
{"UnmarshalFieldError", Type, 0, ""},
{"UnmarshalFieldError.Field", Field, 0, ""},
{"UnmarshalFieldError.Key", Field, 0, ""},
{"UnmarshalFieldError.Type", Field, 0, ""},
{"UnmarshalTypeError", Type, 0, ""},
{"UnmarshalTypeError.Err", Field, 27, ""},
{"UnmarshalTypeError.Field", Field, 8, ""},
{"UnmarshalTypeError.Offset", Field, 5, ""},
{"UnmarshalTypeError.Struct", Field, 8, ""},
@@ -5094,6 +5169,158 @@ var PackageSymbols = map[string][]Symbol{
{"UnsupportedValueError.Value", Field, 0, ""},
{"Valid", Func, 9, "func(data []byte) bool"},
},
"encoding/json/jsontext": {
{"(*Decoder).InputOffset", Method, 27, ""},
{"(*Decoder).Options", Method, 27, ""},
{"(*Decoder).PeekKind", Method, 27, ""},
{"(*Decoder).ReadToken", Method, 27, ""},
{"(*Decoder).ReadValue", Method, 27, ""},
{"(*Decoder).Reset", Method, 27, ""},
{"(*Decoder).SkipValue", Method, 27, ""},
{"(*Decoder).StackDepth", Method, 27, ""},
{"(*Decoder).StackIndex", Method, 27, ""},
{"(*Decoder).StackPointer", Method, 27, ""},
{"(*Decoder).UnreadBuffer", Method, 27, ""},
{"(*Encoder).AvailableBuffer", Method, 27, ""},
{"(*Encoder).Options", Method, 27, ""},
{"(*Encoder).OutputOffset", Method, 27, ""},
{"(*Encoder).Reset", Method, 27, ""},
{"(*Encoder).StackDepth", Method, 27, ""},
{"(*Encoder).StackIndex", Method, 27, ""},
{"(*Encoder).StackPointer", Method, 27, ""},
{"(*Encoder).WriteToken", Method, 27, ""},
{"(*Encoder).WriteValue", Method, 27, ""},
{"(*SyntacticError).Error", Method, 27, ""},
{"(*SyntacticError).Unwrap", Method, 27, ""},
{"(*Value).Canonicalize", Method, 27, ""},
{"(*Value).Compact", Method, 27, ""},
{"(*Value).Format", Method, 27, ""},
{"(*Value).Indent", Method, 27, ""},
{"(*Value).UnmarshalJSON", Method, 27, ""},
{"(Kind).String", Method, 27, ""},
{"(Pointer).AppendToken", Method, 27, ""},
{"(Pointer).Contains", Method, 27, ""},
{"(Pointer).IsValid", Method, 27, ""},
{"(Pointer).LastToken", Method, 27, ""},
{"(Pointer).Parent", Method, 27, ""},
{"(Pointer).Tokens", Method, 27, ""},
{"(Token).Bool", Method, 27, ""},
{"(Token).Clone", Method, 27, ""},
{"(Token).Float", Method, 27, ""},
{"(Token).Float32", Method, 27, ""},
{"(Token).Int", Method, 27, ""},
{"(Token).Kind", Method, 27, ""},
{"(Token).String", Method, 27, ""},
{"(Token).Uint", Method, 27, ""},
{"(Value).Clone", Method, 27, ""},
{"(Value).IsValid", Method, 27, ""},
{"(Value).Kind", Method, 27, ""},
{"(Value).MarshalJSON", Method, 27, ""},
{"(Value).String", Method, 27, ""},
{"AllowDuplicateNames", Func, 27, "func(v bool) Options"},
{"AllowInvalidUTF8", Func, 27, "func(v bool) Options"},
{"AppendFloat", Func, 27, "func(dst []byte, src float64, bits int) []byte"},
{"AppendFormat", Func, 27, "func[Bytes ~[]byte | ~string](dst []byte, src Bytes, opts ...Options) ([]byte, error)"},
{"AppendQuote", Func, 27, "func[Bytes ~[]byte | ~string](dst []byte, src Bytes) ([]byte, error)"},
{"AppendUnquote", Func, 27, "func[Bytes ~[]byte | ~string](dst []byte, src Bytes) ([]byte, error)"},
{"BeginArray", Var, 27, ""},
{"BeginObject", Var, 27, ""},
{"Bool", Func, 27, "func(b bool) Token"},
{"CanonicalizeRawFloats", Func, 27, "func(v bool) Options"},
{"CanonicalizeRawInts", Func, 27, "func(v bool) Options"},
{"Decoder", Type, 27, ""},
{"Encoder", Type, 27, ""},
{"EndArray", Var, 27, ""},
{"EndObject", Var, 27, ""},
{"ErrDuplicateName", Var, 27, ""},
{"ErrNonStringName", Var, 27, ""},
{"EscapeForHTML", Func, 27, "func(v bool) Options"},
{"EscapeForJS", Func, 27, "func(v bool) Options"},
{"False", Var, 27, ""},
{"Float", Func, 27, "func(n float64) Token"},
{"Float32", Func, 27, "func(n float32) Token"},
{"Int", Func, 27, "func(n int64) Token"},
{"Internal", Var, 27, ""},
{"Kind", Type, 27, ""},
{"KindBeginArray", Const, 27, ""},
{"KindBeginObject", Const, 27, ""},
{"KindEndArray", Const, 27, ""},
{"KindEndObject", Const, 27, ""},
{"KindFalse", Const, 27, ""},
{"KindInvalid", Const, 27, ""},
{"KindNull", Const, 27, ""},
{"KindNumber", Const, 27, ""},
{"KindString", Const, 27, ""},
{"KindTrue", Const, 27, ""},
{"Multiline", Func, 27, "func(v bool) Options"},
{"NewDecoder", Func, 27, "func(r io.Reader, opts ...Options) *Decoder"},
{"NewEncoder", Func, 27, "func(w io.Writer, opts ...Options) *Encoder"},
{"Null", Var, 27, ""},
{"Options", Type, 27, ""},
{"Pointer", Type, 27, ""},
{"PreserveRawStrings", Func, 27, "func(v bool) Options"},
{"ReorderRawObjects", Func, 27, "func(v bool) Options"},
{"SpaceAfterColon", Func, 27, "func(v bool) Options"},
{"SpaceAfterComma", Func, 27, "func(v bool) Options"},
{"String", Func, 27, "func(s string) Token"},
{"SyntacticError", Type, 27, ""},
{"SyntacticError.ByteOffset", Field, 27, ""},
{"SyntacticError.Err", Field, 27, ""},
{"SyntacticError.JSONPointer", Field, 27, ""},
{"Token", Type, 27, ""},
{"True", Var, 27, ""},
{"Uint", Func, 27, "func(n uint64) Token"},
{"Value", Type, 27, ""},
{"WithIndent", Func, 27, "func(indent string) Options"},
{"WithIndentPrefix", Func, 27, "func(prefix string) Options"},
},
"encoding/json/v2": {
{"(*SemanticError).Error", Method, 27, ""},
{"(*SemanticError).Unwrap", Method, 27, ""},
{"(Marshaler).MarshalJSON", Method, 27, ""},
{"(MarshalerTo).MarshalJSONTo", Method, 27, ""},
{"(Unmarshaler).UnmarshalJSON", Method, 27, ""},
{"(UnmarshalerFrom).UnmarshalJSONFrom", Method, 27, ""},
{"DefaultOptionsV2", Func, 27, "func() Options"},
{"Deterministic", Func, 27, "func(v bool) Options"},
{"ErrUnknownName", Var, 27, ""},
{"FormatNilMapAsNull", Func, 27, "func(v bool) Options"},
{"FormatNilSliceAsNull", Func, 27, "func(v bool) Options"},
{"GetOption", Func, 27, "func[T any](opts Options, setter func(T) Options) (T, bool)"},
{"JoinMarshalers", Func, 27, "func(ms ...*Marshalers) *Marshalers"},
{"JoinOptions", Func, 27, "func(srcs ...Options) Options"},
{"JoinUnmarshalers", Func, 27, "func(us ...*Unmarshalers) *Unmarshalers"},
{"Marshal", Func, 27, "func(in any, opts ...Options) (out []byte, err error)"},
{"MarshalEncode", Func, 27, "func(out *jsontext.Encoder, in any, opts ...Options) (err error)"},
{"MarshalFunc", Func, 27, "func[T any](fn func(T) ([]byte, error)) *Marshalers"},
{"MarshalToFunc", Func, 27, "func[T any](fn func(*jsontext.Encoder, T) error) *Marshalers"},
{"MarshalWrite", Func, 27, "func(out io.Writer, in any, opts ...Options) (err error)"},
{"Marshaler", Type, 27, ""},
{"MarshalerTo", Type, 27, ""},
{"Marshalers", Type, 27, ""},
{"MatchCaseInsensitiveNames", Func, 27, "func(v bool) Options"},
{"OmitZeroStructFields", Func, 27, "func(v bool) Options"},
{"Options", Type, 27, ""},
{"RejectUnknownMembers", Func, 27, "func(v bool) Options"},
{"SemanticError", Type, 27, ""},
{"SemanticError.ByteOffset", Field, 27, ""},
{"SemanticError.Err", Field, 27, ""},
{"SemanticError.GoType", Field, 27, ""},
{"SemanticError.JSONKind", Field, 27, ""},
{"SemanticError.JSONPointer", Field, 27, ""},
{"SemanticError.JSONValue", Field, 27, ""},
{"StringifyNumbers", Func, 27, "func(v bool) Options"},
{"Unmarshal", Func, 27, "func(in []byte, out any, opts ...Options) (err error)"},
{"UnmarshalDecode", Func, 27, "func(in *jsontext.Decoder, out any, opts ...Options) (err error)"},
{"UnmarshalFromFunc", Func, 27, "func[T any](fn func(*jsontext.Decoder, T) error) *Unmarshalers"},
{"UnmarshalFunc", Func, 27, "func[T any](fn func([]byte, T) error) *Unmarshalers"},
{"UnmarshalRead", Func, 27, "func(in io.Reader, out any, opts ...Options) (err error)"},
{"Unmarshaler", Type, 27, ""},
{"UnmarshalerFrom", Type, 27, ""},
{"Unmarshalers", Type, 27, ""},
{"WithMarshalers", Func, 27, "func(v *Marshalers) Options"},
{"WithUnmarshalers", Func, 27, "func(v *Unmarshalers) Options"},
},
"encoding/pem": {
{"Block", Type, 0, ""},
{"Block.Bytes", Field, 0, ""},
@@ -6002,6 +6229,7 @@ var PackageSymbols = map[string][]Symbol{
{"Shift", Func, 5, "func(x Value, op token.Token, s uint) Value"},
{"Sign", Func, 5, "func(x Value) int"},
{"String", Const, 5, ""},
{"StringLen", Func, 27, "func(x Value) int64"},
{"StringVal", Func, 5, "func(x Value) string"},
{"ToComplex", Func, 6, "func(x Value) Value"},
{"ToFloat", Func, 6, "func(x Value) Value"},
@@ -6183,6 +6411,7 @@ var PackageSymbols = map[string][]Symbol{
{"(*ErrorList).Add", Method, 0, ""},
{"(*ErrorList).RemoveMultiples", Method, 0, ""},
{"(*ErrorList).Reset", Method, 0, ""},
{"(*Scanner).End", Method, 27, ""},
{"(*Scanner).Init", Method, 0, ""},
{"(*Scanner).Scan", Method, 0, ""},
{"(Error).Error", Method, 0, ""},
@@ -6222,6 +6451,7 @@ var PackageSymbols = map[string][]Symbol{
{"(*File).SetLines", Method, 0, ""},
{"(*File).SetLinesForContent", Method, 0, ""},
{"(*File).Size", Method, 0, ""},
{"(*File).String", Method, 27, ""},
{"(*FileSet).AddExistingFiles", Method, 25, ""},
{"(*FileSet).AddFile", Method, 0, ""},
{"(*FileSet).Base", Method, 0, ""},
@@ -6529,6 +6759,7 @@ var PackageSymbols = map[string][]Symbol{
{"(*Tuple).Variables", Method, 24, ""},
{"(*TypeList).At", Method, 18, ""},
{"(*TypeList).Len", Method, 18, ""},
{"(*TypeList).String", Method, 27, ""},
{"(*TypeList).Types", Method, 24, ""},
{"(*TypeName).Exported", Method, 5, ""},
{"(*TypeName).Id", Method, 5, ""},
@@ -6547,6 +6778,7 @@ var PackageSymbols = map[string][]Symbol{
{"(*TypeParam).Underlying", Method, 18, ""},
{"(*TypeParamList).At", Method, 18, ""},
{"(*TypeParamList).Len", Method, 18, ""},
{"(*TypeParamList).String", Method, 27, ""},
{"(*TypeParamList).TypeParams", Method, 24, ""},
{"(*Union).Len", Method, 18, ""},
{"(*Union).String", Method, 18, ""},
@@ -6571,9 +6803,14 @@ var PackageSymbols = map[string][]Symbol{
{"(Checker).PkgNameOf", Method, 22, ""},
{"(Checker).TypeOf", Method, 5, ""},
{"(Error).Error", Method, 5, ""},
{"(Hasher).Equal", Method, 27, ""},
{"(Hasher).Hash", Method, 27, ""},
{"(HasherIgnoreTags).Equal", Method, 27, ""},
{"(HasherIgnoreTags).Hash", Method, 27, ""},
{"(Importer).Import", Method, 5, ""},
{"(ImporterFrom).Import", Method, 6, ""},
{"(ImporterFrom).ImportFrom", Method, 6, ""},
{"(Instance).String", Method, 27, ""},
{"(Object).Exported", Method, 5, ""},
{"(Object).Id", Method, 5, ""},
{"(Object).Name", Method, 5, ""},
@@ -6643,6 +6880,8 @@ var PackageSymbols = map[string][]Symbol{
{"Float32", Const, 5, ""},
{"Float64", Const, 5, ""},
{"Func", Type, 5, ""},
{"Hasher", Type, 27, ""},
{"HasherIgnoreTags", Type, 27, ""},
{"Id", Func, 5, "func(pkg *Package, name string) string"},
{"Identical", Func, 5, "func(x Type, y Type) bool"},
{"IdenticalIgnoreTags", Func, 8, "func(x Type, y Type) bool"},
@@ -6877,9 +7116,13 @@ var PackageSymbols = map[string][]Symbol{
{"(*Hash).Write", Method, 14, ""},
{"(*Hash).WriteByte", Method, 14, ""},
{"(*Hash).WriteString", Method, 14, ""},
{"(ComparableHasher).Equal", Method, 27, ""},
{"(ComparableHasher).Hash", Method, 27, ""},
{"Bytes", Func, 19, "func(seed Seed, b []byte) uint64"},
{"Comparable", Func, 24, "func[T comparable](seed Seed, v T) uint64"},
{"ComparableHasher", Type, 27, ""},
{"Hash", Type, 14, ""},
{"Hasher", Type, 27, ""},
{"MakeSeed", Func, 14, "func() Seed"},
{"Seed", Type, 14, ""},
{"String", Func, 19, "func(seed Seed, s string) uint64"},
@@ -8035,6 +8278,7 @@ var PackageSymbols = map[string][]Symbol{
{"(*Int).CmpAbs", Method, 10, ""},
{"(*Int).Div", Method, 0, ""},
{"(*Int).DivMod", Method, 0, ""},
{"(*Int).Divide", Method, 27, ""},
{"(*Int).Exp", Method, 0, ""},
{"(*Int).FillBytes", Method, 15, ""},
{"(*Int).Float64", Method, 21, ""},
@@ -8119,9 +8363,11 @@ var PackageSymbols = map[string][]Symbol{
{"Accuracy", Type, 5, ""},
{"AwayFromZero", Const, 5, ""},
{"Below", Const, 5, ""},
{"Ceil", Const, 27, ""},
{"ErrNaN", Type, 5, ""},
{"Exact", Const, 5, ""},
{"Float", Type, 5, ""},
{"Floor", Const, 27, ""},
{"Int", Type, 0, ""},
{"Jacobi", Func, 5, "func(x *Int, y *Int) int"},
{"MaxBase", Const, 0, ""},
@@ -8133,12 +8379,14 @@ var PackageSymbols = map[string][]Symbol{
{"NewRat", Func, 0, "func(a int64, b int64) *Rat"},
{"ParseFloat", Func, 5, "func(s string, base int, prec uint, mode RoundingMode) (f *Float, b int, err error)"},
{"Rat", Type, 0, ""},
{"Round", Const, 27, ""},
{"RoundingMode", Type, 5, ""},
{"ToNearestAway", Const, 5, ""},
{"ToNearestEven", Const, 5, ""},
{"ToNegativeInf", Const, 5, ""},
{"ToPositiveInf", Const, 5, ""},
{"ToZero", Const, 5, ""},
{"Trunc", Const, 27, ""},
{"Word", Type, 0, ""},
},
"math/bits": {
@@ -8290,6 +8538,7 @@ var PackageSymbols = map[string][]Symbol{
{"(*Rand).Int64", Method, 22, ""},
{"(*Rand).Int64N", Method, 22, ""},
{"(*Rand).IntN", Method, 22, ""},
{"(*Rand).N", Method, 27, ""},
{"(*Rand).NormFloat64", Method, 22, ""},
{"(*Rand).Perm", Method, 22, ""},
{"(*Rand).Shuffle", Method, 22, ""},
@@ -8985,7 +9234,7 @@ var PackageSymbols = map[string][]Symbol{
{"NoBody", Var, 8, ""},
{"NotFound", Func, 0, "func(w ResponseWriter, r *Request)"},
{"NotFoundHandler", Func, 0, "func() Handler"},
{"ParseCookie", Func, 23, "func(line string) ([]*Cookie, error)"},
{"ParseCookie", Func, 23, "func(line string) (#rv1 []*Cookie, #rv2 error)"},
{"ParseHTTPVersion", Func, 0, "func(vers string) (major int, minor int, ok bool)"},
{"ParseSetCookie", Func, 23, "func(line string) (*Cookie, error)"},
{"ParseTime", Func, 1, "func(text string) (t time.Time, err error)"},
@@ -9061,6 +9310,7 @@ var PackageSymbols = map[string][]Symbol{
{"Server.BaseContext", Field, 13, ""},
{"Server.ConnContext", Field, 13, ""},
{"Server.ConnState", Field, 3, ""},
{"Server.DisableClientPriority", Field, 27, ""},
{"Server.DisableGeneralOptionsHandler", Field, 20, ""},
{"Server.ErrorLog", Field, 3, ""},
{"Server.HTTP2", Field, 24, ""},
@@ -9226,6 +9476,7 @@ var PackageSymbols = map[string][]Symbol{
{"NewRequestWithContext", Func, 23, "func(ctx context.Context, method string, target string, body io.Reader) *http.Request"},
{"NewServer", Func, 0, "func(handler http.Handler) *Server"},
{"NewTLSServer", Func, 0, "func(handler http.Handler) *Server"},
{"NewTestServer", Func, 27, "func(t testing.TB, handler http.Handler) *Server"},
{"NewUnstartedServer", Func, 0, "func(handler http.Handler) *Server"},
{"ResponseRecorder", Type, 0, ""},
{"ResponseRecorder.Body", Field, 0, ""},
@@ -9596,6 +9847,7 @@ var PackageSymbols = map[string][]Symbol{
{"(*Error).Timeout", Method, 6, ""},
{"(*Error).Unwrap", Method, 13, ""},
{"(*URL).AppendBinary", Method, 24, ""},
{"(*URL).Clone", Method, 27, ""},
{"(*URL).EscapedFragment", Method, 15, ""},
{"(*URL).EscapedPath", Method, 5, ""},
{"(*URL).Hostname", Method, 8, ""},
@@ -9616,6 +9868,7 @@ var PackageSymbols = map[string][]Symbol{
{"(EscapeError).Error", Method, 0, ""},
{"(InvalidHostError).Error", Method, 6, ""},
{"(Values).Add", Method, 0, ""},
{"(Values).Clone", Method, 27, ""},
{"(Values).Del", Method, 0, ""},
{"(Values).Encode", Method, 0, ""},
{"(Values).Get", Method, 0, ""},
@@ -10793,6 +11046,7 @@ var PackageSymbols = map[string][]Symbol{
{"ContainsRune", Func, 0, "func(s string, r rune) bool"},
{"Count", Func, 0, "func(s string, substr string) int"},
{"Cut", Func, 18, "func(s string, sep string) (before string, after string, found bool)"},
{"CutLast", Func, 27, "func(s string, sep string) (before string, after string, found bool)"},
{"CutPrefix", Func, 20, "func(s string, prefix string) (after string, found bool)"},
{"CutSuffix", Func, 20, "func(s string, suffix string) (before string, found bool)"},
{"EqualFold", Func, 0, "func(s string, t string) bool"},
@@ -17476,6 +17730,7 @@ var PackageSymbols = map[string][]Symbol{
{"TestHandler", Func, 21, "func(h slog.Handler, results func() []map[string]any) error"},
},
"testing/synctest": {
{"Sleep", Func, 27, "func(d time.Duration)"},
{"Test", Func, 25, "func(t *testing.T, f func(*testing.T))"},
{"Wait", Func, 25, "func()"},
},
@@ -17980,6 +18235,7 @@ var PackageSymbols = map[string][]Symbol{
{"Bassa_Vah", Var, 4, ""},
{"Batak", Var, 0, ""},
{"Bengali", Var, 0, ""},
{"Beria_Erfe", Var, 27, ""},
{"Bhaiksuki", Var, 7, ""},
{"Bidi_Control", Var, 0, ""},
{"Bopomofo", Var, 0, ""},
@@ -18029,6 +18285,7 @@ var PackageSymbols = map[string][]Symbol{
{"Extender", Var, 0, ""},
{"FoldCategory", Var, 0, ""},
{"FoldScript", Var, 0, ""},
{"Garay", Var, 27, ""},
{"Georgian", Var, 0, ""},
{"Glagolitic", Var, 0, ""},
{"Gothic", Var, 0, ""},
@@ -18038,6 +18295,7 @@ var PackageSymbols = map[string][]Symbol{
{"Gujarati", Var, 0, ""},
{"Gunjala_Gondi", Var, 13, ""},
{"Gurmukhi", Var, 0, ""},
{"Gurung_Khema", Var, 27, ""},
{"Han", Var, 0, ""},
{"Hangul", Var, 0, ""},
{"Hanifi_Rohingya", Var, 13, ""},
@@ -18049,6 +18307,9 @@ var PackageSymbols = map[string][]Symbol{
{"Hyphen", Var, 0, ""},
{"IDS_Binary_Operator", Var, 0, ""},
{"IDS_Trinary_Operator", Var, 0, ""},
{"IDS_Unary_Operator", Var, 27, ""},
{"ID_Compat_Math_Continue", Var, 27, ""},
{"ID_Compat_Math_Start", Var, 27, ""},
{"Ideographic", Var, 0, ""},
{"Imperial_Aramaic", Var, 0, ""},
{"In", Func, 2, "func(r rune, ranges ...*RangeTable) bool"},
@@ -18082,6 +18343,7 @@ var PackageSymbols = map[string][]Symbol{
{"Khmer", Var, 0, ""},
{"Khojki", Var, 4, ""},
{"Khudawadi", Var, 4, ""},
{"Kirat_Rai", Var, 27, ""},
{"L", Var, 0, ""},
{"LC", Var, 25, ""},
{"Lao", Var, 0, ""},
@@ -18125,6 +18387,7 @@ var PackageSymbols = map[string][]Symbol{
{"Miao", Var, 1, ""},
{"Mn", Var, 0, ""},
{"Modi", Var, 4, ""},
{"Modifier_Combining_Mark", Var, 27, ""},
{"Mongolian", Var, 0, ""},
{"Mro", Var, 4, ""},
{"Multani", Var, 5, ""},
@@ -18145,6 +18408,7 @@ var PackageSymbols = map[string][]Symbol{
{"Nyiakeng_Puachue_Hmong", Var, 14, ""},
{"Ogham", Var, 0, ""},
{"Ol_Chiki", Var, 0, ""},
{"Ol_Onal", Var, 27, ""},
{"Old_Hungarian", Var, 5, ""},
{"Old_Italic", Var, 0, ""},
{"Old_North_Arabian", Var, 4, ""},
@@ -18214,6 +18478,7 @@ var PackageSymbols = map[string][]Symbol{
{"Sharada", Var, 1, ""},
{"Shavian", Var, 0, ""},
{"Siddham", Var, 4, ""},
{"Sidetic", Var, 27, ""},
{"SignWriting", Var, 5, ""},
{"SimpleFold", Func, 0, "func(r rune) rune"},
{"Sinhala", Var, 0, ""},
@@ -18227,6 +18492,7 @@ var PackageSymbols = map[string][]Symbol{
{"Space", Var, 0, ""},
{"SpecialCase", Type, 0, ""},
{"Sundanese", Var, 0, ""},
{"Sunuwar", Var, 27, ""},
{"Syloti_Nagri", Var, 0, ""},
{"Symbol", Var, 0, ""},
{"Syriac", Var, 0, ""},
@@ -18235,6 +18501,7 @@ var PackageSymbols = map[string][]Symbol{
{"Tai_Le", Var, 0, ""},
{"Tai_Tham", Var, 0, ""},
{"Tai_Viet", Var, 0, ""},
{"Tai_Yo", Var, 27, ""},
{"Takri", Var, 1, ""},
{"Tamil", Var, 0, ""},
{"Tangsa", Var, 21, ""},
@@ -18252,7 +18519,10 @@ var PackageSymbols = map[string][]Symbol{
{"ToLower", Func, 0, "func(r rune) rune"},
{"ToTitle", Func, 0, "func(r rune) rune"},
{"ToUpper", Func, 0, "func(r rune) rune"},
{"Todhri", Var, 27, ""},
{"Tolong_Siki", Var, 27, ""},
{"Toto", Var, 21, ""},
{"Tulu_Tigalari", Var, 27, ""},
{"TurkishCase", Var, 0, ""},
{"Ugaritic", Var, 0, ""},
{"Unified_Ideograph", Var, 0, ""},
@@ -18320,6 +18590,21 @@ var PackageSymbols = map[string][]Symbol{
{"String", Func, 0, ""},
{"StringData", Func, 0, ""},
},
"uuid": {
{"(*UUID).UnmarshalText", Method, 27, ""},
{"(UUID).AppendText", Method, 27, ""},
{"(UUID).Compare", Method, 27, ""},
{"(UUID).MarshalText", Method, 27, ""},
{"(UUID).String", Method, 27, ""},
{"Max", Func, 27, "func() UUID"},
{"MustParse", Func, 27, "func(s string) UUID"},
{"New", Func, 27, "func() UUID"},
{"NewV4", Func, 27, "func() UUID"},
{"NewV7", Func, 27, "func() UUID"},
{"Nil", Func, 27, "func() UUID"},
{"Parse", Func, 27, "func(s string) (UUID, error)"},
{"UUID", Type, 27, ""},
},
"weak": {
{"(Pointer).Value", Method, 24, ""},
{"Make", Func, 24, "func[T any](ptr *T) Pointer[T]"},

View File

@@ -37,6 +37,10 @@ func ForEachElement(rtypes *typeutil.Map, msets *typeutil.MethodSetCache, T type
tmset := msets.MethodSet(T)
for method := range tmset.Methods() {
sig := method.Type().(*types.Signature)
if sig.TypeParams() != nil {
continue // skip type-parameterized methods
}
// It is tempting to call visit(sig, false)
// but, as noted in golang.org/cl/65450043,
// the Signature.Recv field is ignored by
@@ -123,10 +127,10 @@ func ForEachElement(rtypes *typeutil.Map, msets *typeutil.MethodSetCache, T type
case *types.TypeParam, *types.Union:
// forEachReachable must not be called on parameterized types.
panic(T)
panic(fmt.Sprintf("ForEachElement called on type containing %T", T))
default:
panic(T)
panic(fmt.Sprintf("ForEachElement called on unexpected type %T", T))
}
}
visit(T, false)

View File

@@ -22,6 +22,7 @@ import (
"go/ast"
"go/token"
"go/types"
"iter"
"reflect"
"golang.org/x/tools/go/ast/inspector"
@@ -242,3 +243,30 @@ func ObjectKind(obj types.Object) string {
}
return "unknown symbol"
}
// ImplicitFieldSelections returns the sequence of implicit embedded fields
// traversed by the given selection. It skips the final leaf field or method.
// The boolean component indicates whether the traversal traversed a pointer.
func ImplicitFieldSelections(seln types.Selection) iter.Seq2[*types.Var, bool] {
return func(yield func(*types.Var, bool) bool) {
var (
t = seln.Recv()
indices = seln.Index()
)
for _, idx := range indices[:len(indices)-1] {
ptr, isPtr := t.Underlying().(*types.Pointer)
if isPtr {
t = ptr.Elem()
}
structType, ok := t.Underlying().(*types.Struct)
if !ok {
break
}
field := structType.Field(idx)
if !yield(field, isPtr) {
break
}
t = field.Type()
}
}
}

View File

@@ -259,13 +259,13 @@ func TypeExpr(t types.Type, qual types.Qualifier) ast.Expr {
case *types.Signature:
var params []*ast.Field
for v := range t.Params().Variables() {
var names []*ast.Ident
if v.Name() != "" {
names = []*ast.Ident{ast.NewIdent(v.Name())}
}
params = append(params, &ast.Field{
Type: TypeExpr(v.Type(), qual),
Names: []*ast.Ident{
{
Name: v.Name(),
},
},
Type: TypeExpr(v.Type(), qual),
Names: names,
})
}
if t.Variadic() {
@@ -328,10 +328,10 @@ func TypeExpr(t types.Type, qual types.Qualifier) ast.Expr {
return expr
case *types.Struct:
return ast.NewIdent(t.String())
return ast.NewIdent(types.TypeString(t, qual))
case *types.Interface:
return ast.NewIdent(t.String())
return ast.NewIdent(types.TypeString(t, qual))
case *types.Union:
if t.Len() == 0 {

6
vendor/modules.txt vendored
View File

@@ -2461,7 +2461,7 @@ golang.org/x/image/vector
golang.org/x/image/vp8
golang.org/x/image/vp8l
golang.org/x/image/webp
# golang.org/x/mod v0.36.0
# golang.org/x/mod v0.37.0
## explicit; go 1.25.0
golang.org/x/mod/internal/lazyregexp
golang.org/x/mod/module
@@ -2514,7 +2514,7 @@ golang.org/x/sys/windows/svc/mgr
# golang.org/x/term v0.44.0
## explicit; go 1.25.0
golang.org/x/term
# golang.org/x/text v0.38.0
# golang.org/x/text v0.39.0
## explicit; go 1.25.0
golang.org/x/text/cases
golang.org/x/text/collate
@@ -2544,7 +2544,7 @@ golang.org/x/text/width
# golang.org/x/time v0.15.0
## explicit; go 1.25.0
golang.org/x/time/rate
# golang.org/x/tools v0.45.0
# golang.org/x/tools v0.47.0
## explicit; go 1.25.0
golang.org/x/tools/cover
golang.org/x/tools/go/ast/astutil