func go/types.Identical
58 uses
go/types (current package)
api_predicates.go#L88: func Identical(x, y Type) bool {
builtins.go#L105: if s, _ := u.(*Slice); s != nil && Identical(s.elem, universeByte) {
builtins.go#L319: if !Identical(x.typ, y.typ) {
builtins.go#L375: if s, _ := u.(*Slice); s != nil && Identical(s.elem, universeByte) {
builtins.go#L404: if !Identical(dstE, srcE) {
builtins.go#L428: if key != nil && !Identical(map_.key, key) {
builtins.go#L603: if !Identical(x.typ, a.typ) {
builtins.go#L982: } else if !Identical(E, s.elem) {
context.go#L118: if inst == nil || Identical(inst, e.instance) {
conversions.go#L205: if Identical(s.Elem(), a.Elem()) {
conversions.go#L218: if Identical(s.Elem(), a.Elem()) {
expr.go#L809: if !Identical(x.typ, y.typ) {
expr.go#L1131: if base != nil && !Identical(p.base, base) {
index.go#L149: if !Identical(key, k) {
index.go#L153: if !Identical(elem, e) {
index.go#L241: if !Identical(cu, u) {
instantiate.go#L288: if !check.hasAllMethods(V, T, true, Identical, cause) /* !Implements(V, T) */ {
instantiate.go#L350: if alt == nil && !t.tilde && Identical(t.typ, under(t.typ)) {
instantiate.go#L396: if Identical(T, typ) {
literals.go#L299: if Identical(vtyp, x.typ) {
lookup.go#L313: if Identical(t, typ) {
lookup.go#L330: if t != nil && Identical(inst, t) {
lookup.go#L335: if Identical(inst, t) {
lookup.go#L366: return (*Checker)(nil).missingMethod(V, T, static, Identical, nil)
lookup.go#L597: return check.hasAllMethods(T, V, false, Identical, cause)
object.go#L652: assert(Identical(typ, &emptyInterface))
operand.go#L322: if Identical(V, T) {
operand.go#L356: if Identical(Vu, Tu) && (!hasName(V) || !hasName(T)) && Vp == nil && Tp == nil {
operand.go#L392: if Tc, ok := Tu.(*Chan); ok && Identical(Vc.elem, Tc.elem) {
predicates.go#L483: if !Identical(xarg, yargs[i]) {
predicates.go#L513: if !slices.EqualFunc(xargs, yargs, Identical) {
predicates.go#L517: return Identical(xorig, yorig)
range.go#L266: case cb.Results().Len() != 1 || !Identical(cb.Results().At(0).Type(), universeBool):
signature.go#L74: } else if !Identical(S, s) {
stmt.go#L263: if Identical(v.typ, vt.typ) {
stmt.go#L325: if T == nil && t == nil || T != nil && t != nil && Identical(T, t) {
typeset.go#L127: assert(Identical(u, under(u)))
typeset.go#L243: if pos.IsValid() && !check.allowVersion(go1_14) || !Identical(m.typ, other.Type()) {
typeset.go#L394: if t.tilde && !Identical(t.typ, u) {
typeterm.go#L45: return x.tilde == y.tilde && Identical(x.typ, y.typ)
typeterm.go#L123: return Identical(x.typ, u)
typeterm.go#L167: return !Identical(ux, uy)
under.go#L113: if !Identical(chu.elem, ch.elem) {
under.go#L131: if !Identical(cu, u) {
unify.go#L387: return Identical(x, y)
union.go#L105: if !Identical(u, t.typ) {
validtype.go#L107: if Identical(e, t) {
validtype.go#L140: if Identical(p, t) {
golang.org/x/exp/apidiff
compatibility.go#L216: if types.Identical(s, t) {
correspondence.go#L166: return types.Identical(c.(types.Type), new)
golang.org/x/tools/go/types/typeutil
map.go#L56: if e.key != nil && types.Identical(key, e.key) {
map.go#L73: if e.key != nil && types.Identical(key, e.key) {
map.go#L91: } else if types.Identical(key, e.key) {
golang.org/x/tools/internal/typeparams
coretype.go#L31: if !types.Identical(U, terms[identical].Type().Underlying()) {
coretype.go#L53: if !types.Identical(ch.Elem(), curr.Elem()) {
typeterm.go#L49: return x.tilde == y.tilde && types.Identical(x.typ, y.typ)
typeterm.go#L127: return types.Identical(x.typ, u)
typeterm.go#L171: return !types.Identical(ux, uy)