1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
struct GenericChannelStruct<T> { ch chan T } struct MyGenericChannelStruct { GenericChannelStruct<T> msg string } struct Simple { msg string } fn main() { new_channel_struct<Simple>() } pub fn new_channel_struct<T>() GenericChannelStruct<T> { d := GenericChannelStruct<T>{ ch: chan T{} } return d }