feat(LocalModuleDependency): make serializable

This commit is contained in:
Michael Ciniawsky 2018-10-11 17:05:51 +02:00 committed by Tobias Koppers
parent 65517658af
commit 9ea49b2a05
1 changed files with 28 additions and 0 deletions

View File

@ -5,6 +5,7 @@
"use strict";
const makeSerializable = require("../util/makeSerializable");
const NullDependency = require("./NullDependency");
/** @typedef {import("webpack-sources").ReplaceSource} ReplaceSource */
@ -14,13 +15,40 @@ const NullDependency = require("./NullDependency");
class LocalModuleDependency extends NullDependency {
constructor(localModule, range, callNew) {
super();
localModule.flagUsed();
this.localModule = localModule;
this.range = range;
this.callNew = callNew;
}
serialize(context) {
const { write } = context;
write(this.localModule);
write(this.range);
write(this.callNew);
super.serialize(context);
}
deserialize(context) {
const { read } = context;
this.localModule = read();
this.range = read();
this.callNew = read();
super.deserialize(context);
}
}
makeSerializable(
LocalModuleDependency,
"webpack/lib/dependencies/LocalModuleDependency"
);
LocalModuleDependency.Template = class LocalModuleDependencyTemplate extends NullDependency.Template {
/**
* @param {Dependency} dependency the dependency for which the template should be applied