MCPcopy
hub / github.com/opentrace/opentrace / ensureParsers

Function ensureParsers

ui/src/job/browserJobService.ts:91–124  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

89}
90
91async function ensureParsers(): Promise<void> {
92 if (parsersReady) return;
93
94 await Parser.init({
95 locateFile: (file: string) => `/${file}`,
96 });
97
98 const parserMap = new Map<string, Parser>();
99
100 // Load all available parsers in parallel, ignoring any that fail
101 const entries = Object.entries(PARSER_WASM_MAP);
102 const results = await Promise.allSettled(
103 entries.map(async ([key, wasmFile]) => {
104 const parser = await loadParser(wasmFile);
105 return { key, parser };
106 }),
107 );
108
109 for (let i = 0; i < results.length; i++) {
110 const result = results[i];
111 const [key, wasmFile] = entries[i];
112 if (result.status === 'fulfilled') {
113 parserMap.set(result.value.key, result.value.parser);
114 } else {
115 console.warn(
116 `[ensureParsers] ${key} (${wasmFile}) failed:`,
117 result.reason,
118 );
119 }
120 }
121
122 initParsers(parserMap);
123 parsersReady = true;
124}
125
126// --- Phase mapping ---
127

Callers 1

runMethod · 0.85

Calls 3

initParsersFunction · 0.90
loadParserFunction · 0.85
initMethod · 0.65

Tested by

no test coverage detected