UNPKG

gc-hook

Version:

A simplified FinalizationRegistry utility that works

2 lines (1 loc) 437 B
const e=new FinalizationRegistry((([e,t,n])=>{n&&console.debug(`%c${String(t)}`,"font-weight:bold","collected"),e(t)})),t=Object.create(null),n=(n,r,{debug:o,handler:a,return:s,token:c=n}=t)=>{const l=s||new Proxy(n,a||t),u=[l,[r,n,!!o]];return!1!==c&&u.push(c),e.register(...u),l},{entries:r}=Object,o=new WeakSet;var a=e=>{for(const[t,a]of r(e))o.has(a)||(o.add(a),n(t,String,{debug:true,token:false,return:a}))};export{a as default};