fix: update drifted file:line citations to match current golang/go source

Audited all file:line citations against golang/go HEAD.
97 citations checked; 9 had drifted by 1-20 lines (off-by-one or small
structural shifts in the stdlib source). Updated both inline code block
comments and corresponding GitHub #L anchor links.

Changes per file:
  patterns/api-conventions.md  - strings/builder.go WriteString (92→112), String (48→46)
  patterns/configuration.md    - crypto/tls/common.go Time field (572→575)
  patterns/documentation.md    - net/http/server.go Handler comment (64→65), os/file.go example (17→16)
  patterns/structs.md          - os/types.go File struct (16→15), strings/builder.go copyCheck (25→32)
  patterns/style.md            - net/http/server.go TLSConfig (3041→3040), import block (8→9)
This commit is contained in:
Rodin
2026-05-06 17:17:20 -07:00
parent 7bcc1cc62b
commit 52503d24c2
5 changed files with 16 additions and 16 deletions
+2 -2
View File
@@ -247,14 +247,14 @@ type Builder struct {
buf []byte buf []byte
} }
// strings/builder.go:92-96 // strings/builder.go:112-116
func (b *Builder) WriteString(s string) (int, error) { func (b *Builder) WriteString(s string) (int, error) {
b.copyCheck() b.copyCheck()
b.buf = append(b.buf, s...) b.buf = append(b.buf, s...)
return len(s), nil return len(s), nil
} }
// strings/builder.go:48-50 // strings/builder.go:46-48
func (b *Builder) String() string { func (b *Builder) String() string {
return unsafe.String(unsafe.SliceData(b.buf), len(b.buf)) return unsafe.String(unsafe.SliceData(b.buf), len(b.buf))
} }
+2 -2
View File
@@ -763,10 +763,10 @@ default behavior."
### Source: ### Source:
[crypto/tls/common.go#L572](https://github.com/golang/go/blob/17bd5ab8c650155dd2bd09f7005726552639eea0/src/crypto/tls/common.go#L572) [crypto/tls/common.go#L575](https://github.com/golang/go/blob/17bd5ab8c650155dd2bd09f7005726552639eea0/src/crypto/tls/common.go#L575)
```go ```go
// src/crypto/tls/common.go:572 // src/crypto/tls/common.go:575
// Time returns the current time as the number of seconds since the epoch. // Time returns the current time as the number of seconds since the epoch.
// If Time is nil, TLS uses time.Now. // If Time is nil, TLS uses time.Now.
Time func() time.Time Time func() time.Time
+4 -4
View File
@@ -86,7 +86,7 @@ too many sections (fragmenting simple docs).
**Pattern name:** `// TypeName verb...` or `// FuncName verb...` **Pattern name:** `// TypeName verb...` or `// FuncName verb...`
**Source citation:** [net/http/server.go#L64](https://github.com/golang/go/blob/17bd5ab8c650155dd2bd09f7005726552639eea0/src/net/http/server.go#L64) (Handler), [bufio/scan.go#L14](https://github.com/golang/go/blob/17bd5ab8c650155dd2bd09f7005726552639eea0/src/bufio/scan.go#L14) (Scanner) **Source citation:** [net/http/server.go#L65](https://github.com/golang/go/blob/17bd5ab8c650155dd2bd09f7005726552639eea0/src/net/http/server.go#L65) (Handler), [bufio/scan.go#L14](https://github.com/golang/go/blob/17bd5ab8c650155dd2bd09f7005726552639eea0/src/bufio/scan.go#L14) (Scanner)
**What it does:** Every exported identifier's doc comment starts with the identifier **What it does:** Every exported identifier's doc comment starts with the identifier
name, followed by a verb phrase describing what it does or represents. name, followed by a verb phrase describing what it does or represents.
@@ -102,7 +102,7 @@ the comment entirely.
**Code examples from source:** **Code examples from source:**
```go ```go
// net/http/server.go:64 // net/http/server.go:65
// A Handler responds to an HTTP request. // A Handler responds to an HTTP request.
// bufio/scan.go:14-17 // bufio/scan.go:14-17
@@ -280,7 +280,7 @@ func ExampleHandle() {
**Pattern name:** Indented Code Blocks in Comments **Pattern name:** Indented Code Blocks in Comments
**Source citation:** [os/file.go#L17](https://github.com/golang/go/blob/17bd5ab8c650155dd2bd09f7005726552639eea0/src/os/file.go#L17), [time/time.go#L928](https://github.com/golang/go/blob/17bd5ab8c650155dd2bd09f7005726552639eea0/src/time/time.go#L928) **Source citation:** [os/file.go#L16](https://github.com/golang/go/blob/17bd5ab8c650155dd2bd09f7005726552639eea0/src/os/file.go#L16), [time/time.go#L928](https://github.com/golang/go/blob/17bd5ab8c650155dd2bd09f7005726552639eea0/src/time/time.go#L928)
**What it does:** Doc comments include indented code snippets (4 spaces) that render **What it does:** Doc comments include indented code snippets (4 spaces) that render
as preformatted code blocks in godoc. as preformatted code blocks in godoc.
@@ -294,7 +294,7 @@ for inline (use Example functions instead); examples that reference unexported s
**Code examples from source:** **Code examples from source:**
```go ```go
// os/file.go:17-21 // os/file.go:16-21
// Here is a simple example, opening a file and reading some of it. // Here is a simple example, opening a file and reading some of it.
// //
// file, err := os.Open("file.go") // For read access. // file, err := os.Open("file.go") // For read access.
+4 -4
View File
@@ -128,7 +128,7 @@ type Buffer struct {
**Pattern name:** Indirection via Unexported Impl **Pattern name:** Indirection via Unexported Impl
**Source citation:** [os/types.go#L16](https://github.com/golang/go/blob/17bd5ab8c650155dd2bd09f7005726552639eea0/src/os/types.go#L16), [os/file_unix.go#L59](https://github.com/golang/go/blob/17bd5ab8c650155dd2bd09f7005726552639eea0/src/os/file_unix.go#L59) **Source citation:** [os/types.go#L15](https://github.com/golang/go/blob/17bd5ab8c650155dd2bd09f7005726552639eea0/src/os/types.go#L15), [os/file_unix.go#L59](https://github.com/golang/go/blob/17bd5ab8c650155dd2bd09f7005726552639eea0/src/os/file_unix.go#L59)
**What it does:** The exported type (`File`) embeds a pointer to an unexported type **What it does:** The exported type (`File`) embeds a pointer to an unexported type
(`*file`) that holds the real implementation state. Users interact only with the (`*file`) that holds the real implementation state. Users interact only with the
@@ -145,7 +145,7 @@ public API.
**Code example from source:** **Code example from source:**
```go ```go
// os/types.go:16-20 // os/types.go:15-20
// File represents an open file descriptor. // File represents an open file descriptor.
// //
// The methods of File are safe for concurrent use. // The methods of File are safe for concurrent use.
@@ -487,7 +487,7 @@ type Client struct {
**Pattern name:** copyCheck (Runtime Copy Detection) **Pattern name:** copyCheck (Runtime Copy Detection)
**Source citation:** [strings/builder.go#L25](https://github.com/golang/go/blob/17bd5ab8c650155dd2bd09f7005726552639eea0/src/strings/builder.go#L25) **Source citation:** [strings/builder.go#L32](https://github.com/golang/go/blob/17bd5ab8c650155dd2bd09f7005726552639eea0/src/strings/builder.go#L32)
**What it does:** On first mutation, the Builder records its own address. Subsequent **What it does:** On first mutation, the Builder records its own address. Subsequent
mutations compare the current receiver address against the recorded one. If they mutations compare the current receiver address against the recorded one. If they
@@ -503,7 +503,7 @@ buffer), a runtime check is the pragmatic solution.
**Code example from source:** **Code example from source:**
```go ```go
// strings/builder.go:25-40 // strings/builder.go:32-40
func (b *Builder) copyCheck() { func (b *Builder) copyCheck() {
if b.addr == nil { if b.addr == nil {
b.addr = (*Builder)(abi.NoEscape(unsafe.Pointer(b))) b.addr = (*Builder)(abi.NoEscape(unsafe.Pointer(b)))
+4 -4
View File
@@ -36,7 +36,7 @@ const shutdownPollIntervalMax = 500 * time.Millisecond
**Pattern name:** Acronym Capitalization **Pattern name:** Acronym Capitalization
**Source citation:** [net/http/request.go#L130](https://github.com/golang/go/blob/17bd5ab8c650155dd2bd09f7005726552639eea0/src/net/http/request.go#L130) (`URL`), [net/http/server.go#L3041](https://github.com/golang/go/blob/17bd5ab8c650155dd2bd09f7005726552639eea0/src/net/http/server.go#L3041) (`TLSConfig`), [encoding/json/stream.go#L280](https://github.com/golang/go/blob/17bd5ab8c650155dd2bd09f7005726552639eea0/src/encoding/json/stream.go#L280) (`JSON`) **Source citation:** [net/http/request.go#L130](https://github.com/golang/go/blob/17bd5ab8c650155dd2bd09f7005726552639eea0/src/net/http/request.go#L130) (`URL`), [net/http/server.go#L3040](https://github.com/golang/go/blob/17bd5ab8c650155dd2bd09f7005726552639eea0/src/net/http/server.go#L3040) (`TLSConfig`), [encoding/json/stream.go#L280](https://github.com/golang/go/blob/17bd5ab8c650155dd2bd09f7005726552639eea0/src/encoding/json/stream.go#L280) (`JSON`)
**What it does:** Acronyms and initialisms (URL, HTTP, ID, JSON, XML, HTML, TLS, TCP) **What it does:** Acronyms and initialisms (URL, HTTP, ID, JSON, XML, HTML, TLS, TCP)
are always fully capitalized when exported, and fully lowercased when unexported. are always fully capitalized when exported, and fully lowercased when unexported.
@@ -55,7 +55,7 @@ URL *url.URL
// net/http/request.go:822 // net/http/request.go:822
func ParseHTTPVersion(vers string) (major, minor int, ok bool) func ParseHTTPVersion(vers string) (major, minor int, ok bool)
// net/http/server.go:3041 // net/http/server.go:3040
TLSConfig *tls.Config TLSConfig *tls.Config
// encoding/json/stream.go:280 // encoding/json/stream.go:280
@@ -613,7 +613,7 @@ checking in code that `gofmt` would modify.
**Pattern name:** Grouped Imports (stdlib / external / internal) **Pattern name:** Grouped Imports (stdlib / external / internal)
**Source citation:** [net/http/server.go#L8](https://github.com/golang/go/blob/17bd5ab8c650155dd2bd09f7005726552639eea0/src/net/http/server.go#L8) **Source citation:** [net/http/server.go#L9](https://github.com/golang/go/blob/17bd5ab8c650155dd2bd09f7005726552639eea0/src/net/http/server.go#L9)
**What it does:** Imports are organized in groups separated by blank lines: **What it does:** Imports are organized in groups separated by blank lines:
1. Standard library 1. Standard library
@@ -628,7 +628,7 @@ external). Reduces merge conflicts.
**Code example from source:** **Code example from source:**
```go ```go
// net/http/server.go:8-36 // net/http/server.go:9-36
import ( import (
"bufio" "bufio"
"bytes" "bytes"