privy
Version:
Private Members for Objects in JavaScript
1 lines • 581 B
JavaScript
"undefined"!=typeof window.Privy?console.error("Unable to load: another Privy already exists."):window.Privy=function(){"use strict";var r=function(){var r,n;return{seal:function(t){return r=t,n={}},open:function(t){var e=r;return t===n?(r=null,e):void 0}}}(),n=r.seal,t=r.open,e=Object.prototype.hasOwnProperty,o=function(r){var t=this.property;if(e.call(r,t))throw new Error("Object already has a property '"+t+"'");var o={};return r[t]=function(){return n(o)},o},i=function(r){var n=r||"_",e=function(r){return t(r[n]())};return e.initiate=o,e.property=n,e};return{create:i}}();