UNPKG

@stdlib/esm

Version:

ES module distribution for Stdlib, a standard library for JavaScript and Node.js.

3 lines 1.14 kB
// This file is a part of stdlib. License is Apache-2.0: http://www.apache.org/licenses/LICENSE-2.0 import e from"./../assert/is-plain-object.js";import o from"./../assert/has-own-property.js";import r from"./ctor.js";var n=!0,d="throw",t={codegen:n,mode:d},m=["codegen","mode","submode"],s=m,u=s.length,i=u-1;function a(e,o){var r,n;for(r=e+";",n=0;n<u;n++)r+=s[n]+"="+JSON.stringify(o[s[n]]),n<i&&(r+=",");return r}function c(){return{}}var f=e,g=o,p=r,h=t,b=a,l=c,v=l();function j(e,o,r){var n,d,t,m,s,u;if(d={},arguments.length>2){if(!f(r))throw new TypeError("invalid argument. Options argument must be an object. Value: `"+r+"`.");g(r,"codegen")?d.codegen=r.codegen:d.codegen=h.codegen,g(r,"mode")?d.mode=r.mode:d.mode=h.mode,g(r,"submode")?d.submode=r.submode:d.submode=[d.mode]}else d.codegen=h.codegen,d.mode=h.mode,d.submode=[d.mode];if(t=b(e,d),void 0===(n=v[t])){for(s=p(e,o,d),n=[],u=0;u<o-1;u++)n.push(!1);return n.push(s),v[t]=n,s}if(o<=(m=n.length))!1===(s=n[o-1])&&(s=p(e,o,d),n[o-1]=s);else{for(u=m+1;u<o;u++)n.push(!1);s=p(e,o,d),n.push(s)}return s}var w=j;export default w; //# sourceMappingURL=memoized-ctor.js.map