first commit
This commit is contained in:
40
app_vue/node_modules/webpack/lib/serialization/SetObjectSerializer.js
generated
vendored
Normal file
40
app_vue/node_modules/webpack/lib/serialization/SetObjectSerializer.js
generated
vendored
Normal file
@ -0,0 +1,40 @@
|
||||
/*
|
||||
MIT License http://www.opensource.org/licenses/mit-license.php
|
||||
*/
|
||||
|
||||
"use strict";
|
||||
|
||||
/** @typedef {import("./ObjectMiddleware").ObjectDeserializerContext} ObjectDeserializerContext */
|
||||
/** @typedef {import("./ObjectMiddleware").ObjectSerializerContext} ObjectSerializerContext */
|
||||
|
||||
class SetObjectSerializer {
|
||||
/**
|
||||
* @template T
|
||||
* @param {Set<T>} obj set
|
||||
* @param {ObjectSerializerContext} context context
|
||||
*/
|
||||
serialize(obj, context) {
|
||||
context.write(obj.size);
|
||||
for (const value of obj) {
|
||||
context.write(value);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @template T
|
||||
* @param {ObjectDeserializerContext} context context
|
||||
* @returns {Set<T>} date
|
||||
*/
|
||||
deserialize(context) {
|
||||
/** @type {number} */
|
||||
const size = context.read();
|
||||
/** @type {Set<T>} */
|
||||
const set = new Set();
|
||||
for (let i = 0; i < size; i++) {
|
||||
set.add(context.read());
|
||||
}
|
||||
return set;
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = SetObjectSerializer;
|
Reference in New Issue
Block a user