{ "consts": [], "enums": [ { "constants": [ { "name": "HsEnum_ONE", "value": 1 }, { "name": "HsEnum_TWO", "value": 2 }, { "name": "HsEnum_THREE", "value": 3 } ], "flavour": "sum_type", "name": "HsEnum" }, { "constants": [], "flavour": "sum_type", "name": "HsEnumEmpty" }, { "constants": [ { "name": "HsEnumNoUnknownAnn_ONE", "value": 1 }, { "name": "HsEnumNoUnknownAnn_TWO", "value": 2 }, { "name": "HsEnumNoUnknownAnn_THREE", "value": 3 } ], "flavour": "sum_type", "name": "HsEnumNoUnknownAnn" }, { "constants": [], "flavour": "sum_type", "name": "HsEnumEmptyNoUnknownAnn" }, { "constants": [ { "name": "hsEnumPseudoenumAnn_ONE", "value": 1 }, { "name": "hsEnumPseudoenumAnn_TWO", "value": 2 }, { "name": "hsEnumPseudoenumAnn_THREE", "value": 3 } ], "flavour": "pseudo", "name": "HsEnumPseudoenumAnn" }, { "constants": [ { "name": "hsEnumDuplicatedPseudoenumAnn_ONE", "value": 1 }, { "name": "hsEnumDuplicatedPseudoenumAnn_TWO", "value": 2 }, { "name": "hsEnumDuplicatedPseudoenumAnn_THREE", "value": 3 } ], "flavour": "pseudo", "name": "HsEnumDuplicatedPseudoenumAnn" }, { "constants": [], "flavour": "pseudo", "name": "HsEnumEmptyPseudoenumAnn" }, { "constants": [ { "name": "hsEnumPseudoenumThriftAnn_ONE", "value": 1 }, { "name": "hsEnumPseudoenumThriftAnn_TWO", "value": 2 }, { "name": "hsEnumPseudoenumThriftAnn_THREE", "value": 3 } ], "flavour": "pseudo", "name": "HsEnumPseudoenumThriftAnn" }, { "constants": [], "flavour": "pseudo", "name": "HsEnumEmptyPseudoenumThriftAnn" } ], "includes": [], "name": "D", "options": { "genfiles": null, "include_path": ".", "out_path": "test/fixtures/gen-basic", "path": "test/if/d.thrift", "recursive": true }, "path": "test/if/d.thrift", "services": [], "structs": [ { "fields": [ { "id": 1, "name": "hsStruct_strictann", "requiredness": "default", "type": { "type": "i32" } }, { "id": 2, "name": "hsStruct_lazyann", "requiredness": "default", "type": { "type": "i32" } }, { "id": 3, "name": "hsStruct_inherit", "requiredness": "default", "type": { "type": "i32" } } ], "name": "HsStruct", "struct_type": "STRUCT" }, { "fields": [ { "id": 1, "name": "hsStrictAnn_strictann", "requiredness": "default", "type": { "type": "i32" } }, { "id": 2, "name": "hsStrictAnn_lazyann", "requiredness": "default", "type": { "type": "i32" } }, { "id": 3, "name": "hsStrictAnn_inherit", "requiredness": "default", "type": { "type": "i32" } } ], "name": "HsStrictAnn", "struct_type": "STRUCT" }, { "fields": [ { "id": 1, "name": "hsLazyAnn_strictann", "requiredness": "default", "type": { "type": "i32" } }, { "id": 2, "name": "hsLazyAnn_lazyann", "requiredness": "default", "type": { "type": "i32" } }, { "id": 3, "name": "hsLazyAnn_inherit", "requiredness": "default", "type": { "type": "i32" } } ], "name": "HsLazyAnn", "struct_type": "STRUCT" }, { "fields": [ { "id": 1, "name": "structprefixstrictann", "requiredness": "default", "type": { "type": "i32" } }, { "id": 2, "name": "structprefixlazyann", "requiredness": "default", "type": { "type": "i32" } }, { "id": 3, "name": "structprefixinherit", "requiredness": "default", "type": { "type": "i32" } } ], "name": "HsPrefixAnn", "struct_type": "STRUCT" }, { "fields": [ { "id": 1, "name": "hsStructOfComplexTypes_a_struct", "requiredness": "default", "type": { "name": { "name": "HsStruct" }, "type": "struct" } }, { "id": 2, "name": "hsStructOfComplexTypes_a_union", "requiredness": "default", "type": { "name": { "name": "HsUnion" }, "type": "union" } }, { "id": 3, "name": "hsStructOfComplexTypes_an_enum", "requiredness": "default", "type": { "name": { "name": "HsEnum" }, "type": "enum" } }, { "id": 4, "name": "hsStructOfComplexTypes_a_pseudoenum", "requiredness": "default", "type": { "inner_type": { "type": "i32" }, "name": { "name": "HsEnumPseudoenumAnn" }, "type": "newtype" } }, { "id": 5, "name": "hsStructOfComplexTypes_a_thrift_pseudoenum", "requiredness": "default", "type": { "inner_type": { "type": "i32" }, "name": { "name": "HsEnumPseudoenumThriftAnn" }, "type": "newtype" } } ], "name": "HsStructOfComplexTypes", "struct_type": "STRUCT" } ], "typedefs": [ { "name": "Hstypedef", "newtype": false, "type": { "key_type": { "type": "string" }, "type": "map", "val_type": { "type": "string" } } }, { "name": "Hsnewtypeann", "newtype": true, "type": { "key_type": { "type": "string" }, "type": "map", "val_type": { "type": "string" } } } ], "unions": [ { "fields": [ { "id": 1, "name": "HsUnion_left", "type": { "type": "i32" } }, { "id": 2, "name": "HsUnion_right", "type": { "type": "i32" } } ], "name": "HsUnion" }, { "fields": [ { "id": 1, "name": "HsUnionNonEmptyAnn_left", "type": { "type": "i32" } }, { "id": 2, "name": "HsUnionNonEmptyAnn_right", "type": { "type": "i32" } } ], "name": "HsUnionNonEmptyAnn" } ] }