aboutsummaryrefslogtreecommitdiffstats
path: root/vendor/github.com/go-toolsmith
diff options
context:
space:
mode:
authordependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>2024-03-04 17:40:11 +0000
committerTaras Madan <tarasmadan@google.com>2024-03-04 18:34:55 +0000
commit5fc5366972c874b919f93165bb4ed4e2bcb7c350 (patch)
tree287c3361a0dee0c72af80d9a1a66714a06e98a62 /vendor/github.com/go-toolsmith
parent1be5ce38a9059c356eb193a8c34d60d61c9fc31f (diff)
mod: bump github.com/golangci/golangci-lint from 1.55.2 to 1.56.2
Bumps [github.com/golangci/golangci-lint](https://github.com/golangci/golangci-lint) from 1.55.2 to 1.56.2. - [Release notes](https://github.com/golangci/golangci-lint/releases) - [Changelog](https://github.com/golangci/golangci-lint/blob/master/CHANGELOG.md) - [Commits](https://github.com/golangci/golangci-lint/compare/v1.55.2...v1.56.2) --- updated-dependencies: - dependency-name: github.com/golangci/golangci-lint dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com>
Diffstat (limited to 'vendor/github.com/go-toolsmith')
-rw-r--r--vendor/github.com/go-toolsmith/astequal/astequal.go28
-rw-r--r--vendor/github.com/go-toolsmith/astequal/diff.go23
2 files changed, 44 insertions, 7 deletions
diff --git a/vendor/github.com/go-toolsmith/astequal/astequal.go b/vendor/github.com/go-toolsmith/astequal/astequal.go
index 3d8db4af9..d1a04e942 100644
--- a/vendor/github.com/go-toolsmith/astequal/astequal.go
+++ b/vendor/github.com/go-toolsmith/astequal/astequal.go
@@ -4,8 +4,6 @@ package astequal
import (
"go/ast"
"go/token"
-
- "golang.org/x/exp/typeparams"
)
// Node reports whether two AST nodes are structurally (deep) equal.
@@ -109,8 +107,8 @@ func astExprEq(x, y ast.Expr) bool {
y, ok := y.(*ast.IndexExpr)
return ok && astIndexExprEq(x, y)
- case *typeparams.IndexListExpr:
- y, ok := y.(*typeparams.IndexListExpr)
+ case *ast.IndexListExpr:
+ y, ok := y.(*ast.IndexListExpr)
return ok && astIndexListExprEq(x, y)
case *ast.SliceExpr:
@@ -323,7 +321,7 @@ func astFuncTypeEq(x, y *ast.FuncType) bool {
}
return astFieldListEq(x.Params, y.Params) &&
astFieldListEq(x.Results, y.Results) &&
- astFieldListEq(typeparams.ForFuncType(x), typeparams.ForFuncType(y))
+ astFieldListEq(forFuncType(x), forFuncType(y))
}
func astBasicLitEq(x, y *ast.BasicLit) bool {
@@ -378,7 +376,7 @@ func astIndexExprEq(x, y *ast.IndexExpr) bool {
return astExprEq(x.X, y.X) && astExprEq(x.Index, y.Index)
}
-func astIndexListExprEq(x, y *typeparams.IndexListExpr) bool {
+func astIndexListExprEq(x, y *ast.IndexListExpr) bool {
if x == nil || y == nil {
return x == y
}
@@ -690,7 +688,7 @@ func astTypeSpecEq(x, y *ast.TypeSpec) bool {
return x == y
}
return astIdentEq(x.Name, y.Name) && astExprEq(x.Type, y.Type) &&
- astFieldListEq(typeparams.ForTypeSpec(x), typeparams.ForTypeSpec(y))
+ astFieldListEq(forTypeSpec(x), forTypeSpec(y))
}
func astValueSpecEq(x, y *ast.ValueSpec) bool {
@@ -755,3 +753,19 @@ func astExprSliceEq(xs, ys []ast.Expr) bool {
}
return true
}
+
+// forTypeSpec returns n.TypeParams.
+func forTypeSpec(n *ast.TypeSpec) *ast.FieldList {
+ if n == nil {
+ return nil
+ }
+ return n.TypeParams
+}
+
+// forFuncType returns n.TypeParams.
+func forFuncType(n *ast.FuncType) *ast.FieldList {
+ if n == nil {
+ return nil
+ }
+ return n.TypeParams
+}
diff --git a/vendor/github.com/go-toolsmith/astequal/diff.go b/vendor/github.com/go-toolsmith/astequal/diff.go
new file mode 100644
index 000000000..cd69b4525
--- /dev/null
+++ b/vendor/github.com/go-toolsmith/astequal/diff.go
@@ -0,0 +1,23 @@
+package astequal
+
+import (
+ "bytes"
+ "go/ast"
+ "go/format"
+ "go/token"
+
+ "github.com/google/go-cmp/cmp"
+)
+
+func Diff(x, y ast.Node) string {
+ var buf bytes.Buffer
+ format.Node(&buf, token.NewFileSet(), x)
+ s1 := buf.String()
+
+ buf.Reset()
+ format.Node(&buf, token.NewFileSet(), y)
+ s2 := buf.String()
+
+ // TODO(cristaloleg): replace with a more lightweight diff impl.
+ return cmp.Diff(s1, s2)
+}