Comment about block of constants.
const ( // Comment before ConstOne. ConstOne = 1 ConstTwo = 2 // Comment on line with ConstTwo. )
Const block where first entry is unexported.
const ( ConstFive ConstSix )
const ( ConstLeft2 uint64 _, ConstRight3 ConstLeft4, ConstRight4 )
const ( ConstGroup1 unexportedType = iota ConstGroup2 ConstGroup3 )
For case matching.
const CaseMatch = 1
const Casematch = 2
const ( Duplicate = iota )
Comment about exported constant.
const ExportedConstant = 1
Constants tied to unexportedType.
const ( ExportedTypedConstant_unexported unexportedType = iota )
const MultiLineConst = `
MultiLineString1
MultiLineString2
MultiLineString3
`
Comment about block of variables.
var ( // Comment before VarOne. VarOne = 1 VarTwo = 2 // Comment on line with VarTwo. )
var ExportedVarOfUnExported unexportedType
Comment about exported variable.
var ExportedVariable = 1
var LongLine = newLongLine(
"someArgument1",
"someArgument2",
"someArgument3",
"someArgument4",
"someArgument5",
"someArgument6",
"someArgument7",
"someArgument8",
)
var MultiLineVar = map[struct { MultiLineField1 string MultiLineField2 uint64 }]struct { MultiLineField3 error MultiLineField2 error }{ {"FieldVal1", 1}: {}, {"FieldVal2", 2}: {}, {"FieldVal3", 3}: {}, }
Var block where first entry is unexported.
var (
VarFive = 5
)
func ExportedFormattedDoc(a int) bool
Comment about exported function with formatting.
Example
fmt.Println(FormattedDoc())
Text after pre-formatted block.
func ExportedFunc(a int) bool
Comment about exported function.
func MultiLineFunc(x interface { MultiLineMethod1() int MultiLineMethod2() int MultiLineMethod3() int }) (r struct { MultiLineField1 int MultiLineField2 int MultiLineField3 int })
func ReturnUnexported() unexportedType
type ExportedFormattedType struct { // Comment before exported field with formatting. // // Example // // a.ExportedField = 123 // // Text after pre-formatted block. //ignore:directive ExportedField int }
Comment about exported interface.
type ExportedInterface interface { // Comment before exported method. // // // Code block showing how to use ExportedMethod // func DoSomething() error { // ExportedMethod() // return nil // } // ExportedMethod() // Comment on line with exported method. io.Reader // Comment on line with embedded Reader. error // Comment on line with embedded error. // contains filtered or unexported methods }
type ExportedStructOneField struct { OnlyField int // the only field }
Comment about exported type.
type ExportedType struct { // Comment before exported field. ExportedField int // Comment on line with exported field. ExportedEmbeddedType // Comment on line with exported embedded field. *ExportedEmbeddedType // Comment on line with exported embedded *field. *qualified.ExportedEmbeddedType // Comment on line with exported embedded *selector.field. io.Reader // Comment on line with embedded Reader. // contains filtered or unexported fields }
const ConstGroup4 ExportedType = ExportedType{}
Constants tied to ExportedType. (The type is a struct so this isn't valid Go, but it parses and that's all we need.)
const ( ExportedTypedConstant ExportedType = iota )
func ExportedTypeConstructor() *ExportedType
Comment about constructor for exported type.
func ReturnExported() ExportedType
func (ExportedType) ExportedMethod(a int) bool
Comment about exported method.
func (ExportedType) Uncommented(a int) bool
type SimpleConstraint interface { ~int | ~float64 }
type StructConstraint interface { struct{ F int } }
type T1 = T2
type T2 int
type TildeConstraint interface { ~int }
function body note