serde-ts/dist/registry.js

29 lines
1 KiB
JavaScript

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.registerDeserialize = exports.registerSerialize = exports.GlobalRegistry = exports.Registry = void 0;
class Registry {
constructor() {
Object.defineProperty(this, "serializers", {
enumerable: true,
configurable: true,
writable: true,
value: new Map()
});
Object.defineProperty(this, "deserializers", {
enumerable: true,
configurable: true,
writable: true,
value: new Map()
});
}
registerSerialize(ctor, serialize) {
this.serializers.set(ctor, serialize);
}
registerDeserialize(ctor, deserialize) {
this.deserializers.set(ctor, deserialize);
}
}
exports.Registry = Registry;
exports.GlobalRegistry = new Registry();
exports.registerSerialize = exports.GlobalRegistry.registerSerialize.bind(exports.GlobalRegistry);
exports.registerDeserialize = exports.GlobalRegistry.registerDeserialize.bind(exports.GlobalRegistry);