@stdlib/esm
Version:
ES module distribution for Stdlib, a standard library for JavaScript and Node.js.
3 lines • 2.35 kB
JavaScript
// This file is a part of stdlib. License is Apache-2.0: http://www.apache.org/licenses/LICENSE-2.0
import e from"./../../utils/define-nonenumerable-read-only-property.js";import n from"./../../utils/define-nonenumerable-read-only-accessor.js";import t from"./../../utils/define-nonenumerable-read-write-accessor.js";import r from"./../../assert/is-positive-number.js";import o from"./../../assert/is-plain-object.js";import i from"./../../assert/is-function.js";import s from"./../../assert/has-own-property.js";import a from"./../../utils/constant-function.js";import u from"./../../utils/noop.js";import p from"./../../math/base/assert/is-nan.js";import m from"./gamma.js";import f from"./../../array/to-json.js";var l=e,g=n,c=t,d=r.isPrimitive,h=o,b=i,j=s,y=a,v=u,w=p,L=m.factory,N=f;function E(){var e,n,t,r,o;if(0===arguments.length)e=L();else if(1===arguments.length&&h(arguments[0]))if(j(t=arguments[0],"prng")){if(!b(t.prng))throw new TypeError("invalid option. `prng` option must be a pseudorandom number generator function. Option: `"+t.prng+"`.");e=L({prng:t.prng})}else e=L(t);else{if(!d(o=arguments[0]))throw new TypeError("invalid argument. First argument must be a positive number. Value: `"+o+"`.");if(arguments.length>1){if(!h(t=arguments[1]))throw new TypeError("invalid argument. Options argument must be an object. Value: `"+t+"`.");if(j(t,"prng")){if(!b(t.prng))throw new TypeError("invalid option. `prng` option must be a pseudorandom number generator function. Option: `"+t.prng+"`.");e=L(o/2,.5,{prng:t.prng})}else e=L(o/2,.5,t)}else e=L(o/2,.5)}return r=void 0===o?O:E,n=e.PRNG,l(r,"NAME","chisquare"),t&&t.prng?(l(r,"seed",null),l(r,"seedLength",null),c(r,"state",y(null),v),l(r,"stateLength",null),l(r,"byteLength",null),l(r,"toJSON",y(null))):(g(r,"seed",i),g(r,"seedLength",s),c(r,"state",p,m),g(r,"stateLength",a),g(r,"byteLength",u),l(r,"toJSON",f)),l(r,"PRNG",n),r;function i(){return n.seed}function s(){return n.seedLength}function a(){return n.stateLength}function u(){return n.byteLength}function p(){return n.state}function m(e){n.state=e}function f(){var e={type:"PRNG"};return e.name=r.NAME,e.state=N(n.state),e.params=void 0===o?[]:[o],e}function E(){return e()}function O(n){return w(n)||n<=0?NaN:e(n/2,.5)}}var O=E,P=O(),T=e,G=P,R=E;T(G,"factory",R);export default G;
//# sourceMappingURL=chisquare.js.map