forked from golang/tools
/
doc.go
30 lines (29 loc) · 1.11 KB
/
doc.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
// Copyright 2023 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
// Package stdmethods defines an Analyzer that checks for misspellings
// in the signatures of methods similar to well-known interfaces.
//
// # Analyzer stdmethods
//
// stdmethods: 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
package stdmethods