mirror of
				https://github.com/mgechev/revive.git
				synced 2025-10-30 23:37:49 +02:00 
			
		
		
		
	This reverts commit 519ffbdd7a.
			
			
This commit is contained in:
		| @@ -1,8 +1,9 @@ | |||||||
| package rule | package rule | ||||||
|  |  | ||||||
| import ( | import ( | ||||||
| 	"github.com/mgechev/revive/lint" |  | ||||||
| 	"go/ast" | 	"go/ast" | ||||||
|  |  | ||||||
|  | 	"github.com/mgechev/revive/lint" | ||||||
| ) | ) | ||||||
|  |  | ||||||
| // UseAnyRule lints given else constructs. | // UseAnyRule lints given else constructs. | ||||||
| @@ -13,7 +14,6 @@ func (*UseAnyRule) Apply(file *lint.File, _ lint.Arguments) []lint.Failure { | |||||||
| 	var failures []lint.Failure | 	var failures []lint.Failure | ||||||
|  |  | ||||||
| 	walker := lintUseAny{ | 	walker := lintUseAny{ | ||||||
| 		commentPositions: getCommentsPositions(file.AST.Comments), |  | ||||||
| 		onFailure: func(failure lint.Failure) { | 		onFailure: func(failure lint.Failure) { | ||||||
| 			failures = append(failures, failure) | 			failures = append(failures, failure) | ||||||
| 		}, | 		}, | ||||||
| @@ -30,8 +30,7 @@ func (*UseAnyRule) Name() string { | |||||||
| } | } | ||||||
|  |  | ||||||
| type lintUseAny struct { | type lintUseAny struct { | ||||||
| 	commentPositions []int | 	onFailure func(lint.Failure) | ||||||
| 	onFailure        func(lint.Failure) |  | ||||||
| } | } | ||||||
|  |  | ||||||
| func (w lintUseAny) Visit(n ast.Node) ast.Visitor { | func (w lintUseAny) Visit(n ast.Node) ast.Visitor { | ||||||
| @@ -41,13 +40,7 @@ func (w lintUseAny) Visit(n ast.Node) ast.Visitor { | |||||||
| 	} | 	} | ||||||
|  |  | ||||||
| 	if len(it.Methods.List) != 0 { | 	if len(it.Methods.List) != 0 { | ||||||
| 		return w // it is not an empty interface | 		return w // it is not and empty interface | ||||||
| 	} |  | ||||||
|  |  | ||||||
| 	for _, pos := range w.commentPositions { |  | ||||||
| 		if pos > int(it.Pos()) && pos < int(it.End()) { |  | ||||||
| 			return w // it is a comment inside the interface |  | ||||||
| 		} |  | ||||||
| 	} | 	} | ||||||
|  |  | ||||||
| 	w.onFailure(lint.Failure{ | 	w.onFailure(lint.Failure{ | ||||||
| @@ -59,14 +52,3 @@ func (w lintUseAny) Visit(n ast.Node) ast.Visitor { | |||||||
|  |  | ||||||
| 	return w | 	return w | ||||||
| } | } | ||||||
|  |  | ||||||
| func getCommentsPositions(commentGroups []*ast.CommentGroup) []int { |  | ||||||
| 	result := []int{} |  | ||||||
| 	for _, commentGroup := range commentGroups { |  | ||||||
| 		for _, comment := range commentGroup.List { |  | ||||||
| 			result = append(result, int(comment.Pos())) |  | ||||||
| 		} |  | ||||||
| 	} |  | ||||||
|  |  | ||||||
| 	return result |  | ||||||
| } |  | ||||||
|   | |||||||
							
								
								
									
										4
									
								
								testdata/use-any.go
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										4
									
								
								testdata/use-any.go
									
									
									
									
										vendored
									
									
								
							| @@ -17,10 +17,6 @@ func any2(a int) interface{} {} // MATCH /since GO 1.18 'interface{}' can be rep | |||||||
|  |  | ||||||
| var ni interface{ Close() } | var ni interface{ Close() } | ||||||
|  |  | ||||||
| var ni interface { |  | ||||||
| 	// Close() |  | ||||||
| } |  | ||||||
|  |  | ||||||
| type nt interface{ Close() } | type nt interface{ Close() } | ||||||
| type na = interface{ Close() } | type na = interface{ Close() } | ||||||
|  |  | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user