@@ -4,8 +4,6 @@ package astequal
44import (
55 "go/ast"
66 "go/token"
7-
8- "golang.org/x/exp/typeparams"
97)
108
119// Node reports whether two AST nodes are structurally (deep) equal.
@@ -109,8 +107,8 @@ func astExprEq(x, y ast.Expr) bool {
109107 y , ok := y .(* ast.IndexExpr )
110108 return ok && astIndexExprEq (x , y )
111109
112- case * typeparams .IndexListExpr :
113- y , ok := y .(* typeparams .IndexListExpr )
110+ case * ast .IndexListExpr :
111+ y , ok := y .(* ast .IndexListExpr )
114112 return ok && astIndexListExprEq (x , y )
115113
116114 case * ast.SliceExpr :
@@ -323,7 +321,7 @@ func astFuncTypeEq(x, y *ast.FuncType) bool {
323321 }
324322 return astFieldListEq (x .Params , y .Params ) &&
325323 astFieldListEq (x .Results , y .Results ) &&
326- astFieldListEq (typeparams . ForFuncType (x ), typeparams . ForFuncType (y ))
324+ astFieldListEq (forFuncType (x ), forFuncType (y ))
327325}
328326
329327func astBasicLitEq (x , y * ast.BasicLit ) bool {
@@ -378,7 +376,7 @@ func astIndexExprEq(x, y *ast.IndexExpr) bool {
378376 return astExprEq (x .X , y .X ) && astExprEq (x .Index , y .Index )
379377}
380378
381- func astIndexListExprEq (x , y * typeparams .IndexListExpr ) bool {
379+ func astIndexListExprEq (x , y * ast .IndexListExpr ) bool {
382380 if x == nil || y == nil {
383381 return x == y
384382 }
@@ -690,7 +688,7 @@ func astTypeSpecEq(x, y *ast.TypeSpec) bool {
690688 return x == y
691689 }
692690 return astIdentEq (x .Name , y .Name ) && astExprEq (x .Type , y .Type ) &&
693- astFieldListEq (typeparams . ForTypeSpec (x ), typeparams . ForTypeSpec (y ))
691+ astFieldListEq (forTypeSpec (x ), forTypeSpec (y ))
694692}
695693
696694func astValueSpecEq (x , y * ast.ValueSpec ) bool {
@@ -755,3 +753,19 @@ func astExprSliceEq(xs, ys []ast.Expr) bool {
755753 }
756754 return true
757755}
756+
757+ // forTypeSpec returns n.TypeParams.
758+ func forTypeSpec (n * ast.TypeSpec ) * ast.FieldList {
759+ if n == nil {
760+ return nil
761+ }
762+ return n .TypeParams
763+ }
764+
765+ // forFuncType returns n.TypeParams.
766+ func forFuncType (n * ast.FuncType ) * ast.FieldList {
767+ if n == nil {
768+ return nil
769+ }
770+ return n .TypeParams
771+ }
0 commit comments