summaryrefslogtreecommitdiff
path: root/node_modules/webpack/lib/ModuleFactory.js
diff options
context:
space:
mode:
Diffstat (limited to 'node_modules/webpack/lib/ModuleFactory.js')
-rw-r--r--node_modules/webpack/lib/ModuleFactory.js50
1 files changed, 50 insertions, 0 deletions
diff --git a/node_modules/webpack/lib/ModuleFactory.js b/node_modules/webpack/lib/ModuleFactory.js
new file mode 100644
index 00000000..1d889c81
--- /dev/null
+++ b/node_modules/webpack/lib/ModuleFactory.js
@@ -0,0 +1,50 @@
+/*
+ MIT License http://www.opensource.org/licenses/mit-license.php
+ Author Tobias Koppers @sokra
+*/
+
+"use strict";
+
+/** @typedef {import("../declarations/WebpackOptions").ResolveOptions} ResolveOptions */
+/** @typedef {import("./Dependency")} Dependency */
+/** @typedef {import("./Module")} Module */
+
+/**
+ * @typedef {Object} ModuleFactoryResult
+ * @property {Module=} module the created module or unset if no module was created
+ * @property {Set<string>=} fileDependencies
+ * @property {Set<string>=} contextDependencies
+ * @property {Set<string>=} missingDependencies
+ * @property {boolean=} cacheable allow to use the unsafe cache
+ */
+
+/**
+ * @typedef {Object} ModuleFactoryCreateDataContextInfo
+ * @property {string} issuer
+ * @property {string | null=} issuerLayer
+ * @property {string} compiler
+ */
+
+/**
+ * @typedef {Object} ModuleFactoryCreateData
+ * @property {ModuleFactoryCreateDataContextInfo} contextInfo
+ * @property {ResolveOptions=} resolveOptions
+ * @property {string} context
+ * @property {Dependency[]} dependencies
+ */
+
+class ModuleFactory {
+ /* istanbul ignore next */
+ /**
+ * @abstract
+ * @param {ModuleFactoryCreateData} data data object
+ * @param {function((Error | null)=, ModuleFactoryResult=): void} callback callback
+ * @returns {void}
+ */
+ create(data, callback) {
+ const AbstractMethodError = require("./AbstractMethodError");
+ throw new AbstractMethodError();
+ }
+}
+
+module.exports = ModuleFactory;