reflect: document equality guarantee for Type

The only previous mention of this property was in the String() method.
Since this is the only way to uniquely identify a type and we can't
change this property without breaking the Go 1 guarantee, it seems
better to document this property than hiding it on a method.

Fixes #16348

Change-Id: I3d25f7d6e6007e3c15c2e13010869888d0181fc2
Reviewed-on: https://go-review.googlesource.com/27170
Reviewed-by: Ian Lance Taylor <iant@golang.org>
This commit is contained in:
Ross Light 2016-08-16 11:10:36 -07:00 committed by Ian Lance Taylor
parent 8050782cba
commit ec75230b55

View file

@ -29,6 +29,12 @@ import (
// Use the Kind method to find out the kind of type before
// calling kind-specific methods. Calling a method
// inappropriate to the kind of type causes a run-time panic.
//
// You can use == with reflect.Type values to check whether two types
// are the same. If T1 and T2 are Go types, and v1 and v2 are values of
// those types respectively, then reflect.TypeOf(v1) == reflect.TypeOf(v2)
// if and only if both (interface{})(v2).(T1) and (interface{})(v1).(T2)
// succeed.
type Type interface {
// Methods applicable to all types.