diff options
Diffstat (limited to 'node_modules/webpack/lib/WebpackError.js')
| -rw-r--r-- | node_modules/webpack/lib/WebpackError.js | 70 |
1 files changed, 70 insertions, 0 deletions
diff --git a/node_modules/webpack/lib/WebpackError.js b/node_modules/webpack/lib/WebpackError.js new file mode 100644 index 00000000..2cc3a9d2 --- /dev/null +++ b/node_modules/webpack/lib/WebpackError.js @@ -0,0 +1,70 @@ +/* + MIT License http://www.opensource.org/licenses/mit-license.php + Author Jarid Margolin @jaridmargolin +*/ + +"use strict"; + +const inspect = require("util").inspect.custom; +const makeSerializable = require("./util/makeSerializable"); + +/** @typedef {import("./Chunk")} Chunk */ +/** @typedef {import("./Dependency").DependencyLocation} DependencyLocation */ +/** @typedef {import("./Module")} Module */ +/** @typedef {import("./serialization/ObjectMiddleware").ObjectDeserializerContext} ObjectDeserializerContext */ +/** @typedef {import("./serialization/ObjectMiddleware").ObjectSerializerContext} ObjectSerializerContext */ + +class WebpackError extends Error { + /** + * Creates an instance of WebpackError. + * @param {string=} message error message + */ + constructor(message) { + super(message); + + /** @type {string | undefined} */ + this.details = undefined; + /** @type {Module | undefined | null} */ + this.module = undefined; + /** @type {DependencyLocation | undefined} */ + this.loc = undefined; + /** @type {boolean | undefined} */ + this.hideStack = undefined; + /** @type {Chunk | undefined} */ + this.chunk = undefined; + /** @type {string | undefined} */ + this.file = undefined; + } + + [inspect]() { + return this.stack + (this.details ? `\n${this.details}` : ""); + } + + /** + * @param {ObjectSerializerContext} context context + */ + serialize({ write }) { + write(this.name); + write(this.message); + write(this.stack); + write(this.details); + write(this.loc); + write(this.hideStack); + } + + /** + * @param {ObjectDeserializerContext} context context + */ + deserialize({ read }) { + this.name = read(); + this.message = read(); + this.stack = read(); + this.details = read(); + this.loc = read(); + this.hideStack = read(); + } +} + +makeSerializable(WebpackError, "webpack/lib/WebpackError"); + +module.exports = WebpackError; |
