import "compat_common.bond" namespace unittest.compat struct Generic1 { 1: T m_T; 2: list m_listT; }; struct Generic2 : Generic1 { 1: Generic1 m_generic1; 2: map m_mapT; 3: nullable m_nullableT; 4: Generic1 m_generic1_T; 5: Generic1 m_generic1_wstring; }; struct Generic4 : Generic1 { 1: Generic1 m_generic1; 2: map m_mapT; 3: nullable m_nullableT; 4: Generic1 m_generic1_T; 5: Generic1 m_generic1_wstring; }; [bar("foo")] [qux("baz")] struct Compat : WithBase { 0: BasicTypes m_basicTypes; 1: Containers m_containers; 2: WithBase m_withBase; 4: nullable m_nullable_string; 5: nullable m_nullable_uint64; 6: Generic2 m_generic2; 7: Generic1 m_generic1; 8: Generic4 m_generic0; 9: Generic4 m_generic_another_struct; 10: Generic2 m_generic_another_enum; 11: nullable m_defaults; 12: bonded m_basicUnintialized; [JsonName("enum1")] 13: EnumType2 m_enum1 = EnumValue1; [JsonName("enum2")] 14: EnumType2 m_enum2 = EnumValue2; [JsonName("enum3")] 15: EnumType2 m_enum3 = EnumValue3; 16: EnumType2 m_enum4 = EnumValue4; 17: EnumType2 m_enum5 = EnumValue5; 18: EnumType2 m_enum6 = EnumValue6; 8191: nullable m_nullable; };