package aliases | |
type ( | |
T0 [10]int | |
T1 []byte | |
T2 struct { | |
x int | |
} | |
T3 interface { | |
m() T2 | |
} | |
T4 func(int, T0) chan T2 | |
) | |
// basic aliases | |
type ( | |
Ai = int | |
A0 = T0 | |
A1 = T1 | |
A2 = T2 | |
A3 = T3 | |
A4 = T4 | |
A10 = [10]int | |
A11 = []byte | |
A12 = struct { | |
x int | |
} | |
A13 = interface { | |
m() A2 | |
} | |
A14 = func(int, A0) chan A2 | |
) | |
// alias receiver types | |
func (T0) m1() {} | |
func (A0) m2() {} | |
// alias receiver types (long type declaration chains) | |
type ( | |
V0 = V1 | |
V1 = (V2) | |
V2 = (V3) | |
V3 = T0 | |
) | |
func (V1) n() {} | |
// cycles | |
type C0 struct { | |
f1 C1 | |
f2 C2 | |
} | |
type ( | |
C1 *C0 | |
C2 = C1 | |
) | |
type ( | |
C5 struct { | |
f *C6 | |
} | |
C6 = C5 | |
) |