1// The package e is a go/doc test for embedded methods. 2PACKAGE e 3 4IMPORTPATH 5 testdata/e 6 7FILENAMES 8 testdata/e.go 9 10TYPES 11 // T1 has no embedded (level 1) M method due to conflict. 12 type T1 struct { 13 // contains filtered or unexported fields 14 } 15 16 // T2 has only M as top-level method. 17 type T2 struct { 18 // contains filtered or unexported fields 19 } 20 21 // T2.M should appear as method of T2. 22 func (T2) M() 23 24 // T3 has only M as top-level method. 25 type T3 struct { 26 // contains filtered or unexported fields 27 } 28 29 // T3.M should appear as method of T3. 30 func (T3) M() 31 32 // 33 type T4 struct{} 34 35 // T4.M should appear as method of T5 only if AllMethods is set. 36 func (*T4) M() 37 38 // 39 type T5 struct { 40 T4 41 } 42 43 // T4.M should appear as method of T5 only if AllMethods is set. 44 func (*T5) M() 45 46 // 47 type U1 struct { 48 *U1 49 } 50 51 // U1.M should appear as method of U1. 52 func (*U1) M() 53 54 // 55 type U2 struct { 56 *U3 57 } 58 59 // U2.M should appear as method of U2 and as method of U3 only if ... 60 func (*U2) M() 61 62 // U3.N should appear as method of U3 and as method of U2 only if ... 63 func (U2) N() 64 65 // 66 type U3 struct { 67 *U2 68 } 69 70 // U2.M should appear as method of U2 and as method of U3 only if ... 71 func (U3) M() 72 73 // U3.N should appear as method of U3 and as method of U2 only if ... 74 func (*U3) N() 75 76 // 77 type U4 struct { 78 // contains filtered or unexported fields 79 } 80 81 // U4.M should appear as method of U4. 82 func (*U4) M() 83 84 // 85 type V1 struct { 86 *V2 87 *V5 88 } 89 90 // V6.M should appear as method of V1 and V5 if AllMethods is set. 91 func (V1) M() 92 93 // 94 type V2 struct { 95 *V3 96 } 97 98 // V4.M should appear as method of V2 and V3 if AllMethods is set. 99 func (V2) M() 100 101 // 102 type V3 struct { 103 *V4 104 } 105 106 // V4.M should appear as method of V2 and V3 if AllMethods is set. 107 func (V3) M() 108 109 // 110 type V4 struct { 111 *V5 112 } 113 114 // V4.M should appear as method of V2 and V3 if AllMethods is set. 115 func (*V4) M() 116 117 // 118 type V5 struct { 119 *V6 120 } 121 122 // V6.M should appear as method of V1 and V5 if AllMethods is set. 123 func (V5) M() 124 125 // 126 type V6 struct{} 127 128 // V6.M should appear as method of V1 and V5 if AllMethods is set. 129 func (*V6) M() 130 131