mirror of
https://github.com/golang/go
synced 2024-11-15 11:30:36 -07:00
[release-branch.go1] reflect: reflect.Zero results are neither addressable nor settable
««« backport 21130d62eeb0 reflect: reflect.Zero results are neither addressable nor settable This could be deduced from "The Laws of Reflection" but it seems worthwhile highlighting it. R=r CC=golang-dev https://golang.org/cl/6350073 »»»
This commit is contained in:
parent
ecd62d606a
commit
40b5d5481a
@ -1713,10 +1713,11 @@ func ValueOf(i interface{}) Value {
|
|||||||
return Value{typ, unsafe.Pointer(eface.word), fl}
|
return Value{typ, unsafe.Pointer(eface.word), fl}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Zero returns a Value representing a zero value for the specified type.
|
// Zero returns a Value representing the zero value for the specified type.
|
||||||
// The result is different from the zero value of the Value struct,
|
// The result is different from the zero value of the Value struct,
|
||||||
// which represents no value at all.
|
// which represents no value at all.
|
||||||
// For example, Zero(TypeOf(42)) returns a Value with Kind Int and value 0.
|
// For example, Zero(TypeOf(42)) returns a Value with Kind Int and value 0.
|
||||||
|
// The returned value is neither addressable nor settable.
|
||||||
func Zero(typ Type) Value {
|
func Zero(typ Type) Value {
|
||||||
if typ == nil {
|
if typ == nil {
|
||||||
panic("reflect: Zero(nil)")
|
panic("reflect: Zero(nil)")
|
||||||
|
Loading…
Reference in New Issue
Block a user