func (p *printer) fixGoBuildLines() { … } // appendLines is like append(x, y...) // but it avoids creating doubled blank lines, // which would not be gofmt-standard output. // It assumes that only whole blocks of lines are being appended, // not line fragments. func appendLines(x, y []byte) []byte { … } func (p *printer) lineAt(start int) []byte { … } func (p *printer) commentTextAt(start int) string { … } func isNL(b byte) bool { … }