UNPKG

lakutata

Version:

An IoC-based universal application framework.

42 lines (31 loc) 1.01 kB
/* Build Date: Mon Jan 05 2026 23:52:23 GMT+0800 (China Standard Time) */ "use strict"; Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" }); const e = require("../../helpers/As.cjs"); const t = Symbol("OWR"); const a = Symbol("OFR"); function n(e) { if (!Reflect.hasOwnMetadata(a, e)) Reflect.defineMetadata(a, new FinalizationRegistry(a => { const n = Reflect.getOwnMetadata(t, e) || new Set; n.delete(a); Reflect.defineMetadata(t, n, e); }), e); if (!Reflect.hasOwnMetadata(t, e)) Reflect.defineMetadata(t, new Set, e); return Reflect.getOwnMetadata(t, e); } function c(c, f) { const s = n(c); const d = new WeakRef(f); e.As(Reflect.getOwnMetadata(a, c)).register(f, d); s.add(d); Reflect.defineMetadata(t, s, c); } function f(e) { if (!Reflect.hasOwnMetadata(t, e)) return; Reflect.deleteMetadata(t, e); } exports.AppendObjectWeakRefs = c; exports.ClearObjectWeakRefs = f; exports.GetObjectWeakRefs = n;