github.com/4ad/go@v0.0.0-20161219182952-69a12818b605/src/cmd/doc/testdata/pkg.go (about) 1 // Copyright 2015 The Go Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style 3 // license that can be found in the LICENSE file. 4 5 // Package comment. 6 package pkg 7 8 // Constants 9 10 // Comment about exported constant. 11 const ExportedConstant = 1 12 13 // Comment about internal constant. 14 const internalConstant = 2 15 16 // Comment about block of constants. 17 const ( 18 // Comment before ConstOne. 19 ConstOne = 1 20 ConstTwo = 2 // Comment on line with ConstTwo. 21 constThree = 3 // Comment on line with constThree. 22 ) 23 24 // Const block where first entry is unexported. 25 const ( 26 constFour = iota 27 ConstFive 28 ConstSix 29 ) 30 31 // Variables 32 33 // Comment about exported variable. 34 var ExportedVariable = 1 35 36 // Comment about internal variable. 37 var internalVariable = 2 38 39 // Comment about block of variables. 40 var ( 41 // Comment before VarOne. 42 VarOne = 1 43 VarTwo = 2 // Comment on line with VarTwo. 44 varThree = 3 // Comment on line with varThree. 45 ) 46 47 // Var block where first entry is unexported. 48 var ( 49 varFour = 4 50 VarFive = 5 51 varSix = 6 52 ) 53 54 // Comment about exported function. 55 func ExportedFunc(a int) bool 56 57 // Comment about internal function. 58 func internalFunc(a int) bool 59 60 // Comment about exported type. 61 type ExportedType struct { 62 // Comment before exported field. 63 ExportedField int // Comment on line with exported field. 64 unexportedField int // Comment on line with unexported field. 65 ExportedEmbeddedType // Comment on line with exported embedded field. 66 *ExportedEmbeddedType // Comment on line with exported embedded *field. 67 unexportedType // Comment on line with unexported embedded field. 68 *unexportedType // Comment on line with unexported embedded *field. 69 io.Reader // Comment on line with embedded Reader. 70 error // Comment on line with embedded error. 71 } 72 73 // Comment about exported method. 74 func (ExportedType) ExportedMethod(a int) bool { 75 return true 76 } 77 78 // Comment about unexported method. 79 func (ExportedType) unexportedMethod(a int) bool { 80 return true 81 } 82 83 // Constants tied to ExportedType. (The type is a struct so this isn't valid Go, 84 // but it parses and that's all we need.) 85 const ( 86 ExportedTypedConstant ExportedType = iota 87 ) 88 89 // Comment about constructor for exported type. 90 func ExportedTypeConstructor() *ExportedType { 91 return nil 92 } 93 94 const unexportedTypedConstant ExportedType = 1 // In a separate section to test -u. 95 96 // Comment about exported interface. 97 type ExportedInterface interface { 98 // Comment before exported method. 99 ExportedMethod() // Comment on line with exported method. 100 unexportedMethod() // Comment on line with unexported method. 101 io.Reader // Comment on line with embedded Reader. 102 error // Comment on line with embedded error. 103 } 104 105 // Comment about unexported type. 106 type unexportedType int 107 108 func (unexportedType) ExportedMethod() bool { 109 return true 110 } 111 112 func (unexportedType) unexportedMethod() bool { 113 return true 114 } 115 116 // Constants tied to unexportedType. 117 const ( 118 ExportedTypedConstant_unexported unexportedType = iota 119 ) 120 121 const unexportedTypedConstant unexportedType = 1 // In a separate section to test -u. 122 123 // For case matching. 124 const CaseMatch = 1 125 const Casematch = 2 126 127 func ReturnUnexported() unexportedType { return 0 } 128 func ReturnExported() ExportedType { return ExportedType{} }