File tree Expand file tree Collapse file tree 3 files changed +32
-1
lines changed Expand file tree Collapse file tree 3 files changed +32
-1
lines changed Original file line number Diff line number Diff line change @@ -483,7 +483,11 @@ func (f *fumpter) applyPre(c *astutil.Cursor) {
483
483
f .removeLines (f .Line (node .Interface )+ 1 , f .Line (removeToPos ))
484
484
485
485
case len (f .commentsBetween (prev .End (), method .Pos ())) > 0 :
486
- // continue
486
+ // comments in between; leave newlines alone
487
+ case len (prev .Names ) != len (method .Names ):
488
+ // don't group type unions with methods
489
+ case len (prev .Names ) == 1 && token .IsExported (prev .Names [0 ].Name ) != token .IsExported (method .Names [0 ].Name ):
490
+ // don't group exported and unexported methods together
487
491
default :
488
492
f .removeLinesBetween (prev .End (), method .Pos ())
489
493
}
Original file line number Diff line number Diff line change @@ -15,6 +15,11 @@ type i1 interface {
15
15
16
16
c(x int) int
17
17
18
+ D()
19
+
20
+ E()
21
+
22
+ f()
18
23
}
19
24
20
25
type i2 interface {
@@ -103,6 +108,11 @@ type i1 interface {
103
108
a(x int) int
104
109
b(x int) int
105
110
c(x int) int
111
+
112
+ D()
113
+ E()
114
+
115
+ f()
106
116
}
107
117
108
118
type i2 interface {
Original file line number Diff line number Diff line change @@ -22,11 +22,20 @@ type PredeclaredSignedInteger interface {
22
22
}
23
23
24
24
type StringableSignedInteger interface {
25
+
25
26
~int | ~int8 | ~int16 | ~int32 | ~int64
27
+
26
28
String() string
27
29
28
30
}
29
31
32
+ type CombineEmbeds interface {
33
+ fmt.Stringer
34
+ comparable | io.Reader
35
+
36
+ Foo()
37
+ }
38
+
30
39
func Caller() {
31
40
Foo[int,int](1,2)
32
41
}
@@ -45,9 +54,17 @@ type PredeclaredSignedInteger interface {
45
54
46
55
type StringableSignedInteger interface {
47
56
~int | ~int8 | ~int16 | ~int32 | ~int64
57
+
48
58
String() string
49
59
}
50
60
61
+ type CombineEmbeds interface {
62
+ fmt.Stringer
63
+ comparable | io.Reader
64
+
65
+ Foo()
66
+ }
67
+
51
68
func Caller() {
52
69
Foo[int, int](1, 2)
53
70
}
You can’t perform that action at this time.
0 commit comments