1{ 2 'version': 0, 3 'roots': [ 4 { 'name': 'OUT_DIR', 'type': 'directory', 5 'contents': [ 6 { 'name': 'not_real.h', 'type': 'file', 7 'external-contents': 'INPUT_DIR/actual_header.h' 8 }, 9 { 'name': 'import_some_frame.h', 'type': 'file', 10 'external-contents': 'INPUT_DIR/import_some_frame.h' 11 }, 12 { 'name': 'module.map', 'type': 'file', 13 'external-contents': 'INPUT_DIR/actual_module.map' 14 }, 15 { 'name': 'include_real.h', 'type': 'file', 16 'external-contents': 'INPUT_DIR/include_real.h' 17 }, 18 { 'name': 'SomeFramework.framework', 'type': 'directory', 19 'contents': [ 20 { 'name': 'Headers', 'type': 'directory', 21 'contents': [ 22 { 'name': 'public_header.h', 'type': 'file', 23 'external-contents': 'INPUT_DIR/public_header.h' }, 24 { 'name': 'public_header2.h', 'type': 'file', 25 'external-contents': 'INPUT_DIR/public_header2.h' }, 26 { 'name': 'public_header3.h', 'type': 'file', 27 'external-contents': 'INPUT_DIR/public_header3.h' } 28 ] 29 } 30 ] 31 }, 32 { 'name': 'Foo.framework/Headers/Foo.h', 'type': 'file', 33 'external-contents': 'INPUT_DIR/Foo.h' 34 }, 35 { 'name': 'Incomplete.framework', 'type': 'directory', 36 'contents': [ 37 { 'name': 'Headers', 'type': 'directory', 38 'contents': [ 39 { 'name': 'Incomplete.h', 'type': 'file', 40 'external-contents': 'INPUT_DIR/Incomplete.h' 41 }, 42 { 'name': 'IncompleteVFS.h', 'type': 'file', 43 'external-contents': 'INPUT_DIR/IncompleteVFS.h' 44 } 45 ] 46 }, 47 { 'name': 'Modules/module.modulemap', 'type': 'file', 48 'external-contents': 'INPUT_DIR/incomplete-umbrella.modulemap' 49 } 50 ] 51 } 52 ] 53 } 54 ] 55} 56