127 lines
1.7 KiB
Go
127 lines
1.7 KiB
Go
//golangcitest:args -Einterfacebloat
|
|
package testdata
|
|
|
|
import "time"
|
|
|
|
type InterfaceBloatExample01 interface { // want "the interface has more than 10 methods: 11"
|
|
a01() time.Duration
|
|
a02()
|
|
a03()
|
|
a04()
|
|
a05()
|
|
a06()
|
|
a07()
|
|
a08()
|
|
a09()
|
|
a10()
|
|
a11()
|
|
}
|
|
|
|
func InterfaceBloatExample02() {
|
|
var _ interface { // want "the interface has more than 10 methods: 11"
|
|
a01() time.Duration
|
|
a02()
|
|
a03()
|
|
a04()
|
|
a05()
|
|
a06()
|
|
a07()
|
|
a08()
|
|
a09()
|
|
a10()
|
|
a11()
|
|
}
|
|
}
|
|
|
|
func InterfaceBloatExample03() interface { // want "the interface has more than 10 methods: 11"
|
|
a01() time.Duration
|
|
a02()
|
|
a03()
|
|
a04()
|
|
a05()
|
|
a06()
|
|
a07()
|
|
a08()
|
|
a09()
|
|
a10()
|
|
a11()
|
|
} {
|
|
return nil
|
|
}
|
|
|
|
type InterfaceBloatExample04 struct {
|
|
Foo interface { // want "the interface has more than 10 methods: 11"
|
|
a01() time.Duration
|
|
a02()
|
|
a03()
|
|
a04()
|
|
a05()
|
|
a06()
|
|
a07()
|
|
a08()
|
|
a09()
|
|
a10()
|
|
a11()
|
|
}
|
|
}
|
|
|
|
type InterfaceBloatSmall01 interface {
|
|
a01() time.Duration
|
|
a02()
|
|
a03()
|
|
a04()
|
|
a05()
|
|
}
|
|
|
|
type InterfaceBloatSmall02 interface {
|
|
a06()
|
|
a07()
|
|
a08()
|
|
a09()
|
|
a10()
|
|
a11()
|
|
}
|
|
|
|
type InterfaceBloatExample05 interface {
|
|
InterfaceBloatSmall01
|
|
InterfaceBloatSmall02
|
|
}
|
|
|
|
type InterfaceBloatExample06 interface {
|
|
interface { // want "the interface has more than 10 methods: 11"
|
|
a01() time.Duration
|
|
a02()
|
|
a03()
|
|
a04()
|
|
a05()
|
|
a06()
|
|
a07()
|
|
a08()
|
|
a09()
|
|
a10()
|
|
a11()
|
|
}
|
|
}
|
|
|
|
type InterfaceBloatTypeGeneric interface {
|
|
~uint8 | ~uint16 | ~uint32 | ~uint64 | uint |
|
|
~int8 | ~int16 | ~int32 | ~int64 | int |
|
|
~float32 | ~float64 |
|
|
~string
|
|
}
|
|
|
|
func InterfaceBloatExampleNoProblem() interface {
|
|
a01() time.Duration
|
|
a02()
|
|
a03()
|
|
a04()
|
|
a05()
|
|
a06()
|
|
a07()
|
|
a08()
|
|
a09()
|
|
a10()
|
|
} {
|
|
return nil
|
|
}
|