v4 / vlib / v / gen / c / testdata / generic_alias_str_auto_field.vv
31 lines · 26 sloc · 585 bytes · 5e934d589db08febfd9c80d6351e3b0f5cb626c2
Raw
1struct GenericAliasStrBox[T] {
2 val T
3}
4
5type GenericAliasStrIntBox = GenericAliasStrBox[int]
6type GenericAliasStrNestedIntBox = GenericAliasStrIntBox
7
8struct GenericAliasStrContainer {
9 b GenericAliasStrIntBox
10 nested GenericAliasStrNestedIntBox
11}
12
13fn (b GenericAliasStrIntBox) str[T]() string {
14 return 'alias generic str'
15}
16
17fn (b GenericAliasStrNestedIntBox) str[T]() string {
18 return 'nested alias generic str'
19}
20
21fn main() {
22 c := GenericAliasStrContainer{
23 b: GenericAliasStrIntBox{
24 val: 1
25 }
26 nested: GenericAliasStrNestedIntBox{
27 val: 2
28 }
29 }
30 println(c)
31}
32