From 5ceec42dc0db9342bc4f37503844b46cf2689c65 Mon Sep 17 00:00:00 2001 From: Robert Griesemer Date: Thu, 22 Dec 2016 14:42:05 -0800 Subject: [PATCH] [dev.typealias] go/types: export TypeName.IsAlias so clients can use it For #18130. Change-Id: I634eaaeaa11e92fc31219d70419fdb4a7aa6e0b4 Reviewed-on: https://go-review.googlesource.com/35099 Run-TryBot: Robert Griesemer Reviewed-by: Alan Donovan TryBot-Result: Gobot Gobot --- src/go/types/object.go | 6 +++--- src/go/types/object_test.go | 4 ++-- src/go/types/predicates.go | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/go/types/object.go b/src/go/types/object.go index 9a1740825f..f4f628f876 100644 --- a/src/go/types/object.go +++ b/src/go/types/object.go @@ -163,7 +163,7 @@ func NewTypeName(pos token.Pos, pkg *Package, name string, typ Type) *TypeName { return &TypeName{object{nil, pos, pkg, name, typ, 0, token.NoPos}} } -func (obj *TypeName) isAlias() bool { +func (obj *TypeName) IsAlias() bool { switch t := obj.typ.(type) { case nil: return false @@ -330,11 +330,11 @@ func writeObject(buf *bytes.Buffer, obj Object, qf Qualifier) { if tname != nil { // We have a type object: Don't print anything more for // basic types since there's no more information (names - // are the same; see also comment in TypeName.isAlias). + // are the same; see also comment in TypeName.IsAlias). if _, ok := typ.(*Basic); ok { return } - if tname.isAlias() { + if tname.IsAlias() { buf.WriteString(" =") } else { typ = typ.Underlying() diff --git a/src/go/types/object_test.go b/src/go/types/object_test.go index c9fc7b7258..70656ae022 100644 --- a/src/go/types/object_test.go +++ b/src/go/types/object_test.go @@ -8,8 +8,8 @@ import "testing" func TestIsAlias(t *testing.T) { check := func(obj *TypeName, want bool) { - if got := obj.isAlias(); got != want { - t.Errorf("%v: got isAlias = %v; want %v", obj, got, want) + if got := obj.IsAlias(); got != want { + t.Errorf("%v: got IsAlias = %v; want %v", obj, got, want) } } diff --git a/src/go/types/predicates.go b/src/go/types/predicates.go index 707fb9619d..c3b87dd9cd 100644 --- a/src/go/types/predicates.go +++ b/src/go/types/predicates.go @@ -139,7 +139,7 @@ func identical(x, y Type, cmpTags bool, p *ifacePair) bool { case *Basic: // Basic types are singletons except for the rune and byte // aliases, thus we cannot solely rely on the x == y check - // above. See also comment in TypeName.isAlias. + // above. See also comment in TypeName.IsAlias. if y, ok := y.(*Basic); ok { return x.kind == y.kind } -- 2.48.1