mirror of
https://github.com/golang/go
synced 2024-11-13 18:00:30 -07:00
reflect: update CanAddr, CanSet documentation
CanAddr was wrong, out of date; CanSet was incomplete. R=r CC=golang-dev https://golang.org/cl/4442066
This commit is contained in:
parent
7412583e89
commit
64787e3123
@ -395,8 +395,7 @@ func (v Value) Bool() bool {
|
|||||||
// CanAddr returns true if the value's address can be obtained with Addr.
|
// CanAddr returns true if the value's address can be obtained with Addr.
|
||||||
// Such values are called addressable. A value is addressable if it is
|
// Such values are called addressable. A value is addressable if it is
|
||||||
// an element of a slice, an element of an addressable array,
|
// an element of a slice, an element of an addressable array,
|
||||||
// a field of an addressable struct, the result of dereferencing a pointer,
|
// a field of an addressable struct, or the result of dereferencing a pointer.
|
||||||
// or the result of a call to NewValue, MakeChan, MakeMap, or Zero.
|
|
||||||
// If CanAddr returns false, calling Addr will panic.
|
// If CanAddr returns false, calling Addr will panic.
|
||||||
func (v Value) CanAddr() bool {
|
func (v Value) CanAddr() bool {
|
||||||
iv := v.internal()
|
iv := v.internal()
|
||||||
@ -404,8 +403,8 @@ func (v Value) CanAddr() bool {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// CanSet returns true if the value of v can be changed.
|
// CanSet returns true if the value of v can be changed.
|
||||||
// Values obtained by the use of unexported struct fields
|
// A Value can be changed only if it is addressable and was not
|
||||||
// can be read but not set.
|
// obtained by the use of unexported struct fields.
|
||||||
// If CanSet returns false, calling Set or any type-specific
|
// If CanSet returns false, calling Set or any type-specific
|
||||||
// setter (e.g., SetBool, SetInt64) will panic.
|
// setter (e.g., SetBool, SetInt64) will panic.
|
||||||
func (v Value) CanSet() bool {
|
func (v Value) CanSet() bool {
|
||||||
|
Loading…
Reference in New Issue
Block a user