MCPcopy
hub / github.com/webpack/webpack / _createModuleHash

Method _createModuleHash

lib/Compilation.js:4786–4817  ·  view source on GitHub ↗

* Create module hash. * @private * @param {Module} module module * @param {ChunkGraph} chunkGraph the chunk graph * @param {RuntimeSpec} runtime runtime * @param {HashFunction} hashFunction hash function * @param {RuntimeTemplate} runtimeTemplate runtime template * @param {HashDigest}

(
		module,
		chunkGraph,
		runtime,
		hashFunction,
		runtimeTemplate,
		hashDigest,
		hashDigestLength,
		errors
	)

Source from the content-addressed store, hash-verified

4784 * @returns {string} module hash digest
4785 */
4786 _createModuleHash(
4787 module,
4788 chunkGraph,
4789 runtime,
4790 hashFunction,
4791 runtimeTemplate,
4792 hashDigest,
4793 hashDigestLength,
4794 errors
4795 ) {
4796 /** @type {string} */
4797 let moduleHashDigest;
4798 try {
4799 const moduleHash = createHash(hashFunction);
4800 module.updateHash(moduleHash, {
4801 chunkGraph,
4802 runtime,
4803 runtimeTemplate
4804 });
4805 moduleHashDigest = moduleHash.digest(hashDigest);
4806 } catch (err) {
4807 errors.push(new ModuleHashingError(module, /** @type {Error} */ (err)));
4808 moduleHashDigest = "XXXXXX";
4809 }
4810 chunkGraph.setModuleHashes(
4811 module,
4812 runtime,
4813 moduleHashDigest,
4814 moduleHashDigest.slice(0, hashDigestLength)
4815 );
4816 return moduleHashDigest;
4817 }
4818
4819 createHash() {
4820 this.logger.time("hashing: initialize hash");

Callers 3

createModuleHashesMethod · 0.95
processChunkMethod · 0.95
executeModuleMethod · 0.95

Calls 6

createHashFunction · 0.85
setModuleHashesMethod · 0.80
sliceMethod · 0.80
updateHashMethod · 0.45
digestMethod · 0.45
pushMethod · 0.45

Tested by

no test coverage detected