Files
NetMesh/domain/convergentSync/record.ts

26 lines
502 B
TypeScript
Raw Normal View History

export function createEmptyRecord<T>(): Record<string, T> {
return {};
}
export function getOwnRecordValue<T>(
record: Record<string, T>,
key: string,
): T | undefined {
return Object.prototype.hasOwnProperty.call(record, key)
? record[key]
: undefined;
}
export function setOwnRecordValue<T>(
record: Record<string, T>,
key: string,
value: T,
): void {
Object.defineProperty(record, key, {
configurable: true,
enumerable: true,
value,
writable: true,
});
}