aboutsummaryrefslogtreecommitdiff
path: root/libgo/go/internal/reflectlite/value.go
diff options
context:
space:
mode:
Diffstat (limited to 'libgo/go/internal/reflectlite/value.go')
-rw-r--r--libgo/go/internal/reflectlite/value.go18
1 files changed, 3 insertions, 15 deletions
diff --git a/libgo/go/internal/reflectlite/value.go b/libgo/go/internal/reflectlite/value.go
index 9a14d18..b78efae 100644
--- a/libgo/go/internal/reflectlite/value.go
+++ b/libgo/go/internal/reflectlite/value.go
@@ -5,6 +5,7 @@
package reflectlite
import (
+ "internal/unsafeheader"
"runtime"
"unsafe"
)
@@ -336,10 +337,10 @@ func (v Value) Len() int {
return maplen(v.pointer())
case Slice:
// Slice is bigger than a word; assume flagIndir.
- return (*sliceHeader)(v.ptr).Len
+ return (*unsafeheader.Slice)(v.ptr).Len
case String:
// String is bigger than a word; assume flagIndir.
- return (*stringHeader)(v.ptr).Len
+ return (*unsafeheader.String)(v.ptr).Len
}
panic(&ValueError{"reflect.Value.Len", v.kind()})
}
@@ -380,19 +381,6 @@ func (v Value) Type() Type {
return v.typ
}
-// stringHeader is a safe version of StringHeader used within this package.
-type stringHeader struct {
- Data unsafe.Pointer
- Len int
-}
-
-// sliceHeader is a safe version of SliceHeader used within this package.
-type sliceHeader struct {
- Data unsafe.Pointer
- Len int
- Cap int
-}
-
/*
* constructors
*/