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              ]
27            }
28          ]
29        },
30        { 'name': 'Foo.framework/Headers/Foo.h', 'type': 'file',
31          'external-contents': 'INPUT_DIR/Foo.h'
32        },
33        { 'name': 'Incomplete.framework', 'type': 'directory',
34          'contents': [
35            { 'name': 'Headers', 'type': 'directory',
36              'contents': [
37                { 'name': 'Incomplete.h', 'type': 'file',
38                  'external-contents': 'INPUT_DIR/Incomplete.h'
39                },
40                { 'name': 'IncompleteVFS.h', 'type': 'file',
41                  'external-contents': 'INPUT_DIR/IncompleteVFS.h'
42                }
43              ]
44            },
45            { 'name': 'Modules/module.modulemap', 'type': 'file',
46              'external-contents': 'INPUT_DIR/incomplete-umbrella.modulemap'
47            }
48          ]
49        }
50      ]
51    }
52  ]
53}
54