Non-standard signature for well-known function names
Reports methods with certain names in the following cases:
the method's name matches the name of several well-known interface methods from the standard library
the signature does not match the signature of the corresponding interface method
Such methods might indicate that the receiver type is intended to satisfy an interface from the standard library, but fails to do so because of the mistake in the method's signature.
Example:
type MyReader []byte
func (r MyReader) ReadByte(data []byte) (byte, error) {
}
The usage is suspicious because it looks like an attempt to implement io.ByteReader
but the signature is wrong. More correct version will be as follows:
type MyReader []byte
func (r MyReader) ReadByte() (byte, error) {
}
- By ID
Can be used to locate inspection in e.g. Qodana configuration files, where you can quickly enable or disable it, or adjust its settings.
GoStandardMethods
Inspection Details | |
---|---|
By default bundled with: | |
Can be installed with plugin: | Go, 243.23131 |
Thanks for your feedback!