1
0
mirror of https://github.com/golang/go synced 2024-11-17 08:04:46 -07:00

reflect: unexport BUCKETSIZE, MAXKEYSIZE, MAXVALSIZE

But keep their case for ease of searching.

They were added recently. We don't want them part of go1.2's API.

R=golang-dev, r
CC=golang-dev
https://golang.org/cl/13569044
This commit is contained in:
Brad Fitzpatrick 2013-09-06 12:00:42 -07:00
parent c327e82ddb
commit da50221e8e

View File

@ -1539,40 +1539,40 @@ func MapOf(key, elem Type) Type {
// Currently, that's just size and the GC program. We also fill in string // Currently, that's just size and the GC program. We also fill in string
// for possible debugging use. // for possible debugging use.
const ( const (
BUCKETSIZE = 8 _BUCKETSIZE = 8
MAXKEYSIZE = 128 _MAXKEYSIZE = 128
MAXVALSIZE = 128 _MAXVALSIZE = 128
) )
func bucketOf(ktyp, etyp *rtype) *rtype { func bucketOf(ktyp, etyp *rtype) *rtype {
if ktyp.size > MAXKEYSIZE { if ktyp.size > _MAXKEYSIZE {
ktyp = PtrTo(ktyp).(*rtype) ktyp = PtrTo(ktyp).(*rtype)
} }
if etyp.size > MAXVALSIZE { if etyp.size > _MAXVALSIZE {
etyp = PtrTo(etyp).(*rtype) etyp = PtrTo(etyp).(*rtype)
} }
ptrsize := unsafe.Sizeof(uintptr(0)) ptrsize := unsafe.Sizeof(uintptr(0))
gc := make([]uintptr, 1) // first entry is size, filled in at the end gc := make([]uintptr, 1) // first entry is size, filled in at the end
offset := BUCKETSIZE * unsafe.Sizeof(uint8(0)) // topbits offset := _BUCKETSIZE * unsafe.Sizeof(uint8(0)) // topbits
gc = append(gc, _GC_PTR, offset, 0 /*self pointer set below*/) // overflow gc = append(gc, _GC_PTR, offset, 0 /*self pointer set below*/) // overflow
offset += ptrsize offset += ptrsize
// keys // keys
if ktyp.kind&kindNoPointers == 0 { if ktyp.kind&kindNoPointers == 0 {
gc = append(gc, _GC_ARRAY_START, offset, BUCKETSIZE, ktyp.size) gc = append(gc, _GC_ARRAY_START, offset, _BUCKETSIZE, ktyp.size)
gc = appendGCProgram(gc, ktyp) gc = appendGCProgram(gc, ktyp)
gc = append(gc, _GC_ARRAY_NEXT) gc = append(gc, _GC_ARRAY_NEXT)
} }
offset += BUCKETSIZE * ktyp.size offset += _BUCKETSIZE * ktyp.size
// values // values
if etyp.kind&kindNoPointers == 0 { if etyp.kind&kindNoPointers == 0 {
gc = append(gc, _GC_ARRAY_START, offset, BUCKETSIZE, etyp.size) gc = append(gc, _GC_ARRAY_START, offset, _BUCKETSIZE, etyp.size)
gc = appendGCProgram(gc, etyp) gc = appendGCProgram(gc, etyp)
gc = append(gc, _GC_ARRAY_NEXT) gc = append(gc, _GC_ARRAY_NEXT)
} }
offset += BUCKETSIZE * etyp.size offset += _BUCKETSIZE * etyp.size
gc = append(gc, _GC_END) gc = append(gc, _GC_END)
gc[0] = offset gc[0] = offset