MCPcopy
hub / github.com/webpack/webpack / checkResolveResultsValid

Method checkResolveResultsValid

lib/FileSystemInfo.js:2375–2450  ·  view source on GitHub ↗

* Checks resolve results valid. * @param {ResolveResults} resolveResults results from resolving * @param {(err?: Error | null, result?: boolean) => void} callback callback with true when resolveResults resolve the same way * @returns {void}

(resolveResults, callback)

Source from the content-addressed store, hash-verified

2373 * @returns {void}
2374 */
2375 checkResolveResultsValid(resolveResults, callback) {
2376 const { resolveCjs, resolveCjsAsChild, resolveEsm, resolveContext } =
2377 this._createBuildDependenciesResolvers();
2378 asyncLib.eachLimit(
2379 resolveResults,
2380 20,
2381 ([key, expectedResult], callback) => {
2382 const [type, context, path] = key.split("\n");
2383 switch (type) {
2384 case "d":
2385 resolveContext(context, path, {}, (err, _, result) => {
2386 if (expectedResult === false) {
2387 return callback(err ? undefined : INVALID);
2388 }
2389 if (err) return callback(err);
2390 const resultPath = /** @type {ResolveRequest} */ (result).path;
2391 if (resultPath !== expectedResult) return callback(INVALID);
2392 callback();
2393 });
2394 break;
2395 case "f":
2396 resolveCjs(context, path, {}, (err, _, result) => {
2397 if (expectedResult === false) {
2398 return callback(err ? undefined : INVALID);
2399 }
2400 if (err) return callback(err);
2401 const resultPath = /** @type {ResolveRequest} */ (result).path;
2402 if (resultPath !== expectedResult) return callback(INVALID);
2403 callback();
2404 });
2405 break;
2406 case "c":
2407 resolveCjsAsChild(context, path, {}, (err, _, result) => {
2408 if (expectedResult === false) {
2409 return callback(err ? undefined : INVALID);
2410 }
2411 if (err) return callback(err);
2412 const resultPath = /** @type {ResolveRequest} */ (result).path;
2413 if (resultPath !== expectedResult) return callback(INVALID);
2414 callback();
2415 });
2416 break;
2417 case "e":
2418 resolveEsm(context, path, {}, (err, _, result) => {
2419 if (expectedResult === false) {
2420 return callback(err ? undefined : INVALID);
2421 }
2422 if (err) return callback(err);
2423 const resultPath = /** @type {ResolveRequest} */ (result).path;
2424 if (resultPath !== expectedResult) return callback(INVALID);
2425 callback();
2426 });
2427 break;
2428 default:
2429 callback(new Error("Unexpected type in resolve result key"));
2430 break;
2431 }
2432 },

Callers 2

_openPackMethod · 0.80

Calls 3

splitMethod · 0.80
callbackFunction · 0.50

Tested by

no test coverage detected