...

Package stdmethods

import "golang.org/x/tools/go/analysis/passes/stdmethods"
Overview
Index

Overview ▾

Package stdmethods defines an Analyzer that checks for misspellings in the signatures of methods similar to well-known interfaces.

Index ▾

Package files

stdmethods.go

Constants

const Doc = `check signature of methods of well-known interfaces

Sometimes a type may be intended to satisfy an interface but may fail to
do so because of a mistake in its method signature.
For example, the result of this WriteTo method should be (int64, error),
not error, to satisfy io.WriterTo:

    type myWriterTo struct{...}
        func (myWriterTo) WriteTo(w io.Writer) error { ... }

This check ensures that each method whose name matches one of several
well-known interface methods from the standard library has the correct
signature for that interface.

Checked method names include:
    Format GobEncode GobDecode MarshalJSON MarshalXML
    Peek ReadByte ReadFrom ReadRune Scan Seek
    UnmarshalJSON UnreadByte UnreadRune WriteByte
    WriteTo
`

Variables

var Analyzer = &analysis.Analyzer{
    Name:     "stdmethods",
    Doc:      Doc,
    Requires: []*analysis.Analyzer{inspect.Analyzer},
    Run:      run,
}