MCPcopy
hub / github.com/processing/p5.js / processData

Function processData

utils/data-processor.mjs:9–294  ·  view source on GitHub ↗
(rawData, strategy)

Source from the content-addressed store, hash-verified

7 */
8
9export function processData(rawData, strategy) {
10 const allData = getAllEntries(rawData);
11
12 const processed = {
13 modules: {},
14 classes: {},
15 classitems: [],
16 consts: {},
17 classMethods: {}
18 };
19
20 // Build module info lookup (exact same logic as convert.mjs)
21 const fileModuleInfo = {};
22 const modules = {};
23 const submodules = {};
24
25 for (const entry of allData) {
26 if (entry.tags?.some(tag => tag.title === 'module')) {
27 const module = entry.tags.find(tag => tag.title === 'module').name;
28 const submoduleTag = entry.tags.find(tag => tag.title === 'submodule');
29 const submodule = submoduleTag ? submoduleTag.description : undefined;
30 const forTag = entry.tags.find(tag => tag.title === 'for');
31 const forEntry = forTag ? forTag.description : undefined;
32 const file = entry.context.file;
33
34 fileModuleInfo[file] = fileModuleInfo[file] || {
35 module: undefined,
36 submodule: undefined,
37 for: undefined
38 };
39 fileModuleInfo[file].module = module;
40 fileModuleInfo[file].submodule = fileModuleInfo[file].submodule || submodule;
41 fileModuleInfo[file].for = fileModuleInfo[file].for || forEntry;
42
43 modules[module] = modules[module] || {
44 name: module,
45 submodules: {},
46 classes: {}
47 };
48 if (submodule) {
49 modules[module].submodules[submodule] = 1;
50 submodules[submodule] = submodules[submodule] || {
51 name: submodule,
52 module,
53 is_submodule: 1
54 };
55 }
56 }
57 }
58
59 // Copy modules to processed data
60 for (const key in modules) {
61 processed.modules[key] = modules[key];
62 }
63 for (const key in submodules) {
64 if (processed.modules[key]) continue;
65 processed.modules[key] = submodules[key];
66 }

Callers 2

convert.mjsFile · 0.90
typescript.mjsFile · 0.90

Calls 8

getAllEntriesFunction · 0.90
getParamsFunction · 0.90
getModuleInfoFunction · 0.85
locationInfoFunction · 0.85
deprecationInfoFunction · 0.85
getAltFunction · 0.85
addMethod · 0.45
pushMethod · 0.45

Tested by

no test coverage detected