struct Struct { struct_name string } struct Interface { interface_name string } type Info = Interface | Struct fn main() { mut info := Info{} info = Struct{ struct_name: 'Foo' } s := info as Struct println(s.struct_name) i := info as Interface // wrong println(i.interface_name) }