/
TON618OFF
/
FinalPWHTML
Обзор
Документация
Войти
/
TON618OFF
/
FinalPWHTML
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
node_modules/webpack/lib/serialization/MapObjectSerializer.js
47 строк
1 KB
TON618OFF
не ну это ваще
23 июн 2024, 00:30
23 июн 2024, 00:30
e27ae20
Код
Авторство
О чём код?
/* MIT License http://www.opensource.org/licenses/mit-license.php */ "use strict"; /** @typedef {import("./ObjectMiddleware").ObjectDeserializerContext} ObjectDeserializerContext */ /** @typedef {import("./ObjectMiddleware").ObjectSerializerContext} ObjectSerializerContext */ class MapObjectSerializer { /** * @template K, V * @param {Map<K, V>} obj map * @param {ObjectSerializerContext} context context */ serialize(obj, context) { context.write(obj.size); for (const key of obj.keys()) { context.write(key); } for (const value of obj.values()) { context.write(value); } } /** * @template K, V * @param {ObjectDeserializerContext} context context * @returns {Map<K, V>} map */ deserialize(context) { /** @type {number} */ let size = context.read(); /** @type {Map<K, V>} */ const map = new Map(); /** @type {K[]} */ const keys = []; for (let i = 0; i < size; i++) { keys.push(context.read()); } for (let i = 0; i < size; i++) { map.set(keys[i], context.read()); } return map; } } module.exports = MapObjectSerializer;