func go/types.Unalias
94 uses
go/types (current package)
alias.go#L86: func Unalias(t Type) Type {
alias.go#L110: n, _ := Unalias(t).(*Named)
builtins.go#L1021: switch t := Unalias(t).(type) {
builtins.go#L1086: if tp, _ := Unalias(x.typ()).(*TypeParam); tp != nil {
builtins.go#L1152: if p, ok := Unalias(typ).(*Pointer); ok {
conversions.go#L146: V := Unalias(x.typ())
conversions.go#L147: T = Unalias(T)
hash.go#L55: hr.hash(h, Unalias(t))
hash.go#L238: hr.shallowHash(h, Unalias(t))
infer.go#L576: return w.isParameterized(Unalias(t))
infer.go#L709: typ = Unalias(typ)
lookup.go#L630: if p, _ := Unalias(typ).(*Pointer); p != nil {
mono.go#L214: switch typ := Unalias(typ).(type) {
operand.go#L210: tpar, _ := Unalias(x.typ()).(*TypeParam)
operand.go#L334: V := Unalias(x.typ())
operand.go#L335: T = Unalias(T)
predicates.go#L18: func isValid(t Type) bool { return Unalias(t) != Typ[Invalid] }
predicates.go#L58: if tpar, _ := Unalias(t).(*TypeParam); tpar != nil {
predicates.go#L68: switch Unalias(t).(type) {
predicates.go#L79: switch Unalias(t).(type) {
predicates.go#L124: _, ok := Unalias(t).(*TypeParam)
predicates.go#L133: if tpar, _ := Unalias(t).(*TypeParam); tpar != nil && tpar.bound != nil {
predicates.go#L253: x = Unalias(x)
predicates.go#L254: y = Unalias(y)
signature.go#L476: atyp := Unalias(rtyp)
typeset.go#L121: u := Unalias(t.typ)
typestring.go#L342: typ := Unalias(t.obj.typ)
under.go#L23: if p, _ := Unalias(t).(*TypeParam); p != nil {
unify.go#L216: if x, _ := Unalias(x).(*TypeParam); x != nil {
unify.go#L277: if _, ok := Unalias(x).(*TypeParam); !ok {
unify.go#L300: if x == y || Unalias(x) == Unalias(y) {
unify.go#L352: if x == y || Unalias(x) == Unalias(y) {
unify.go#L454: assert(x != y && Unalias(x) != Unalias(y))
unify.go#L586: xorig, x := x, Unalias(x)
unify.go#L587: yorig, y := y, Unalias(y)
validtype.go#L31: typ = Unalias(typ)
go.pact.im/x/plumb/internal/discover
discover.go#L332: n, ok := types.Unalias(t).(*types.Named)
discover.go#L628: under := types.Unalias(tn.Type()).Underlying()
go.pact.im/x/plumb/internal/gotypes
cmp.go#L36: a = types.Unalias(a)
cmp.go#L37: b = types.Unalias(b)
gotypes.go#L100: ptr, ok := types.Unalias(t).(*types.Pointer)
gotypes.go#L116: switch types.Unalias(t).(type) {
gotypes.go#L168: sig, ok := types.Unalias(t).(*types.Signature)
gotypes.go#L174: sig, ok := types.Unalias(t).(*types.Signature)
subst.go#L36: t = types.Unalias(t)
unify.go#L11: pattern = types.Unalias(pattern)
unify.go#L12: concrete = types.Unalias(concrete)
unify.go#L135: tp, ok := types.Unalias(t).(*types.TypeParam)
unify.go#L144: p, ok := types.Unalias(t).(*types.Pointer)
unify.go#L155: t = types.Unalias(t)
walk.go#L122: t = types.Unalias(t)
go.pact.im/x/plumb/internal/solve
solve.go#L877: if _, ok := types.Unalias(want).(*types.Pointer); ok {
golang.org/x/exp/apidiff
apidiff.go#L309: old = types.Unalias(old)
apidiff.go#L310: new = types.Unalias(new)
compatibility.go#L363: switch t := types.Unalias(receiverType(method)).(type) {
compatibility.go#L365: return types.Unalias(t.Elem()).(*types.Named)
compatibility.go#L374: _, ok := types.Unalias(receiverType(method)).(*types.Pointer)
correspondence.go#L30: old = types.Unalias(old)
correspondence.go#L31: new = types.Unalias(new)
correspondence.go#L176: target := types.Unalias(ntn.Type())
golang.org/x/tools/go/types/objectpath
objectpath.go#L293: if _, ok := types.Unalias(obj.Type()).(*types.TypeParam); !ok {
objectpath.go#L436: } else if T, ok := types.Unalias(tname.Type()).(*types.Named); ok {
objectpath.go#L696: if ptr, ok := types.Unalias(t).(*types.Pointer); ok {
objectpath.go#L699: named, ok := types.Unalias(t).(*types.Named)
objectpath.go#L817: t = types.Unalias(t)
golang.org/x/tools/go/types/typeutil
map.go#L228: return h.hash(types.Unalias(t))
map.go#L406: return h.shallowHash(types.Unalias(t))
methodsetcache.go#L35: switch T := types.Unalias(T).(type) {
methodsetcache.go#L40: if N, ok := types.Unalias(T.Elem()).(*types.Named); ok {
ui.go#L29: ptr, ok := types.Unalias(T).(*types.Pointer)
golang.org/x/tools/internal/gcimporter
iexport.go#L718: if tparam, ok := types.Unalias(t).(*types.TypeParam); ok {
iexport.go#L724: if iface, _ := types.Unalias(constraint).(*types.Interface); iface != nil {
iexport.go#L1097: if named, _ := types.Unalias(ft).(*types.Named); named != nil {
iimport.go#L507: iface, _ := types.Unalias(rhs).(*types.Interface)
iimport.go#L595: if ptr, ok := types.Unalias(t).(*types.Pointer); ok {
iimport.go#L598: targs := types.Unalias(t).(*types.Named).TypeArgs()
iimport.go#L603: rparams[i] = types.Unalias(targs.At(i)).(*types.TypeParam)
iimport.go#L632: iface, _ := types.Unalias(constraint).(*types.Interface)
iimport.go#L841: _, ok := types.Unalias(t).(*types.Interface)
iimport.go#L1040: xs[i] = types.Unalias(r.typ()).(*types.TypeParam)
ureader.go#L585: if iface, ok := types.Unalias(underlying).(*types.Interface); ok && iface.NumExplicitMethods() != 0 {
golang.org/x/tools/internal/typeparams
common.go#L66: _, ok := types.Unalias(t).(*types.TypeParam)
coretype.go#L116: typ := types.Unalias(T)
free.go#L51: return w.Has(types.Unalias(t))
golang.org/x/tools/internal/typesinternal
element.go#L71: visit(types.Unalias(T), access) // emulates the pre-Alias behavior
isnamed.go#L19: if named, ok := types.Unalias(t).(*types.Named); ok {
recv.go#L31: if ptr, ok := types.Unalias(t).(*types.Pointer); ok {
recv.go#L35: named, _ = types.Unalias(t).(*types.Named)
recv.go#L53: if ptr, ok := types.Unalias(t).(*types.Pointer); ok {
zerovalue.go#L81: return ZeroString(types.Unalias(t), qual)
zerovalue.go#L173: return ZeroExpr(types.Unalias(t), qual)