github.com/v2fly/tools@v0.100.0/go/internal/gccgoimporter/testdata/aliases.go (about) 1 package aliases 2 3 type ( 4 T0 [10]int 5 T1 []byte 6 T2 struct { 7 x int 8 } 9 T3 interface { 10 m() T2 11 } 12 T4 func(int, T0) chan T2 13 ) 14 15 // basic aliases 16 type ( 17 Ai = int 18 A0 = T0 19 A1 = T1 20 A2 = T2 21 A3 = T3 22 A4 = T4 23 24 A10 = [10]int 25 A11 = []byte 26 A12 = struct { 27 x int 28 } 29 A13 = interface { 30 m() A2 31 } 32 A14 = func(int, A0) chan A2 33 ) 34 35 // alias receiver types 36 func (T0) m1() {} 37 func (A0) m2() {} 38 39 // alias receiver types (long type declaration chains) 40 type ( 41 V0 = V1 42 V1 = (V2) 43 V2 = (V3) 44 V3 = T0 45 ) 46 47 func (V1) n() {} 48 49 // cycles 50 type C0 struct { 51 f1 C1 52 f2 C2 53 } 54 55 type ( 56 C1 *C0 57 C2 = C1 58 ) 59 60 type ( 61 C5 struct { 62 f *C6 63 } 64 C6 = C5 65 )