29 lines
1 KiB
JavaScript
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);
|