diff --git a/dist/index.js b/dist/index.js index dcc85578..a7e4c79f 100644 --- a/dist/index.js +++ b/dist/index.js @@ -1,4 +1,4 @@ -"use strict";var e=function(r,i){return function(){return i||r((i={exports:{}}).exports,i),i.exports}};var ss=e(function(GX,ts){"use strict";var wI=require("@stdlib/math/base/assert/is-integer"),CI=require("@stdlib/constants/array/max-typed-array-length");function RI(r){return typeof r=="object"&&r!==null&&typeof r.length=="number"&&wI(r.length)&&r.length>=0&&r.length<=CI}ts.exports=RI});var C=e(function(WX,us){"use strict";var LI=ss();us.exports=LI});var pr=e(function(HX,as){"use strict";function FI(r){return typeof r=="number"}as.exports=FI});var os=e(function(XX,ns){"use strict";function kI(){return typeof Symbol=="function"&&typeof Symbol("foo")=="symbol"}ns.exports=kI});var R=e(function(zX,cs){"use strict";var TI=os();cs.exports=TI});var ps=e(function(KX,fs){"use strict";var _I=R(),BI=_I();function UI(){return BI&&typeof Symbol.toStringTag=="symbol"}fs.exports=UI});var d=e(function($X,vs){"use strict";var MI=ps();vs.exports=MI});var ys=e(function(ZX,qs){"use strict";var DI=require("@stdlib/number/ctor"),VI=DI.prototype.toString;qs.exports=VI});var ms=e(function(YX,ls){"use strict";var GI=ys();function WI(r){try{return GI.call(r),!0}catch(i){return!1}}ls.exports=WI});var vr=e(function(JX,xs){"use strict";var HI=d(),XI=require("@stdlib/utils/native-class"),zI=require("@stdlib/number/ctor"),KI=ms(),$I=HI();function ZI(r){return typeof r=="object"?r instanceof zI?!0:$I?KI(r):XI(r)==="[object Number]":!1}xs.exports=ZI});var gs=e(function(QX,bs){"use strict";var YI=pr(),JI=vr();function QI(r){return YI(r)||JI(r)}bs.exports=QI});var p=e(function(r7,Ps){"use strict";var As=require("@stdlib/utils/define-nonenumerable-read-only-property"),qr=gs(),rE=pr(),eE=vr();As(qr,"isPrimitive",rE);As(qr,"isObject",eE);Ps.exports=qr});var yr=e(function(e7,Os){"use strict";var iE=require("@stdlib/constants/float64/pinf"),tE=require("@stdlib/constants/float64/ninf"),sE=require("@stdlib/math/base/assert/is-integer");function uE(r){return rtE&&sE(r)}Os.exports=uE});var lr=e(function(i7,Ss){"use strict";var aE=p().isPrimitive,nE=yr();function oE(r){return aE(r)&&nE(r)}Ss.exports=oE});var mr=e(function(t7,ds){"use strict";var cE=p().isObject,fE=yr();function pE(r){return cE(r)&&fE(r.valueOf())}ds.exports=pE});var js=e(function(s7,hs){"use strict";var vE=lr(),qE=mr();function yE(r){return vE(r)||qE(r)}hs.exports=yE});var v=e(function(u7,Is){"use strict";var Ns=require("@stdlib/utils/define-nonenumerable-read-only-property"),xr=js(),lE=lr(),mE=mr();Ns(xr,"isPrimitive",lE);Ns(xr,"isObject",mE);Is.exports=xr});var br=e(function(a7,Es){"use strict";function xE(r){return typeof r=="string"}Es.exports=xE});var Cs=e(function(n7,ws){"use strict";var bE=String.prototype.valueOf;ws.exports=bE});var Ls=e(function(o7,Rs){"use strict";var gE=Cs();function AE(r){try{return gE.call(r),!0}catch(i){return!1}}Rs.exports=AE});var gr=e(function(c7,Fs){"use strict";var PE=d(),OE=require("@stdlib/utils/native-class"),SE=Ls(),dE=PE();function hE(r){return typeof r=="object"?r instanceof String?!0:dE?SE(r):OE(r)==="[object String]":!1}Fs.exports=hE});var Ts=e(function(f7,ks){"use strict";var jE=br(),NE=gr();function IE(r){return jE(r)||NE(r)}ks.exports=IE});var f=e(function(p7,Bs){"use strict";var _s=require("@stdlib/utils/define-nonenumerable-read-only-property"),Ar=Ts(),EE=br(),wE=gr();_s(Ar,"isPrimitive",EE);_s(Ar,"isObject",wE);Bs.exports=Ar});var Pr=e(function(v7,Us){"use strict";var CE=p().isPrimitive,RE=require("@stdlib/math/base/assert/is-nan");function LE(r){return CE(r)&&RE(r)}Us.exports=LE});var Or=e(function(q7,Ms){"use strict";var FE=p().isObject,kE=require("@stdlib/math/base/assert/is-nan");function TE(r){return FE(r)&&kE(r.valueOf())}Ms.exports=TE});var Vs=e(function(y7,Ds){"use strict";var _E=Pr(),BE=Or();function UE(r){return _E(r)||BE(r)}Ds.exports=UE});var L=e(function(l7,Ws){"use strict";var Gs=require("@stdlib/utils/define-nonenumerable-read-only-property"),Sr=Vs(),ME=Pr(),DE=Or();Gs(Sr,"isPrimitive",ME);Gs(Sr,"isObject",DE);Ws.exports=Sr});var zs=e(function(m7,Xs){"use strict";var VE=C(),GE=v().isPrimitive,dr=f().isPrimitive,Hs=L().isPrimitive,hr=require("@stdlib/string/format");function WE(r,i,t){var a,n,c;if(!VE(r)&&!dr(r))throw new TypeError(hr("invalid argument. First argument must be array-like. Value: `%s`.",r));if(arguments.length<2)throw new Error("insufficient arguments. Must provide a search value.");if(arguments.length>2){if(!GE(t))throw new TypeError(hr("invalid argument. Third argument must be an integer. Value: `%s`.",t));n=t,n<0&&(n=0)}else n=0;if(dr(r)){if(!dr(i))throw new TypeError(hr("invalid argument. Second argument must be a string. Value: `%s`.",i));return r.indexOf(i,n)!==-1}if(a=r.length,Hs(i)){for(c=n;c2&&(o=uw(c,t),o))throw o;return r==null?!1:(a?n=i.split(c.sep):n=i,nw(r,n))}Ku.exports=ow});var Yu=e(function(Z7,Zu){"use strict";var cw=f().isPrimitive,fw=x(),pw=require("@stdlib/string/format"),vw=wr(),qw=Cr(),yw=Rr();function lw(r,i){var t,a,n,c;if(t=cw(r),!t&&!fw(r))throw new TypeError(pw("invalid argument. Key path must be a string or a key array. Value: `%s`.",r));if(n=qw(),arguments.length>1&&(c=vw(n,i),c))throw c;return t?a=r.split(n.sep):a=r,o;function o(y){return y==null?!1:yw(y,a)}}Zu.exports=lw});var ra=e(function(Y7,Qu){"use strict";var mw=require("@stdlib/utils/define-nonenumerable-read-only-property"),Ju=$u(),xw=Yu();mw(Ju,"factory",xw);Qu.exports=Ju});var Lr=e(function(J7,ia){"use strict";var bw=f().isPrimitive,gw=b(),Aw=m(),ea=require("@stdlib/string/format");function Pw(r,i){return gw(i)?Aw(i,"sep")&&(r.sep=i.sep,!bw(r.sep))?new TypeError(ea("invalid option. `%s` option must be a string. Option: `%s`.","sep",r.sep)):null:new TypeError(ea("invalid argument. Options argument must be an object. Value: `%s`.",i))}ia.exports=Pw});var Fr=e(function(Q7,ta){"use strict";function Ow(){return{sep:"."}}ta.exports=Ow});var ua=e(function(rz,sa){"use strict";function Sw(r,i){return r==null?!1:typeof i=="symbol"?i in Object(r):String(i)in Object(r)}sa.exports=Sw});var kr=e(function(ez,aa){"use strict";var dw=ua();aa.exports=dw});var Tr=e(function(iz,na){"use strict";var hw=kr();function jw(r,i){var t=i.length,a;if(t===0)return!1;for(a=0;a2&&(o=ww(c,t),o))throw o;return r==null?!1:(a?n=i.split(c.sep):n=i,Rw(r,n))}oa.exports=Lw});var pa=e(function(sz,fa){"use strict";var Fw=f().isPrimitive,kw=x(),Tw=require("@stdlib/string/format"),_w=Lr(),Bw=Fr(),Uw=Tr();function Mw(r,i){var t,a,n,c;if(t=Fw(r),!t&&!kw(r))throw new TypeError(Tw("invalid argument. Key path must be a string or a key array. Value: `%s`.",r));if(n=Bw(),arguments.length>1&&(c=_w(n,i),c))throw c;return t?a=r.split(n.sep):a=r,o;function o(y){return y==null?!1:Uw(y,a)}}fa.exports=Mw});var ya=e(function(uz,qa){"use strict";var Dw=require("@stdlib/utils/define-nonenumerable-read-only-property"),va=ca(),Vw=pa();Dw(va,"factory",Vw);qa.exports=va});var ma=e(function(az,la){"use strict";var Gw=require("@stdlib/utils/native-class"),Ww=typeof ArrayBuffer=="function";function Hw(r){return Ww&&r instanceof ArrayBuffer||Gw(r)==="[object ArrayBuffer]"}la.exports=Hw});var _r=e(function(nz,xa){"use strict";var Xw=ma();xa.exports=Xw});var ga=e(function(oz,ba){"use strict";var zw=typeof ArrayBuffer=="function"?ArrayBuffer:null;ba.exports=zw});var Pa=e(function(cz,Aa){"use strict";var Kw=_r(),$w=require("@stdlib/array/float64"),G=ga();function Zw(){var r,i,t;if(typeof G!="function")return!1;try{t=new G(16),r=Kw(t)&&typeof G.isView=="function",r&&(i=new $w(t),i[0]=-3.14,i[1]=NaN,r=r&&G.isView(i)&&t.byteLength===16&&i[0]===-3.14&&i[1]!==i[1])}catch(a){r=!1}return r}Aa.exports=Zw});var Br=e(function(fz,Oa){"use strict";var Yw=Pa();Oa.exports=Yw});var da=e(function(pz,Sa){"use strict";var Jw=require("@stdlib/utils/eval");function Qw(){var r;try{Jw('"use strict"; (() => {})'),r=!0}catch(i){r=!1}return r}Sa.exports=Qw});var ja=e(function(vz,ha){"use strict";var rC=da();ha.exports=rC});var Ia=e(function(qz,Na){"use strict";var eC=require("@stdlib/utils/eval");function iC(){var r;try{eC('"use strict"; async () => {}'),r=!0}catch(i){r=!1}return r}Na.exports=iC});var wa=e(function(yz,Ea){"use strict";var tC=Ia();Ea.exports=tC});var Ra=e(function(lz,Ca){"use strict";var sC=m();function uC(){return typeof Symbol=="function"&&typeof Symbol("foo")=="symbol"&&sC(Symbol,"asyncIterator")&&typeof Symbol.asyncIterator=="symbol"}Ca.exports=uC});var Fa=e(function(mz,La){"use strict";var aC=Ra();La.exports=aC});var _a=e(function(xz,Ta){"use strict";var nC=require("@stdlib/utils/global"),ka=nC();function oC(){return typeof ka.BigInt=="function"&&typeof BigInt=="function"&&typeof ka.BigInt("1")=="bigint"&&typeof BigInt("1")=="bigint"}Ta.exports=oC});var Ur=e(function(bz,Ba){"use strict";var cC=_a();Ba.exports=cC});var Ma=e(function(gz,Ua){"use strict";var fC=require("@stdlib/utils/native-class"),pC=typeof BigInt64Array=="function";function vC(r){return pC&&r instanceof BigInt64Array||fC(r)==="[object BigInt64Array]"}Ua.exports=vC});var Mr=e(function(Az,Da){"use strict";var qC=Ma();Da.exports=qC});var Dr=e(function(Pz,Va){"use strict";function yC(r){return typeof r=="bigint"}Va.exports=yC});var Wa=e(function(Oz,Ga){"use strict";function lC(r){try{return typeof r.valueOf()=="bigint"}catch(i){return!1}}Ga.exports=lC});var Vr=e(function(Sz,Ha){"use strict";var mC=require("@stdlib/utils/native-class"),xC=Wa();function bC(r){return typeof r=="object"&&mC(r)==="[object BigInt]"&&xC(r)}Ha.exports=bC});var za=e(function(dz,Xa){"use strict";var gC=Dr(),AC=Vr();function PC(r){return gC(r)||AC(r)}Xa.exports=PC});var Za=e(function(hz,$a){"use strict";var Ka=require("@stdlib/utils/define-nonenumerable-read-only-property"),Gr=za(),OC=Dr(),SC=Vr();Ka(Gr,"isPrimitive",OC);Ka(Gr,"isObject",SC);$a.exports=Gr});var Qa=e(function(jz,Ja){"use strict";var Ya=require("@stdlib/utils/define-nonenumerable-read-only-property"),Wr=require("@stdlib/utils/constant-function"),Hr=Wr(!1),dC=Wr(!1),hC=Wr(!1);Ya(Hr,"isPrimitive",dC);Ya(Hr,"isObject",hC);Ja.exports=Hr});var W=e(function(Nz,rn){"use strict";var jC=Ur(),NC=Za(),IC=Qa(),Xr;jC()?Xr=NC:Xr=IC;rn.exports=Xr});var tn=e(function(Iz,en){"use strict";var EC=typeof BigInt64Array=="function"?BigInt64Array:null;en.exports=EC});var cn=e(function(Ez,on){"use strict";var wC=Mr(),sn=W(),un=tn(),an="9007199254740991",nn="9007199254740993";function CC(){var r;if(typeof un!="function")return!1;try{return r=new un([an,nn]),wC(r)&&sn(r[0])&&r[0].toString()===an&&sn(r[1])&&r[1].toString()===nn}catch(i){return!1}}on.exports=CC});var pn=e(function(wz,fn){"use strict";var RC=cn();fn.exports=RC});var qn=e(function(Cz,vn){"use strict";var LC=require("@stdlib/utils/native-class"),FC=typeof BigUint64Array=="function";function kC(r){return FC&&r instanceof BigUint64Array||LC(r)==="[object BigUint64Array]"}vn.exports=kC});var zr=e(function(Rz,yn){"use strict";var TC=qn();yn.exports=TC});var mn=e(function(Lz,ln){"use strict";var _C=typeof BigUint64Array=="function"?BigUint64Array:null;ln.exports=_C});var On=e(function(Fz,Pn){"use strict";var BC=zr(),xn=W(),bn=mn(),gn="9223372036854775807",An="9223372036854775809";function UC(){var r;if(typeof bn!="function")return!1;try{return r=new bn([gn,An]),BC(r)&&xn(r[0])&&r[0].toString()===gn&&xn(r[1])&&r[1].toString()===An}catch(i){return!1}}Pn.exports=UC});var dn=e(function(kz,Sn){"use strict";var MC=On();Sn.exports=MC});var jn=e(function(Tz,hn){"use strict";var DC=require("@stdlib/utils/eval");function VC(){var r;try{DC('"use strict"; class A{};'),r=!0}catch(i){r=!1}return r}hn.exports=VC});var In=e(function(_z,Nn){"use strict";var GC=jn();Nn.exports=GC});var wn=e(function(Bz,En){"use strict";var WC=require("@stdlib/utils/native-class"),HC=typeof DataView=="function";function XC(r){return HC&&r instanceof DataView||WC(r)==="[object DataView]"}En.exports=XC});var H=e(function(Uz,Cn){"use strict";var zC=wn();Cn.exports=zC});var Ln=e(function(Mz,Rn){"use strict";var KC=typeof DataView=="function"?DataView:null;Rn.exports=KC});var Tn=e(function(Dz,kn){"use strict";var $C=H(),ZC=require("@stdlib/array/buffer"),Fn=Ln();function YC(){var r,i,t;if(typeof Fn!="function")return!1;try{t=new ZC(24),i=new Fn(t,8),r=$C(i)&&typeof i.getFloat64=="function"&&typeof i.setFloat64=="function",r&&(i.setFloat64(0,-3.14),i.setFloat64(8,NaN),r=r&&i.buffer===t&&i.byteLength===16&&i.byteOffset===8&&i.getFloat64(0)===-3.14&&i.getFloat64(8)!==i.getFloat64(8))}catch(a){r=!1}return r}kn.exports=YC});var Bn=e(function(Vz,_n){"use strict";var JC=Tn();_n.exports=JC});var Mn=e(function(Gz,Un){"use strict";var QC=typeof Object.defineProperties=="function"?Object.defineProperties:null;Un.exports=QC});var Vn=e(function(Wz,Dn){"use strict";var r2=Mn();function e2(){try{return r2({},{x:{}}),!0}catch(r){return!1}}Dn.exports=e2});var Wn=e(function(Hz,Gn){"use strict";var i2=Vn();Gn.exports=i2});var Xn=e(function(Xz,Hn){"use strict";var t2=typeof Object.defineProperty=="function"?Object.defineProperty:null;Hn.exports=t2});var Kn=e(function(zz,zn){"use strict";var s2=Xn();function u2(){try{return s2({},"x",{}),!0}catch(r){return!1}}zn.exports=u2});var Zn=e(function(Kz,$n){"use strict";var a2=Kn();$n.exports=a2});var Jn=e(function($z,Yn){"use strict";var n2=require("@stdlib/utils/native-class"),o2=typeof Float32Array=="function";function c2(r){return o2&&r instanceof Float32Array||n2(r)==="[object Float32Array]"}Yn.exports=c2});var X=e(function(Zz,Qn){"use strict";var f2=Jn();Qn.exports=f2});var eo=e(function(Yz,ro){"use strict";var p2=typeof Float32Array=="function"?Float32Array:null;ro.exports=p2});var so=e(function(Jz,to){"use strict";var v2=X(),q2=require("@stdlib/constants/float64/pinf"),io=eo();function y2(){var r,i;if(typeof io!="function")return!1;try{i=new io([1,3.14,-3.14,5e40]),r=v2(i)&&i[0]===1&&i[1]===3.140000104904175&&i[2]===-3.140000104904175&&i[3]===q2}catch(t){r=!1}return r}to.exports=y2});var ao=e(function(Qz,uo){"use strict";var l2=so();uo.exports=l2});var oo=e(function(rK,no){"use strict";var m2=require("@stdlib/utils/native-class"),x2=typeof Float64Array=="function";function b2(r){return x2&&r instanceof Float64Array||m2(r)==="[object Float64Array]"}no.exports=b2});var z=e(function(eK,co){"use strict";var g2=oo();co.exports=g2});var po=e(function(iK,fo){"use strict";var A2=typeof Float64Array=="function"?Float64Array:null;fo.exports=A2});var yo=e(function(tK,qo){"use strict";var P2=z(),vo=po();function O2(){var r,i;if(typeof vo!="function")return!1;try{i=new vo([1,3.14,-3.14,NaN]),r=P2(i)&&i[0]===1&&i[1]===3.14&&i[2]===-3.14&&i[3]!==i[3]}catch(t){r=!1}return r}qo.exports=O2});var Kr=e(function(sK,lo){"use strict";var S2=yo();lo.exports=S2});var xo=e(function(uK,mo){"use strict";function d2(){}mo.exports=d2});var go=e(function(aK,bo){"use strict";var h2=xo();function j2(){return h2.name==="foo"}bo.exports=j2});var Po=e(function(nK,Ao){"use strict";var N2=go();Ao.exports=N2});var So=e(function(oK,Oo){"use strict";var I2=require("@stdlib/utils/eval");function E2(){var r;try{I2('"use strict"; (function* () {})'),r=!0}catch(i){r=!1}return r}Oo.exports=E2});var $r=e(function(cK,ho){"use strict";var w2=So();ho.exports=w2});var No=e(function(fK,jo){"use strict";function C2(){return typeof globalThis=="object"&&typeof globalThis.setTimeout=="function"}jo.exports=C2});var Eo=e(function(pK,Io){"use strict";var R2=No();Io.exports=R2});var Co=e(function(vK,wo){"use strict";var L2=require("@stdlib/utils/native-class"),F2=typeof Int8Array=="function";function k2(r){return F2&&r instanceof Int8Array||L2(r)==="[object Int8Array]"}wo.exports=k2});var Zr=e(function(qK,Ro){"use strict";var T2=Co();Ro.exports=T2});var Fo=e(function(yK,Lo){"use strict";var _2=typeof Int8Array=="function"?Int8Array:null;Lo.exports=_2});var _o=e(function(lK,To){"use strict";var B2=Zr(),U2=require("@stdlib/constants/int8/max"),M2=require("@stdlib/constants/int8/min"),ko=Fo();function D2(){var r,i;if(typeof ko!="function")return!1;try{i=new ko([1,3.14,-3.14,U2+1]),r=B2(i)&&i[0]===1&&i[1]===3&&i[2]===-3&&i[3]===M2}catch(t){r=!1}return r}To.exports=D2});var Uo=e(function(mK,Bo){"use strict";var V2=_o();Bo.exports=V2});var Do=e(function(xK,Mo){"use strict";var G2=require("@stdlib/utils/native-class"),W2=typeof Int16Array=="function";function H2(r){return W2&&r instanceof Int16Array||G2(r)==="[object Int16Array]"}Mo.exports=H2});var Yr=e(function(bK,Vo){"use strict";var X2=Do();Vo.exports=X2});var Wo=e(function(gK,Go){"use strict";var z2=typeof Int16Array=="function"?Int16Array:null;Go.exports=z2});var zo=e(function(AK,Xo){"use strict";var K2=Yr(),$2=require("@stdlib/constants/int16/max"),Z2=require("@stdlib/constants/int16/min"),Ho=Wo();function Y2(){var r,i;if(typeof Ho!="function")return!1;try{i=new Ho([1,3.14,-3.14,$2+1]),r=K2(i)&&i[0]===1&&i[1]===3&&i[2]===-3&&i[3]===Z2}catch(t){r=!1}return r}Xo.exports=Y2});var $o=e(function(PK,Ko){"use strict";var J2=zo();Ko.exports=J2});var Yo=e(function(OK,Zo){"use strict";var Q2=require("@stdlib/utils/native-class"),rR=typeof Int32Array=="function";function eR(r){return rR&&r instanceof Int32Array||Q2(r)==="[object Int32Array]"}Zo.exports=eR});var Jr=e(function(SK,Jo){"use strict";var iR=Yo();Jo.exports=iR});var rc=e(function(dK,Qo){"use strict";var tR=typeof Int32Array=="function"?Int32Array:null;Qo.exports=tR});var tc=e(function(hK,ic){"use strict";var sR=Jr(),uR=require("@stdlib/constants/int32/max"),aR=require("@stdlib/constants/int32/min"),ec=rc();function nR(){var r,i;if(typeof ec!="function")return!1;try{i=new ec([1,3.14,-3.14,uR+1]),r=sR(i)&&i[0]===1&&i[1]===3&&i[2]===-3&&i[3]===aR}catch(t){r=!1}return r}ic.exports=nR});var uc=e(function(jK,sc){"use strict";var oR=tc();sc.exports=oR});var nc=e(function(NK,ac){"use strict";var cR=m(),K=require("@stdlib/symbol/ctor");function fR(){return typeof K=="function"&&typeof K("foo")=="symbol"&&cR(K,"iterator")&&typeof K.iterator=="symbol"}ac.exports=fR});var Qr=e(function(IK,oc){"use strict";var pR=nc();oc.exports=pR});var fc=e(function(EK,cc){"use strict";var vR=typeof Map=="function"?Map:null;cc.exports=vR});var qc=e(function(wK,vc){"use strict";var pc=fc();function qR(){var r,i,t;if(typeof pc!="function")return!1;try{i={},t=new pc,t.set(i,"beep"),r=t.has(i)&&t.get(i)==="beep"}catch(a){r=!1}return r}vc.exports=qR});var lc=e(function(CK,yc){"use strict";var yR=qc();yc.exports=yR});var xc=e(function(RK,mc){"use strict";var lR=typeof Buffer=="function"?Buffer:null;mc.exports=lR});var gc=e(function(LK,bc){"use strict";var mR=E(),$=xc();function xR(){var r,i;if(typeof $!="function")return!1;try{typeof $.from=="function"?i=$.from([1,2,3,4]):i=new $([1,2,3,4]),r=mR(i)&&i[0]===1&&i[1]===2&&i[2]===3&&i[3]===4}catch(t){r=!1}return r}bc.exports=xR});var Pc=e(function(FK,Ac){"use strict";var bR=gc();Ac.exports=bR});var Sc=e(function(kK,Oc){"use strict";var gR=require("@stdlib/utils/eval");function AR(){var r;try{gR('"use strict"; var handler = { "get": function get( t, n ) { return t[ n ] * 100; } }; var target = { "beep": 3.14 }; var p = new Proxy( target, handler ); var x = p.beep; if ( x !== 314 ) { throw new Error( "native Proxy is not supported." ); }'),r=!0}catch(i){r=!1}return r}Oc.exports=AR});var hc=e(function(TK,dc){"use strict";var PR=Sc();dc.exports=PR});var Nc=e(function(_K,jc){"use strict";var OR=typeof Set=="function"?Set:null;jc.exports=OR});var wc=e(function(BK,Ec){"use strict";var Ic=Nc();function SR(){var r,i,t;if(typeof Ic!="function")return!1;try{i={},t=new Ic,t.add(i),t.add(i),r=t.has(i)}catch(a){r=!1}return r}Ec.exports=SR});var Rc=e(function(UK,Cc){"use strict";var dR=wc();Cc.exports=dR});var Fc=e(function(MK,Lc){"use strict";var hR=require("@stdlib/utils/native-class"),jR=typeof SharedArrayBuffer=="function";function NR(r){return jR&&r instanceof SharedArrayBuffer||hR(r)==="[object SharedArrayBuffer]"}Lc.exports=NR});var re=e(function(DK,kc){"use strict";var IR=Fc();kc.exports=IR});var _c=e(function(VK,Tc){"use strict";var ER=typeof SharedArrayBuffer=="function"?SharedArrayBuffer:null;Tc.exports=ER});var Dc=e(function(GK,Mc){"use strict";var Bc=re(),Uc=_c();function wR(){var r,i,t;if(typeof Uc!="function")return!1;try{i=new Uc(16),t=i.slice(4,8),r=Bc(i)&&Bc(t)&&i.byteLength===16&&t.byteLength===4}catch(a){r=!1}return r}Mc.exports=wR});var Gc=e(function(WK,Vc){"use strict";var CR=Dc();Vc.exports=CR});var Hc=e(function(HK,Wc){"use strict";var RR=require("@stdlib/utils/native-class"),LR=typeof Uint8Array=="function";function FR(r){return LR&&r instanceof Uint8Array||RR(r)==="[object Uint8Array]"}Wc.exports=FR});var Z=e(function(XK,Xc){"use strict";var kR=Hc();Xc.exports=kR});var Kc=e(function(zK,zc){"use strict";var TR=typeof Uint8Array=="function"?Uint8Array:null;zc.exports=TR});var Yc=e(function(KK,Zc){"use strict";var _R=Z(),ee=require("@stdlib/constants/uint8/max"),$c=Kc();function BR(){var r,i;if(typeof $c!="function")return!1;try{i=[1,3.14,-3.14,ee+1,ee+2],i=new $c(i),r=_R(i)&&i[0]===1&&i[1]===3&&i[2]===ee-2&&i[3]===0&&i[4]===1}catch(t){r=!1}return r}Zc.exports=BR});var Qc=e(function($K,Jc){"use strict";var UR=Yc();Jc.exports=UR});var ef=e(function(ZK,rf){"use strict";var MR=require("@stdlib/utils/native-class"),DR=typeof Uint8ClampedArray=="function";function VR(r){return DR&&r instanceof Uint8ClampedArray||MR(r)==="[object Uint8ClampedArray]"}rf.exports=VR});var ie=e(function(YK,tf){"use strict";var GR=ef();tf.exports=GR});var uf=e(function(JK,sf){"use strict";var WR=typeof Uint8ClampedArray=="function"?Uint8ClampedArray:null;sf.exports=WR});var of=e(function(QK,nf){"use strict";var HR=ie(),af=uf();function XR(){var r,i;if(typeof af!="function")return!1;try{i=new af([-1,0,1,3.14,4.99,255,256]),r=HR(i)&&i[0]===0&&i[1]===0&&i[2]===1&&i[3]===3&&i[4]===5&&i[5]===255&&i[6]===255}catch(t){r=!1}return r}nf.exports=XR});var ff=e(function(r$,cf){"use strict";var zR=of();cf.exports=zR});var vf=e(function(e$,pf){"use strict";var KR=require("@stdlib/utils/native-class"),$R=typeof Uint16Array=="function";function ZR(r){return $R&&r instanceof Uint16Array||KR(r)==="[object Uint16Array]"}pf.exports=ZR});var te=e(function(i$,qf){"use strict";var YR=vf();qf.exports=YR});var lf=e(function(t$,yf){"use strict";var JR=typeof Uint16Array=="function"?Uint16Array:null;yf.exports=JR});var bf=e(function(s$,xf){"use strict";var QR=te(),se=require("@stdlib/constants/uint16/max"),mf=lf();function rL(){var r,i;if(typeof mf!="function")return!1;try{i=[1,3.14,-3.14,se+1,se+2],i=new mf(i),r=QR(i)&&i[0]===1&&i[1]===3&&i[2]===se-2&&i[3]===0&&i[4]===1}catch(t){r=!1}return r}xf.exports=rL});var Af=e(function(u$,gf){"use strict";var eL=bf();gf.exports=eL});var Of=e(function(a$,Pf){"use strict";var iL=require("@stdlib/utils/native-class"),tL=typeof Uint32Array=="function";function sL(r){return tL&&r instanceof Uint32Array||iL(r)==="[object Uint32Array]"}Pf.exports=sL});var ue=e(function(n$,Sf){"use strict";var uL=Of();Sf.exports=uL});var hf=e(function(o$,df){"use strict";var aL=typeof Uint32Array=="function"?Uint32Array:null;df.exports=aL});var If=e(function(c$,Nf){"use strict";var nL=ue(),ae=require("@stdlib/constants/uint32/max"),jf=hf();function oL(){var r,i;if(typeof jf!="function")return!1;try{i=[1,3.14,-3.14,ae+1,ae+2],i=new jf(i),r=nL(i)&&i[0]===1&&i[1]===3&&i[2]===ae-2&&i[3]===0&&i[4]===1}catch(t){r=!1}return r}Nf.exports=oL});var wf=e(function(f$,Ef){"use strict";var cL=If();Ef.exports=cL});var ne=e(function(p$,Cf){"use strict";var fL=v().isPrimitive;function pL(r){return fL(r)&&r>=0}Cf.exports=pL});var oe=e(function(v$,Rf){"use strict";var vL=v().isObject;function qL(r){return vL(r)&&r.valueOf()>=0}Rf.exports=qL});var Ff=e(function(q$,Lf){"use strict";var yL=ne(),lL=oe();function mL(r){return yL(r)||lL(r)}Lf.exports=mL});var h=e(function(y$,Tf){"use strict";var kf=require("@stdlib/utils/define-nonenumerable-read-only-property"),ce=Ff(),xL=ne(),bL=oe();kf(ce,"isPrimitive",xL);kf(ce,"isObject",bL);Tf.exports=ce});var Bf=e(function(l$,_f){"use strict";var gL=f().isPrimitive,AL=h().isPrimitive,fe=require("@stdlib/string/format"),PL=55296,OL=56319,SL=56320,dL=57343;function hL(r,i){var t,a;if(!gL(r))throw new TypeError(fe("invalid argument. Must provide a string. Value: `%s`.",r));if(!AL(i))throw new TypeError(fe("invalid argument. Must provide a valid position (i.e., a nonnegative integer). Value: `%s`.",i));if(i>=r.length)throw new RangeError(fe("invalid argument. Must provide a valid position (i.e., within string bounds). Value: `%u`.",i));return t=r.charCodeAt(i),a=r.charCodeAt(i+1),t>=PL&&t<=OL&&a>=SL&&a<=dL}_f.exports=hL});var Mf=e(function(m$,Uf){"use strict";var jL=Bf();Uf.exports=jL});var Vf=e(function(x$,Df){"use strict";function NL(){return typeof WebAssembly=="object"}Df.exports=NL});var Wf=e(function(b$,Gf){"use strict";var IL=Vf();Gf.exports=IL});var Xf=e(function(g$,Hf){"use strict";var EL=typeof WeakMap=="function"?WeakMap:null;Hf.exports=EL});var $f=e(function(A$,Kf){"use strict";var zf=Xf();function wL(){var r,i,t;if(typeof zf!="function")return!1;try{i={},t=new zf,t.set(i,"beep"),r=t.has(i)&&t.get(i)==="beep"}catch(a){r=!1}return r}Kf.exports=wL});var Yf=e(function(P$,Zf){"use strict";var CL=$f();Zf.exports=CL});var Qf=e(function(O$,Jf){"use strict";var RL=typeof WeakSet=="function"?WeakSet:null;Jf.exports=RL});var ip=e(function(S$,ep){"use strict";var rp=Qf();function LL(){var r,i,t;if(typeof rp!="function")return!1;try{i={},t=new rp,t.add(i),t.add(i),r=t.has(i)}catch(a){r=!1}return r}ep.exports=LL});var sp=e(function(d$,tp){"use strict";var FL=ip();tp.exports=FL});var ap=e(function(h$,up){"use strict";var kL=require("@stdlib/string/format");function TL(r,i){if(typeof i!="function")throw new TypeError(kL("invalid argument. Second argument must be callable. Value: `%s`.",i));return r instanceof i}up.exports=TL});var op=e(function(j$,np){"use strict";var _L=ap();np.exports=_L});var fp=e(function(N$,cp){"use strict";var BL=f().isPrimitive,UL=/(?:([^:\/?#]+):)?(?:\/\/([^\/?#]*))?([^?#]*)(?:\?[^#]*)?(?:#.*)?/,ML=/[^a-z0-9:\/?#\[\]@!$&'()*+,;=.\-_~%]/i,DL=/%[^0-9a-f]/i,VL=/%[0-9a-f](:?[^0-9a-f]|$)/i,GL=/^\/\//,WL=/^[a-z][a-z0-9+\-.]*$/;function HL(r){var i,t,a,n;return!(!BL(r)||ML.test(r)||DL.test(r)||VL.test(r)||(a=r.match(UL),t=a[1],i=a[2],n=a[3],!t||!t.length||!WL.test(t.toLowerCase()))||!i&&GL.test(n))}cp.exports=HL});var Y=e(function(I$,pp){"use strict";var XL=fp();pp.exports=XL});var qp=e(function(E$,vp){"use strict";var zL=Y(),KL=/^https?:\/\//;function $L(r){return zL(r)&&KL.test(r)}vp.exports=$L});var lp=e(function(w$,yp){"use strict";var ZL=qp();yp.exports=ZL});var J=e(function(C$,mp){"use strict";var YL=require("@stdlib/os/platform"),JL=YL==="win32";mp.exports=JL});var bp=e(function(R$,xp){"use strict";var QL=f().isPrimitive;function rF(r){return QL(r)&&r.length>0&&r.charCodeAt(0)===47}xp.exports=rF});var Ap=e(function(L$,gp){"use strict";var eF=f().isPrimitive;function iF(r){var i,t;return!eF(r)||(t=r.length,t===0)?!1:(i=r.charCodeAt(0),i===47||i===92||(i>=65&&i<=90||i>=97&&i<=122)&&t>2&&r.charCodeAt(1)===58&&(i=r.charCodeAt(2),i===47||i===92))}gp.exports=iF});var Q=e(function(F$,dp){"use strict";var Pp=require("@stdlib/utils/define-nonenumerable-read-only-property"),tF=J(),Op=bp(),Sp=Ap(),k;tF?k=Sp:k=Op;Pp(k,"posix",Op);Pp(k,"win32",Sp);dp.exports=k});var jp=e(function(k$,hp){"use strict";var sF=Y();function uF(r){return sF(r)}hp.exports=uF});var Ip=e(function(T$,Np){"use strict";var aF=jp();Np.exports=aF});var Cp=e(function(_$,wp){"use strict";var nF=C(),Ep=l();function oF(r){return nF(r)&&Ep(r.get)&&Ep(r.set)}wp.exports=oF});var Lp=e(function(B$,Rp){"use strict";var cF=Cp();Rp.exports=cF});var kp=e(function(U$,Fp){"use strict";var fF=require("@stdlib/utils/property-descriptor");function pF(r,i){var t=fF(r,i);return t!==null&&(typeof t.get=="function"||typeof t.set=="function")}Fp.exports=pF});var _p=e(function(M$,Tp){"use strict";var vF=kp();Tp.exports=vF});var Up=e(function(D$,Bp){"use strict";var qF=require("@stdlib/utils/property-descriptor-in");function yF(r,i){var t=qF(r,i);return t!==null&&(typeof t.get=="function"||typeof t.set=="function")}Bp.exports=yF});var Dp=e(function(V$,Mp){"use strict";var lF=Up();Mp.exports=lF});var Gp=e(function(G$,Vp){"use strict";var mF=f();function xF(r){var i,t;if(!mF(r)||(i=r.length,!i))return!1;for(t=1;tr[t])return!1;return!0}Vp.exports=xF});var Hp=e(function(W$,Wp){"use strict";var bF=Gp();Wp.exports=bF});var zp=e(function(H$,Xp){"use strict";var gF=f().isPrimitive,AF=48,PF=57,OF=65,SF=90,dF=97,hF=122;function jF(r){var i,t,a;if(!gF(r)||(i=r.length,i===0))return!1;for(a=0;aPF)&&(thF)&&(tSF))return!1;return!0}Xp.exports=jF});var $p=e(function(X$,Kp){"use strict";var NF=zp();Kp.exports=NF});var iv=e(function(z$,ev){"use strict";var Zp=require("@stdlib/string/base/lowercase"),Yp=require("@stdlib/string/base/replace"),Jp=f().isPrimitive,IF=require("@stdlib/string/format"),Qp=/[^a-z0-9]/g;function rv(r,i){return r=0&&i=0&&r.length<=$F&&HF(r,"callee")&&!XF(r,"callee")}mv.exports=ZF});var gv=e(function(iZ,bv){"use strict";var YF=ov(),JF=pe(),QF=xv(),qe;YF?qe=JF:qe=QF;bv.exports=qe});var Pv=e(function(tZ,Av){"use strict";var r4=F(),e4=x(),i4=r4(e4);Av.exports=i4});var Sv=e(function(sZ,Ov){"use strict";var t4=Pv();Ov.exports=t4});var hv=e(function(uZ,dv){"use strict";var s4=v().isPrimitive,u4=require("@stdlib/constants/array/max-array-length");function a4(r){return s4(r)&&r>=0&&r<=u4}dv.exports=a4});var Nv=e(function(aZ,jv){"use strict";var n4=hv();jv.exports=n4});var Ev=e(function(nZ,Iv){"use strict";var o4=require("@stdlib/math/base/assert/is-integer"),c4=require("@stdlib/constants/array/max-array-length");function f4(r){return r!=null&&typeof r!="function"&&typeof r.length=="number"&&o4(r.length)&&r.length>=0&&r.length<=c4}Iv.exports=f4});var ye=e(function(oZ,wv){"use strict";var p4=Ev();wv.exports=p4});var Rv=e(function(cZ,Cv){"use strict";var v4=require("@stdlib/math/base/assert/is-integer"),q4=require("@stdlib/constants/array/max-array-length");function y4(r){return typeof r=="object"&&r!==null&&typeof r.length=="number"&&v4(r.length)&&r.length>=0&&r.length<=q4}Cv.exports=y4});var Fv=e(function(fZ,Lv){"use strict";var l4=Rv();Lv.exports=l4});var Tv=e(function(pZ,kv){"use strict";var m4=require("@stdlib/utils/constant-function"),x4=m4(!1);kv.exports=x4});var Bv=e(function(vZ,_v){"use strict";var b4=require("@stdlib/array/int8"),g4=require("@stdlib/array/uint8"),A4=require("@stdlib/array/uint8c"),P4=require("@stdlib/array/int16"),O4=require("@stdlib/array/uint16"),S4=require("@stdlib/array/int32"),d4=require("@stdlib/array/uint32"),h4=require("@stdlib/array/float32"),j4=require("@stdlib/array/float64"),N4=[j4,h4,S4,d4,P4,O4,b4,g4,A4];_v.exports=N4});var Uv=e(function(qZ,I4){I4.exports=["Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Uint16Array","Int32Array","Uint32Array","Float32Array","Float64Array"]});var Hv=e(function(yZ,Wv){"use strict";var E4=require("@stdlib/utils/constructor-name"),w4=require("@stdlib/utils/function-name"),Vv=require("@stdlib/utils/get-prototype-of"),C4=Kr(),R4=require("@stdlib/array/float64"),Mv=Bv(),Dv=Uv(),er=C4()?Vv(R4):Gv;er=w4(er)==="TypedArray"?er:Gv;function Gv(){}function L4(r){var i,t;if(typeof r!="object"||r===null)return!1;if(r instanceof er)return!0;for(t=0;t/;function $4(r){var i;return X4(r)?(i=z4(r),K4.test(i)):!1}Qv.exports=$4});var iq=e(function(AZ,eq){"use strict";var Z4=rq();eq.exports=Z4});var sq=e(function(PZ,tq){"use strict";var Y4=f().isPrimitive,J4=127;function Q4(r){var i,t;if(!Y4(r)||(i=r.length,!i))return!1;for(t=0;tJ4)return!1;return!0}tq.exports=Q4});var aq=e(function(OZ,uq){"use strict";var r6=sq();uq.exports=r6});var cq=e(function(SZ,oq){"use strict";var nq=require("@stdlib/string/format");function e6(r,i,t,a,n){if(arguments.length>3){if(a!=="closed"&&a!=="open")throw new TypeError(nq('invalid argument. Fourth argument must be one of the following: "%s". Value: `%s`.',["closed","open"].join('", "'),a));if(n!=="closed"&&n!=="open")throw new TypeError(nq('invalid argument. Fifth argument must be one of the following: "%s". Value: `%s`.',["closed","open"].join('", "'),n))}return a==="closed"||a===void 0?n==="closed"||n===void 0?r>=i&&r<=t:r>=i&&ri&&r<=t:r>i&&r3){if(a!=="closed"&&a!=="open")throw new TypeError(vq('invalid argument. Fourth argument must be one of the following: "%s". Value: `%s`.',["closed","open"].join('", "'),a));if(n!=="closed"&&n!=="open")throw new TypeError(vq('invalid argument. Fifth argument must be one of the following: "%s". Value: `%s`.',["closed","open"].join('", "'),n))}if(!t6(r)||(c=r.length,c===0))return!1;if(a==="closed"||a===void 0){if(n==="closed"||n===void 0){for(o=0;ot)return!1;return!0}for(o=0;o=t)return!1;return!0}if(n==="closed"||n===void 0){for(o=0;ot)return!1;return!0}for(o=0;o=t)return!1;return!0}qq.exports=s6});var mq=e(function(jZ,lq){"use strict";var u6=yq();lq.exports=u6});var bq=e(function(NZ,xq){"use strict";var a6=require("@stdlib/array/uint8"),n6=require("@stdlib/array/uint16"),o6={uint16:n6,uint8:a6};xq.exports=o6});var Oq=e(function(IZ,Pq){"use strict";var gq=bq(),Aq;function c6(){var r,i;return r=new gq.uint16(1),r[0]=4660,i=new gq.uint8(r.buffer),i[1]===52}Aq=c6();Pq.exports=Aq});var dq=e(function(EZ,Sq){"use strict";var f6=Oq();Sq.exports=f6});var jq=e(function(wZ,hq){"use strict";var p6=f().isPrimitive;function v6(r){var i,t;if(!p6(r)||r.length===0)return!1;for(t=0;ty_)return!1;return!0}px.exports=l_});var yx=e(function(NJ,qx){"use strict";var m_=vx();qx.exports=m_});var mx=e(function(IJ,lx){"use strict";var x_=require("@stdlib/fs/read-file").sync,b_=M(),g_=require("@stdlib/fs/exists").sync,A_={encoding:"utf8"};function P_(){var r;return g_("/.dockerenv")?!0:(r=x_("/proc/self/cgroup",A_),r instanceof Error?!1:b_(r,"docker"))}lx.exports=P_});var bx=e(function(EJ,xx){"use strict";var O_=mx(),S_=O_();xx.exports=S_});var Ax=e(function(wJ,gx){"use strict";var d_=f().isPrimitive,h_=/^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)+[a-z0-9][a-z0-9-]{0,61}[a-z0-9]$/i;function j_(r){return!d_(r)||r.length<2||r.length>255?!1:h_.test(r)}gx.exports=j_});var Ox=e(function(CJ,Px){"use strict";var N_=Ax();Px.exports=N_});var dx=e(function(RJ,Sx){"use strict";var I_=f().isPrimitive,E_=/^(?:\d+d)?(?:\d+h)?(?:\d+m)?(?:\d+s)?(?:\d+ms)?$/i;function w_(r){return I_(r)?E_.test(r):!1}Sx.exports=w_});var jx=e(function(LJ,hx){"use strict";var C_=dx();hx.exports=C_});var Ix=e(function(FJ,Nx){"use strict";Nx.exports=process});var Cx=e(function(kJ,wx){"use strict";var R_=require("@stdlib/utils/native-class"),L_=b(),Ex=f().isPrimitive,N=Ix();function F_(){return typeof N=="object"&&R_(N)==="[object process]"&&L_(N.versions)&&Ex(N.versions.electron)&&Ex(N.versions.chrome)&&(N.type==="browser"||N.type==="renderer")}wx.exports=F_});var ar=e(function(TJ,Rx){"use strict";var k_=Cx(),T_=k_();Rx.exports=T_});var Fx=e(function(_J,Lx){"use strict";Lx.exports=process});var Tx=e(function(BJ,kx){"use strict";var __=ar(),B_=Fx();function U_(){return __&&B_.type==="browser"}kx.exports=U_});var Bx=e(function(UJ,_x){"use strict";var M_=Tx(),D_=M_();_x.exports=D_});var Mx=e(function(MJ,Ux){"use strict";var V_=require("process");Ux.exports=V_});var Vx=e(function(DJ,Dx){"use strict";var G_=ar(),W_=Mx();function H_(){return G_&&W_.type==="renderer"}Dx.exports=H_});var Wx=e(function(VJ,Gx){"use strict";var X_=Vx(),z_=X_();Gx.exports=z_});var Xx=e(function(GJ,Hx){"use strict";var K_=f().isPrimitive,$_=/@/;function Z_(r){return K_(r)&&$_.test(r)}Hx.exports=Z_});var Kx=e(function(WJ,zx){"use strict";var Y_=Xx();zx.exports=Y_});var Zx=e(function(HJ,$x){"use strict";var J_=x();function Q_(r){return J_(r)&&r.length===0}$x.exports=Q_});var Jx=e(function(XJ,Yx){"use strict";var rB=Zx();Yx.exports=rB});var rb=e(function(zJ,Qx){"use strict";function eB(r){return typeof r=="object"&&r!==null&&r.length===0}Qx.exports=eB});var ib=e(function(KJ,eb){"use strict";var iB=rb();eb.exports=iB});var sb=e(function($J,tb){"use strict";function tB(r){return typeof r=="object"&&r!==null&&r.length===0}tb.exports=tB});var ab=e(function(ZJ,ub){"use strict";var sB=sb();ub.exports=sB});var ob=e(function(YJ,nb){"use strict";var uB=require("@stdlib/utils/keys"),aB=b(),nB=R(),oB=nB();function cB(r){return!(!aB(r)||uB(r).length>0||oB&&Object.getOwnPropertySymbols(r).length>0)}nb.exports=cB});var fb=e(function(JJ,cb){"use strict";var fB=ob();cb.exports=fB});var Te=e(function(QJ,pb){"use strict";function pB(r){return r===""}pb.exports=pB});var _e=e(function(rQ,vb){"use strict";var vB=f().isObject;function qB(r){return vB(r)&&r.valueOf()===""}vb.exports=qB});var yb=e(function(eQ,qb){"use strict";var yB=Te(),lB=_e();function mB(r){return yB(r)||lB(r)}qb.exports=mB});var xb=e(function(iQ,mb){"use strict";var lb=require("@stdlib/utils/define-nonenumerable-read-only-property"),Be=yb(),xB=Te(),bB=_e();lb(Be,"isPrimitive",xB);lb(Be,"isObject",bB);mb.exports=Be});var gb=e(function(tQ,bb){"use strict";var gB=require("@stdlib/utils/property-descriptor-in");function AB(r,i){var t=gB(r,i);return t!==null&&t.enumerable===!0}bb.exports=AB});var Pb=e(function(sQ,Ab){"use strict";var PB=gb();Ab.exports=PB});var Sb=e(function(uQ,Ob){"use strict";var OB=require("@stdlib/utils/get-prototype-of"),SB=require("@stdlib/utils/type-of"),dB=g();function hB(r){if(typeof r!="object"||r===null)return!1;if(r instanceof EvalError)return!0;if(dB(r))for(;r;){if(SB(r)==="evalerror")return!0;r=OB(r)}return!1}Ob.exports=hB});var hb=e(function(aQ,db){"use strict";var jB=Sb();db.exports=jB});var Ue=e(function(nQ,jb){"use strict";var NB=v().isPrimitive;function IB(r){return NB(r)&&r%2===0}jb.exports=IB});var Me=e(function(oQ,Nb){"use strict";var EB=v().isObject;function wB(r){return EB(r)&&r%2===0}Nb.exports=wB});var Eb=e(function(cQ,Ib){"use strict";var CB=Ue(),RB=Me();function LB(r){return CB(r)||RB(r)}Ib.exports=LB});var nr=e(function(fQ,Cb){"use strict";var wb=require("@stdlib/utils/define-nonenumerable-read-only-property"),De=Eb(),FB=Ue(),kB=Me();wb(De,"isPrimitive",FB);wb(De,"isObject",kB);Cb.exports=De});var Lb=e(function(pQ,Rb){"use strict";function TB(r){return!r}Rb.exports=TB});var Ve=e(function(vQ,Fb){"use strict";var _B=Lb();Fb.exports=_B});var Tb=e(function(qQ,kb){"use strict";var BB=q(),UB=Ve(),MB=BB(UB);kb.exports=MB});var Ge=e(function(yQ,_b){"use strict";var DB=p().isPrimitive,VB=require("@stdlib/math/base/assert/is-finite");function GB(r){return DB(r)&&VB(r)}_b.exports=GB});var We=e(function(lQ,Bb){"use strict";var WB=p().isObject,HB=require("@stdlib/math/base/assert/is-finite");function XB(r){return WB(r)&&HB(r.valueOf())}Bb.exports=XB});var Mb=e(function(mQ,Ub){"use strict";var zB=Ge(),KB=We();function $B(r){return zB(r)||KB(r)}Ub.exports=$B});var Xe=e(function(xQ,Vb){"use strict";var Db=require("@stdlib/utils/define-nonenumerable-read-only-property"),He=Mb(),ZB=Ge(),YB=We();Db(He,"isPrimitive",ZB);Db(He,"isObject",YB);Vb.exports=He});var Hb=e(function(bQ,Wb){"use strict";var ze=Xe(),Gb=require("@stdlib/utils/define-nonenumerable-read-only-property"),Ke=q(),JB=Ke(ze.isPrimitive),QB=Ke(ze.isObject),$e=Ke(ze);Gb($e,"primitives",JB);Gb($e,"objects",QB);Wb.exports=$e});var zb=e(function(gQ,Xb){"use strict";var r8=O();function e8(r){return r8(r)&&r.dtype==="float32"}Xb.exports=e8});var $b=e(function(AQ,Kb){"use strict";var i8=zb();Kb.exports=i8});var Yb=e(function(PQ,Zb){"use strict";var t8=P();function s8(r){return t8(r)&&r.dtype==="float32"}Zb.exports=s8});var Qb=e(function(OQ,Jb){"use strict";var u8=Yb();Jb.exports=u8});var eg=e(function(SQ,rg){"use strict";var a8=w();function n8(r){return a8(r)&&r.dtype==="float32"}rg.exports=n8});var tg=e(function(dQ,ig){"use strict";var o8=eg();ig.exports=o8});var ug=e(function(hQ,sg){"use strict";var c8=O();function f8(r){return c8(r)&&r.dtype==="float64"}sg.exports=f8});var ng=e(function(jQ,ag){"use strict";var p8=ug();ag.exports=p8});var cg=e(function(NQ,og){"use strict";var v8=P();function q8(r){return v8(r)&&r.dtype==="float64"}og.exports=q8});var pg=e(function(IQ,fg){"use strict";var y8=cg();fg.exports=y8});var qg=e(function(EQ,vg){"use strict";var l8=w();function m8(r){return l8(r)&&r.dtype==="float64"}vg.exports=m8});var lg=e(function(wQ,yg){"use strict";var x8=qg();yg.exports=x8});var xg=e(function(CQ,mg){"use strict";var b8=q(),g8=l(),A8=b8(g8);mg.exports=A8});var gg=e(function(RQ,bg){"use strict";var P8=$r(),O8=require("@stdlib/utils/native-class"),S8=P8();function d8(r){return S8&&O8(r)==="[object Generator]"}bg.exports=d8});var Pg=e(function(LQ,Ag){"use strict";var h8=gg();Ag.exports=h8});var Sg=e(function(FQ,Og){"use strict";function j8(r){return r!==null&&typeof r=="object"&&typeof r.next=="function"&&typeof r.return=="function"&&typeof r.throw=="function"}Og.exports=j8});var hg=e(function(kQ,dg){"use strict";var N8=Sg();dg.exports=N8});var Ng=e(function(TQ,jg){"use strict";var I8=Z(),E8=E();function w8(r){return!I8(r)&&!E8(r)||r.length<19?!1:r[0]===31&&r[1]===139&&r[2]===8}jg.exports=w8});var Eg=e(function(_Q,Ig){"use strict";var C8=Ng();Ig.exports=C8});var Cg=e(function(BQ,wg){"use strict";var R8=f().isPrimitive,L8=48,F8=57,k8=65,T8=70,_8=97,B8=102;function U8(r){var i,t,a;if(!R8(r)||(i=r.length,!i))return!1;for(a=0;aF8&&tT8&&t<_8||t>B8)return!1;return!0}wg.exports=U8});var Lg=e(function(UQ,Rg){"use strict";var M8=Cg();Rg.exports=M8});var Ze=e(function(MQ,Fg){"use strict";var D8=p().isPrimitive,V8=require("@stdlib/math/base/assert/is-infinite");function G8(r){return D8(r)&&V8(r)}Fg.exports=G8});var Ye=e(function(DQ,kg){"use strict";var W8=p().isObject,H8=require("@stdlib/math/base/assert/is-infinite");function X8(r){return W8(r)&&H8(r.valueOf())}kg.exports=X8});var _g=e(function(VQ,Tg){"use strict";var z8=Ze(),K8=Ye();function $8(r){return z8(r)||K8(r)}Tg.exports=$8});var Mg=e(function(GQ,Ug){"use strict";var Bg=require("@stdlib/utils/define-nonenumerable-read-only-property"),Je=_g(),Z8=Ze(),Y8=Ye();Bg(Je,"isPrimitive",Z8);Bg(Je,"isObject",Y8);Ug.exports=Je});var Vg=e(function(WQ,Dg){"use strict";var J8=m();function Q8(r,i){return r==null||J8(r,i)?!1:typeof i=="symbol"?i in Object(r):String(i)in Object(r)}Dg.exports=Q8});var Wg=e(function(HQ,Gg){"use strict";var rU=Vg();Gg.exports=rU});var zg=e(function(XQ,Xg){"use strict";var Qe=v(),Hg=require("@stdlib/utils/define-nonenumerable-read-only-property"),ri=q(),eU=ri(Qe.isPrimitive),iU=ri(Qe.isObject),ei=ri(Qe);Hg(ei,"primitives",eU);Hg(ei,"objects",iU);Xg.exports=ei});var $g=e(function(zQ,Kg){"use strict";function tU(r){var i=typeof r;return i==="string"||i==="number"||i==="boolean"||i==="symbol"||i==="bigint"||r===null||r===void 0}Kg.exports=tU});var or=e(function(KQ,Zg){"use strict";var sU=$g();Zg.exports=sU});var Jg=e(function($Q,Yg){"use strict";var uU=l();function aU(r){var i=typeof r;return r!==null&&(i==="object"||i==="function")&&uU(r.next)}Yg.exports=aU});var ii=e(function(ZQ,Qg){"use strict";var nU=Jg();Qg.exports=nU});var iA=e(function(YQ,eA){"use strict";var oU=or(),cU=l(),rA=require("@stdlib/symbol/iterator"),fU=ii();function pU(r){var i;return oU(r)?!1:(i=r[rA],cU(i)&&i.length===0&&fU(r[rA]()))}eA.exports=pU});var sA=e(function(JQ,tA){"use strict";var vU=Qr(),qU=require("@stdlib/utils/constant-function"),yU=iA(),ti;vU()?ti=yU:ti=qU(!1);tA.exports=ti});var aA=e(function(QQ,uA){"use strict";var lU=/^\{[\s\S]*\}$|^\[[\s\S]*\]$/;function mU(r){if(typeof r!="string"||!lU.test(r))return!1;try{JSON.parse(r)}catch(i){return!1}return!0}uA.exports=mU});var oA=e(function(rrr,nA){"use strict";var xU=aA();nA.exports=xU});var fA=e(function(err,cA){"use strict";var bU=f().isPrimitive,gU=require("@stdlib/string/base/kebabcase");function AU(r){return bU(r)&&gU(r)===r}cA.exports=AU});var vA=e(function(irr,pA){"use strict";var PU=fA();pA.exports=PU});var yA=e(function(trr,qA){"use strict";var OU=I(),SU=v().isPrimitive,dU=require("@stdlib/time/current-year");function hU(r){var i;if(arguments.length)if(OU(r))i=r.getFullYear();else if(SU(r))i=r;else return!1;else i=dU();return i%100===0?i%400===0:i%4===0}qA.exports=hU});var mA=e(function(srr,lA){"use strict";var jU=yA();lA.exports=jU});var bA=e(function(urr,xA){"use strict";var NU=require("@stdlib/array/uint8"),IU=require("@stdlib/array/uint16"),EU={uint16:IU,uint8:NU};xA.exports=EU});var OA=e(function(arr,PA){"use strict";var gA=bA(),AA;function wU(){var r,i;return r=new gA.uint16(1),r[0]=4660,i=new gA.uint8(r.buffer),i[0]===52}AA=wU();PA.exports=AA});var dA=e(function(nrr,SA){"use strict";var CU=OA();SA.exports=CU});var jA=e(function(orr,hA){"use strict";var RU=f().isPrimitive,LU=/^127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/;function FU(r){return RU(r)?r==="localhost"||r==="LOCALHOST"||r==="[::1]"||LU.test(r):!1}hA.exports=FU});var IA=e(function(crr,NA){"use strict";var kU=jA();NA.exports=kU});var wA=e(function(frr,EA){"use strict";var TU=require("@stdlib/string/lowercase"),_U=require("@stdlib/string/uppercase"),BU=f().isPrimitive;function UU(r){return BU(r)&&r===TU(r)&&r!==_U(r)}EA.exports=UU});var RA=e(function(prr,CA){"use strict";var MU=wA();CA.exports=MU});var FA=e(function(vrr,LA){"use strict";var DU=m(),VU=l();function GU(r,i){return DU(r,i)&&VU(r[i])}LA.exports=GU});var TA=e(function(qrr,kA){"use strict";var WU=FA();kA.exports=WU});var BA=e(function(yrr,_A){"use strict";var HU=l(),XU=require("@stdlib/object/ctor");function zU(r,i){return r==null?!1:(r=XU(r),typeof i!="symbol"&&(i=String(i)),i in r&&HU(r[i]))}_A.exports=zU});var MA=e(function(lrr,UA){"use strict";var KU=BA();UA.exports=KU});var VA=e(function(mrr,DA){"use strict";var $U=require("@stdlib/utils/constant-function"),ZU=$U(!1);DA.exports=ZU});var WA=e(function(xrr,GA){"use strict";var YU=VA(),JU=YU();GA.exports=JU});var XA=e(function(brr,HA){"use strict";var QU=require("@stdlib/slice/multi"),rM=require("@stdlib/utils/constructor-name");function eM(r){return r instanceof QU||rM(r)==="MultiSlice"}HA.exports=eM});var KA=e(function(grr,zA){"use strict";var iM=XA();zA.exports=iM});var YA=e(function(Arr,ZA){"use strict";var tM=j(),$A=m();function sM(r){return tM(r)&&typeof r.fieldOf=="function"&&typeof r.findField=="function"&&typeof r.ind2key=="function"&&typeof r.key2ind=="function"&&typeof r.lastFieldOf=="function"&&typeof r.subtuple=="function"&&$A(r,"fields")&&$A(r,"orderedFields")}ZA.exports=sM});var QA=e(function(Prr,JA){"use strict";var uM=YA();JA.exports=uM});var iP=e(function(Orr,eP){"use strict";var rP=require("@stdlib/utils/define-nonenumerable-read-only-property"),si=q(),ui=L(),aM=si(ui.isPrimitive),nM=si(ui.isObject),ai=si(ui);rP(ai,"primitives",aM);rP(ai,"objects",nM);eP.exports=ai});var sP=e(function(Srr,tP){"use strict";var oM=l(),cM=require("@stdlib/regexp/native-function"),fM=require("@stdlib/function/to-string");function pM(r){return oM(r)&&cM.REGEXP.test(fM(r))}tP.exports=pM});var aP=e(function(drr,uP){"use strict";var vM=sP();uP.exports=vM});var ni=e(function(hrr,nP){"use strict";var qM=v().isPrimitive;function yM(r){return qM(r)&&r<0}nP.exports=yM});var oi=e(function(jrr,oP){"use strict";var lM=v().isObject;function mM(r){return lM(r)&&r.valueOf()<0}oP.exports=mM});var fP=e(function(Nrr,cP){"use strict";var xM=ni(),bM=oi();function gM(r){return xM(r)||bM(r)}cP.exports=gM});var fi=e(function(Irr,vP){"use strict";var pP=require("@stdlib/utils/define-nonenumerable-read-only-property"),ci=fP(),AM=ni(),PM=oi();pP(ci,"isPrimitive",AM);pP(ci,"isObject",PM);vP.exports=ci});var lP=e(function(Err,yP){"use strict";var pi=fi(),qP=require("@stdlib/utils/define-nonenumerable-read-only-property"),vi=q(),OM=vi(pi.isPrimitive),SM=vi(pi.isObject),qi=vi(pi);qP(qi,"primitives",OM);qP(qi,"objects",SM);yP.exports=qi});var yi=e(function(wrr,mP){"use strict";var dM=p().isPrimitive;function hM(r){return dM(r)&&r<0}mP.exports=hM});var li=e(function(Crr,xP){"use strict";var jM=p().isObject;function NM(r){return jM(r)&&r.valueOf()<0}xP.exports=NM});var gP=e(function(Rrr,bP){"use strict";var IM=yi(),EM=li();function wM(r){return IM(r)||EM(r)}bP.exports=wM});var xi=e(function(Lrr,PP){"use strict";var AP=require("@stdlib/utils/define-nonenumerable-read-only-property"),mi=gP(),CM=yi(),RM=li();AP(mi,"isPrimitive",CM);AP(mi,"isObject",RM);PP.exports=mi});var dP=e(function(Frr,SP){"use strict";var bi=xi(),OP=require("@stdlib/utils/define-nonenumerable-read-only-property"),gi=q(),LM=gi(bi.isPrimitive),FM=gi(bi.isObject),Ai=gi(bi);OP(Ai,"primitives",LM);OP(Ai,"objects",FM);SP.exports=Ai});var Pi=e(function(krr,hP){"use strict";var kM=p().isPrimitive,TM=require("@stdlib/constants/float64/ninf");function _M(r){return kM(r)&&1/r===TM}hP.exports=_M});var Oi=e(function(Trr,jP){"use strict";var BM=p().isObject,UM=require("@stdlib/constants/float64/ninf");function MM(r){return BM(r)&&1/r.valueOf()===UM}jP.exports=MM});var IP=e(function(_rr,NP){"use strict";var DM=Pi(),VM=Oi();function GM(r){return DM(r)||VM(r)}NP.exports=GM});var CP=e(function(Brr,wP){"use strict";var EP=require("@stdlib/utils/define-nonenumerable-read-only-property"),Si=IP(),WM=Pi(),HM=Oi();EP(Si,"isPrimitive",WM);EP(Si,"isObject",HM);wP.exports=Si});var RP=e(function(Urr,XM){XM.exports=["assert","async_hooks","buffer","child_process","cluster","console","constants","crypto","dgram","dns","domain","events","fs","http","http2","https","_http_agent","_http_client","_http_common","_http_incoming","_http_outgoing","_http_server","inspector","module","net","os","path","perf_hooks","process","punycode","querystring","readline","repl","stream","_stream_readable","_stream_writable","_stream_duplex","_stream_transform","_stream_passthrough","_stream_wrap","string_decoder","sys","timers","tls","_tls_common","_tls_legacy","_tls_wrap","tty","url","util","v8","vm","zlib","v8/tools/splaytree","v8/tools/codemap","v8/tools/consarray","v8/tools/csvparser","v8/tools/profile","v8/tools/profile_view","v8/tools/logreader","v8/tools/tickprocessor","v8/tools/SourceMap","v8/tools/tickprocessor-driver","node-inspect/lib/_inspect","node-inspect/lib/internal/inspect_client","node-inspect/lib/internal/inspect_repl"]});var FP=e(function(Mrr,LP){"use strict";var zM=require("module"),KM=M(),$M=f().isPrimitive,ZM=RP(),YM=zM.builtinModules||ZM;function JM(r){return $M(r)?KM(YM,r):!1}LP.exports=JM});var TP=e(function(Drr,kP){"use strict";var QM=FP();kP.exports=QM});var BP=e(function(Vrr,_P){"use strict";function rD(r){return r!==null&&typeof r=="object"&&typeof r.on=="function"&&typeof r.once=="function"&&typeof r.emit=="function"&&typeof r.addListener=="function"&&typeof r.removeListener=="function"&&typeof r.removeAllListeners=="function"&&typeof r.pipe=="function"}_P.exports=rD});var cr=e(function(Grr,UP){"use strict";var eD=BP();UP.exports=eD});var DP=e(function(Wrr,MP){"use strict";var iD=cr();function tD(r){return iD(r)&&typeof r._write=="function"&&typeof r._writableState=="object"}MP.exports=tD});var di=e(function(Hrr,VP){"use strict";var sD=DP();VP.exports=sD});var WP=e(function(Xrr,GP){"use strict";var uD=cr();function aD(r){return uD(r)&&typeof r._read=="function"&&typeof r._readableState=="object"}GP.exports=aD});var hi=e(function(zrr,HP){"use strict";var nD=WP();HP.exports=nD});var zP=e(function(Krr,XP){"use strict";var oD=di(),cD=hi();function fD(r){return oD(r)&&cD(r)}XP.exports=fD});var ji=e(function($rr,KP){"use strict";var pD=zP();KP.exports=pD});var $P=e(function(Zrr,Ni){"use strict";function vD(){return Ni}Ni.exports=vD});var YP=e(function(Yrr,ZP){"use strict";function qD(){var r=new Error;return r.stack}ZP.exports=qD});var QP=e(function(Jrr,JP){"use strict";var yD=B(),lD=$P(),mD=YP(),xD=/^repl$|^$/,bD=/at REPLServer/;function gD(){var r,i;if(!yD)return!1;for(i=lD();i;){if(xD.test(i.id))return!0;i=i.parent}return r=mD(),r?bD.test(r):!1}JP.exports=gD});var eO=e(function(Qrr,rO){"use strict";var AD=QP();rO.exports=AD});var tO=e(function(rer,iO){"use strict";var PD=ji();function OD(r){return PD(r)&&typeof r._transform=="function"}iO.exports=OD});var uO=e(function(eer,sO){"use strict";var SD=tO();sO.exports=SD});var nO=e(function(ier,aO){"use strict";var dD=require("@stdlib/utils/property-descriptor");function hD(r,i){var t=dD(r,i);return t!==null&&t.configurable===!1}aO.exports=hD});var cO=e(function(ter,oO){"use strict";var jD=nO();oO.exports=jD});var pO=e(function(ser,fO){"use strict";var ND=require("@stdlib/utils/property-descriptor-in");function ID(r,i){var t=ND(r,i);return t!==null&&t.configurable===!1}fO.exports=ID});var qO=e(function(uer,vO){"use strict";var ED=pO();vO.exports=ED});var lO=e(function(aer,yO){"use strict";var wD=m(),CD=rr();function RD(r,i){return wD(r,i)===!1?!1:CD(r,i)===!1}yO.exports=RD});var xO=e(function(ner,mO){"use strict";var LD=lO();mO.exports=LD});var gO=e(function(oer,bO){"use strict";var FD=require("@stdlib/utils/property-descriptor-in");function kD(r,i){var t=FD(r,i);return t!==null&&t.enumerable===!1}bO.exports=kD});var PO=e(function(cer,AO){"use strict";var TD=gO();AO.exports=TD});var dO=e(function(fer,SO){"use strict";var Ii=h(),OO=require("@stdlib/utils/define-nonenumerable-read-only-property"),Ei=q(),_D=Ei(Ii.isPrimitive),BD=Ei(Ii.isObject),wi=Ei(Ii);OO(wi,"primitives",_D);OO(wi,"objects",BD);SO.exports=wi});var Ci=e(function(per,hO){"use strict";var UD=p().isPrimitive;function MD(r){return UD(r)&&r>=0}hO.exports=MD});var Ri=e(function(ver,jO){"use strict";var DD=p().isObject;function VD(r){return DD(r)&&r.valueOf()>=0}jO.exports=VD});var IO=e(function(qer,NO){"use strict";var GD=Ci(),WD=Ri();function HD(r){return GD(r)||WD(r)}NO.exports=HD});var Fi=e(function(yer,wO){"use strict";var EO=require("@stdlib/utils/define-nonenumerable-read-only-property"),Li=IO(),XD=Ci(),zD=Ri();EO(Li,"isPrimitive",XD);EO(Li,"isObject",zD);wO.exports=Li});var LO=e(function(ler,RO){"use strict";var ki=Fi(),CO=require("@stdlib/utils/define-nonenumerable-read-only-property"),Ti=q(),KD=Ti(ki.isPrimitive),$D=Ti(ki.isObject),_i=Ti(ki);CO(_i,"primitives",KD);CO(_i,"objects",$D);RO.exports=_i});var Bi=e(function(mer,FO){"use strict";var ZD=v().isPrimitive;function YD(r){return ZD(r)&&r<=0}FO.exports=YD});var Ui=e(function(xer,kO){"use strict";var JD=v().isObject;function QD(r){return JD(r)&&r.valueOf()<=0}kO.exports=QD});var _O=e(function(ber,TO){"use strict";var rV=Bi(),eV=Ui();function iV(r){return rV(r)||eV(r)}TO.exports=iV});var Di=e(function(ger,UO){"use strict";var BO=require("@stdlib/utils/define-nonenumerable-read-only-property"),Mi=_O(),tV=Bi(),sV=Ui();BO(Mi,"isPrimitive",tV);BO(Mi,"isObject",sV);UO.exports=Mi});var VO=e(function(Aer,DO){"use strict";var Vi=Di(),MO=require("@stdlib/utils/define-nonenumerable-read-only-property"),Gi=q(),uV=Gi(Vi.isPrimitive),aV=Gi(Vi.isObject),Wi=Gi(Vi);MO(Wi,"primitives",uV);MO(Wi,"objects",aV);DO.exports=Wi});var Hi=e(function(Per,GO){"use strict";var nV=p().isPrimitive;function oV(r){return nV(r)&&r<=0}GO.exports=oV});var Xi=e(function(Oer,WO){"use strict";var cV=p().isObject;function fV(r){return cV(r)&&r.valueOf()<=0}WO.exports=fV});var XO=e(function(Ser,HO){"use strict";var pV=Hi(),vV=Xi();function qV(r){return pV(r)||vV(r)}HO.exports=qV});var Ki=e(function(der,KO){"use strict";var zO=require("@stdlib/utils/define-nonenumerable-read-only-property"),zi=XO(),yV=Hi(),lV=Xi();zO(zi,"isPrimitive",yV);zO(zi,"isObject",lV);KO.exports=zi});var YO=e(function(her,ZO){"use strict";var $i=Ki(),$O=require("@stdlib/utils/define-nonenumerable-read-only-property"),Zi=q(),mV=Zi($i.isPrimitive),xV=Zi($i.isObject),Yi=Zi($i);$O(Yi,"primitives",mV);$O(Yi,"objects",xV);ZO.exports=Yi});var QO=e(function(jer,JO){"use strict";var bV=O();function gV(r){var i,t,a;if(!bV(r))return!1;if(i=r.shape[0],i!==r.shape[1])return!0;for(t=0;t0?gS(r-1):gS(r+1):!1}AS.exports=UV});var st=e(function(Ber,OS){"use strict";var MV=v().isObject,PS=nr().isPrimitive;function DV(r){return MV(r)?r>0?PS(r-1):PS(r+1):!1}OS.exports=DV});var dS=e(function(Uer,SS){"use strict";var VV=tt(),GV=st();function WV(r){return VV(r)||GV(r)}SS.exports=WV});var NS=e(function(Mer,jS){"use strict";var hS=require("@stdlib/utils/define-nonenumerable-read-only-property"),ut=dS(),HV=tt(),XV=st();hS(ut,"isPrimitive",HV);hS(ut,"isObject",XV);jS.exports=ut});var ES=e(function(Der,IS){"use strict";var zV=f().isPrimitive,KV=require("@stdlib/string/base/pascalcase");function $V(r){return zV(r)&&KV(r)===r}IS.exports=$V});var CS=e(function(Ver,wS){"use strict";var ZV=ES();wS.exports=ZV});var LS=e(function(Ger,RS){"use strict";var YV=S();function JV(r){var i,t,a,n;if(!YV(r))return!1;for(i=r.shape[0]-1,a=0;a0}MS.exports=uG});var nt=e(function(Ker,DS){"use strict";var aG=v().isObject;function nG(r){return aG(r)&&r.valueOf()>0}DS.exports=nG});var GS=e(function($er,VS){"use strict";var oG=at(),cG=nt();function fG(r){return oG(r)||cG(r)}VS.exports=fG});var ct=e(function(Zer,HS){"use strict";var WS=require("@stdlib/utils/define-nonenumerable-read-only-property"),ot=GS(),pG=at(),vG=nt();WS(ot,"isPrimitive",pG);WS(ot,"isObject",vG);HS.exports=ot});var KS=e(function(Yer,zS){"use strict";var ft=ct(),XS=require("@stdlib/utils/define-nonenumerable-read-only-property"),pt=q(),qG=pt(ft.isPrimitive),yG=pt(ft.isObject),vt=pt(ft);XS(vt,"primitives",qG);XS(vt,"objects",yG);zS.exports=vt});var qt=e(function(Jer,$S){"use strict";var lG=p().isPrimitive;function mG(r){return lG(r)&&r>0}$S.exports=mG});var yt=e(function(Qer,ZS){"use strict";var xG=p().isObject;function bG(r){return xG(r)&&r.valueOf()>0}ZS.exports=bG});var JS=e(function(rir,YS){"use strict";var gG=qt(),AG=yt();function PG(r){return gG(r)||AG(r)}YS.exports=PG});var mt=e(function(eir,rd){"use strict";var QS=require("@stdlib/utils/define-nonenumerable-read-only-property"),lt=JS(),OG=qt(),SG=yt();QS(lt,"isPrimitive",OG);QS(lt,"isObject",SG);rd.exports=lt});var td=e(function(iir,id){"use strict";var xt=mt(),ed=require("@stdlib/utils/define-nonenumerable-read-only-property"),bt=q(),dG=bt(xt.isPrimitive),hG=bt(xt.isObject),gt=bt(xt);ed(gt,"primitives",dG);ed(gt,"objects",hG);id.exports=gt});var At=e(function(tir,sd){"use strict";var jG=p().isPrimitive,NG=require("@stdlib/constants/float64/pinf");function IG(r){return jG(r)&&1/r===NG}sd.exports=IG});var Pt=e(function(sir,ud){"use strict";var EG=p().isObject,wG=require("@stdlib/constants/float64/pinf");function CG(r){return EG(r)&&1/r.valueOf()===wG}ud.exports=CG});var nd=e(function(uir,ad){"use strict";var RG=At(),LG=Pt();function FG(r){return RG(r)||LG(r)}ad.exports=FG});var fd=e(function(air,cd){"use strict";var od=require("@stdlib/utils/define-nonenumerable-read-only-property"),Ot=nd(),kG=At(),TG=Pt();od(Ot,"isPrimitive",kG);od(Ot,"isObject",TG);cd.exports=Ot});var St=e(function(nir,pd){"use strict";var _G=p().isPrimitive,BG=require("@stdlib/math/base/assert/is-prime");function UG(r){return _G(r)?BG(r):!1}pd.exports=UG});var dt=e(function(oir,vd){"use strict";var MG=p().isObject,DG=require("@stdlib/math/base/assert/is-prime");function VG(r){return MG(r)?DG(r.valueOf()):!1}vd.exports=VG});var yd=e(function(cir,qd){"use strict";var GG=St(),WG=dt();function HG(r){return GG(r)||WG(r)}qd.exports=HG});var xd=e(function(fir,md){"use strict";var ld=require("@stdlib/utils/define-nonenumerable-read-only-property"),ht=yd(),XG=St(),zG=dt();ld(ht,"isPrimitive",XG);ld(ht,"isObject",zG);md.exports=ht});var gd=e(function(pir,bd){"use strict";var KG=q(),$G=or(),ZG=KG($G);bd.exports=ZG});var Pd=e(function(vir,Ad){"use strict";var YG=gd();Ad.exports=YG});var dd=e(function(qir,Sd){"use strict";var JG=l(),Od=m();function QG(r){return JG(r)&&typeof r.NAME=="string"&&Od(r,"state")&&Od(r,"seed")}Sd.exports=QG});var jd=e(function(yir,hd){"use strict";var rW=dd();hd.exports=rW});var jt=e(function(lir,Nd){"use strict";var eW=p().isPrimitive;function iW(r){return eW(r)&&r>=0&&r<=1}Nd.exports=iW});var Nt=e(function(mir,Id){"use strict";var tW=p().isObject;function sW(r){return tW(r)&&r.valueOf()>=0&&r.valueOf()<=1}Id.exports=sW});var wd=e(function(xir,Ed){"use strict";var uW=jt(),aW=Nt();function nW(r){return uW(r)||aW(r)}Ed.exports=nW});var Et=e(function(bir,Rd){"use strict";var Cd=require("@stdlib/utils/define-nonenumerable-read-only-property"),It=wd(),oW=jt(),cW=Nt();Cd(It,"isPrimitive",oW);Cd(It,"isObject",cW);Rd.exports=It});var kd=e(function(gir,Fd){"use strict";var wt=Et(),Ld=require("@stdlib/utils/define-nonenumerable-read-only-property"),Ct=q(),fW=Ct(wt.isPrimitive),pW=Ct(wt.isObject),Rt=Ct(wt);Ld(Rt,"primitives",fW);Ld(Rt,"objects",pW);Fd.exports=Rt});var _d=e(function(Air,Td){"use strict";var vW=f().isPrimitive,qW=T().isPrimitive,yW=h().isPrimitive;function lW(r){return vW(r)||qW(r)||yW(r)}Td.exports=lW});var Ud=e(function(Pir,Bd){"use strict";var mW=_d();Bd.exports=mW});var Dd=e(function(Oir,Md){"use strict";var xW=Object.prototype.isPrototypeOf,bW=require("@stdlib/string/format");function gW(r,i){var t=typeof i;if(i===null||t!=="object"&&t!=="function")throw new TypeError(bW("invalid argument. Second argument must be either an object (except null) or a function. Value: `%s`.",i));return t=typeof r,r===null||t!=="object"&&t!=="function"?!1:xW.call(i,r)}Md.exports=gW});var Gd=e(function(Sir,Vd){"use strict";var AW=Dd();Vd.exports=AW});var Hd=e(function(dir,Wd){"use strict";var PW=require("@stdlib/utils/get-prototype-of"),OW=require("@stdlib/utils/type-of"),SW=g();function dW(r){if(typeof r!="object"||r===null)return!1;if(r instanceof RangeError)return!0;if(SW(r))for(;r;){if(OW(r)==="rangeerror")return!0;r=PW(r)}return!1}Wd.exports=dW});var zd=e(function(hir,Xd){"use strict";var hW=Hd();Xd.exports=hW});var $d=e(function(jir,Kd){"use strict";var jW=require("@stdlib/utils/property-descriptor");function NW(r,i){var t=jW(r,i);return t!==null&&t.configurable===!1&&(t.writable===!1||typeof t.get=="function"&&t.set===void 0)}Kd.exports=NW});var Yd=e(function(Nir,Zd){"use strict";var IW=$d();Zd.exports=IW});var Qd=e(function(Iir,Jd){"use strict";var EW=require("@stdlib/utils/property-descriptor-in");function wW(r,i){var t=EW(r,i);return t!==null&&t.configurable===!1&&(t.writable===!1||typeof t.get=="function"&&t.set===void 0)}Jd.exports=wW});var eh=e(function(Eir,rh){"use strict";var CW=Qd();rh.exports=CW});var th=e(function(wir,ih){"use strict";var RW=require("@stdlib/utils/property-descriptor");function LW(r,i){var t=RW(r,i);return t!==null&&(t.writable===!0||typeof t.get=="function"&&typeof t.set=="function")}ih.exports=LW});var uh=e(function(Cir,sh){"use strict";var FW=th();sh.exports=FW});var nh=e(function(Rir,ah){"use strict";var kW=require("@stdlib/utils/property-descriptor-in");function TW(r,i){var t=kW(r,i);return t!==null&&(t.writable===!0||typeof t.get=="function"&&typeof t.set=="function")}ah.exports=TW});var ch=e(function(Lir,oh){"use strict";var _W=nh();oh.exports=_W});var ph=e(function(Fir,fh){"use strict";var BW=require("@stdlib/utils/property-descriptor");function UW(r,i){var t=BW(r,i);return t!==null&&(t.writable!==void 0||typeof t.get=="function")}fh.exports=UW});var qh=e(function(kir,vh){"use strict";var MW=ph();vh.exports=MW});var lh=e(function(Tir,yh){"use strict";var DW=require("@stdlib/utils/property-descriptor-in");function VW(r,i){var t=DW(r,i);return t!==null&&(t.writable!==void 0||typeof t.get=="function")}yh.exports=VW});var xh=e(function(_ir,mh){"use strict";var GW=lh();mh.exports=GW});var gh=e(function(Bir,bh){"use strict";var WW=require("@stdlib/utils/get-prototype-of"),HW=require("@stdlib/utils/type-of"),XW=g();function zW(r){if(typeof r!="object"||r===null)return!1;if(r instanceof ReferenceError)return!0;if(XW(r))for(;r;){if(HW(r)==="referenceerror")return!0;r=WW(r)}return!1}bh.exports=zW});var Ph=e(function(Uir,Ah){"use strict";var KW=gh();Ah.exports=KW});var Sh=e(function(Mir,Oh){"use strict";var $W=f().isPrimitive,ZW=require("@stdlib/regexp/regexp").REGEXP;function YW(r){return $W(r)&&ZW.test(r)}Oh.exports=YW});var hh=e(function(Dir,dh){"use strict";var JW=Sh();dh.exports=JW});var Nh=e(function(Vir,jh){"use strict";var QW=f().isPrimitive,r9=Q().posix;function e9(r){return QW(r)&&!r9(r)}jh.exports=e9});var Eh=e(function(Gir,Ih){"use strict";var i9=f().isPrimitive,t9=Q().win32;function s9(r){return i9(r)&&!t9(r)}Ih.exports=s9});var Fh=e(function(Wir,Lh){"use strict";var wh=require("@stdlib/utils/define-nonenumerable-read-only-property"),u9=J(),Ch=Nh(),Rh=Eh(),U;u9?U=Rh:U=Ch;wh(U,"posix",Ch);wh(U,"win32",Rh);Lh.exports=U});var Th=e(function(Hir,kh){"use strict";var a9=f().isPrimitive,n9=/(?:([^:\/?#]+):)?(?:\/\/([^\/?#]*))?([^?#]*)(?:\?[^#]*)?(?:#.*)?/,o9=/[^a-z0-9:\/?#\[\]@!$&'()*+,;=.\-_~%]/i,c9=/%[^0-9a-f]/i,f9=/%[0-9a-f](:?[^0-9a-f]|$)/i,p9=/^\/\//,v9=/^[a-z][a-z0-9+\-.]*$/;function q9(r){var i,t,a,n;return!a9(r)||o9.test(r)||c9.test(r)||f9.test(r)?!1:(a=r.match(n9),t=a[1],i=a[2],n=a[3],!!(!t||!t.length||!v9.test(t.toLowerCase())||!i&&p9.test(n)))}kh.exports=q9});var Bh=e(function(Xir,_h){"use strict";var y9=Th();_h.exports=y9});var Lt=e(function(zir,Uh){"use strict";var l9=p().isPrimitive,m9=require("@stdlib/math/base/assert/is-safe-integer");function x9(r){return l9(r)&&m9(r)}Uh.exports=x9});var Ft=e(function(Kir,Mh){"use strict";var b9=p().isObject,g9=require("@stdlib/math/base/assert/is-safe-integer");function A9(r){return b9(r)&&g9(r.valueOf())}Mh.exports=A9});var Vh=e(function($ir,Dh){"use strict";var P9=Lt(),O9=Ft();function S9(r){return P9(r)||O9(r)}Dh.exports=S9});var Tt=e(function(Zir,Wh){"use strict";var Gh=require("@stdlib/utils/define-nonenumerable-read-only-property"),kt=Vh(),d9=Lt(),h9=Ft();Gh(kt,"isPrimitive",d9);Gh(kt,"isObject",h9);Wh.exports=kt});var zh=e(function(Yir,Xh){"use strict";var Hh=require("@stdlib/utils/define-nonenumerable-read-only-property"),_t=q(),Bt=Tt(),j9=_t(Bt.isPrimitive),N9=_t(Bt.isObject),Ut=_t(Bt);Hh(Ut,"primitives",j9);Hh(Ut,"objects",N9);Xh.exports=Ut});var Zh=e(function(Jir,$h){"use strict";var Kh=Ne(),I9=require("@stdlib/array/base/assert/has-same-values");function E9(r,i){return Kh(r)&&Kh(i)?I9(r,i):!1}$h.exports=E9});var Jh=e(function(Qir,Yh){"use strict";var w9=Zh();Yh.exports=w9});var e0=e(function(rtr,r0){"use strict";var Qh=Ie(),C9=require("@stdlib/complex/base/assert/is-same-value");function R9(r,i){return Qh(r)&&Qh(i)?C9(r,i):!1}r0.exports=R9});var t0=e(function(etr,i0){"use strict";var L9=e0();i0.exports=L9});var a0=e(function(itr,u0){"use strict";var s0=Ee(),F9=require("@stdlib/array/base/assert/has-same-values");function k9(r,i){return s0(r)&&s0(i)?F9(r,i):!1}u0.exports=k9});var o0=e(function(ttr,n0){"use strict";var T9=a0();n0.exports=T9});var p0=e(function(str,f0){"use strict";var c0=X(),_9=require("@stdlib/array/base/assert/has-same-values");function B9(r,i){return c0(r)&&c0(i)?_9(r,i):!1}f0.exports=B9});var q0=e(function(utr,v0){"use strict";var U9=p0();v0.exports=U9});var m0=e(function(atr,l0){"use strict";var y0=z(),M9=require("@stdlib/array/base/assert/has-same-values");function D9(r,i){return y0(r)&&y0(i)?M9(r,i):!1}l0.exports=D9});var b0=e(function(ntr,x0){"use strict";var V9=m0();x0.exports=V9});var P0=e(function(otr,A0){"use strict";var g0=require("@stdlib/utils/native-class");function G9(r,i){return g0(r)===g0(i)}A0.exports=G9});var S0=e(function(ctr,O0){"use strict";var W9=P0();O0.exports=W9});var h0=e(function(ftr,d0){"use strict";function H9(r,i){return typeof r==typeof i}d0.exports=H9});var N0=e(function(ptr,j0){"use strict";var X9=h0();j0.exports=X9});var w0=e(function(vtr,E0){"use strict";var z9=require("@stdlib/complex/base/assert/is-same-value"),I0=ur();function K9(r,i){return r===i?r===0?1/r===1/i:!0:r!==r&&i!==i?!0:I0(r)&&I0(i)?z9(r,i):!1}E0.exports=K9});var R0=e(function(qtr,C0){"use strict";var $9=w0();C0.exports=$9});var k0=e(function(ytr,F0){"use strict";var Z9=require("@stdlib/complex/base/assert/is-same-value-zero"),L0=ur();function Y9(r,i){return r===i||r!==r&&i!==i?!0:L0(r)&&L0(i)?Z9(r,i):!1}F0.exports=Y9});var _0=e(function(ltr,T0){"use strict";var J9=k0();T0.exports=J9});var U0=e(function(mtr,B0){"use strict";var Q9=f().isPrimitive,r5=require("@stdlib/regexp/semver").REGEXP;function e5(r){return Q9(r)&&r5.test(r)}B0.exports=e5});var D0=e(function(xtr,M0){"use strict";var i5=U0();M0.exports=i5});var G0=e(function(btr,V0){"use strict";var t5=S(),s5=require("@stdlib/math/base/special/floor"),u5=require("@stdlib/math/base/assert/is-odd");function a5(r){var i,t,a,n,c,o;if(!t5(r))return!1;for(t=r.shape[0],a=s5(t/2),i=t-1,c=0;c=0&&r<=_H}mN.exports=BH});var gN=e(function(usr,bN){"use strict";var UH=xN();bN.exports=UH});var PN=e(function(asr,AN){"use strict";var MH=h().isPrimitive,DH=require("@stdlib/constants/array/max-typed-array-length");function VH(r){return r!==null&&typeof r=="object"&&MH(r.length)&&r.length<=DH&&typeof r.BYTES_PER_ELEMENT=="number"&&typeof r.byteOffset=="number"&&typeof r.byteLength=="number"}AN.exports=VH});var SN=e(function(nsr,ON){"use strict";var GH=PN();ON.exports=GH});var hN=e(function(osr,dN){"use strict";var WH=f().isPrimitive,HH=require("@stdlib/regexp/unc-path").REGEXP;function XH(r){return WH(r)&&HH.test(r)}dN.exports=XH});var NN=e(function(csr,jN){"use strict";var zH=hN();jN.exports=zH});var EN=e(function(fsr,IN){"use strict";function KH(r){return r===void 0}IN.exports=KH});var CN=e(function(psr,wN){"use strict";var $H=EN();wN.exports=$H});var LN=e(function(vsr,RN){"use strict";function ZH(r){return r==null}RN.exports=ZH});var kN=e(function(qsr,FN){"use strict";var YH=LN();FN.exports=YH});var UN=e(function(ysr,BN){"use strict";var JH=j(),QH=x(),rX=p().isPrimitive,TN=require("@stdlib/math/base/utils/absolute-difference"),_N=require("@stdlib/constants/float64/sqrt-eps");function eX(r){var i,t;if(QH(r)){for(i=0,t=0;t1||r[t]<0)return!1;i+=r[t]}return TN(i,1)<=_N}if(JH(r)){for(i=0,t=0;t1||r[t]<0)return!1;i+=r[t]}return TN(i,1)<=_N}return!1}BN.exports=eX});var DN=e(function(lsr,MN){"use strict";var iX=UN();MN.exports=iX});var GN=e(function(msr,VN){"use strict";var tX=require("@stdlib/string/lowercase"),sX=require("@stdlib/string/uppercase"),uX=f().isPrimitive;function aX(r){return uX(r)&&r===sX(r)&&r!==tX(r)}VN.exports=aX});var HN=e(function(xsr,WN){"use strict";var nX=GN();WN.exports=nX});var zN=e(function(bsr,XN){"use strict";var oX=require("@stdlib/utils/get-prototype-of"),cX=require("@stdlib/utils/type-of"),fX=g();function pX(r){if(typeof r!="object"||r===null)return!1;if(r instanceof URIError)return!0;if(fX(r))for(;r;){if(cX(r)==="urierror")return!0;r=oX(r)}return!1}XN.exports=pX});var $N=e(function(gsr,KN){"use strict";var vX=zN();KN.exports=vX});var JN=e(function(Asr,YN){"use strict";var ZN;function qX(){var r="";return r+="try {",r+="return this === self;",r+="} catch ( err ) {",r+="return false;",r+="}",new Function(r)()}ZN=qX();YN.exports=ZN});var eI=e(function(Psr,rI){"use strict";var yX=require("@stdlib/utils/global"),lX=B(),QN=b(),mX=JN(),xX=yX();function bX(){return lX===!1&&typeof WorkerGlobalScope=="object"&&QN(WorkerNavigator)&&navigator instanceof WorkerNavigator&&QN(WorkerLocation)&&location instanceof WorkerLocation&&typeof self=="object"&&self===xX&&mX===!0&&typeof importScripts=="function"}rI.exports=bX});var tI=e(function(Osr,iI){"use strict";var gX=eI(),AX=gX();iI.exports=AX});var uI=e(function(Ssr,sI){"use strict";var PX=f().isPrimitive,OX=require("@stdlib/regexp/whitespace"),SX=new RegExp("^"+OX.REGEXP.source+"+$");function dX(r){return PX(r)?SX.test(r):!1}sI.exports=dX});var nI=e(function(dsr,aI){"use strict";var hX=uI();aI.exports=hX});var cI=e(function(hsr,oI){"use strict";var jX=require("@stdlib/utils/property-descriptor");function NX(r,i){var t=jX(r,i);return t!==null&&(t.writable===!0||typeof t.set=="function")}oI.exports=NX});var pI=e(function(jsr,fI){"use strict";var IX=cI();fI.exports=IX});var qI=e(function(Nsr,vI){"use strict";var EX=require("@stdlib/utils/property-descriptor-in");function wX(r,i){var t=EX(r,i);return t!==null&&(t.writable===!0||typeof t.set=="function")}vI.exports=wX});var lI=e(function(Isr,yI){"use strict";var CX=qI();yI.exports=CX});var xI=e(function(Esr,mI){"use strict";var RX=require("@stdlib/utils/property-descriptor");function LX(r,i){var t=RX(r,i);return t!==null&&t.configurable===!1&&typeof t.set=="function"&&t.get===void 0}mI.exports=LX});var gI=e(function(wsr,bI){"use strict";var FX=xI();bI.exports=FX});var PI=e(function(Csr,AI){"use strict";var kX=require("@stdlib/utils/property-descriptor-in");function TX(r,i){var t=kX(r,i);return t!==null&&t.configurable===!1&&typeof t.set=="function"&&t.get===void 0}AI.exports=TX});var SI=e(function(Rsr,OI){"use strict";var _X=PI();OI.exports=_X});var hI=e(function(Lsr,dI){"use strict";var BX=j(),UX=require("@stdlib/string/format");function MX(r){if(typeof r!="function")throw new TypeError(UX("invalid argument. Must provide a function. Value: `%s`.",r));return i;function i(t){var a,n;if(!BX(t)||(a=t.length,a===0))return!1;for(n=0;n=0&&r.length<=TI}ss.exports=_I});var C=e(function(JX,as){"use strict";var BI=us();as.exports=BI});var pr=e(function(QX,ns){"use strict";function UI(r){return typeof r=="number"}ns.exports=UI});var cs=e(function(r7,os){"use strict";function MI(){return typeof Symbol=="function"&&typeof Symbol("foo")=="symbol"}os.exports=MI});var R=e(function(e7,fs){"use strict";var DI=cs();fs.exports=DI});var vs=e(function(i7,ps){"use strict";var VI=R(),GI=VI();function WI(){return GI&&typeof Symbol.toStringTag=="symbol"}ps.exports=WI});var d=e(function(t7,qs){"use strict";var HI=vs();qs.exports=HI});var ls=e(function(s7,ys){"use strict";var XI=require("@stdlib/number/ctor"),zI=XI.prototype.toString;ys.exports=zI});var xs=e(function(u7,ms){"use strict";var KI=ls();function $I(r){try{return KI.call(r),!0}catch(i){return!1}}ms.exports=$I});var vr=e(function(a7,bs){"use strict";var ZI=d(),YI=require("@stdlib/utils/native-class"),JI=require("@stdlib/number/ctor"),QI=xs(),rE=ZI();function eE(r){return typeof r=="object"?r instanceof JI?!0:rE?QI(r):YI(r)==="[object Number]":!1}bs.exports=eE});var As=e(function(n7,gs){"use strict";var iE=pr(),tE=vr();function sE(r){return iE(r)||tE(r)}gs.exports=sE});var p=e(function(o7,Ss){"use strict";var Ps=require("@stdlib/utils/define-nonenumerable-read-only-property"),qr=As(),uE=pr(),aE=vr();Ps(qr,"isPrimitive",uE);Ps(qr,"isObject",aE);Ss.exports=qr});var yr=e(function(c7,Os){"use strict";var nE=require("@stdlib/constants/float64/pinf"),oE=require("@stdlib/constants/float64/ninf"),cE=require("@stdlib/math/base/assert/is-integer");function fE(r){return roE&&cE(r)}Os.exports=fE});var lr=e(function(f7,ds){"use strict";var pE=p().isPrimitive,vE=yr();function qE(r){return pE(r)&&vE(r)}ds.exports=qE});var mr=e(function(p7,hs){"use strict";var yE=p().isObject,lE=yr();function mE(r){return yE(r)&&lE(r.valueOf())}hs.exports=mE});var Ns=e(function(v7,js){"use strict";var xE=lr(),bE=mr();function gE(r){return xE(r)||bE(r)}js.exports=gE});var v=e(function(q7,Es){"use strict";var Is=require("@stdlib/utils/define-nonenumerable-read-only-property"),xr=Ns(),AE=lr(),PE=mr();Is(xr,"isPrimitive",AE);Is(xr,"isObject",PE);Es.exports=xr});var br=e(function(y7,ws){"use strict";function SE(r){return typeof r=="string"}ws.exports=SE});var Rs=e(function(l7,Cs){"use strict";var OE=String.prototype.valueOf;Cs.exports=OE});var Fs=e(function(m7,Ls){"use strict";var dE=Rs();function hE(r){try{return dE.call(r),!0}catch(i){return!1}}Ls.exports=hE});var gr=e(function(x7,ks){"use strict";var jE=d(),NE=require("@stdlib/utils/native-class"),IE=Fs(),EE=jE();function wE(r){return typeof r=="object"?r instanceof String?!0:EE?IE(r):NE(r)==="[object String]":!1}ks.exports=wE});var _s=e(function(b7,Ts){"use strict";var CE=br(),RE=gr();function LE(r){return CE(r)||RE(r)}Ts.exports=LE});var f=e(function(g7,Us){"use strict";var Bs=require("@stdlib/utils/define-nonenumerable-read-only-property"),Ar=_s(),FE=br(),kE=gr();Bs(Ar,"isPrimitive",FE);Bs(Ar,"isObject",kE);Us.exports=Ar});var Pr=e(function(A7,Ms){"use strict";var TE=p().isPrimitive,_E=require("@stdlib/math/base/assert/is-nan");function BE(r){return TE(r)&&_E(r)}Ms.exports=BE});var Sr=e(function(P7,Ds){"use strict";var UE=p().isObject,ME=require("@stdlib/math/base/assert/is-nan");function DE(r){return UE(r)&&ME(r.valueOf())}Ds.exports=DE});var Gs=e(function(S7,Vs){"use strict";var VE=Pr(),GE=Sr();function WE(r){return VE(r)||GE(r)}Vs.exports=WE});var L=e(function(O7,Hs){"use strict";var Ws=require("@stdlib/utils/define-nonenumerable-read-only-property"),Or=Gs(),HE=Pr(),XE=Sr();Ws(Or,"isPrimitive",HE);Ws(Or,"isObject",XE);Hs.exports=Or});var Ks=e(function(d7,zs){"use strict";var zE=C(),KE=v().isPrimitive,dr=f().isPrimitive,Xs=L().isPrimitive,hr=require("@stdlib/string/format");function $E(r,i,t){var a,n,c;if(!zE(r)&&!dr(r))throw new TypeError(hr("invalid argument. First argument must be array-like. Value: `%s`.",r));if(arguments.length<2)throw new Error("insufficient arguments. Must provide a search value.");if(arguments.length>2){if(!KE(t))throw new TypeError(hr("invalid argument. Third argument must be an integer. Value: `%s`.",t));n=t,n<0&&(n=0)}else n=0;if(dr(r)){if(!dr(i))throw new TypeError(hr("invalid argument. Second argument must be a string. Value: `%s`.",i));return r.indexOf(i,n)!==-1}if(a=r.length,Xs(i)){for(c=n;c2&&(o=fw(c,t),o))throw o;return r==null?!1:(a?n=i.split(c.sep):n=i,vw(r,n))}$u.exports=qw});var Ju=e(function(sz,Yu){"use strict";var yw=f().isPrimitive,lw=x(),mw=require("@stdlib/string/format"),xw=wr(),bw=Cr(),gw=Rr();function Aw(r,i){var t,a,n,c;if(t=yw(r),!t&&!lw(r))throw new TypeError(mw("invalid argument. Key path must be a string or a key array. Value: `%s`.",r));if(n=bw(),arguments.length>1&&(c=xw(n,i),c))throw c;return t?a=r.split(n.sep):a=r,o;function o(y){return y==null?!1:gw(y,a)}}Yu.exports=Aw});var ea=e(function(uz,ra){"use strict";var Pw=require("@stdlib/utils/define-nonenumerable-read-only-property"),Qu=Zu(),Sw=Ju();Pw(Qu,"factory",Sw);ra.exports=Qu});var Lr=e(function(az,ta){"use strict";var Ow=f().isPrimitive,dw=b(),hw=m(),ia=require("@stdlib/string/format");function jw(r,i){return dw(i)?hw(i,"sep")&&(r.sep=i.sep,!Ow(r.sep))?new TypeError(ia("invalid option. `%s` option must be a string. Option: `%s`.","sep",r.sep)):null:new TypeError(ia("invalid argument. Options argument must be an object. Value: `%s`.",i))}ta.exports=jw});var Fr=e(function(nz,sa){"use strict";function Nw(){return{sep:"."}}sa.exports=Nw});var aa=e(function(oz,ua){"use strict";function Iw(r,i){return r==null?!1:typeof i=="symbol"?i in Object(r):String(i)in Object(r)}ua.exports=Iw});var kr=e(function(cz,na){"use strict";var Ew=aa();na.exports=Ew});var Tr=e(function(fz,oa){"use strict";var ww=kr();function Cw(r,i){var t=i.length,a;if(t===0)return!1;for(a=0;a2&&(o=kw(c,t),o))throw o;return r==null?!1:(a?n=i.split(c.sep):n=i,_w(r,n))}ca.exports=Bw});var va=e(function(vz,pa){"use strict";var Uw=f().isPrimitive,Mw=x(),Dw=require("@stdlib/string/format"),Vw=Lr(),Gw=Fr(),Ww=Tr();function Hw(r,i){var t,a,n,c;if(t=Uw(r),!t&&!Mw(r))throw new TypeError(Dw("invalid argument. Key path must be a string or a key array. Value: `%s`.",r));if(n=Gw(),arguments.length>1&&(c=Vw(n,i),c))throw c;return t?a=r.split(n.sep):a=r,o;function o(y){return y==null?!1:Ww(y,a)}}pa.exports=Hw});var la=e(function(qz,ya){"use strict";var Xw=require("@stdlib/utils/define-nonenumerable-read-only-property"),qa=fa(),zw=va();Xw(qa,"factory",zw);ya.exports=qa});var xa=e(function(yz,ma){"use strict";var Kw=require("@stdlib/utils/native-class"),$w=typeof ArrayBuffer=="function";function Zw(r){return $w&&r instanceof ArrayBuffer||Kw(r)==="[object ArrayBuffer]"}ma.exports=Zw});var _r=e(function(lz,ba){"use strict";var Yw=xa();ba.exports=Yw});var Aa=e(function(mz,ga){"use strict";var Jw=typeof ArrayBuffer=="function"?ArrayBuffer:null;ga.exports=Jw});var Sa=e(function(xz,Pa){"use strict";var Qw=_r(),rC=require("@stdlib/array/float64"),G=Aa();function eC(){var r,i,t;if(typeof G!="function")return!1;try{t=new G(16),r=Qw(t)&&typeof G.isView=="function",r&&(i=new rC(t),i[0]=-3.14,i[1]=NaN,r=r&&G.isView(i)&&t.byteLength===16&&i[0]===-3.14&&i[1]!==i[1])}catch(a){r=!1}return r}Pa.exports=eC});var Br=e(function(bz,Oa){"use strict";var iC=Sa();Oa.exports=iC});var ha=e(function(gz,da){"use strict";var tC=require("@stdlib/utils/eval");function sC(){var r;try{tC('"use strict"; (() => {})'),r=!0}catch(i){r=!1}return r}da.exports=sC});var Na=e(function(Az,ja){"use strict";var uC=ha();ja.exports=uC});var Ea=e(function(Pz,Ia){"use strict";var aC=require("@stdlib/utils/eval");function nC(){var r;try{aC('"use strict"; async () => {}'),r=!0}catch(i){r=!1}return r}Ia.exports=nC});var Ca=e(function(Sz,wa){"use strict";var oC=Ea();wa.exports=oC});var La=e(function(Oz,Ra){"use strict";var cC=m();function fC(){return typeof Symbol=="function"&&typeof Symbol("foo")=="symbol"&&cC(Symbol,"asyncIterator")&&typeof Symbol.asyncIterator=="symbol"}Ra.exports=fC});var ka=e(function(dz,Fa){"use strict";var pC=La();Fa.exports=pC});var Ba=e(function(hz,_a){"use strict";var vC=require("@stdlib/utils/global"),Ta=vC();function qC(){return typeof Ta.BigInt=="function"&&typeof BigInt=="function"&&typeof Ta.BigInt("1")=="bigint"&&typeof BigInt("1")=="bigint"}_a.exports=qC});var Ur=e(function(jz,Ua){"use strict";var yC=Ba();Ua.exports=yC});var Da=e(function(Nz,Ma){"use strict";var lC=require("@stdlib/utils/native-class"),mC=typeof BigInt64Array=="function";function xC(r){return mC&&r instanceof BigInt64Array||lC(r)==="[object BigInt64Array]"}Ma.exports=xC});var Mr=e(function(Iz,Va){"use strict";var bC=Da();Va.exports=bC});var Dr=e(function(Ez,Ga){"use strict";function gC(r){return typeof r=="bigint"}Ga.exports=gC});var Ha=e(function(wz,Wa){"use strict";function AC(r){try{return typeof r.valueOf()=="bigint"}catch(i){return!1}}Wa.exports=AC});var Vr=e(function(Cz,Xa){"use strict";var PC=require("@stdlib/utils/native-class"),SC=Ha();function OC(r){return typeof r=="object"&&PC(r)==="[object BigInt]"&&SC(r)}Xa.exports=OC});var Ka=e(function(Rz,za){"use strict";var dC=Dr(),hC=Vr();function jC(r){return dC(r)||hC(r)}za.exports=jC});var Ya=e(function(Lz,Za){"use strict";var $a=require("@stdlib/utils/define-nonenumerable-read-only-property"),Gr=Ka(),NC=Dr(),IC=Vr();$a(Gr,"isPrimitive",NC);$a(Gr,"isObject",IC);Za.exports=Gr});var rn=e(function(Fz,Qa){"use strict";var Ja=require("@stdlib/utils/define-nonenumerable-read-only-property"),Wr=require("@stdlib/utils/constant-function"),Hr=Wr(!1),EC=Wr(!1),wC=Wr(!1);Ja(Hr,"isPrimitive",EC);Ja(Hr,"isObject",wC);Qa.exports=Hr});var W=e(function(kz,en){"use strict";var CC=Ur(),RC=Ya(),LC=rn(),Xr;CC()?Xr=RC:Xr=LC;en.exports=Xr});var sn=e(function(Tz,tn){"use strict";var FC=typeof BigInt64Array=="function"?BigInt64Array:null;tn.exports=FC});var fn=e(function(_z,cn){"use strict";var kC=Mr(),un=W(),an=sn(),nn="9007199254740991",on="9007199254740993";function TC(){var r;if(typeof an!="function")return!1;try{return r=new an([nn,on]),kC(r)&&un(r[0])&&r[0].toString()===nn&&un(r[1])&&r[1].toString()===on}catch(i){return!1}}cn.exports=TC});var vn=e(function(Bz,pn){"use strict";var _C=fn();pn.exports=_C});var yn=e(function(Uz,qn){"use strict";var BC=require("@stdlib/utils/native-class"),UC=typeof BigUint64Array=="function";function MC(r){return UC&&r instanceof BigUint64Array||BC(r)==="[object BigUint64Array]"}qn.exports=MC});var zr=e(function(Mz,ln){"use strict";var DC=yn();ln.exports=DC});var xn=e(function(Dz,mn){"use strict";var VC=typeof BigUint64Array=="function"?BigUint64Array:null;mn.exports=VC});var On=e(function(Vz,Sn){"use strict";var GC=zr(),bn=W(),gn=xn(),An="9223372036854775807",Pn="9223372036854775809";function WC(){var r;if(typeof gn!="function")return!1;try{return r=new gn([An,Pn]),GC(r)&&bn(r[0])&&r[0].toString()===An&&bn(r[1])&&r[1].toString()===Pn}catch(i){return!1}}Sn.exports=WC});var hn=e(function(Gz,dn){"use strict";var HC=On();dn.exports=HC});var Nn=e(function(Wz,jn){"use strict";var XC=require("@stdlib/utils/eval");function zC(){var r;try{XC('"use strict"; class A{};'),r=!0}catch(i){r=!1}return r}jn.exports=zC});var En=e(function(Hz,In){"use strict";var KC=Nn();In.exports=KC});var Cn=e(function(Xz,wn){"use strict";var $C=require("@stdlib/utils/native-class"),ZC=typeof DataView=="function";function YC(r){return ZC&&r instanceof DataView||$C(r)==="[object DataView]"}wn.exports=YC});var H=e(function(zz,Rn){"use strict";var JC=Cn();Rn.exports=JC});var Fn=e(function(Kz,Ln){"use strict";var QC=typeof DataView=="function"?DataView:null;Ln.exports=QC});var _n=e(function($z,Tn){"use strict";var r2=H(),e2=require("@stdlib/array/buffer"),kn=Fn();function i2(){var r,i,t;if(typeof kn!="function")return!1;try{t=new e2(24),i=new kn(t,8),r=r2(i)&&typeof i.getFloat64=="function"&&typeof i.setFloat64=="function",r&&(i.setFloat64(0,-3.14),i.setFloat64(8,NaN),r=r&&i.buffer===t&&i.byteLength===16&&i.byteOffset===8&&i.getFloat64(0)===-3.14&&i.getFloat64(8)!==i.getFloat64(8))}catch(a){r=!1}return r}Tn.exports=i2});var Un=e(function(Zz,Bn){"use strict";var t2=_n();Bn.exports=t2});var Dn=e(function(Yz,Mn){"use strict";var s2=typeof Object.defineProperties=="function"?Object.defineProperties:null;Mn.exports=s2});var Gn=e(function(Jz,Vn){"use strict";var u2=Dn();function a2(){try{return u2({},{x:{}}),!0}catch(r){return!1}}Vn.exports=a2});var Hn=e(function(Qz,Wn){"use strict";var n2=Gn();Wn.exports=n2});var zn=e(function(rK,Xn){"use strict";var o2=typeof Object.defineProperty=="function"?Object.defineProperty:null;Xn.exports=o2});var $n=e(function(eK,Kn){"use strict";var c2=zn();function f2(){try{return c2({},"x",{}),!0}catch(r){return!1}}Kn.exports=f2});var Yn=e(function(iK,Zn){"use strict";var p2=$n();Zn.exports=p2});var Qn=e(function(tK,Jn){"use strict";var v2=require("@stdlib/utils/native-class"),q2=typeof Float32Array=="function";function y2(r){return q2&&r instanceof Float32Array||v2(r)==="[object Float32Array]"}Jn.exports=y2});var X=e(function(sK,ro){"use strict";var l2=Qn();ro.exports=l2});var io=e(function(uK,eo){"use strict";var m2=typeof Float32Array=="function"?Float32Array:null;eo.exports=m2});var uo=e(function(aK,so){"use strict";var x2=X(),b2=require("@stdlib/constants/float64/pinf"),to=io();function g2(){var r,i;if(typeof to!="function")return!1;try{i=new to([1,3.14,-3.14,5e40]),r=x2(i)&&i[0]===1&&i[1]===3.140000104904175&&i[2]===-3.140000104904175&&i[3]===b2}catch(t){r=!1}return r}so.exports=g2});var no=e(function(nK,ao){"use strict";var A2=uo();ao.exports=A2});var co=e(function(oK,oo){"use strict";var P2=require("@stdlib/utils/native-class"),S2=typeof Float64Array=="function";function O2(r){return S2&&r instanceof Float64Array||P2(r)==="[object Float64Array]"}oo.exports=O2});var z=e(function(cK,fo){"use strict";var d2=co();fo.exports=d2});var vo=e(function(fK,po){"use strict";var h2=typeof Float64Array=="function"?Float64Array:null;po.exports=h2});var lo=e(function(pK,yo){"use strict";var j2=z(),qo=vo();function N2(){var r,i;if(typeof qo!="function")return!1;try{i=new qo([1,3.14,-3.14,NaN]),r=j2(i)&&i[0]===1&&i[1]===3.14&&i[2]===-3.14&&i[3]!==i[3]}catch(t){r=!1}return r}yo.exports=N2});var Kr=e(function(vK,mo){"use strict";var I2=lo();mo.exports=I2});var bo=e(function(qK,xo){"use strict";function E2(){}xo.exports=E2});var Ao=e(function(yK,go){"use strict";var w2=bo();function C2(){return w2.name==="foo"}go.exports=C2});var So=e(function(lK,Po){"use strict";var R2=Ao();Po.exports=R2});var ho=e(function(mK,Oo){"use strict";var L2=require("@stdlib/utils/eval");function F2(){var r;try{L2('"use strict"; (function* () {})'),r=!0}catch(i){r=!1}return r}Oo.exports=F2});var $r=e(function(xK,jo){"use strict";var k2=ho();jo.exports=k2});var Io=e(function(bK,No){"use strict";function T2(){return typeof globalThis=="object"&&typeof globalThis.setTimeout=="function"}No.exports=T2});var wo=e(function(gK,Eo){"use strict";var _2=Io();Eo.exports=_2});var Ro=e(function(AK,Co){"use strict";var B2=require("@stdlib/utils/native-class"),U2=typeof Int8Array=="function";function M2(r){return U2&&r instanceof Int8Array||B2(r)==="[object Int8Array]"}Co.exports=M2});var Zr=e(function(PK,Lo){"use strict";var D2=Ro();Lo.exports=D2});var ko=e(function(SK,Fo){"use strict";var V2=typeof Int8Array=="function"?Int8Array:null;Fo.exports=V2});var Bo=e(function(OK,_o){"use strict";var G2=Zr(),W2=require("@stdlib/constants/int8/max"),H2=require("@stdlib/constants/int8/min"),To=ko();function X2(){var r,i;if(typeof To!="function")return!1;try{i=new To([1,3.14,-3.14,W2+1]),r=G2(i)&&i[0]===1&&i[1]===3&&i[2]===-3&&i[3]===H2}catch(t){r=!1}return r}_o.exports=X2});var Mo=e(function(dK,Uo){"use strict";var z2=Bo();Uo.exports=z2});var Vo=e(function(hK,Do){"use strict";var K2=require("@stdlib/utils/native-class"),$2=typeof Int16Array=="function";function Z2(r){return $2&&r instanceof Int16Array||K2(r)==="[object Int16Array]"}Do.exports=Z2});var Yr=e(function(jK,Go){"use strict";var Y2=Vo();Go.exports=Y2});var Ho=e(function(NK,Wo){"use strict";var J2=typeof Int16Array=="function"?Int16Array:null;Wo.exports=J2});var Ko=e(function(IK,zo){"use strict";var Q2=Yr(),rR=require("@stdlib/constants/int16/max"),eR=require("@stdlib/constants/int16/min"),Xo=Ho();function iR(){var r,i;if(typeof Xo!="function")return!1;try{i=new Xo([1,3.14,-3.14,rR+1]),r=Q2(i)&&i[0]===1&&i[1]===3&&i[2]===-3&&i[3]===eR}catch(t){r=!1}return r}zo.exports=iR});var Zo=e(function(EK,$o){"use strict";var tR=Ko();$o.exports=tR});var Jo=e(function(wK,Yo){"use strict";var sR=require("@stdlib/utils/native-class"),uR=typeof Int32Array=="function";function aR(r){return uR&&r instanceof Int32Array||sR(r)==="[object Int32Array]"}Yo.exports=aR});var Jr=e(function(CK,Qo){"use strict";var nR=Jo();Qo.exports=nR});var ec=e(function(RK,rc){"use strict";var oR=typeof Int32Array=="function"?Int32Array:null;rc.exports=oR});var sc=e(function(LK,tc){"use strict";var cR=Jr(),fR=require("@stdlib/constants/int32/max"),pR=require("@stdlib/constants/int32/min"),ic=ec();function vR(){var r,i;if(typeof ic!="function")return!1;try{i=new ic([1,3.14,-3.14,fR+1]),r=cR(i)&&i[0]===1&&i[1]===3&&i[2]===-3&&i[3]===pR}catch(t){r=!1}return r}tc.exports=vR});var ac=e(function(FK,uc){"use strict";var qR=sc();uc.exports=qR});var oc=e(function(kK,nc){"use strict";var yR=m(),K=require("@stdlib/symbol/ctor");function lR(){return typeof K=="function"&&typeof K("foo")=="symbol"&&yR(K,"iterator")&&typeof K.iterator=="symbol"}nc.exports=lR});var Qr=e(function(TK,cc){"use strict";var mR=oc();cc.exports=mR});var pc=e(function(_K,fc){"use strict";var xR=typeof Map=="function"?Map:null;fc.exports=xR});var yc=e(function(BK,qc){"use strict";var vc=pc();function bR(){var r,i,t;if(typeof vc!="function")return!1;try{i={},t=new vc,t.set(i,"beep"),r=t.has(i)&&t.get(i)==="beep"}catch(a){r=!1}return r}qc.exports=bR});var mc=e(function(UK,lc){"use strict";var gR=yc();lc.exports=gR});var bc=e(function(MK,xc){"use strict";var AR=typeof Buffer=="function"?Buffer:null;xc.exports=AR});var Ac=e(function(DK,gc){"use strict";var PR=E(),$=bc();function SR(){var r,i;if(typeof $!="function")return!1;try{typeof $.from=="function"?i=$.from([1,2,3,4]):i=new $([1,2,3,4]),r=PR(i)&&i[0]===1&&i[1]===2&&i[2]===3&&i[3]===4}catch(t){r=!1}return r}gc.exports=SR});var Sc=e(function(VK,Pc){"use strict";var OR=Ac();Pc.exports=OR});var dc=e(function(GK,Oc){"use strict";var dR=require("@stdlib/utils/eval");function hR(){var r;try{dR('"use strict"; var handler = { "get": function get( t, n ) { return t[ n ] * 100; } }; var target = { "beep": 3.14 }; var p = new Proxy( target, handler ); var x = p.beep; if ( x !== 314 ) { throw new Error( "native Proxy is not supported." ); }'),r=!0}catch(i){r=!1}return r}Oc.exports=hR});var jc=e(function(WK,hc){"use strict";var jR=dc();hc.exports=jR});var Ic=e(function(HK,Nc){"use strict";var NR=typeof Set=="function"?Set:null;Nc.exports=NR});var Cc=e(function(XK,wc){"use strict";var Ec=Ic();function IR(){var r,i,t;if(typeof Ec!="function")return!1;try{i={},t=new Ec,t.add(i),t.add(i),r=t.has(i)}catch(a){r=!1}return r}wc.exports=IR});var Lc=e(function(zK,Rc){"use strict";var ER=Cc();Rc.exports=ER});var kc=e(function(KK,Fc){"use strict";var wR=require("@stdlib/utils/native-class"),CR=typeof SharedArrayBuffer=="function";function RR(r){return CR&&r instanceof SharedArrayBuffer||wR(r)==="[object SharedArrayBuffer]"}Fc.exports=RR});var re=e(function($K,Tc){"use strict";var LR=kc();Tc.exports=LR});var Bc=e(function(ZK,_c){"use strict";var FR=typeof SharedArrayBuffer=="function"?SharedArrayBuffer:null;_c.exports=FR});var Vc=e(function(YK,Dc){"use strict";var Uc=re(),Mc=Bc();function kR(){var r,i,t;if(typeof Mc!="function")return!1;try{i=new Mc(16),t=i.slice(4,8),r=Uc(i)&&Uc(t)&&i.byteLength===16&&t.byteLength===4}catch(a){r=!1}return r}Dc.exports=kR});var Wc=e(function(JK,Gc){"use strict";var TR=Vc();Gc.exports=TR});var Xc=e(function(QK,Hc){"use strict";var _R=require("@stdlib/utils/native-class"),BR=typeof Uint8Array=="function";function UR(r){return BR&&r instanceof Uint8Array||_R(r)==="[object Uint8Array]"}Hc.exports=UR});var Z=e(function(r$,zc){"use strict";var MR=Xc();zc.exports=MR});var $c=e(function(e$,Kc){"use strict";var DR=typeof Uint8Array=="function"?Uint8Array:null;Kc.exports=DR});var Jc=e(function(i$,Yc){"use strict";var VR=Z(),ee=require("@stdlib/constants/uint8/max"),Zc=$c();function GR(){var r,i;if(typeof Zc!="function")return!1;try{i=[1,3.14,-3.14,ee+1,ee+2],i=new Zc(i),r=VR(i)&&i[0]===1&&i[1]===3&&i[2]===ee-2&&i[3]===0&&i[4]===1}catch(t){r=!1}return r}Yc.exports=GR});var rf=e(function(t$,Qc){"use strict";var WR=Jc();Qc.exports=WR});var tf=e(function(s$,ef){"use strict";var HR=require("@stdlib/utils/native-class"),XR=typeof Uint8ClampedArray=="function";function zR(r){return XR&&r instanceof Uint8ClampedArray||HR(r)==="[object Uint8ClampedArray]"}ef.exports=zR});var ie=e(function(u$,sf){"use strict";var KR=tf();sf.exports=KR});var af=e(function(a$,uf){"use strict";var $R=typeof Uint8ClampedArray=="function"?Uint8ClampedArray:null;uf.exports=$R});var cf=e(function(n$,of){"use strict";var ZR=ie(),nf=af();function YR(){var r,i;if(typeof nf!="function")return!1;try{i=new nf([-1,0,1,3.14,4.99,255,256]),r=ZR(i)&&i[0]===0&&i[1]===0&&i[2]===1&&i[3]===3&&i[4]===5&&i[5]===255&&i[6]===255}catch(t){r=!1}return r}of.exports=YR});var pf=e(function(o$,ff){"use strict";var JR=cf();ff.exports=JR});var qf=e(function(c$,vf){"use strict";var QR=require("@stdlib/utils/native-class"),rL=typeof Uint16Array=="function";function eL(r){return rL&&r instanceof Uint16Array||QR(r)==="[object Uint16Array]"}vf.exports=eL});var te=e(function(f$,yf){"use strict";var iL=qf();yf.exports=iL});var mf=e(function(p$,lf){"use strict";var tL=typeof Uint16Array=="function"?Uint16Array:null;lf.exports=tL});var gf=e(function(v$,bf){"use strict";var sL=te(),se=require("@stdlib/constants/uint16/max"),xf=mf();function uL(){var r,i;if(typeof xf!="function")return!1;try{i=[1,3.14,-3.14,se+1,se+2],i=new xf(i),r=sL(i)&&i[0]===1&&i[1]===3&&i[2]===se-2&&i[3]===0&&i[4]===1}catch(t){r=!1}return r}bf.exports=uL});var Pf=e(function(q$,Af){"use strict";var aL=gf();Af.exports=aL});var Of=e(function(y$,Sf){"use strict";var nL=require("@stdlib/utils/native-class"),oL=typeof Uint32Array=="function";function cL(r){return oL&&r instanceof Uint32Array||nL(r)==="[object Uint32Array]"}Sf.exports=cL});var ue=e(function(l$,df){"use strict";var fL=Of();df.exports=fL});var jf=e(function(m$,hf){"use strict";var pL=typeof Uint32Array=="function"?Uint32Array:null;hf.exports=pL});var Ef=e(function(x$,If){"use strict";var vL=ue(),ae=require("@stdlib/constants/uint32/max"),Nf=jf();function qL(){var r,i;if(typeof Nf!="function")return!1;try{i=[1,3.14,-3.14,ae+1,ae+2],i=new Nf(i),r=vL(i)&&i[0]===1&&i[1]===3&&i[2]===ae-2&&i[3]===0&&i[4]===1}catch(t){r=!1}return r}If.exports=qL});var Cf=e(function(b$,wf){"use strict";var yL=Ef();wf.exports=yL});var ne=e(function(g$,Rf){"use strict";var lL=v().isPrimitive;function mL(r){return lL(r)&&r>=0}Rf.exports=mL});var oe=e(function(A$,Lf){"use strict";var xL=v().isObject;function bL(r){return xL(r)&&r.valueOf()>=0}Lf.exports=bL});var kf=e(function(P$,Ff){"use strict";var gL=ne(),AL=oe();function PL(r){return gL(r)||AL(r)}Ff.exports=PL});var h=e(function(S$,_f){"use strict";var Tf=require("@stdlib/utils/define-nonenumerable-read-only-property"),ce=kf(),SL=ne(),OL=oe();Tf(ce,"isPrimitive",SL);Tf(ce,"isObject",OL);_f.exports=ce});var Uf=e(function(O$,Bf){"use strict";var dL=f().isPrimitive,hL=h().isPrimitive,fe=require("@stdlib/string/format"),jL=55296,NL=56319,IL=56320,EL=57343;function wL(r,i){var t,a;if(!dL(r))throw new TypeError(fe("invalid argument. Must provide a string. Value: `%s`.",r));if(!hL(i))throw new TypeError(fe("invalid argument. Must provide a valid position (i.e., a nonnegative integer). Value: `%s`.",i));if(i>=r.length)throw new RangeError(fe("invalid argument. Must provide a valid position (i.e., within string bounds). Value: `%u`.",i));return t=r.charCodeAt(i),a=r.charCodeAt(i+1),t>=jL&&t<=NL&&a>=IL&&a<=EL}Bf.exports=wL});var Df=e(function(d$,Mf){"use strict";var CL=Uf();Mf.exports=CL});var Gf=e(function(h$,Vf){"use strict";function RL(){return typeof WebAssembly=="object"}Vf.exports=RL});var Hf=e(function(j$,Wf){"use strict";var LL=Gf();Wf.exports=LL});var zf=e(function(N$,Xf){"use strict";var FL=typeof WeakMap=="function"?WeakMap:null;Xf.exports=FL});var Zf=e(function(I$,$f){"use strict";var Kf=zf();function kL(){var r,i,t;if(typeof Kf!="function")return!1;try{i={},t=new Kf,t.set(i,"beep"),r=t.has(i)&&t.get(i)==="beep"}catch(a){r=!1}return r}$f.exports=kL});var Jf=e(function(E$,Yf){"use strict";var TL=Zf();Yf.exports=TL});var rp=e(function(w$,Qf){"use strict";var _L=typeof WeakSet=="function"?WeakSet:null;Qf.exports=_L});var tp=e(function(C$,ip){"use strict";var ep=rp();function BL(){var r,i,t;if(typeof ep!="function")return!1;try{i={},t=new ep,t.add(i),t.add(i),r=t.has(i)}catch(a){r=!1}return r}ip.exports=BL});var up=e(function(R$,sp){"use strict";var UL=tp();sp.exports=UL});var np=e(function(L$,ap){"use strict";var ML=require("@stdlib/string/format");function DL(r,i){if(typeof i!="function")throw new TypeError(ML("invalid argument. Second argument must be callable. Value: `%s`.",i));return r instanceof i}ap.exports=DL});var cp=e(function(F$,op){"use strict";var VL=np();op.exports=VL});var pp=e(function(k$,fp){"use strict";var GL=f().isPrimitive,WL=/(?:([^:\/?#]+):)?(?:\/\/([^\/?#]*))?([^?#]*)(?:\?[^#]*)?(?:#.*)?/,HL=/[^a-z0-9:\/?#\[\]@!$&'()*+,;=.\-_~%]/i,XL=/%[^0-9a-f]/i,zL=/%[0-9a-f](:?[^0-9a-f]|$)/i,KL=/^\/\//,$L=/^[a-z][a-z0-9+\-.]*$/;function ZL(r){var i,t,a,n;return!(!GL(r)||HL.test(r)||XL.test(r)||zL.test(r)||(a=r.match(WL),t=a[1],i=a[2],n=a[3],!t||!t.length||!$L.test(t.toLowerCase()))||!i&&KL.test(n))}fp.exports=ZL});var Y=e(function(T$,vp){"use strict";var YL=pp();vp.exports=YL});var yp=e(function(_$,qp){"use strict";var JL=Y(),QL=/^https?:\/\//;function r4(r){return JL(r)&&QL.test(r)}qp.exports=r4});var mp=e(function(B$,lp){"use strict";var e4=yp();lp.exports=e4});var J=e(function(U$,xp){"use strict";var i4=require("@stdlib/os/platform"),t4=i4==="win32";xp.exports=t4});var gp=e(function(M$,bp){"use strict";var s4=f().isPrimitive;function u4(r){return s4(r)&&r.length>0&&r.charCodeAt(0)===47}bp.exports=u4});var Pp=e(function(D$,Ap){"use strict";var a4=f().isPrimitive;function n4(r){var i,t;return!a4(r)||(t=r.length,t===0)?!1:(i=r.charCodeAt(0),i===47||i===92||(i>=65&&i<=90||i>=97&&i<=122)&&t>2&&r.charCodeAt(1)===58&&(i=r.charCodeAt(2),i===47||i===92))}Ap.exports=n4});var Q=e(function(V$,hp){"use strict";var Sp=require("@stdlib/utils/define-nonenumerable-read-only-property"),o4=J(),Op=gp(),dp=Pp(),k;o4?k=dp:k=Op;Sp(k,"posix",Op);Sp(k,"win32",dp);hp.exports=k});var Np=e(function(G$,jp){"use strict";var c4=Y();function f4(r){return c4(r)}jp.exports=f4});var Ep=e(function(W$,Ip){"use strict";var p4=Np();Ip.exports=p4});var Rp=e(function(H$,Cp){"use strict";var v4=C(),wp=l();function q4(r){return v4(r)&&wp(r.get)&&wp(r.set)}Cp.exports=q4});var Fp=e(function(X$,Lp){"use strict";var y4=Rp();Lp.exports=y4});var Tp=e(function(z$,kp){"use strict";var l4=require("@stdlib/utils/property-descriptor");function m4(r,i){var t=l4(r,i);return t!==null&&(typeof t.get=="function"||typeof t.set=="function")}kp.exports=m4});var Bp=e(function(K$,_p){"use strict";var x4=Tp();_p.exports=x4});var Mp=e(function($$,Up){"use strict";var b4=require("@stdlib/utils/property-descriptor-in");function g4(r,i){var t=b4(r,i);return t!==null&&(typeof t.get=="function"||typeof t.set=="function")}Up.exports=g4});var Vp=e(function(Z$,Dp){"use strict";var A4=Mp();Dp.exports=A4});var Wp=e(function(Y$,Gp){"use strict";var P4=f();function S4(r){var i,t;if(!P4(r)||(i=r.length,!i))return!1;for(t=1;tr[t])return!1;return!0}Gp.exports=S4});var Xp=e(function(J$,Hp){"use strict";var O4=Wp();Hp.exports=O4});var Kp=e(function(Q$,zp){"use strict";var d4=f().isPrimitive,h4=48,j4=57,N4=65,I4=90,E4=97,w4=122;function C4(r){var i,t,a;if(!d4(r)||(i=r.length,i===0))return!1;for(a=0;aj4)&&(tw4)&&(tI4))return!1;return!0}zp.exports=C4});var Zp=e(function(rZ,$p){"use strict";var R4=Kp();$p.exports=R4});var tv=e(function(eZ,iv){"use strict";var Yp=require("@stdlib/string/base/lowercase"),Jp=require("@stdlib/string/base/replace"),Qp=f().isPrimitive,L4=require("@stdlib/string/format"),rv=/[^a-z0-9]/g;function ev(r,i){return r=0&&i=0&&r.length<=r6&&Z4(r,"callee")&&!Y4(r,"callee")}xv.exports=e6});var Av=e(function(fZ,gv){"use strict";var i6=cv(),t6=pe(),s6=bv(),qe;i6?qe=t6:qe=s6;gv.exports=qe});var Sv=e(function(pZ,Pv){"use strict";var u6=F(),a6=x(),n6=u6(a6);Pv.exports=n6});var dv=e(function(vZ,Ov){"use strict";var o6=Sv();Ov.exports=o6});var jv=e(function(qZ,hv){"use strict";var c6=v().isPrimitive,f6=require("@stdlib/constants/array/max-array-length");function p6(r){return c6(r)&&r>=0&&r<=f6}hv.exports=p6});var Iv=e(function(yZ,Nv){"use strict";var v6=jv();Nv.exports=v6});var wv=e(function(lZ,Ev){"use strict";var q6=require("@stdlib/math/base/assert/is-integer"),y6=require("@stdlib/constants/array/max-array-length");function l6(r){return r!=null&&typeof r!="function"&&typeof r.length=="number"&&q6(r.length)&&r.length>=0&&r.length<=y6}Ev.exports=l6});var ye=e(function(mZ,Cv){"use strict";var m6=wv();Cv.exports=m6});var Lv=e(function(xZ,Rv){"use strict";var x6=require("@stdlib/math/base/assert/is-integer"),b6=require("@stdlib/constants/array/max-array-length");function g6(r){return typeof r=="object"&&r!==null&&typeof r.length=="number"&&x6(r.length)&&r.length>=0&&r.length<=b6}Rv.exports=g6});var kv=e(function(bZ,Fv){"use strict";var A6=Lv();Fv.exports=A6});var _v=e(function(gZ,Tv){"use strict";var P6=require("@stdlib/utils/constant-function"),S6=P6(!1);Tv.exports=S6});var Uv=e(function(AZ,Bv){"use strict";var O6=require("@stdlib/array/int8"),d6=require("@stdlib/array/uint8"),h6=require("@stdlib/array/uint8c"),j6=require("@stdlib/array/int16"),N6=require("@stdlib/array/uint16"),I6=require("@stdlib/array/int32"),E6=require("@stdlib/array/uint32"),w6=require("@stdlib/array/float32"),C6=require("@stdlib/array/float64"),R6=[C6,w6,I6,E6,j6,N6,O6,d6,h6];Bv.exports=R6});var Mv=e(function(PZ,L6){L6.exports=["Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Uint16Array","Int32Array","Uint32Array","Float32Array","Float64Array"]});var Xv=e(function(SZ,Hv){"use strict";var F6=require("@stdlib/utils/constructor-name"),k6=require("@stdlib/utils/function-name"),Gv=require("@stdlib/utils/get-prototype-of"),T6=Kr(),_6=require("@stdlib/array/float64"),Dv=Uv(),Vv=Mv(),er=T6()?Gv(_6):Wv;er=k6(er)==="TypedArray"?er:Wv;function Wv(){}function B6(r){var i,t;if(typeof r!="object"||r===null)return!1;if(r instanceof er)return!0;for(t=0;t/;function rF(r){var i;return Y6(r)?(i=J6(r),Q6.test(i)):!1}rq.exports=rF});var tq=e(function(IZ,iq){"use strict";var eF=eq();iq.exports=eF});var uq=e(function(EZ,sq){"use strict";var iF=f().isPrimitive,tF=127;function sF(r){var i,t;if(!iF(r)||(i=r.length,!i))return!1;for(t=0;ttF)return!1;return!0}sq.exports=sF});var nq=e(function(wZ,aq){"use strict";var uF=uq();aq.exports=uF});var fq=e(function(CZ,cq){"use strict";var oq=require("@stdlib/string/format");function aF(r,i,t,a,n){if(arguments.length>3){if(a!=="closed"&&a!=="open")throw new TypeError(oq('invalid argument. Fourth argument must be one of the following: "%s". Value: `%s`.',["closed","open"].join('", "'),a));if(n!=="closed"&&n!=="open")throw new TypeError(oq('invalid argument. Fifth argument must be one of the following: "%s". Value: `%s`.',["closed","open"].join('", "'),n))}return a==="closed"||a===void 0?n==="closed"||n===void 0?r>=i&&r<=t:r>=i&&ri&&r<=t:r>i&&r3){if(a!=="closed"&&a!=="open")throw new TypeError(qq('invalid argument. Fourth argument must be one of the following: "%s". Value: `%s`.',["closed","open"].join('", "'),a));if(n!=="closed"&&n!=="open")throw new TypeError(qq('invalid argument. Fifth argument must be one of the following: "%s". Value: `%s`.',["closed","open"].join('", "'),n))}if(!oF(r)||(c=r.length,c===0))return!1;if(a==="closed"||a===void 0){if(n==="closed"||n===void 0){for(o=0;ot)return!1;return!0}for(o=0;o=t)return!1;return!0}if(n==="closed"||n===void 0){for(o=0;ot)return!1;return!0}for(o=0;o=t)return!1;return!0}yq.exports=cF});var xq=e(function(FZ,mq){"use strict";var fF=lq();mq.exports=fF});var gq=e(function(kZ,bq){"use strict";var pF=require("@stdlib/array/uint8"),vF=require("@stdlib/array/uint16"),qF={uint16:vF,uint8:pF};bq.exports=qF});var Oq=e(function(TZ,Sq){"use strict";var Aq=gq(),Pq;function yF(){var r,i;return r=new Aq.uint16(1),r[0]=4660,i=new Aq.uint8(r.buffer),i[1]===52}Pq=yF();Sq.exports=Pq});var hq=e(function(_Z,dq){"use strict";var lF=Oq();dq.exports=lF});var Nq=e(function(BZ,jq){"use strict";var mF=f().isPrimitive;function xF(r){var i,t;if(!mF(r)||r.length===0)return!1;for(t=0;tg_)return!1;return!0}px.exports=A_});var yx=e(function(kJ,qx){"use strict";var P_=vx();qx.exports=P_});var mx=e(function(TJ,lx){"use strict";var S_=require("@stdlib/fs/read-file").sync,O_=M(),d_=require("@stdlib/fs/exists").sync,h_={encoding:"utf8"};function j_(){var r;return d_("/.dockerenv")?!0:(r=S_("/proc/self/cgroup",h_),r instanceof Error?!1:O_(r,"docker"))}lx.exports=j_});var bx=e(function(_J,xx){"use strict";var N_=mx(),I_=N_();xx.exports=I_});var Ax=e(function(BJ,gx){"use strict";var E_=f().isPrimitive,w_=/^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)+[a-z0-9][a-z0-9-]{0,61}[a-z0-9]$/i;function C_(r){return!E_(r)||r.length<2||r.length>255?!1:w_.test(r)}gx.exports=C_});var Sx=e(function(UJ,Px){"use strict";var R_=Ax();Px.exports=R_});var dx=e(function(MJ,Ox){"use strict";var L_=f().isPrimitive,F_=/^(?:\d+d)?(?:\d+h)?(?:\d+m)?(?:\d+s)?(?:\d+ms)?$/i;function k_(r){return L_(r)?F_.test(r):!1}Ox.exports=k_});var jx=e(function(DJ,hx){"use strict";var T_=dx();hx.exports=T_});var Ix=e(function(VJ,Nx){"use strict";Nx.exports=process});var Cx=e(function(GJ,wx){"use strict";var __=require("@stdlib/utils/native-class"),B_=b(),Ex=f().isPrimitive,N=Ix();function U_(){return typeof N=="object"&&__(N)==="[object process]"&&B_(N.versions)&&Ex(N.versions.electron)&&Ex(N.versions.chrome)&&(N.type==="browser"||N.type==="renderer")}wx.exports=U_});var ar=e(function(WJ,Rx){"use strict";var M_=Cx(),D_=M_();Rx.exports=D_});var Fx=e(function(HJ,Lx){"use strict";Lx.exports=process});var Tx=e(function(XJ,kx){"use strict";var V_=ar(),G_=Fx();function W_(){return V_&&G_.type==="browser"}kx.exports=W_});var Bx=e(function(zJ,_x){"use strict";var H_=Tx(),X_=H_();_x.exports=X_});var Mx=e(function(KJ,Ux){"use strict";var z_=require("process");Ux.exports=z_});var Vx=e(function($J,Dx){"use strict";var K_=ar(),$_=Mx();function Z_(){return K_&&$_.type==="renderer"}Dx.exports=Z_});var Wx=e(function(ZJ,Gx){"use strict";var Y_=Vx(),J_=Y_();Gx.exports=J_});var Xx=e(function(YJ,Hx){"use strict";var Q_=f().isPrimitive,rB=/@/;function eB(r){return Q_(r)&&rB.test(r)}Hx.exports=eB});var Kx=e(function(JJ,zx){"use strict";var iB=Xx();zx.exports=iB});var Zx=e(function(QJ,$x){"use strict";var tB=x();function sB(r){return tB(r)&&r.length===0}$x.exports=sB});var Jx=e(function(rQ,Yx){"use strict";var uB=Zx();Yx.exports=uB});var rb=e(function(eQ,Qx){"use strict";function aB(r){return typeof r=="object"&&r!==null&&r.length===0}Qx.exports=aB});var ib=e(function(iQ,eb){"use strict";var nB=rb();eb.exports=nB});var sb=e(function(tQ,tb){"use strict";function oB(r){return typeof r=="object"&&r!==null&&r.length===0}tb.exports=oB});var ab=e(function(sQ,ub){"use strict";var cB=sb();ub.exports=cB});var ob=e(function(uQ,nb){"use strict";var fB=require("@stdlib/utils/keys"),pB=b(),vB=R(),qB=vB();function yB(r){return!(!pB(r)||fB(r).length>0||qB&&Object.getOwnPropertySymbols(r).length>0)}nb.exports=yB});var fb=e(function(aQ,cb){"use strict";var lB=ob();cb.exports=lB});var _e=e(function(nQ,pb){"use strict";function mB(r){return r===""}pb.exports=mB});var Be=e(function(oQ,vb){"use strict";var xB=f().isObject;function bB(r){return xB(r)&&r.valueOf()===""}vb.exports=bB});var yb=e(function(cQ,qb){"use strict";var gB=_e(),AB=Be();function PB(r){return gB(r)||AB(r)}qb.exports=PB});var xb=e(function(fQ,mb){"use strict";var lb=require("@stdlib/utils/define-nonenumerable-read-only-property"),Ue=yb(),SB=_e(),OB=Be();lb(Ue,"isPrimitive",SB);lb(Ue,"isObject",OB);mb.exports=Ue});var gb=e(function(pQ,bb){"use strict";var dB=require("@stdlib/utils/property-descriptor-in");function hB(r,i){var t=dB(r,i);return t!==null&&t.enumerable===!0}bb.exports=hB});var Pb=e(function(vQ,Ab){"use strict";var jB=gb();Ab.exports=jB});var Ob=e(function(qQ,Sb){"use strict";var NB=require("@stdlib/utils/get-prototype-of"),IB=require("@stdlib/utils/type-of"),EB=g();function wB(r){if(typeof r!="object"||r===null)return!1;if(r instanceof EvalError)return!0;if(EB(r))for(;r;){if(IB(r)==="evalerror")return!0;r=NB(r)}return!1}Sb.exports=wB});var hb=e(function(yQ,db){"use strict";var CB=Ob();db.exports=CB});var Me=e(function(lQ,jb){"use strict";var RB=v().isPrimitive;function LB(r){return RB(r)&&r%2===0}jb.exports=LB});var De=e(function(mQ,Nb){"use strict";var FB=v().isObject;function kB(r){return FB(r)&&r%2===0}Nb.exports=kB});var Eb=e(function(xQ,Ib){"use strict";var TB=Me(),_B=De();function BB(r){return TB(r)||_B(r)}Ib.exports=BB});var nr=e(function(bQ,Cb){"use strict";var wb=require("@stdlib/utils/define-nonenumerable-read-only-property"),Ve=Eb(),UB=Me(),MB=De();wb(Ve,"isPrimitive",UB);wb(Ve,"isObject",MB);Cb.exports=Ve});var Lb=e(function(gQ,Rb){"use strict";function DB(r){return!r}Rb.exports=DB});var Ge=e(function(AQ,Fb){"use strict";var VB=Lb();Fb.exports=VB});var Tb=e(function(PQ,kb){"use strict";var GB=q(),WB=Ge(),HB=GB(WB);kb.exports=HB});var We=e(function(SQ,_b){"use strict";var XB=p().isPrimitive,zB=require("@stdlib/math/base/assert/is-finite");function KB(r){return XB(r)&&zB(r)}_b.exports=KB});var He=e(function(OQ,Bb){"use strict";var $B=p().isObject,ZB=require("@stdlib/math/base/assert/is-finite");function YB(r){return $B(r)&&ZB(r.valueOf())}Bb.exports=YB});var Mb=e(function(dQ,Ub){"use strict";var JB=We(),QB=He();function r8(r){return JB(r)||QB(r)}Ub.exports=r8});var ze=e(function(hQ,Vb){"use strict";var Db=require("@stdlib/utils/define-nonenumerable-read-only-property"),Xe=Mb(),e8=We(),i8=He();Db(Xe,"isPrimitive",e8);Db(Xe,"isObject",i8);Vb.exports=Xe});var Hb=e(function(jQ,Wb){"use strict";var Ke=ze(),Gb=require("@stdlib/utils/define-nonenumerable-read-only-property"),$e=q(),t8=$e(Ke.isPrimitive),s8=$e(Ke.isObject),Ze=$e(Ke);Gb(Ze,"primitives",t8);Gb(Ze,"objects",s8);Wb.exports=Ze});var zb=e(function(NQ,Xb){"use strict";var u8=S();function a8(r){return u8(r)&&r.dtype==="float32"}Xb.exports=a8});var $b=e(function(IQ,Kb){"use strict";var n8=zb();Kb.exports=n8});var Yb=e(function(EQ,Zb){"use strict";var o8=P();function c8(r){return o8(r)&&r.dtype==="float32"}Zb.exports=c8});var Qb=e(function(wQ,Jb){"use strict";var f8=Yb();Jb.exports=f8});var eg=e(function(CQ,rg){"use strict";var p8=w();function v8(r){return p8(r)&&r.dtype==="float32"}rg.exports=v8});var tg=e(function(RQ,ig){"use strict";var q8=eg();ig.exports=q8});var ug=e(function(LQ,sg){"use strict";var y8=S();function l8(r){return y8(r)&&r.dtype==="float64"}sg.exports=l8});var ng=e(function(FQ,ag){"use strict";var m8=ug();ag.exports=m8});var cg=e(function(kQ,og){"use strict";var x8=P();function b8(r){return x8(r)&&r.dtype==="float64"}og.exports=b8});var pg=e(function(TQ,fg){"use strict";var g8=cg();fg.exports=g8});var qg=e(function(_Q,vg){"use strict";var A8=w();function P8(r){return A8(r)&&r.dtype==="float64"}vg.exports=P8});var lg=e(function(BQ,yg){"use strict";var S8=qg();yg.exports=S8});var xg=e(function(UQ,mg){"use strict";var O8=q(),d8=l(),h8=O8(d8);mg.exports=h8});var gg=e(function(MQ,bg){"use strict";var j8=$r(),N8=require("@stdlib/utils/native-class"),I8=j8();function E8(r){return I8&&N8(r)==="[object Generator]"}bg.exports=E8});var Pg=e(function(DQ,Ag){"use strict";var w8=gg();Ag.exports=w8});var Og=e(function(VQ,Sg){"use strict";function C8(r){return r!==null&&typeof r=="object"&&typeof r.next=="function"&&typeof r.return=="function"&&typeof r.throw=="function"}Sg.exports=C8});var hg=e(function(GQ,dg){"use strict";var R8=Og();dg.exports=R8});var Ng=e(function(WQ,jg){"use strict";var L8=Z(),F8=E();function k8(r){return!L8(r)&&!F8(r)||r.length<19?!1:r[0]===31&&r[1]===139&&r[2]===8}jg.exports=k8});var Eg=e(function(HQ,Ig){"use strict";var T8=Ng();Ig.exports=T8});var Cg=e(function(XQ,wg){"use strict";var _8=f().isPrimitive,B8=48,U8=57,M8=65,D8=70,V8=97,G8=102;function W8(r){var i,t,a;if(!_8(r)||(i=r.length,!i))return!1;for(a=0;aU8&&tD8&&tG8)return!1;return!0}wg.exports=W8});var Lg=e(function(zQ,Rg){"use strict";var H8=Cg();Rg.exports=H8});var Ye=e(function(KQ,Fg){"use strict";var X8=p().isPrimitive,z8=require("@stdlib/math/base/assert/is-infinite");function K8(r){return X8(r)&&z8(r)}Fg.exports=K8});var Je=e(function($Q,kg){"use strict";var $8=p().isObject,Z8=require("@stdlib/math/base/assert/is-infinite");function Y8(r){return $8(r)&&Z8(r.valueOf())}kg.exports=Y8});var _g=e(function(ZQ,Tg){"use strict";var J8=Ye(),Q8=Je();function rU(r){return J8(r)||Q8(r)}Tg.exports=rU});var Mg=e(function(YQ,Ug){"use strict";var Bg=require("@stdlib/utils/define-nonenumerable-read-only-property"),Qe=_g(),eU=Ye(),iU=Je();Bg(Qe,"isPrimitive",eU);Bg(Qe,"isObject",iU);Ug.exports=Qe});var Vg=e(function(JQ,Dg){"use strict";var tU=m();function sU(r,i){return r==null||tU(r,i)?!1:typeof i=="symbol"?i in Object(r):String(i)in Object(r)}Dg.exports=sU});var Wg=e(function(QQ,Gg){"use strict";var uU=Vg();Gg.exports=uU});var zg=e(function(rrr,Xg){"use strict";var ri=v(),Hg=require("@stdlib/utils/define-nonenumerable-read-only-property"),ei=q(),aU=ei(ri.isPrimitive),nU=ei(ri.isObject),ii=ei(ri);Hg(ii,"primitives",aU);Hg(ii,"objects",nU);Xg.exports=ii});var $g=e(function(err,Kg){"use strict";function oU(r){var i=typeof r;return i==="string"||i==="number"||i==="boolean"||i==="symbol"||i==="bigint"||r===null||r===void 0}Kg.exports=oU});var or=e(function(irr,Zg){"use strict";var cU=$g();Zg.exports=cU});var Jg=e(function(trr,Yg){"use strict";var fU=l();function pU(r){var i=typeof r;return r!==null&&(i==="object"||i==="function")&&fU(r.next)}Yg.exports=pU});var ti=e(function(srr,Qg){"use strict";var vU=Jg();Qg.exports=vU});var iA=e(function(urr,eA){"use strict";var qU=or(),yU=l(),rA=require("@stdlib/symbol/iterator"),lU=ti();function mU(r){var i;return qU(r)?!1:(i=r[rA],yU(i)&&i.length===0&&lU(r[rA]()))}eA.exports=mU});var sA=e(function(arr,tA){"use strict";var xU=Qr(),bU=require("@stdlib/utils/constant-function"),gU=iA(),si;xU()?si=gU:si=bU(!1);tA.exports=si});var aA=e(function(nrr,uA){"use strict";var AU=/^\{[\s\S]*\}$|^\[[\s\S]*\]$/;function PU(r){if(typeof r!="string"||!AU.test(r))return!1;try{JSON.parse(r)}catch(i){return!1}return!0}uA.exports=PU});var oA=e(function(orr,nA){"use strict";var SU=aA();nA.exports=SU});var fA=e(function(crr,cA){"use strict";var OU=f().isPrimitive,dU=require("@stdlib/string/base/kebabcase");function hU(r){return OU(r)&&dU(r)===r}cA.exports=hU});var vA=e(function(frr,pA){"use strict";var jU=fA();pA.exports=jU});var yA=e(function(prr,qA){"use strict";var NU=I(),IU=v().isPrimitive,EU=require("@stdlib/time/current-year");function wU(r){var i;if(arguments.length)if(NU(r))i=r.getFullYear();else if(IU(r))i=r;else return!1;else i=EU();return i%100===0?i%400===0:i%4===0}qA.exports=wU});var mA=e(function(vrr,lA){"use strict";var CU=yA();lA.exports=CU});var bA=e(function(qrr,xA){"use strict";var RU=require("@stdlib/array/uint8"),LU=require("@stdlib/array/uint16"),FU={uint16:LU,uint8:RU};xA.exports=FU});var SA=e(function(yrr,PA){"use strict";var gA=bA(),AA;function kU(){var r,i;return r=new gA.uint16(1),r[0]=4660,i=new gA.uint8(r.buffer),i[0]===52}AA=kU();PA.exports=AA});var dA=e(function(lrr,OA){"use strict";var TU=SA();OA.exports=TU});var jA=e(function(mrr,hA){"use strict";var _U=f().isPrimitive,BU=/^127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/;function UU(r){return _U(r)?r==="localhost"||r==="LOCALHOST"||r==="[::1]"||BU.test(r):!1}hA.exports=UU});var IA=e(function(xrr,NA){"use strict";var MU=jA();NA.exports=MU});var wA=e(function(brr,EA){"use strict";var DU=require("@stdlib/string/lowercase"),VU=require("@stdlib/string/uppercase"),GU=f().isPrimitive;function WU(r){return GU(r)&&r===DU(r)&&r!==VU(r)}EA.exports=WU});var RA=e(function(grr,CA){"use strict";var HU=wA();CA.exports=HU});var FA=e(function(Arr,LA){"use strict";var XU=m(),zU=l();function KU(r,i){return XU(r,i)&&zU(r[i])}LA.exports=KU});var TA=e(function(Prr,kA){"use strict";var $U=FA();kA.exports=$U});var BA=e(function(Srr,_A){"use strict";var ZU=l(),YU=require("@stdlib/object/ctor");function JU(r,i){return r==null?!1:(r=YU(r),typeof i!="symbol"&&(i=String(i)),i in r&&ZU(r[i]))}_A.exports=JU});var MA=e(function(Orr,UA){"use strict";var QU=BA();UA.exports=QU});var VA=e(function(drr,DA){"use strict";var rM=require("@stdlib/utils/constant-function"),eM=rM(!1);DA.exports=eM});var WA=e(function(hrr,GA){"use strict";var iM=VA(),tM=iM();GA.exports=tM});var XA=e(function(jrr,HA){"use strict";var sM=require("@stdlib/slice/multi"),uM=require("@stdlib/utils/constructor-name");function aM(r){return r instanceof sM||uM(r)==="MultiSlice"}HA.exports=aM});var KA=e(function(Nrr,zA){"use strict";var nM=XA();zA.exports=nM});var YA=e(function(Irr,ZA){"use strict";var oM=j(),$A=m();function cM(r){return oM(r)&&typeof r.fieldOf=="function"&&typeof r.findField=="function"&&typeof r.ind2key=="function"&&typeof r.key2ind=="function"&&typeof r.lastFieldOf=="function"&&typeof r.subtuple=="function"&&$A(r,"fields")&&$A(r,"orderedFields")}ZA.exports=cM});var QA=e(function(Err,JA){"use strict";var fM=YA();JA.exports=fM});var iP=e(function(wrr,eP){"use strict";var rP=require("@stdlib/utils/define-nonenumerable-read-only-property"),ui=q(),ai=L(),pM=ui(ai.isPrimitive),vM=ui(ai.isObject),ni=ui(ai);rP(ni,"primitives",pM);rP(ni,"objects",vM);eP.exports=ni});var sP=e(function(Crr,tP){"use strict";var qM=l(),yM=require("@stdlib/regexp/native-function"),lM=require("@stdlib/function/to-string");function mM(r){return qM(r)&&yM.REGEXP.test(lM(r))}tP.exports=mM});var aP=e(function(Rrr,uP){"use strict";var xM=sP();uP.exports=xM});var oi=e(function(Lrr,nP){"use strict";var bM=v().isPrimitive;function gM(r){return bM(r)&&r<0}nP.exports=gM});var ci=e(function(Frr,oP){"use strict";var AM=v().isObject;function PM(r){return AM(r)&&r.valueOf()<0}oP.exports=PM});var fP=e(function(krr,cP){"use strict";var SM=oi(),OM=ci();function dM(r){return SM(r)||OM(r)}cP.exports=dM});var pi=e(function(Trr,vP){"use strict";var pP=require("@stdlib/utils/define-nonenumerable-read-only-property"),fi=fP(),hM=oi(),jM=ci();pP(fi,"isPrimitive",hM);pP(fi,"isObject",jM);vP.exports=fi});var lP=e(function(_rr,yP){"use strict";var vi=pi(),qP=require("@stdlib/utils/define-nonenumerable-read-only-property"),qi=q(),NM=qi(vi.isPrimitive),IM=qi(vi.isObject),yi=qi(vi);qP(yi,"primitives",NM);qP(yi,"objects",IM);yP.exports=yi});var li=e(function(Brr,mP){"use strict";var EM=p().isPrimitive;function wM(r){return EM(r)&&r<0}mP.exports=wM});var mi=e(function(Urr,xP){"use strict";var CM=p().isObject;function RM(r){return CM(r)&&r.valueOf()<0}xP.exports=RM});var gP=e(function(Mrr,bP){"use strict";var LM=li(),FM=mi();function kM(r){return LM(r)||FM(r)}bP.exports=kM});var bi=e(function(Drr,PP){"use strict";var AP=require("@stdlib/utils/define-nonenumerable-read-only-property"),xi=gP(),TM=li(),_M=mi();AP(xi,"isPrimitive",TM);AP(xi,"isObject",_M);PP.exports=xi});var dP=e(function(Vrr,OP){"use strict";var gi=bi(),SP=require("@stdlib/utils/define-nonenumerable-read-only-property"),Ai=q(),BM=Ai(gi.isPrimitive),UM=Ai(gi.isObject),Pi=Ai(gi);SP(Pi,"primitives",BM);SP(Pi,"objects",UM);OP.exports=Pi});var Si=e(function(Grr,hP){"use strict";var MM=p().isPrimitive,DM=require("@stdlib/constants/float64/ninf");function VM(r){return MM(r)&&1/r===DM}hP.exports=VM});var Oi=e(function(Wrr,jP){"use strict";var GM=p().isObject,WM=require("@stdlib/constants/float64/ninf");function HM(r){return GM(r)&&1/r.valueOf()===WM}jP.exports=HM});var IP=e(function(Hrr,NP){"use strict";var XM=Si(),zM=Oi();function KM(r){return XM(r)||zM(r)}NP.exports=KM});var CP=e(function(Xrr,wP){"use strict";var EP=require("@stdlib/utils/define-nonenumerable-read-only-property"),di=IP(),$M=Si(),ZM=Oi();EP(di,"isPrimitive",$M);EP(di,"isObject",ZM);wP.exports=di});var RP=e(function(zrr,YM){YM.exports=["assert","async_hooks","buffer","child_process","cluster","console","constants","crypto","dgram","dns","domain","events","fs","http","http2","https","_http_agent","_http_client","_http_common","_http_incoming","_http_outgoing","_http_server","inspector","module","net","os","path","perf_hooks","process","punycode","querystring","readline","repl","stream","_stream_readable","_stream_writable","_stream_duplex","_stream_transform","_stream_passthrough","_stream_wrap","string_decoder","sys","timers","tls","_tls_common","_tls_legacy","_tls_wrap","tty","url","util","v8","vm","zlib","v8/tools/splaytree","v8/tools/codemap","v8/tools/consarray","v8/tools/csvparser","v8/tools/profile","v8/tools/profile_view","v8/tools/logreader","v8/tools/tickprocessor","v8/tools/SourceMap","v8/tools/tickprocessor-driver","node-inspect/lib/_inspect","node-inspect/lib/internal/inspect_client","node-inspect/lib/internal/inspect_repl"]});var FP=e(function(Krr,LP){"use strict";var JM=require("module"),QM=M(),rD=f().isPrimitive,eD=RP(),iD=JM.builtinModules||eD;function tD(r){return rD(r)?QM(iD,r):!1}LP.exports=tD});var TP=e(function($rr,kP){"use strict";var sD=FP();kP.exports=sD});var BP=e(function(Zrr,_P){"use strict";function uD(r){return r!==null&&typeof r=="object"&&typeof r.on=="function"&&typeof r.once=="function"&&typeof r.emit=="function"&&typeof r.addListener=="function"&&typeof r.removeListener=="function"&&typeof r.removeAllListeners=="function"&&typeof r.pipe=="function"}_P.exports=uD});var cr=e(function(Yrr,UP){"use strict";var aD=BP();UP.exports=aD});var DP=e(function(Jrr,MP){"use strict";var nD=cr();function oD(r){return nD(r)&&typeof r._write=="function"&&typeof r._writableState=="object"}MP.exports=oD});var hi=e(function(Qrr,VP){"use strict";var cD=DP();VP.exports=cD});var WP=e(function(rer,GP){"use strict";var fD=cr();function pD(r){return fD(r)&&typeof r._read=="function"&&typeof r._readableState=="object"}GP.exports=pD});var ji=e(function(eer,HP){"use strict";var vD=WP();HP.exports=vD});var zP=e(function(ier,XP){"use strict";var qD=hi(),yD=ji();function lD(r){return qD(r)&&yD(r)}XP.exports=lD});var Ni=e(function(ter,KP){"use strict";var mD=zP();KP.exports=mD});var $P=e(function(ser,Ii){"use strict";function xD(){return Ii}Ii.exports=xD});var YP=e(function(uer,ZP){"use strict";function bD(){var r=new Error;return r.stack}ZP.exports=bD});var QP=e(function(aer,JP){"use strict";var gD=B(),AD=$P(),PD=YP(),SD=/^repl$|^$/,OD=/at REPLServer/;function dD(){var r,i;if(!gD)return!1;for(i=AD();i;){if(SD.test(i.id))return!0;i=i.parent}return r=PD(),r?OD.test(r):!1}JP.exports=dD});var eS=e(function(ner,rS){"use strict";var hD=QP();rS.exports=hD});var tS=e(function(oer,iS){"use strict";var jD=Ni();function ND(r){return jD(r)&&typeof r._transform=="function"}iS.exports=ND});var uS=e(function(cer,sS){"use strict";var ID=tS();sS.exports=ID});var nS=e(function(fer,aS){"use strict";var ED=require("@stdlib/utils/property-descriptor");function wD(r,i){var t=ED(r,i);return t!==null&&t.configurable===!1}aS.exports=wD});var cS=e(function(per,oS){"use strict";var CD=nS();oS.exports=CD});var pS=e(function(ver,fS){"use strict";var RD=require("@stdlib/utils/property-descriptor-in");function LD(r,i){var t=RD(r,i);return t!==null&&t.configurable===!1}fS.exports=LD});var qS=e(function(qer,vS){"use strict";var FD=pS();vS.exports=FD});var lS=e(function(yer,yS){"use strict";var kD=m(),TD=rr();function _D(r,i){return kD(r,i)===!1?!1:TD(r,i)===!1}yS.exports=_D});var xS=e(function(ler,mS){"use strict";var BD=lS();mS.exports=BD});var gS=e(function(mer,bS){"use strict";var UD=require("@stdlib/utils/property-descriptor-in");function MD(r,i){var t=UD(r,i);return t!==null&&t.enumerable===!1}bS.exports=MD});var PS=e(function(xer,AS){"use strict";var DD=gS();AS.exports=DD});var dS=e(function(ber,OS){"use strict";var Ei=h(),SS=require("@stdlib/utils/define-nonenumerable-read-only-property"),wi=q(),VD=wi(Ei.isPrimitive),GD=wi(Ei.isObject),Ci=wi(Ei);SS(Ci,"primitives",VD);SS(Ci,"objects",GD);OS.exports=Ci});var Ri=e(function(ger,hS){"use strict";var WD=p().isPrimitive;function HD(r){return WD(r)&&r>=0}hS.exports=HD});var Li=e(function(Aer,jS){"use strict";var XD=p().isObject;function zD(r){return XD(r)&&r.valueOf()>=0}jS.exports=zD});var IS=e(function(Per,NS){"use strict";var KD=Ri(),$D=Li();function ZD(r){return KD(r)||$D(r)}NS.exports=ZD});var ki=e(function(Ser,wS){"use strict";var ES=require("@stdlib/utils/define-nonenumerable-read-only-property"),Fi=IS(),YD=Ri(),JD=Li();ES(Fi,"isPrimitive",YD);ES(Fi,"isObject",JD);wS.exports=Fi});var LS=e(function(Oer,RS){"use strict";var Ti=ki(),CS=require("@stdlib/utils/define-nonenumerable-read-only-property"),_i=q(),QD=_i(Ti.isPrimitive),rV=_i(Ti.isObject),Bi=_i(Ti);CS(Bi,"primitives",QD);CS(Bi,"objects",rV);RS.exports=Bi});var Ui=e(function(der,FS){"use strict";var eV=v().isPrimitive;function iV(r){return eV(r)&&r<=0}FS.exports=iV});var Mi=e(function(her,kS){"use strict";var tV=v().isObject;function sV(r){return tV(r)&&r.valueOf()<=0}kS.exports=sV});var _S=e(function(jer,TS){"use strict";var uV=Ui(),aV=Mi();function nV(r){return uV(r)||aV(r)}TS.exports=nV});var Vi=e(function(Ner,US){"use strict";var BS=require("@stdlib/utils/define-nonenumerable-read-only-property"),Di=_S(),oV=Ui(),cV=Mi();BS(Di,"isPrimitive",oV);BS(Di,"isObject",cV);US.exports=Di});var VS=e(function(Ier,DS){"use strict";var Gi=Vi(),MS=require("@stdlib/utils/define-nonenumerable-read-only-property"),Wi=q(),fV=Wi(Gi.isPrimitive),pV=Wi(Gi.isObject),Hi=Wi(Gi);MS(Hi,"primitives",fV);MS(Hi,"objects",pV);DS.exports=Hi});var Xi=e(function(Eer,GS){"use strict";var vV=p().isPrimitive;function qV(r){return vV(r)&&r<=0}GS.exports=qV});var zi=e(function(wer,WS){"use strict";var yV=p().isObject;function lV(r){return yV(r)&&r.valueOf()<=0}WS.exports=lV});var XS=e(function(Cer,HS){"use strict";var mV=Xi(),xV=zi();function bV(r){return mV(r)||xV(r)}HS.exports=bV});var $i=e(function(Rer,KS){"use strict";var zS=require("@stdlib/utils/define-nonenumerable-read-only-property"),Ki=XS(),gV=Xi(),AV=zi();zS(Ki,"isPrimitive",gV);zS(Ki,"isObject",AV);KS.exports=Ki});var YS=e(function(Ler,ZS){"use strict";var Zi=$i(),$S=require("@stdlib/utils/define-nonenumerable-read-only-property"),Yi=q(),PV=Yi(Zi.isPrimitive),SV=Yi(Zi.isObject),Ji=Yi(Zi);$S(Ji,"primitives",PV);$S(Ji,"objects",SV);ZS.exports=Ji});var QS=e(function(Fer,JS){"use strict";var OV=S();function dV(r){var i,t,a;if(!OV(r))return!1;if(i=r.shape[0],i!==r.shape[1])return!0;for(t=0;t0?gO(r-1):gO(r+1):!1}AO.exports=WV});var ut=e(function(Xer,SO){"use strict";var HV=v().isObject,PO=nr().isPrimitive;function XV(r){return HV(r)?r>0?PO(r-1):PO(r+1):!1}SO.exports=XV});var dO=e(function(zer,OO){"use strict";var zV=st(),KV=ut();function $V(r){return zV(r)||KV(r)}OO.exports=$V});var NO=e(function(Ker,jO){"use strict";var hO=require("@stdlib/utils/define-nonenumerable-read-only-property"),at=dO(),ZV=st(),YV=ut();hO(at,"isPrimitive",ZV);hO(at,"isObject",YV);jO.exports=at});var EO=e(function($er,IO){"use strict";var JV=f().isPrimitive,QV=require("@stdlib/string/base/pascalcase");function rG(r){return JV(r)&&QV(r)===r}IO.exports=rG});var CO=e(function(Zer,wO){"use strict";var eG=EO();wO.exports=eG});var LO=e(function(Yer,RO){"use strict";var iG=O();function tG(r){var i,t,a,n;if(!iG(r))return!1;for(i=r.shape[0]-1,a=0;a0}MO.exports=fG});var ot=e(function(iir,DO){"use strict";var pG=v().isObject;function vG(r){return pG(r)&&r.valueOf()>0}DO.exports=vG});var GO=e(function(tir,VO){"use strict";var qG=nt(),yG=ot();function lG(r){return qG(r)||yG(r)}VO.exports=lG});var ft=e(function(sir,HO){"use strict";var WO=require("@stdlib/utils/define-nonenumerable-read-only-property"),ct=GO(),mG=nt(),xG=ot();WO(ct,"isPrimitive",mG);WO(ct,"isObject",xG);HO.exports=ct});var KO=e(function(uir,zO){"use strict";var pt=ft(),XO=require("@stdlib/utils/define-nonenumerable-read-only-property"),vt=q(),bG=vt(pt.isPrimitive),gG=vt(pt.isObject),qt=vt(pt);XO(qt,"primitives",bG);XO(qt,"objects",gG);zO.exports=qt});var yt=e(function(air,$O){"use strict";var AG=p().isPrimitive;function PG(r){return AG(r)&&r>0}$O.exports=PG});var lt=e(function(nir,ZO){"use strict";var SG=p().isObject;function OG(r){return SG(r)&&r.valueOf()>0}ZO.exports=OG});var JO=e(function(oir,YO){"use strict";var dG=yt(),hG=lt();function jG(r){return dG(r)||hG(r)}YO.exports=jG});var xt=e(function(cir,rd){"use strict";var QO=require("@stdlib/utils/define-nonenumerable-read-only-property"),mt=JO(),NG=yt(),IG=lt();QO(mt,"isPrimitive",NG);QO(mt,"isObject",IG);rd.exports=mt});var td=e(function(fir,id){"use strict";var bt=xt(),ed=require("@stdlib/utils/define-nonenumerable-read-only-property"),gt=q(),EG=gt(bt.isPrimitive),wG=gt(bt.isObject),At=gt(bt);ed(At,"primitives",EG);ed(At,"objects",wG);id.exports=At});var Pt=e(function(pir,sd){"use strict";var CG=p().isPrimitive,RG=require("@stdlib/constants/float64/pinf");function LG(r){return CG(r)&&1/r===RG}sd.exports=LG});var St=e(function(vir,ud){"use strict";var FG=p().isObject,kG=require("@stdlib/constants/float64/pinf");function TG(r){return FG(r)&&1/r.valueOf()===kG}ud.exports=TG});var nd=e(function(qir,ad){"use strict";var _G=Pt(),BG=St();function UG(r){return _G(r)||BG(r)}ad.exports=UG});var fd=e(function(yir,cd){"use strict";var od=require("@stdlib/utils/define-nonenumerable-read-only-property"),Ot=nd(),MG=Pt(),DG=St();od(Ot,"isPrimitive",MG);od(Ot,"isObject",DG);cd.exports=Ot});var dt=e(function(lir,pd){"use strict";var VG=p().isPrimitive,GG=require("@stdlib/math/base/assert/is-prime");function WG(r){return VG(r)?GG(r):!1}pd.exports=WG});var ht=e(function(mir,vd){"use strict";var HG=p().isObject,XG=require("@stdlib/math/base/assert/is-prime");function zG(r){return HG(r)?XG(r.valueOf()):!1}vd.exports=zG});var yd=e(function(xir,qd){"use strict";var KG=dt(),$G=ht();function ZG(r){return KG(r)||$G(r)}qd.exports=ZG});var xd=e(function(bir,md){"use strict";var ld=require("@stdlib/utils/define-nonenumerable-read-only-property"),jt=yd(),YG=dt(),JG=ht();ld(jt,"isPrimitive",YG);ld(jt,"isObject",JG);md.exports=jt});var gd=e(function(gir,bd){"use strict";var QG=q(),rW=or(),eW=QG(rW);bd.exports=eW});var Pd=e(function(Air,Ad){"use strict";var iW=gd();Ad.exports=iW});var dd=e(function(Pir,Od){"use strict";var tW=l(),Sd=m();function sW(r){return tW(r)&&typeof r.NAME=="string"&&Sd(r,"state")&&Sd(r,"seed")}Od.exports=sW});var jd=e(function(Sir,hd){"use strict";var uW=dd();hd.exports=uW});var Nt=e(function(Oir,Nd){"use strict";var aW=p().isPrimitive;function nW(r){return aW(r)&&r>=0&&r<=1}Nd.exports=nW});var It=e(function(dir,Id){"use strict";var oW=p().isObject;function cW(r){return oW(r)&&r.valueOf()>=0&&r.valueOf()<=1}Id.exports=cW});var wd=e(function(hir,Ed){"use strict";var fW=Nt(),pW=It();function vW(r){return fW(r)||pW(r)}Ed.exports=vW});var wt=e(function(jir,Rd){"use strict";var Cd=require("@stdlib/utils/define-nonenumerable-read-only-property"),Et=wd(),qW=Nt(),yW=It();Cd(Et,"isPrimitive",qW);Cd(Et,"isObject",yW);Rd.exports=Et});var kd=e(function(Nir,Fd){"use strict";var Ct=wt(),Ld=require("@stdlib/utils/define-nonenumerable-read-only-property"),Rt=q(),lW=Rt(Ct.isPrimitive),mW=Rt(Ct.isObject),Lt=Rt(Ct);Ld(Lt,"primitives",lW);Ld(Lt,"objects",mW);Fd.exports=Lt});var _d=e(function(Iir,Td){"use strict";var xW=f().isPrimitive,bW=T().isPrimitive,gW=h().isPrimitive;function AW(r){return xW(r)||bW(r)||gW(r)}Td.exports=AW});var Ud=e(function(Eir,Bd){"use strict";var PW=_d();Bd.exports=PW});var Dd=e(function(wir,Md){"use strict";var SW=Object.prototype.isPrototypeOf,OW=require("@stdlib/string/format");function dW(r,i){var t=typeof i;if(i===null||t!=="object"&&t!=="function")throw new TypeError(OW("invalid argument. Second argument must be either an object (except null) or a function. Value: `%s`.",i));return t=typeof r,r===null||t!=="object"&&t!=="function"?!1:SW.call(i,r)}Md.exports=dW});var Gd=e(function(Cir,Vd){"use strict";var hW=Dd();Vd.exports=hW});var Hd=e(function(Rir,Wd){"use strict";var jW=require("@stdlib/utils/get-prototype-of"),NW=require("@stdlib/utils/type-of"),IW=g();function EW(r){if(typeof r!="object"||r===null)return!1;if(r instanceof RangeError)return!0;if(IW(r))for(;r;){if(NW(r)==="rangeerror")return!0;r=jW(r)}return!1}Wd.exports=EW});var zd=e(function(Lir,Xd){"use strict";var wW=Hd();Xd.exports=wW});var $d=e(function(Fir,Kd){"use strict";var CW=require("@stdlib/utils/property-descriptor");function RW(r,i){var t=CW(r,i);return t!==null&&t.configurable===!1&&(t.writable===!1||typeof t.get=="function"&&t.set===void 0)}Kd.exports=RW});var Yd=e(function(kir,Zd){"use strict";var LW=$d();Zd.exports=LW});var Qd=e(function(Tir,Jd){"use strict";var FW=require("@stdlib/utils/property-descriptor-in");function kW(r,i){var t=FW(r,i);return t!==null&&t.configurable===!1&&(t.writable===!1||typeof t.get=="function"&&t.set===void 0)}Jd.exports=kW});var eh=e(function(_ir,rh){"use strict";var TW=Qd();rh.exports=TW});var th=e(function(Bir,ih){"use strict";var _W=require("@stdlib/utils/property-descriptor");function BW(r,i){var t=_W(r,i);return t!==null&&(t.writable===!0||typeof t.get=="function"&&typeof t.set=="function")}ih.exports=BW});var uh=e(function(Uir,sh){"use strict";var UW=th();sh.exports=UW});var nh=e(function(Mir,ah){"use strict";var MW=require("@stdlib/utils/property-descriptor-in");function DW(r,i){var t=MW(r,i);return t!==null&&(t.writable===!0||typeof t.get=="function"&&typeof t.set=="function")}ah.exports=DW});var ch=e(function(Dir,oh){"use strict";var VW=nh();oh.exports=VW});var ph=e(function(Vir,fh){"use strict";var GW=require("@stdlib/utils/property-descriptor");function WW(r,i){var t=GW(r,i);return t!==null&&(t.writable!==void 0||typeof t.get=="function")}fh.exports=WW});var qh=e(function(Gir,vh){"use strict";var HW=ph();vh.exports=HW});var lh=e(function(Wir,yh){"use strict";var XW=require("@stdlib/utils/property-descriptor-in");function zW(r,i){var t=XW(r,i);return t!==null&&(t.writable!==void 0||typeof t.get=="function")}yh.exports=zW});var xh=e(function(Hir,mh){"use strict";var KW=lh();mh.exports=KW});var gh=e(function(Xir,bh){"use strict";var $W=require("@stdlib/utils/get-prototype-of"),ZW=require("@stdlib/utils/type-of"),YW=g();function JW(r){if(typeof r!="object"||r===null)return!1;if(r instanceof ReferenceError)return!0;if(YW(r))for(;r;){if(ZW(r)==="referenceerror")return!0;r=$W(r)}return!1}bh.exports=JW});var Ph=e(function(zir,Ah){"use strict";var QW=gh();Ah.exports=QW});var Oh=e(function(Kir,Sh){"use strict";var r9=f().isPrimitive,e9=require("@stdlib/regexp/regexp").REGEXP;function i9(r){return r9(r)&&e9.test(r)}Sh.exports=i9});var hh=e(function($ir,dh){"use strict";var t9=Oh();dh.exports=t9});var Nh=e(function(Zir,jh){"use strict";var s9=f().isPrimitive,u9=Q().posix;function a9(r){return s9(r)&&!u9(r)}jh.exports=a9});var Eh=e(function(Yir,Ih){"use strict";var n9=f().isPrimitive,o9=Q().win32;function c9(r){return n9(r)&&!o9(r)}Ih.exports=c9});var Fh=e(function(Jir,Lh){"use strict";var wh=require("@stdlib/utils/define-nonenumerable-read-only-property"),f9=J(),Ch=Nh(),Rh=Eh(),U;f9?U=Rh:U=Ch;wh(U,"posix",Ch);wh(U,"win32",Rh);Lh.exports=U});var Th=e(function(Qir,kh){"use strict";var p9=f().isPrimitive,v9=/(?:([^:\/?#]+):)?(?:\/\/([^\/?#]*))?([^?#]*)(?:\?[^#]*)?(?:#.*)?/,q9=/[^a-z0-9:\/?#\[\]@!$&'()*+,;=.\-_~%]/i,y9=/%[^0-9a-f]/i,l9=/%[0-9a-f](:?[^0-9a-f]|$)/i,m9=/^\/\//,x9=/^[a-z][a-z0-9+\-.]*$/;function b9(r){var i,t,a,n;return!p9(r)||q9.test(r)||y9.test(r)||l9.test(r)?!1:(a=r.match(v9),t=a[1],i=a[2],n=a[3],!!(!t||!t.length||!x9.test(t.toLowerCase())||!i&&m9.test(n)))}kh.exports=b9});var Bh=e(function(rtr,_h){"use strict";var g9=Th();_h.exports=g9});var Ft=e(function(etr,Uh){"use strict";var A9=p().isPrimitive,P9=require("@stdlib/math/base/assert/is-safe-integer");function S9(r){return A9(r)&&P9(r)}Uh.exports=S9});var kt=e(function(itr,Mh){"use strict";var O9=p().isObject,d9=require("@stdlib/math/base/assert/is-safe-integer");function h9(r){return O9(r)&&d9(r.valueOf())}Mh.exports=h9});var Vh=e(function(ttr,Dh){"use strict";var j9=Ft(),N9=kt();function I9(r){return j9(r)||N9(r)}Dh.exports=I9});var _t=e(function(str,Wh){"use strict";var Gh=require("@stdlib/utils/define-nonenumerable-read-only-property"),Tt=Vh(),E9=Ft(),w9=kt();Gh(Tt,"isPrimitive",E9);Gh(Tt,"isObject",w9);Wh.exports=Tt});var zh=e(function(utr,Xh){"use strict";var Hh=require("@stdlib/utils/define-nonenumerable-read-only-property"),Bt=q(),Ut=_t(),C9=Bt(Ut.isPrimitive),R9=Bt(Ut.isObject),Mt=Bt(Ut);Hh(Mt,"primitives",C9);Hh(Mt,"objects",R9);Xh.exports=Mt});var Zh=e(function(atr,$h){"use strict";var Kh=Ne(),L9=require("@stdlib/complex/base/assert/is-same-valuef");function F9(r,i){return Kh(r)&&Kh(i)?L9(r,i):!1}$h.exports=F9});var Jh=e(function(ntr,Yh){"use strict";var k9=Zh();Yh.exports=k9});var e0=e(function(otr,r0){"use strict";var Qh=Ie(),T9=require("@stdlib/array/base/assert/has-same-values");function _9(r,i){return Qh(r)&&Qh(i)?T9(r,i):!1}r0.exports=_9});var t0=e(function(ctr,i0){"use strict";var B9=e0();i0.exports=B9});var a0=e(function(ftr,u0){"use strict";var s0=Ee(),U9=require("@stdlib/complex/base/assert/is-same-value");function M9(r,i){return s0(r)&&s0(i)?U9(r,i):!1}u0.exports=M9});var o0=e(function(ptr,n0){"use strict";var D9=a0();n0.exports=D9});var p0=e(function(vtr,f0){"use strict";var c0=we(),V9=require("@stdlib/array/base/assert/has-same-values");function G9(r,i){return c0(r)&&c0(i)?V9(r,i):!1}f0.exports=G9});var q0=e(function(qtr,v0){"use strict";var W9=p0();v0.exports=W9});var m0=e(function(ytr,l0){"use strict";var y0=X(),H9=require("@stdlib/array/base/assert/has-same-values");function X9(r,i){return y0(r)&&y0(i)?H9(r,i):!1}l0.exports=X9});var b0=e(function(ltr,x0){"use strict";var z9=m0();x0.exports=z9});var P0=e(function(mtr,A0){"use strict";var g0=z(),K9=require("@stdlib/array/base/assert/has-same-values");function $9(r,i){return g0(r)&&g0(i)?K9(r,i):!1}A0.exports=$9});var O0=e(function(xtr,S0){"use strict";var Z9=P0();S0.exports=Z9});var j0=e(function(btr,h0){"use strict";var d0=require("@stdlib/utils/native-class");function Y9(r,i){return d0(r)===d0(i)}h0.exports=Y9});var I0=e(function(gtr,N0){"use strict";var J9=j0();N0.exports=J9});var w0=e(function(Atr,E0){"use strict";function Q9(r,i){return typeof r==typeof i}E0.exports=Q9});var R0=e(function(Ptr,C0){"use strict";var r5=w0();C0.exports=r5});var k0=e(function(Str,F0){"use strict";var e5=require("@stdlib/complex/base/assert/is-same-value"),L0=ur();function i5(r,i){return r===i?r===0?1/r===1/i:!0:r!==r&&i!==i?!0:L0(r)&&L0(i)?e5(r,i):!1}F0.exports=i5});var _0=e(function(Otr,T0){"use strict";var t5=k0();T0.exports=t5});var M0=e(function(dtr,U0){"use strict";var s5=require("@stdlib/complex/base/assert/is-same-value-zero"),B0=ur();function u5(r,i){return r===i||r!==r&&i!==i?!0:B0(r)&&B0(i)?s5(r,i):!1}U0.exports=u5});var V0=e(function(htr,D0){"use strict";var a5=M0();D0.exports=a5});var W0=e(function(jtr,G0){"use strict";var n5=f().isPrimitive,o5=require("@stdlib/regexp/semver").REGEXP;function c5(r){return n5(r)&&o5.test(r)}G0.exports=c5});var X0=e(function(Ntr,H0){"use strict";var f5=W0();H0.exports=f5});var K0=e(function(Itr,z0){"use strict";var p5=O(),v5=require("@stdlib/math/base/special/floor"),q5=require("@stdlib/math/base/assert/is-odd");function y5(r){var i,t,a,n,c,o;if(!p5(r))return!1;for(t=r.shape[0],a=v5(t/2),i=t-1,c=0;c=0&&r<=HH}PN.exports=XH});var dN=e(function(lsr,ON){"use strict";var zH=SN();ON.exports=zH});var jN=e(function(msr,hN){"use strict";var KH=h().isPrimitive,$H=require("@stdlib/constants/array/max-typed-array-length");function ZH(r){return r!==null&&typeof r=="object"&&KH(r.length)&&r.length<=$H&&typeof r.BYTES_PER_ELEMENT=="number"&&typeof r.byteOffset=="number"&&typeof r.byteLength=="number"}hN.exports=ZH});var IN=e(function(xsr,NN){"use strict";var YH=jN();NN.exports=YH});var wN=e(function(bsr,EN){"use strict";var JH=f().isPrimitive,QH=require("@stdlib/regexp/unc-path").REGEXP;function rX(r){return JH(r)&&QH.test(r)}EN.exports=rX});var RN=e(function(gsr,CN){"use strict";var eX=wN();CN.exports=eX});var FN=e(function(Asr,LN){"use strict";function iX(r){return r===void 0}LN.exports=iX});var TN=e(function(Psr,kN){"use strict";var tX=FN();kN.exports=tX});var BN=e(function(Ssr,_N){"use strict";function sX(r){return r==null}_N.exports=sX});var MN=e(function(Osr,UN){"use strict";var uX=BN();UN.exports=uX});var WN=e(function(dsr,GN){"use strict";var aX=j(),nX=x(),oX=p().isPrimitive,DN=require("@stdlib/math/base/utils/absolute-difference"),VN=require("@stdlib/constants/float64/sqrt-eps");function cX(r){var i,t;if(nX(r)){for(i=0,t=0;t1||r[t]<0)return!1;i+=r[t]}return DN(i,1)<=VN}if(aX(r)){for(i=0,t=0;t1||r[t]<0)return!1;i+=r[t]}return DN(i,1)<=VN}return!1}GN.exports=cX});var XN=e(function(hsr,HN){"use strict";var fX=WN();HN.exports=fX});var KN=e(function(jsr,zN){"use strict";var pX=require("@stdlib/string/lowercase"),vX=require("@stdlib/string/uppercase"),qX=f().isPrimitive;function yX(r){return qX(r)&&r===vX(r)&&r!==pX(r)}zN.exports=yX});var ZN=e(function(Nsr,$N){"use strict";var lX=KN();$N.exports=lX});var JN=e(function(Isr,YN){"use strict";var mX=require("@stdlib/utils/get-prototype-of"),xX=require("@stdlib/utils/type-of"),bX=g();function gX(r){if(typeof r!="object"||r===null)return!1;if(r instanceof URIError)return!0;if(bX(r))for(;r;){if(xX(r)==="urierror")return!0;r=mX(r)}return!1}YN.exports=gX});var rI=e(function(Esr,QN){"use strict";var AX=JN();QN.exports=AX});var tI=e(function(wsr,iI){"use strict";var eI;function PX(){var r="";return r+="try {",r+="return this === self;",r+="} catch ( err ) {",r+="return false;",r+="}",new Function(r)()}eI=PX();iI.exports=eI});var aI=e(function(Csr,uI){"use strict";var SX=require("@stdlib/utils/global"),OX=B(),sI=b(),dX=tI(),hX=SX();function jX(){return OX===!1&&typeof WorkerGlobalScope=="object"&&sI(WorkerNavigator)&&navigator instanceof WorkerNavigator&&sI(WorkerLocation)&&location instanceof WorkerLocation&&typeof self=="object"&&self===hX&&dX===!0&&typeof importScripts=="function"}uI.exports=jX});var oI=e(function(Rsr,nI){"use strict";var NX=aI(),IX=NX();nI.exports=IX});var fI=e(function(Lsr,cI){"use strict";var EX=f().isPrimitive,wX=require("@stdlib/regexp/whitespace"),CX=new RegExp("^"+wX.REGEXP.source+"+$");function RX(r){return EX(r)?CX.test(r):!1}cI.exports=RX});var vI=e(function(Fsr,pI){"use strict";var LX=fI();pI.exports=LX});var yI=e(function(ksr,qI){"use strict";var FX=require("@stdlib/utils/property-descriptor");function kX(r,i){var t=FX(r,i);return t!==null&&(t.writable===!0||typeof t.set=="function")}qI.exports=kX});var mI=e(function(Tsr,lI){"use strict";var TX=yI();lI.exports=TX});var bI=e(function(_sr,xI){"use strict";var _X=require("@stdlib/utils/property-descriptor-in");function BX(r,i){var t=_X(r,i);return t!==null&&(t.writable===!0||typeof t.set=="function")}xI.exports=BX});var AI=e(function(Bsr,gI){"use strict";var UX=bI();gI.exports=UX});var SI=e(function(Usr,PI){"use strict";var MX=require("@stdlib/utils/property-descriptor");function DX(r,i){var t=MX(r,i);return t!==null&&t.configurable===!1&&typeof t.set=="function"&&t.get===void 0}PI.exports=DX});var dI=e(function(Msr,OI){"use strict";var VX=SI();OI.exports=VX});var jI=e(function(Dsr,hI){"use strict";var GX=require("@stdlib/utils/property-descriptor-in");function WX(r,i){var t=GX(r,i);return t!==null&&t.configurable===!1&&typeof t.set=="function"&&t.get===void 0}hI.exports=WX});var II=e(function(Vsr,NI){"use strict";var HX=jI();NI.exports=HX});var wI=e(function(Gsr,EI){"use strict";var XX=j(),zX=require("@stdlib/string/format");function KX(r){if(typeof r!="function")throw new TypeError(zX("invalid argument. Must provide a function. Value: `%s`.",r));return i;function i(t){var a,n;if(!XX(t)||(a=t.length,a===0))return!1;for(n=0;n= 0 &&\n\t\tvalue.length <= MAX_LENGTH\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isCollection;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a collection.\n*\n* @module @stdlib/assert/is-collection\n*\n* @example\n* var isCollection = require( '@stdlib/assert/is-collection' );\n*\n* var bool = isCollection( [] );\n* // returns true\n*\n* bool = isCollection( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Tests if a value is a number primitive.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number primitive\n*\n* @example\n* var bool = isNumber( 3.14 );\n* // returns true\n*\n* @example\n* var bool = isNumber( NaN );\n* // returns true\n*\n* @example\n* var bool = isNumber( new Number( 3.14 ) );\n* // returns false\n*/\nfunction isNumber( value ) {\n\treturn ( typeof value === 'number' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNumber;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\n/**\n* Tests for native `Symbol` support.\n*\n* @returns {boolean} boolean indicating if an environment has `Symbol` support\n*\n* @example\n* var bool = hasSymbolSupport();\n* // returns \n*/\nfunction hasSymbolSupport() {\n\treturn (\n\t\ttypeof Symbol === 'function' &&\n\t\ttypeof Symbol( 'foo' ) === 'symbol'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasSymbolSupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `Symbol` support.\n*\n* @module @stdlib/assert/has-symbol-support\n*\n* @example\n* var hasSymbolSupport = require( '@stdlib/assert/has-symbol-support' );\n*\n* var bool = hasSymbolSupport();\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar hasSymbols = require( './../../has-symbol-support' );\n\n\n// VARIABLES //\n\nvar FLG = hasSymbols();\n\n\n// MAIN //\n\n/**\n* Tests for native `toStringTag` support.\n*\n* @returns {boolean} boolean indicating if an environment has `toStringTag` support\n*\n* @example\n* var bool = hasToStringTagSupport();\n* // returns \n*/\nfunction hasToStringTagSupport() {\n\treturn ( FLG && typeof Symbol.toStringTag === 'symbol' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasToStringTagSupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `toStringTag` support.\n*\n* @module @stdlib/assert/has-tostringtag-support\n*\n* @example\n* var hasToStringTagSupport = require( '@stdlib/assert/has-tostringtag-support' );\n*\n* var bool = hasToStringTagSupport();\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar Number = require( '@stdlib/number/ctor' );\n\n\n// MAIN //\n\n// eslint-disable-next-line stdlib/no-redeclare\nvar toString = Number.prototype.toString; // non-generic\n\n\n// EXPORTS //\n\nmodule.exports = toString;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar toString = require( './tostring.js' ); // eslint-disable-line stdlib/no-redeclare\n\n\n// MAIN //\n\n/**\n* Attempts to serialize a value to a string.\n*\n* @private\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value can be serialized\n*/\nfunction test( value ) {\n\ttry {\n\t\ttoString.call( value );\n\t\treturn true;\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\treturn false;\n\t}\n}\n\n\n// EXPORTS //\n\nmodule.exports = test;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar hasToStringTag = require( './../../has-tostringtag-support' );\nvar nativeClass = require( '@stdlib/utils/native-class' );\nvar Number = require( '@stdlib/number/ctor' );\nvar test = require( './try2serialize.js' );\n\n\n// VARIABLES //\n\nvar FLG = hasToStringTag();\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number object.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number object\n*\n* @example\n* var bool = isNumber( 3.14 );\n* // returns false\n*\n* @example\n* var bool = isNumber( new Number( 3.14 ) );\n* // returns true\n*/\nfunction isNumber( value ) {\n\tif ( typeof value === 'object' ) {\n\t\tif ( value instanceof Number ) {\n\t\t\treturn true;\n\t\t}\n\t\tif ( FLG ) {\n\t\t\treturn test( value );\n\t\t}\n\t\treturn ( nativeClass( value ) === '[object Number]' );\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNumber;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a number\n*\n* @example\n* var bool = isNumber( 3.14 );\n* // returns true\n*\n* @example\n* var bool = isNumber( new Number( 3.14 ) );\n* // returns true\n*\n* @example\n* var bool = isNumber( NaN );\n* // returns true\n*\n* @example\n* var bool = isNumber( null );\n* // returns false\n*/\nfunction isNumber( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNumber;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a number.\n*\n* @module @stdlib/assert/is-number\n*\n* @example\n* var isNumber = require( '@stdlib/assert/is-number' );\n*\n* var bool = isNumber( 3.14 );\n* // returns true\n*\n* bool = isNumber( new Number( 3.14 ) );\n* // returns true\n*\n* bool = isNumber( NaN );\n* // returns true\n*\n* bool = isNumber( null );\n* // returns false\n*\n* @example\n* var isNumber = require( '@stdlib/assert/is-number' ).isPrimitive;\n*\n* var bool = isNumber( 3.14 );\n* // returns true\n*\n* bool = isNumber( NaN );\n* // returns true\n*\n* bool = isNumber( new Number( 3.14 ) );\n* // returns false\n*\n* @example\n* var isNumber = require( '@stdlib/assert/is-number' ).isObject;\n*\n* var bool = isNumber( 3.14 );\n* // returns false\n*\n* bool = isNumber( new Number( 3.14 ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar PINF = require( '@stdlib/constants/float64/pinf' );\nvar NINF = require( '@stdlib/constants/float64/ninf' );\nvar isInt = require( '@stdlib/math/base/assert/is-integer' );\n\n\n// MAIN //\n\n/**\n* Tests if a number primitive is an integer value.\n*\n* @private\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a number primitive is an integer value\n*/\nfunction isInteger( value ) {\n\treturn (\n\t\tvalue < PINF &&\n\t\tvalue > NINF &&\n\t\tisInt( value )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isInteger;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isPrimitive;\nvar isInt = require( './integer.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number primitive having an integer value.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number primitive having an integer value\n*\n* @example\n* var bool = isInteger( -3.0 );\n* // returns true\n*\n* @example\n* var bool = isInteger( new Number( -3.0 ) );\n* // returns false\n*/\nfunction isInteger( value ) {\n\treturn (\n\t\tisNumber( value ) &&\n\t\tisInt( value )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isInteger;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isObject;\nvar isInt = require( './integer.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number object having an integer value.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number object having an integer value\n*\n* @example\n* var bool = isInteger( 3.0 );\n* // returns false\n*\n* @example\n* var bool = isInteger( new Number( 3.0 ) );\n* // returns true\n*/\nfunction isInteger( value ) {\n\treturn (\n\t\tisNumber( value ) &&\n\t\tisInt( value.valueOf() )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isInteger;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is an integer.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is an integer\n*\n* @example\n* var bool = isInteger( 5.0 );\n* // returns true\n*\n* @example\n* var bool = isInteger( new Number( 5.0 ) );\n* // returns true\n*\n* @example\n* var bool = isInteger( -3.14 );\n* // returns false\n*\n* @example\n* var bool = isInteger( null );\n* // returns false\n*/\nfunction isInteger( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isInteger;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an integer.\n*\n* @module @stdlib/assert/is-integer\n*\n* @example\n* var isInteger = require( '@stdlib/assert/is-integer' );\n*\n* var bool = isInteger( 5.0 );\n* // returns true\n*\n* bool = isInteger( new Number( 5.0 ) );\n* // returns true\n*\n* bool = isInteger( -3.14 );\n* // returns false\n*\n* bool = isInteger( null );\n* // returns false\n*\n* @example\n* // Use interface to check for integer primitives...\n* var isInteger = require( '@stdlib/assert/is-integer' ).isPrimitive;\n*\n* var bool = isInteger( -3.0 );\n* // returns true\n*\n* bool = isInteger( new Number( -3.0 ) );\n* // returns false\n*\n* @example\n* // Use interface to check for integer objects...\n* var isInteger = require( '@stdlib/assert/is-integer' ).isObject;\n*\n* var bool = isInteger( 3.0 );\n* // returns false\n*\n* bool = isInteger( new Number( 3.0 ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Tests if a value is a string primitive.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a string primitive\n*\n* @example\n* var bool = isString( 'beep' );\n* // returns true\n*\n* @example\n* var bool = isString( new String( 'beep' ) );\n* // returns false\n*/\nfunction isString( value ) {\n\treturn ( typeof value === 'string' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isString;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// eslint-disable-next-line stdlib/no-redeclare\nvar valueOf = String.prototype.valueOf; // non-generic\n\n\n// EXPORTS //\n\nmodule.exports = valueOf;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar valueOf = require( './valueof.js' ); // eslint-disable-line stdlib/no-redeclare\n\n\n// MAIN //\n\n/**\n* Attempts to extract a string value.\n*\n* @private\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a string can be extracted\n*/\nfunction test( value ) {\n\ttry {\n\t\tvalueOf.call( value );\n\t\treturn true;\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\treturn false;\n\t}\n}\n\n\n// EXPORTS //\n\nmodule.exports = test;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar hasToStringTag = require( './../../has-tostringtag-support' );\nvar nativeClass = require( '@stdlib/utils/native-class' );\nvar test = require( './try2valueof.js' );\n\n\n// VARIABLES //\n\nvar FLG = hasToStringTag();\n\n\n// MAIN //\n\n/**\n* Tests if a value is a string object.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a string object\n*\n* @example\n* var bool = isString( new String( 'beep' ) );\n* // returns true\n*\n* @example\n* var bool = isString( 'beep' );\n* // returns false\n*/\nfunction isString( value ) {\n\tif ( typeof value === 'object' ) {\n\t\tif ( value instanceof String ) {\n\t\t\treturn true;\n\t\t}\n\t\tif ( FLG ) {\n\t\t\treturn test( value );\n\t\t}\n\t\treturn ( nativeClass( value ) === '[object String]' );\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isString;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a string.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a string\n*\n* @example\n* var bool = isString( new String( 'beep' ) );\n* // returns true\n*\n* @example\n* var bool = isString( 'beep' );\n* // returns true\n*/\nfunction isString( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isString;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a string.\n*\n* @module @stdlib/assert/is-string\n*\n* @example\n* var isString = require( '@stdlib/assert/is-string' );\n*\n* var bool = isString( 'beep' );\n* // returns true\n*\n* bool = isString( new String( 'beep' ) );\n* // returns true\n*\n* bool = isString( 5 );\n* // returns false\n*\n* @example\n* var isString = require( '@stdlib/assert/is-string' ).isObject;\n*\n* var bool = isString( new String( 'beep' ) );\n* // returns true\n*\n* bool = isString( 'beep' );\n* // returns false\n*\n* @example\n* var isString = require( '@stdlib/assert/is-string' ).isPrimitive;\n*\n* var bool = isString( 'beep' );\n* // returns true\n*\n* bool = isString( new String( 'beep' ) );\n* // returns false\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isPrimitive;\nvar isNan = require( '@stdlib/math/base/assert/is-nan' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a `NaN` number primitive.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a `NaN` number primitive\n*\n* @example\n* var bool = isnan( NaN );\n* // returns true\n*\n* @example\n* var bool = isnan( 3.14 );\n* // returns false\n*\n* @example\n* var bool = isnan( new Number( NaN ) );\n* // returns false\n*/\nfunction isnan( value ) {\n\treturn (\n\t\tisNumber( value ) &&\n\t\tisNan( value )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isnan;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isObject;\nvar isNan = require( '@stdlib/math/base/assert/is-nan' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number object having a value of `NaN`.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number object having a value of `NaN`\n*\n* @example\n* var bool = isnan( NaN );\n* // returns false\n*\n* @example\n* var bool = isnan( new Number( NaN ) );\n* // returns true\n*/\nfunction isnan( value ) {\n\treturn (\n\t\tisNumber( value ) &&\n\t\tisNan( value.valueOf() )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isnan;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is `NaN`.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is `NaN`\n*\n* @example\n* var bool = isnan( NaN );\n* // returns true\n*\n* @example\n* var bool = isnan( new Number( NaN ) );\n* // returns true\n*\n* @example\n* var bool = isnan( 3.14 );\n* // returns false\n*\n* @example\n* var bool = isnan( null );\n* // returns false\n*/\nfunction isnan( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isnan;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is `NaN`.\n*\n* @module @stdlib/assert/is-nan\n*\n* @example\n* var isnan = require( '@stdlib/assert/is-nan' );\n*\n* var bool = isnan( NaN );\n* // returns true\n*\n* bool = isnan( new Number( NaN ) );\n* // returns true\n*\n* bool = isnan( 3.14 );\n* // returns false\n*\n* bool = isnan( null );\n* // returns false\n*\n* @example\n* var isnan = require( '@stdlib/assert/is-nan' ).isPrimitive;\n*\n* var bool = isnan( NaN );\n* // returns true\n*\n* bool = isnan( 3.14 );\n* // returns false\n*\n* bool = isnan( new Number( NaN ) );\n* // returns false\n*\n* @example\n* var isnan = require( '@stdlib/assert/is-nan' ).isObject;\n*\n* var bool = isnan( NaN );\n* // returns false\n*\n* bool = isnan( new Number( NaN ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isCollection = require( './../../is-collection' );\nvar isInteger = require( './../../is-integer' ).isPrimitive;\nvar isString = require( './../../is-string' ).isPrimitive;\nvar isnan = require( './../../is-nan' ).isPrimitive;\nvar format = require( '@stdlib/string/format' );\n\n\n// MAIN //\n\n/**\n* Tests if an array-like value contains a search value.\n*\n* @param {(Collection|string)} val - input value\n* @param {*} searchValue - search value\n* @param {integer} [position=0] - position at which to start searching for `searchValue`\n* @throws {TypeError} first argument must be array-like\n* @throws {Error} must provide a search value\n* @throws {TypeError} second argument must be a string when the first argument is a string\n* @throws {TypeError} third argument must be an integer\n* @returns {boolean} boolean indicating whether one value contains another\n*\n* @example\n* var bool = contains( 'last man standing', 'stand' );\n* // returns true\n*\n* @example\n* var bool = contains( [ 1, 2, 3, 4 ], 2 );\n* // returns true\n*\n* @example\n* var bool = contains( 'presidential election', 'president' );\n* // returns true\n*\n* @example\n* var bool = contains( [ NaN, 2, 3, 4 ], NaN );\n* // returns true\n*\n* @example\n* var bool = contains( 'javaScript', 'js' );\n* // returns false\n*\n* @example\n* var bool = contains( [ 1, 2, 3, {} ], {} );\n* // returns false\n*\n* @example\n* var bool = contains( 'Hidden Treasures', '' );\n* // returns true\n*/\nfunction contains( val, searchValue, position ) {\n\tvar len;\n\tvar pos;\n\tvar i;\n\tif ( !isCollection( val ) && !isString( val ) ) {\n\t\tthrow new TypeError( format( 'invalid argument. First argument must be array-like. Value: `%s`.', val ) );\n\t}\n\tif ( arguments.length < 2 ) {\n\t\tthrow new Error( 'insufficient arguments. Must provide a search value.' );\n\t}\n\tif ( arguments.length > 2 ) {\n\t\tif ( !isInteger( position ) ) {\n\t\t\tthrow new TypeError( format( 'invalid argument. Third argument must be an integer. Value: `%s`.', position ) );\n\t\t}\n\t\tpos = position;\n\t\tif ( pos < 0 ) {\n\t\t\tpos = 0;\n\t\t}\n\t} else {\n\t\tpos = 0;\n\t}\n\tif ( isString( val ) ) {\n\t\tif ( !isString( searchValue ) ) {\n\t\t\tthrow new TypeError( format( 'invalid argument. Second argument must be a string. Value: `%s`.', searchValue ) );\n\t\t}\n\t\treturn val.indexOf( searchValue, pos ) !== -1;\n\t}\n\tlen = val.length;\n\tif ( isnan( searchValue ) ) {\n\t\tfor ( i = pos; i < len; i++ ) {\n\t\t\tif ( isnan( val[ i ] ) ) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t\treturn false;\n\t}\n\tfor ( i = pos; i < len; i++ ) {\n\t\tif ( val[ i ] === searchValue ) {\n\t\t\treturn true;\n\t\t}\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = contains;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if an array-like value contains another value.\n*\n* @module @stdlib/assert/contains\n*\n* @example\n* var contains = require( '@stdlib/assert/contains' );\n*\n* var bool = contains( 'Hello World', 'World' );\n* // returns true\n*\n* bool = contains( 'Hello World', 'world' );\n* // returns false\n*\n* bool = contains( [ 1, 2, 3, 4 ], 2 );\n* // returns true\n*\n* bool = contains( [ NaN, 2, 3, 4 ], NaN );\n* // returns true\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\nvar getDay = Date.prototype.getDay; // non-generic\n\n\n// EXPORTS //\n\nmodule.exports = getDay;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar getDay = require( './getday.js' );\n\n\n// MAIN //\n\n/**\n* Attempts to call a `Date` method.\n*\n* @private\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if able to call a `Date` method\n*/\nfunction test( value ) {\n\ttry {\n\t\tgetDay.call( value );\n\t\treturn true;\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\treturn false;\n\t}\n}\n\n\n// EXPORTS //\n\nmodule.exports = test;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar hasToStringTag = require( './../../has-tostringtag-support' );\nvar nativeClass = require( '@stdlib/utils/native-class' );\nvar test = require( './try2getday.js' );\n\n\n// VARIABLES //\n\nvar FLG = hasToStringTag();\n\n\n// MAIN //\n\n/**\n* Tests if a value is a `Date` object.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a `Date` object\n*\n* @example\n* var bool = isDateObject( new Date() );\n* // returns true\n*\n* @example\n* var bool = isDateObject( '2017-01-01' );\n* // returns false\n*/\nfunction isDateObject( value ) {\n\tif ( typeof value === 'object' ) {\n\t\tif ( value instanceof Date ) {\n\t\t\treturn true;\n\t\t}\n\t\tif ( FLG ) {\n\t\t\treturn test( value );\n\t\t}\n\t\treturn ( nativeClass( value ) === '[object Date]' );\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isDateObject;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a `Date` object.\n*\n* @module @stdlib/assert/is-date-object\n*\n* @example\n* var isDateObject = require( '@stdlib/assert/is-date-object' );\n*\n* var bool = isDateObject( new Date() );\n* // returns true\n*\n* bool = isDateObject( '2017-01-01' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar getPrototypeOf = require( '@stdlib/utils/get-prototype-of' );\nvar nativeClass = require( '@stdlib/utils/native-class' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is an `Error` object.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is an `Error` object\n*\n* @example\n* var bool = isError( new Error( 'beep' ) );\n* // returns true\n*\n* @example\n* var bool = isError( {} );\n* // returns false\n*/\nfunction isError( value ) {\n\tif ( typeof value !== 'object' || value === null ) {\n\t\treturn false;\n\t}\n\t// Check for `Error` objects from the same realm (same Node.js `vm` or same `Window` object)...\n\tif ( value instanceof Error ) {\n\t\treturn true;\n\t}\n\t// Walk the prototype tree until we find an object having the desired native class...\n\twhile ( value ) {\n\t\tif ( nativeClass( value ) === '[object Error]' ) {\n\t\t\treturn true;\n\t\t}\n\t\tvalue = getPrototypeOf( value );\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isError;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an `Error` object.\n*\n* @module @stdlib/assert/is-error\n*\n* @example\n* var isError = require( '@stdlib/assert/is-error' );\n*\n* var bool = isError( new Error( 'beep' ) );\n* // returns true\n*\n* bool = isError( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar nativeClass = require( '@stdlib/utils/native-class' );\n\n\n// VARIABLES //\n\nvar f;\n\n\n// FUNCTIONS //\n\n/**\n* Tests if a value is an array.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is an array\n*\n* @example\n* var bool = isArray( [] );\n* // returns true\n*\n* @example\n* var bool = isArray( {} );\n* // returns false\n*/\nfunction isArray( value ) {\n\treturn ( nativeClass( value ) === '[object Array]' );\n}\n\n\n// MAIN //\n\nif ( Array.isArray ) {\n\tf = Array.isArray;\n} else {\n\tf = isArray;\n}\n\n\n// EXPORTS //\n\nmodule.exports = f;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array.\n*\n* @module @stdlib/assert/is-array\n*\n* @example\n* var isArray = require( '@stdlib/assert/is-array' );\n*\n* var bool = isArray( [] );\n* // returns true\n*\n* bool = isArray( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isArray = require( './../../../is-array' );\nvar format = require( '@stdlib/string/format' );\n\n\n// MAIN //\n\n/**\n* Returns a function which tests if every element in an array passes a test condition.\n*\n* @param {Function} predicate - function to apply\n* @throws {TypeError} must provide a function\n* @returns {Function} an array function\n*\n* @example\n* var isOdd = require( '@stdlib/assert/is-odd' );\n*\n* var arr1 = [ 1, 3, 5, 7 ];\n* var arr2 = [ 3, 5, 8 ];\n*\n* var validate = arrayfcn( isOdd );\n*\n* var bool = validate( arr1 );\n* // returns true\n*\n* bool = validate( arr2 );\n* // returns false\n*/\nfunction arrayfcn( predicate ) {\n\tif ( typeof predicate !== 'function' ) {\n\t\tthrow new TypeError( format( 'invalid argument. Must provide a function. Value: `%s`.', predicate ) );\n\t}\n\treturn every;\n\n\t/**\n\t* Tests if every element in an array passes a test condition.\n\t*\n\t* @private\n\t* @param {*} value - value to test\n\t* @returns {boolean} boolean indicating whether a value is an array for which all elements pass a test condition\n\t*/\n\tfunction every( value ) {\n\t\tvar len;\n\t\tvar i;\n\t\tif ( !isArray( value ) ) {\n\t\t\treturn false;\n\t\t}\n\t\tlen = value.length;\n\t\tif ( len === 0 ) {\n\t\t\treturn false;\n\t\t}\n\t\tfor ( i = 0; i < len; i++ ) {\n\t\t\tif ( predicate( value[ i ] ) === false ) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t\treturn true;\n\t}\n}\n\n\n// EXPORTS //\n\nmodule.exports = arrayfcn;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Return a function which tests if every element in an array passes a test condition.\n*\n* @module @stdlib/assert/tools/array-function\n*\n* @example\n* var isOdd = require( '@stdlib/assert/is-odd' );\n* var arrayfcn = require( '@stdlib/assert/tools/array-function' );\n*\n* var arr1 = [ 1, 3, 5, 7 ];\n* var arr2 = [ 3, 5, 8 ];\n*\n* var validate = arrayfcn( isOdd );\n*\n* var bool = validate( arr1 );\n* // returns true\n*\n* bool = validate( arr2 );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Tests if a value is object-like.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is object-like\n*\n* @example\n* var bool = isObjectLike( {} );\n* // returns true\n*\n* @example\n* var bool = isObjectLike( [] );\n* // returns true\n*\n* @example\n* var bool = isObjectLike( null );\n* // returns false\n*/\nfunction isObjectLike( value ) {\n\treturn (\n\t\tvalue !== null &&\n\t\ttypeof value === 'object'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isObjectLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is object-like.\n*\n* @module @stdlib/assert/is-object-like\n*\n* @example\n* var isObjectLike = require( '@stdlib/assert/is-object-like' );\n*\n* var bool = isObjectLike( {} );\n* // returns true\n*\n* bool = isObjectLike( [] );\n* // returns true\n*\n* bool = isObjectLike( null );\n* // returns false\n*\n* @example\n* var isObjectLike = require( '@stdlib/assert/is-object-like' ).isObjectLikeArray;\n*\n* var bool = isObjectLike( [ {}, [] ] );\n* // returns true\n*\n* bool = isObjectLike( [ {}, '3.0' ] );\n* // returns false\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar arrayfun = require( './../../tools/array-function' );\nvar main = require( './main.js' );\n\n\n// VARIABLES //\n\nvar isObjectLikeArray = arrayfun( main );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isObjectLikeArray', isObjectLikeArray );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isObjectLike = require( './../../is-object-like' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a Buffer instance.\n*\n* @param {*} value - value to validate\n* @returns {boolean} boolean indicating if a value is a Buffer instance\n*\n* @example\n* var v = isBuffer( new Buffer( 'beep' ) );\n* // returns true\n*\n* @example\n* var v = isBuffer( new Buffer( [1,2,3,4] ) );\n* // returns true\n*\n* @example\n* var v = isBuffer( {} );\n* // returns false\n*\n* @example\n* var v = isBuffer( [] );\n* // returns false\n*/\nfunction isBuffer( value ) {\n\treturn (\n\t\tisObjectLike( value ) &&\n\t\t(\n\t\t\t// eslint-disable-next-line no-underscore-dangle\n\t\t\tvalue._isBuffer || // for envs missing Object.prototype.constructor (e.g., Safari 5-7)\n\t\t\t(\n\t\t\t\tvalue.constructor &&\n\n\t\t\t\t// WARNING: `typeof` is not a foolproof check, as certain envs consider RegExp and NodeList instances to be functions\n\t\t\t\ttypeof value.constructor.isBuffer === 'function' &&\n\t\t\t\tvalue.constructor.isBuffer( value )\n\t\t\t)\n\t\t)\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isBuffer;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a Buffer instance.\n*\n* @module @stdlib/assert/is-buffer\n*\n* @example\n* var isBuffer = require( '@stdlib/assert/is-buffer' );\n*\n* var v = isBuffer( new Buffer( 'beep' ) );\n* // returns true\n*\n* v = isBuffer( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\nvar exec = RegExp.prototype.exec; // non-generic\n\n\n// EXPORTS //\n\nmodule.exports = exec;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar exec = require( './exec.js' );\n\n\n// MAIN //\n\n/**\n* Attempts to call a `RegExp` method.\n*\n* @private\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if able to call a `RegExp` method\n*/\nfunction test( value ) {\n\ttry {\n\t\texec.call( value );\n\t\treturn true;\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\treturn false;\n\t}\n}\n\n\n// EXPORTS //\n\nmodule.exports = test;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar hasToStringTag = require( './../../has-tostringtag-support' );\nvar nativeClass = require( '@stdlib/utils/native-class' );\nvar test = require( './try2exec.js' );\n\n\n// VARIABLES //\n\nvar FLG = hasToStringTag();\n\n\n// MAIN //\n\n/**\n* Tests if a value is a regular expression.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a regular expression\n*\n* @example\n* var bool = isRegExp( /\\.+/ );\n* // returns true\n*\n* @example\n* var bool = isRegExp( {} );\n* // returns false\n*/\nfunction isRegExp( value ) {\n\tif ( typeof value === 'object' ) {\n\t\tif ( value instanceof RegExp ) {\n\t\t\treturn true;\n\t\t}\n\t\tif ( FLG ) {\n\t\t\treturn test( value );\n\t\t}\n\t\treturn ( nativeClass( value ) === '[object RegExp]' );\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isRegExp;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a regular expression.\n*\n* @module @stdlib/assert/is-regexp\n*\n* @example\n* var isRegExp = require( '@stdlib/assert/is-regexp' );\n*\n* var bool = isRegExp( /\\.+/ );\n* // returns true\n*\n* bool = isRegExp( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar objectKeys = require( '@stdlib/utils/keys' );\nvar getPrototypeOf = require( '@stdlib/utils/get-prototype-of' );\nvar isDate = require( './../../is-date-object' );\nvar isError = require( './../../is-error' );\nvar isBuffer = require( './../../is-buffer' );\nvar isRegExp = require( './../../is-regexp' );\n\n\n// MAIN //\n\n/**\n* Tests for deep equality between two values.\n*\n* @param {*} a - first comparison value\n* @param {*} b - second comparison value\n* @returns {boolean} boolean indicating if `a` is deep equal to `b`\n*\n* @example\n* var bool = deepEqual( [ 1, 2, 3 ], [ 1, 2, 3 ] );\n* // returns true\n*\n* @example\n* var bool = deepEqual( [ 1, 2, 3 ], [ 1, 2, '3' ] );\n* // returns false\n*\n* @example\n* var bool = deepEqual( { 'a': 2 }, { 'a': [ 2 ] } );\n* // returns false\n*\n* @example\n* var bool = deepEqual( [], {} );\n* // returns false\n*\n* @example\n* var bool = deepEqual( null, null );\n* // returns true\n*/\nfunction deepEqual( a, b ) {\n\tvar aKeys;\n\tvar bKeys;\n\tvar typeA;\n\tvar typeB;\n\tvar key;\n\tvar i;\n\n\ttypeA = typeof a;\n\ttypeB = typeof b;\n\tif ( a === null || typeA !== 'object' ) {\n\t\tif ( b === null || typeB !== 'object' ) {\n\t\t\treturn a === b;\n\t\t}\n\t\treturn false;\n\t}\n\t// Case: `a` is of type 'object'\n\tif ( typeB !== 'object' ) {\n\t\treturn false;\n\t}\n\tif ( getPrototypeOf( a ) !== getPrototypeOf( b ) ) {\n\t\treturn false;\n\t}\n\tif ( isDate( a ) ) {\n\t\treturn a.getTime() === b.getTime();\n\t}\n\tif ( isRegExp( a ) ) {\n\t\treturn a.source === b.source && a.flags === b.flags;\n\t}\n\tif ( isError( a ) ) {\n\t\tif ( a.message !== b.message || a.name !== b.name ) {\n\t\t\treturn false;\n\t\t}\n\t}\n\tif ( isBuffer( a ) ) {\n\t\tif ( a.length !== b.length ) {\n\t\t\treturn false;\n\t\t}\n\t\tfor ( i = 0; i < a.length; i++ ) {\n\t\t\tif ( a[ i ] !== b[ i ] ) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t\treturn true;\n\t}\n\taKeys = objectKeys( a );\n\tbKeys = objectKeys( b );\n\tif ( aKeys.length !== bKeys.length ) {\n\t\treturn false;\n\t}\n\taKeys.sort();\n\tbKeys.sort();\n\n\t// Cheap key test:\n\tfor ( i = 0; i < aKeys.length; i++ ) {\n\t\tif ( aKeys[ i ] !== bKeys[ i ] ) {\n\t\t\treturn false;\n\t\t}\n\t}\n\t// Possibly expensive deep equality test for each corresponding key:\n\tfor ( i = 0; i < aKeys.length; i++ ) {\n\t\tkey = aKeys[ i ];\n\t\tif ( !deepEqual( a[ key ], b[ key ] ) ) {\n\t\t\treturn false;\n\t\t}\n\t}\n\treturn typeA === typeB;\n}\n\n\n// EXPORTS //\n\nmodule.exports = deepEqual;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for deep equality between two values.\n*\n* @module @stdlib/assert/deep-equal\n*\n* @example\n* var deepEqual = require( '@stdlib/assert/deep-equal' );\n*\n* var bool = deepEqual( [ 1, 2, 3 ], [ 1, 2, 3 ] );\n* // returns true\n*\n* bool = deepEqual( [ 1, 2, 3 ], [ 1, 2, '3' ] );\n* // returns false\n*\n* bool = deepEqual( { 'a': 2 }, { 'a': [ 2 ] } );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isArray = require( './../../is-array' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is an object; e.g., `{}`.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is an object\n*\n* @example\n* var bool = isObject( {} );\n* // returns true\n*\n* @example\n* var bool = isObject( null );\n* // returns false\n*/\nfunction isObject( value ) {\n\treturn (\n\t\ttypeof value === 'object' &&\n\t\tvalue !== null &&\n\t\t!isArray( value )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isObject;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an object.\n*\n* @module @stdlib/assert/is-object\n*\n* @example\n* var isObject = require( '@stdlib/assert/is-object' );\n*\n* var bool = isObject( {} );\n* // returns true\n*\n* bool = isObject( true );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar typeOf = require( '@stdlib/utils/type-of' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a function.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a function\n*\n* @example\n* function beep() {\n* return 'beep';\n* }\n*\n* var bool = isFunction( beep );\n* // returns true\n*/\nfunction isFunction( value ) {\n\t// Note: cannot use `typeof` directly, as various browser engines incorrectly return `'function'` when operating on non-function objects, such as regular expressions and NodeLists.\n\treturn ( typeOf( value ) === 'function' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isFunction;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a function.\n*\n* @module @stdlib/assert/is-function\n*\n* @example\n* var isFunction = require( '@stdlib/assert/is-function' );\n*\n* function beep() {\n* return 'beep';\n* }\n*\n* var bool = isFunction( beep );\n* // returns true\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// FUNCTIONS //\n\nvar has = Object.prototype.hasOwnProperty;\n\n\n// MAIN //\n\n/**\n* Tests if an object has a specified property.\n*\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object has a specified property\n*\n* @example\n* var beep = {\n* 'boop': true\n* };\n*\n* var bool = hasOwnProp( beep, 'boop' );\n* // returns true\n*\n* @example\n* var beep = {\n* 'boop': true\n* };\n*\n* var bool = hasOwnProp( beep, 'bap' );\n* // returns false\n*/\nfunction hasOwnProp( value, property ) {\n\tif (\n\t\tvalue === void 0 ||\n\t\tvalue === null\n\t) {\n\t\treturn false;\n\t}\n\treturn has.call( value, property );\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasOwnProp;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object has a specified property.\n*\n* @module @stdlib/assert/has-own-property\n*\n* @example\n* var hasOwnProp = require( '@stdlib/assert/has-own-property' );\n*\n* var beep = {\n* 'boop': true\n* };\n*\n* var bool = hasOwnProp( beep, 'boop' );\n* // returns true\n*\n* bool = hasOwnProp( beep, 'bop' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isObject = require( './../../is-object' );\nvar isFunction = require( './../../is-function' );\nvar getPrototypeOf = require( '@stdlib/utils/get-prototype-of' );\nvar hasOwnProp = require( './../../has-own-property' );\nvar nativeClass = require( '@stdlib/utils/native-class' );\n\n\n// VARIABLES //\n\nvar objectPrototype = Object.prototype;\n\n\n// FUNCTIONS //\n\n/**\n* Tests that an object only has own properties.\n*\n* @private\n* @param {Object} obj - value to test\n* @returns {boolean} boolean indicating if an object only has own properties\n*/\nfunction ownProps( obj ) {\n\tvar key;\n\n\t// NOTE: possibility of perf boost if key enumeration order is known (see http://stackoverflow.com/questions/18531624/isplainobject-thing).\n\tfor ( key in obj ) {\n\t\tif ( !hasOwnProp( obj, key ) ) {\n\t\t\treturn false;\n\t\t}\n\t}\n\treturn true;\n}\n\n\n// MAIN //\n\n/**\n* Tests if a value is a plain object.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a plain object\n*\n* @example\n* var bool = isPlainObject( {} );\n* // returns true\n*\n* @example\n* var bool = isPlainObject( null );\n* // returns false\n*/\nfunction isPlainObject( value ) {\n\tvar proto;\n\n\t// Screen for obvious non-objects...\n\tif ( !isObject( value ) ) {\n\t\treturn false;\n\t}\n\t// Objects with no prototype (e.g., `Object.create( null )`) are plain...\n\tproto = getPrototypeOf( value );\n\tif ( !proto ) {\n\t\treturn true;\n\t}\n\t// Objects having a prototype are plain if and only if they are constructed with a global `Object` function and the prototype points to the prototype of a plain object...\n\treturn (\n\t\t// Cannot have own `constructor` property:\n\t\t!hasOwnProp( value, 'constructor' ) &&\n\n\t\t// Prototype `constructor` property must be a function (see also https://bugs.jquery.com/ticket/9897 and http://stackoverflow.com/questions/18531624/isplainobject-thing):\n\t\thasOwnProp( proto, 'constructor' ) &&\n\t\tisFunction( proto.constructor ) &&\n\t\tnativeClass( proto.constructor ) === '[object Function]' &&\n\n\t\t// Test for object-specific method:\n\t\thasOwnProp( proto, 'isPrototypeOf' ) &&\n\t\tisFunction( proto.isPrototypeOf ) &&\n\n\t\t(\n\t\t\t// Test if the prototype matches the global `Object` prototype (same realm):\n\t\t\tproto === objectPrototype ||\n\n\t\t\t// Test that all properties are own properties (cross-realm; *most* likely a plain object):\n\t\t\townProps( value )\n\t\t)\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isPlainObject;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a plain object.\n*\n* @module @stdlib/assert/is-plain-object\n*\n* @example\n* var isPlainObject = require( '@stdlib/assert/is-plain-object' );\n*\n* var bool = isPlainObject( {} );\n* // returns true\n*\n* bool = isPlainObject( null );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\nvar isObject = require( './../../is-plain-object' );\nvar hasOwnProp = require( './../../has-own-property' );\nvar format = require( '@stdlib/string/format' );\n\n\n// MAIN //\n\n/**\n* Validates function options.\n*\n* @private\n* @param {Object} opts - destination for function options\n* @param {Options} options - function options\n* @param {string} [options.sep] - key path separator\n* @returns {(Error|null)} error or null\n*\n* @example\n* var opts = {};\n* var options = {\n* 'sep': '/'\n* };\n* var err = validate( opts, options );\n* if ( err ) {\n* throw err;\n* }\n*/\nfunction validate( opts, options ) {\n\tif ( !isObject( options ) ) {\n\t\treturn new TypeError( format( 'invalid argument. Options argument must be an object. Value: `%s`.', options ) );\n\t}\n\tif ( hasOwnProp( options, 'sep' ) ) {\n\t\topts.sep = options.sep;\n\t\tif ( !isString( opts.sep ) ) {\n\t\t\treturn new TypeError( format( 'invalid option. `%s` option must be a string. Option: `%s`.', 'sep', opts.sep ) );\n\t\t}\n\t}\n\treturn null;\n}\n\n\n// EXPORTS //\n\nmodule.exports = validate;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2023 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\n/**\n* Returns default options.\n*\n* @private\n* @returns {Object} default options\n*/\nfunction defaults() {\n\treturn {\n\t\t'sep': '.'\n\t};\n}\n\n\n// EXPORTS //\n\nmodule.exports = defaults;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar hasOwnProp = require( './../../has-own-property' );\n\n\n// MAIN //\n\n/**\n* Returns a boolean indicating whether an object has a nested property.\n*\n* @private\n* @param {*} v - value to test\n* @param {Array} props - list of properties defining a key path\n* @returns {boolean} boolean indicating whether an object has a nested property\n*/\nfunction deepHasOwnProp( v, props ) {\n\tvar len = props.length;\n\tvar i;\n\tif ( len === 0 ) {\n\t\treturn false;\n\t}\n\tfor ( i = 0; i < len; i++ ) {\n\t\tif ( hasOwnProp( v, props[ i ] ) ) {\n\t\t\tv = v[ props[ i ] ];\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t}\n\treturn true;\n}\n\n\n// EXPORTS //\n\nmodule.exports = deepHasOwnProp;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\nvar isArray = require( './../../is-array' );\nvar format = require( '@stdlib/string/format' );\nvar validate = require( './validate.js' );\nvar defaults = require( './defaults.js' );\nvar has = require( './has.js' );\n\n\n// MAIN //\n\n/**\n* Tests whether an object contains a nested key path.\n*\n* @param {*} value - value to test\n* @param {(string|Array)} path - key path\n* @param {Options} [options] - function options\n* @param {string} [options.sep='.'] - key path separator\n* @throws {TypeError} second argument must be a string or key array\n* @throws {TypeError} options argument must be an object\n* @throws {TypeError} must provide valid options\n* @returns {boolean} boolean indicating whether an object has a nested property\n*\n* @example\n* var obj = { 'a': { 'b': { 'c': 'd' } } };\n* var bool = deepHasOwnProp( obj, 'a.b.c' );\n* // returns true\n*\n* @example\n* var arr = [\n* {\n* 'a': [\n* {\n* 'b': [\n* { 'c': 'd' },\n* { 'e': 'f' }\n* ]\n* }\n* ]\n* }\n* ];\n* var bool = deepHasOwnProp( arr, '0.a.0.b.0.c' );\n* // returns true\n*\n* @example\n* var obj = { 'a': { 'b': { 'c': 'd' } } };\n* var bool = deepHasOwnProp( obj, [ 'a', 'b', 'c' ] );\n* // returns true\n*\n* @example\n* var obj = { 'a': { 'b': { 'c': 'd' } } };\n* var bool = deepHasOwnProp( obj, 'a/b/c', {\n* 'sep': '/'\n* });\n* // returns true\n*/\nfunction deepHasOwnProp( value, path, options ) {\n\tvar isStr;\n\tvar props;\n\tvar opts;\n\tvar err;\n\n\tisStr = isString( path );\n\tif ( !isStr && !isArray( path ) ) {\n\t\tthrow new TypeError( format( 'invalid argument. Key path must be a string or a key array. Value: `%s`.', path ) );\n\t}\n\topts = defaults();\n\tif ( arguments.length > 2 ) {\n\t\terr = validate( opts, options );\n\t\tif ( err ) {\n\t\t\tthrow err;\n\t\t}\n\t}\n\tif ( value === void 0 || value === null ) {\n\t\treturn false;\n\t}\n\tif ( isStr ) {\n\t\tprops = path.split( opts.sep );\n\t} else {\n\t\tprops = path;\n\t}\n\treturn has( value, props );\n}\n\n\n// EXPORTS //\n\nmodule.exports = deepHasOwnProp;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\nvar isArray = require( './../../is-array' );\nvar format = require( '@stdlib/string/format' );\nvar validate = require( './validate.js' );\nvar defaults = require( './defaults.js' );\nvar has = require( './has.js' );\n\n\n// MAIN //\n\n/**\n* Returns a function which tests whether an object has a nested key path.\n*\n* @param {(string|Array)} path - key path\n* @param {Options} [options] - function options\n* @param {string} [options.sep='.'] - key path separator\n* @throws {TypeError} first argument must be a string or key array\n* @throws {TypeError} options argument must be an object\n* @throws {TypeError} must provide valid options\n* @returns {Function} function which tests whether an object has a nested key path\n*\n* @example\n* var has = factory( 'a/b/c', {\n* 'sep': '/'\n* });\n*/\nfunction factory( path, options ) {\n\tvar isStr;\n\tvar props;\n\tvar opts;\n\tvar err;\n\tisStr = isString( path );\n\tif ( !isStr && !isArray( path ) ) {\n\t\tthrow new TypeError( format( 'invalid argument. Key path must be a string or a key array. Value: `%s`.', path ) );\n\t}\n\topts = defaults();\n\tif ( arguments.length > 1 ) {\n\t\terr = validate( opts, options );\n\t\tif ( err ) {\n\t\t\tthrow err;\n\t\t}\n\t}\n\tif ( isStr ) {\n\t\tprops = path.split( opts.sep );\n\t} else {\n\t\tprops = path;\n\t}\n\treturn deepHasOwnProp;\n\n\t/**\n\t* Returns a boolean indicating whether an object has a nested key path.\n\t*\n\t* @private\n\t* @param {*} value - value to test\n\t* @returns {boolean} boolean indicating whether an object has a nested property\n\t*\n\t* @example\n\t* var obj = { 'a': { 'b': { 'c': 'd' } } };\n\t* var bool = deepHasOwnProp( obj );\n\t*/\n\tfunction deepHasOwnProp( value ) {\n\t\tif ( value === void 0 || value === null ) {\n\t\t\treturn false;\n\t\t}\n\t\treturn has( value, props );\n\t}\n}\n\n\n// EXPORTS //\n\nmodule.exports = factory;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object contains a nested key path.\n*\n* @module @stdlib/assert/deep-has-own-property\n*\n* @example\n* var deepHasOwnProp = require( '@stdlib/assert/deep-has-own-property' );\n*\n* var obj = {\n* 'a': {\n* 'b': {\n* 'c': 'd'\n* }\n* }\n* };\n*\n* var bool = deepHasOwnProp( obj, 'a.b.c' );\n* // returns true\n*\n* bool = deepHasOwnProp( obj, [ 'a', 'b', 'c' ] );\n* // returns true\n*\n* @example\n* var factory = require( '@stdlib/assert/deep-has-own-property' ).factory;\n*\n* var has = factory( 'a/b/c', {\n* 'sep': '/'\n* });\n*\n* var obj = {\n* 'a': {\n* 'b': {\n* 'c': 'd'\n* }\n* }\n* };\n*\n* var bool = has( obj );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar factory = require( './factory.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'factory', factory );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\nvar isObject = require( './../../is-plain-object' );\nvar hasOwnProp = require( './../../has-own-property' );\nvar format = require( '@stdlib/string/format' );\n\n\n// MAIN //\n\n/**\n* Validates function options.\n*\n* @private\n* @param {Object} opts - destination for function options\n* @param {Options} options - function options\n* @param {string} [options.sep] - key path separator\n* @returns {(Error|null)} error or null\n*\n* @example\n* var opts = {};\n* var options = {\n* 'sep': '/'\n* };\n* var err = validate( opts, options );\n* if ( err ) {\n* throw err;\n* }\n*/\nfunction validate( opts, options ) {\n\tif ( !isObject( options ) ) {\n\t\treturn new TypeError( format( 'invalid argument. Options argument must be an object. Value: `%s`.', options ) );\n\t}\n\tif ( hasOwnProp( options, 'sep' ) ) {\n\t\topts.sep = options.sep;\n\t\tif ( !isString( opts.sep ) ) {\n\t\t\treturn new TypeError( format( 'invalid option. `%s` option must be a string. Option: `%s`.', 'sep', opts.sep ) );\n\t\t}\n\t}\n\treturn null;\n}\n\n\n// EXPORTS //\n\nmodule.exports = validate;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2023 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\n/**\n* Returns default options.\n*\n* @private\n* @returns {Object} default options\n*/\nfunction defaults() {\n\treturn {\n\t\t'sep': '.'\n\t};\n}\n\n\n// EXPORTS //\n\nmodule.exports = defaults;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\n/**\n* Tests if an object has a specified property, either own or inherited.\n*\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object has a specified property\n*\n* @example\n* var beep = {\n* 'boop': true\n* };\n*\n* var bool = hasProp( beep, 'boop' );\n* // returns true\n*\n* @example\n* var beep = {\n* 'boop': true\n* };\n*\n* var bool = hasProp( beep, 'bap' );\n* // returns false\n*/\nfunction hasProp( value, property ) {\n\tif ( value === void 0 || value === null ) {\n\t\treturn false;\n\t}\n\tif ( typeof property === 'symbol' ) {\n\t\treturn property in Object( value );\n\t}\n\treturn ( String( property ) in Object( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasProp;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object has a specified property, either own or inherited.\n*\n* @module @stdlib/assert/has-property\n*\n* @example\n* var hasProp = require( '@stdlib/assert/has-property' );\n*\n* var beep = {\n* 'boop': true\n* };\n*\n* var bool = hasProp( beep, 'boop' );\n* // returns true\n*\n* bool = hasProp( beep, 'bop' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar hasProp = require( './../../has-property' );\n\n\n// MAIN //\n\n/**\n* Returns a boolean indicating whether an object has a nested property.\n*\n* @private\n* @param {*} v - value to test\n* @param {Array} props - list of properties defining a key path\n* @returns {boolean} boolean indicating whether an object has a nested property\n*/\nfunction deepHasProp( v, props ) {\n\tvar len = props.length;\n\tvar i;\n\tif ( len === 0 ) {\n\t\treturn false;\n\t}\n\tfor ( i = 0; i < len; i++ ) {\n\t\tif ( hasProp( v, props[i] ) ) {\n\t\t\tv = v[ props[ i ] ];\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t}\n\treturn true;\n}\n\n\n// EXPORTS //\n\nmodule.exports = deepHasProp;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\nvar isArray = require( './../../is-array' );\nvar format = require( '@stdlib/string/format' );\nvar validate = require( './validate.js' );\nvar defaults = require( './defaults.js' );\nvar has = require( './has.js' );\n\n\n// MAIN //\n\n/**\n* Tests whether an object contains a nested key path, either own or inherited.\n*\n* @param {*} value - value to test\n* @param {(string|Array)} path - key path\n* @param {Options} [options] - function options\n* @param {string} [options.sep='.'] - key path separator\n* @throws {TypeError} second argument must be a string or key array\n* @throws {TypeError} options argument must be an object\n* @throws {TypeError} must provide valid options\n* @returns {boolean} boolean indicating whether an object has a nested property\n*\n* @example\n* function Foo() {\n* return this;\n* }\n* Foo.prototype.b = {\n* 'c': 'd'\n* };\n*\n* var obj = {\n* 'a': new Foo()\n* };\n*\n* var bool = deepHasProp( obj, 'a.b.c' );\n* // returns true\n*\n* @example\n* var arr = [\n* {\n* 'a': [\n* {\n* 'b': [\n* { 'c': 'd' },\n* { 'e': 'f' }\n* ]\n* }\n* ]\n* }\n* ];\n* var bool = deepHasProp( arr, '0.a.0.b.0.c' );\n* // returns true\n*\n* @example\n* var obj = { 'a': { 'b': { 'c': 'd' } } };\n* var bool = deepHasProp( obj, [ 'a', 'b', 'c' ] );\n* // returns true\n*\n* @example\n* var obj = { 'a': { 'b': { 'c': 'd' } } };\n* var bool = deepHasProp( obj, 'a/b/c', {\n* 'sep': '/'\n* });\n* // returns true\n*/\nfunction deepHasProp( value, path, options ) {\n\tvar isStr;\n\tvar props;\n\tvar opts;\n\tvar err;\n\n\tisStr = isString( path );\n\tif ( !isStr && !isArray( path ) ) {\n\t\tthrow new TypeError( format( 'invalid argument. Key path must be a string or a key array. Value: `%s`.', path ) );\n\t}\n\topts = defaults();\n\tif ( arguments.length > 2 ) {\n\t\terr = validate( opts, options );\n\t\tif ( err ) {\n\t\t\tthrow err;\n\t\t}\n\t}\n\tif ( value === void 0 || value === null ) {\n\t\treturn false;\n\t}\n\tif ( isStr ) {\n\t\tprops = path.split( opts.sep );\n\t} else {\n\t\tprops = path;\n\t}\n\treturn has( value, props );\n}\n\n\n// EXPORTS //\n\nmodule.exports = deepHasProp;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\nvar isArray = require( './../../is-array' );\nvar format = require( '@stdlib/string/format' );\nvar validate = require( './validate.js' );\nvar defaults = require( './defaults.js' );\nvar has = require( './has.js' );\n\n\n// MAIN //\n\n/**\n* Returns a function which tests whether an object has a nested key path, either own or inherited.\n*\n* @param {(string|Array)} path - key path\n* @param {Options} [options] - function options\n* @param {string} [options.sep='.'] - key path separator\n* @throws {TypeError} first argument must be a string or key array\n* @throws {TypeError} options argument must be an object\n* @throws {TypeError} must provide valid options\n* @returns {Function} function which tests whether an object has a nested key path\n*\n* @example\n* var has = factory( 'a/b/c', {\n* 'sep': '/'\n* });\n*/\nfunction factory( path, options ) {\n\tvar isStr;\n\tvar props;\n\tvar opts;\n\tvar err;\n\tisStr = isString( path );\n\tif ( !isStr && !isArray( path ) ) {\n\t\tthrow new TypeError( format( 'invalid argument. Key path must be a string or a key array. Value: `%s`.', path ) );\n\t}\n\topts = defaults();\n\tif ( arguments.length > 1 ) {\n\t\terr = validate( opts, options );\n\t\tif ( err ) {\n\t\t\tthrow err;\n\t\t}\n\t}\n\tif ( isStr ) {\n\t\tprops = path.split( opts.sep );\n\t} else {\n\t\tprops = path;\n\t}\n\treturn deepHasProp;\n\n\t/**\n\t* Returns a boolean indicating whether an object has a nested key path, either own or inherited.\n\t*\n\t* @private\n\t* @param {*} value - value to test\n\t* @returns {boolean} boolean indicating whether an object has a nested property\n\t*\n\t* @example\n\t* var obj = { 'a': { 'b': { 'c': 'd' } } };\n\t* var bool = deepHasProp( obj );\n\t*/\n\tfunction deepHasProp( value ) {\n\t\tif ( value === void 0 || value === null ) {\n\t\t\treturn false;\n\t\t}\n\t\treturn has( value, props );\n\t}\n}\n\n\n// EXPORTS //\n\nmodule.exports = factory;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object contains a nested key path, either own or inherited.\n*\n* @module @stdlib/assert/deep-has-property\n*\n* @example\n* var deepHasProp = require( '@stdlib/assert/deep-has-property' );\n*\n* function Foo() {\n* return this;\n* }\n* Foo.prototype.b = {\n* 'c': 'd'\n* };\n*\n* var obj = {\n* 'a': new Foo()\n* };\n*\n* var bool = deepHasProp( obj, 'a.b.c' );\n* // returns true\n*\n* bool = deepHasProp( obj, [ 'a', 'b', 'c' ] );\n* // returns true\n*\n* @example\n* var factory = require( '@stdlib/assert/deep-has-property' ).factory;\n*\n* var has = factory( 'a/b/c', {\n* 'sep': '/'\n* });\n*\n* function Foo() {\n* return this;\n* }\n* Foo.prototype.b = {\n* 'c': 'd'\n* };\n*\n* var obj = {\n* 'a': new Foo()\n* };\n*\n* var bool = has( obj );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar factory = require( './factory.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'factory', factory );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar nativeClass = require( '@stdlib/utils/native-class' );\n\n\n// VARIABLES //\n\nvar hasArrayBuffer = ( typeof ArrayBuffer === 'function' ); // eslint-disable-line stdlib/require-globals\n\n\n// MAIN //\n\n/**\n* Tests if a value is an ArrayBuffer.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is an ArrayBuffer\n*\n* @example\n* var ArrayBuffer = require( '@stdlib/array/buffer' );\n*\n* var bool = isArrayBuffer( new ArrayBuffer( 10 ) );\n* // returns true\n*\n* @example\n* var bool = isArrayBuffer( [] );\n* // returns false\n*/\nfunction isArrayBuffer( value ) {\n\treturn (\n\t\t( hasArrayBuffer && value instanceof ArrayBuffer ) || // eslint-disable-line stdlib/require-globals\n\t\tnativeClass( value ) === '[object ArrayBuffer]'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isArrayBuffer;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an ArrayBuffer.\n*\n* @module @stdlib/assert/is-arraybuffer\n*\n* @example\n* var ArrayBuffer = require( '@stdlib/array/buffer' );\n* var isArrayBuffer = require( '@stdlib/assert/is-arraybuffer' );\n*\n* var bool = isArrayBuffer( new ArrayBuffer( 10 ) );\n* // returns true\n*\n* bool = isArrayBuffer( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\nvar main = ( typeof ArrayBuffer === 'function' ) ? ArrayBuffer : null; // eslint-disable-line stdlib/require-globals\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isArrayBuffer = require( './../../is-arraybuffer' );\nvar Float64Array = require( '@stdlib/array/float64' );\nvar GlobalArrayBuffer = require( './arraybuffer.js' );\n\n\n// MAIN //\n\n/**\n* Tests for native `ArrayBuffer` support.\n*\n* @returns {boolean} boolean indicating if an environment has `ArrayBuffer` support\n*\n* @example\n* var bool = hasArrayBufferSupport();\n* // returns \n*/\nfunction hasArrayBufferSupport() {\n\tvar bool;\n\tvar view;\n\tvar buf;\n\n\tif ( typeof GlobalArrayBuffer !== 'function' ) {\n\t\treturn false;\n\t}\n\t// Test basic support...\n\ttry {\n\t\tbuf = new GlobalArrayBuffer( 16 );\n\t\tbool = ( isArrayBuffer( buf ) && typeof GlobalArrayBuffer.isView === 'function' );\n\t\tif ( bool ) {\n\t\t\tview = new Float64Array( buf );\n\t\t\tview[ 0 ] = -3.14;\n\t\t\tview[ 1 ] = NaN;\n\t\t\tbool = (\n\t\t\t\tbool &&\n\t\t\t\tGlobalArrayBuffer.isView( view ) &&\n\t\t\t\tbuf.byteLength === 16 &&\n\t\t\t\tview[ 0 ] === -3.14 &&\n\t\t\t\tview[ 1 ] !== view[ 1 ]\n\t\t\t);\n\t\t}\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\tbool = false;\n\t}\n\treturn bool;\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasArrayBufferSupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `ArrayBuffer` support.\n*\n* @module @stdlib/assert/has-arraybuffer-support\n*\n* @example\n* var hasArrayBufferSupport = require( '@stdlib/assert/has-arraybuffer-support' );\n*\n* var bool = hasArrayBufferSupport();\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar evil = require( '@stdlib/utils/eval' );\n\n\n// MAIN //\n\n/**\n* Tests for native arrow function support.\n*\n* @returns {boolean} boolean indicating if an environment has native arrow function support\n*\n* @example\n* var bool = hasArrowFunctionSupport();\n* // returns \n*/\nfunction hasArrowFunctionSupport() {\n\tvar bool;\n\ttry {\n\t\tevil( '\"use strict\"; (() => {})' );\n\t\tbool = true;\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\tbool = false;\n\t}\n\treturn bool;\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasArrowFunctionSupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native arrow function support.\n*\n* @module @stdlib/assert/has-arrow-function-support\n*\n* @example\n* var hasArrowFunctionSupport = require( '@stdlib/assert/has-arrow-function-support' );\n*\n* var bool = hasArrowFunctionSupport();\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar evil = require( '@stdlib/utils/eval' );\n\n\n// MAIN //\n\n/**\n* Tests for native `async/await` support.\n*\n* @returns {boolean} boolean indicating if an environment has native `async`/`await` support\n*\n* @example\n* var bool = hasAsyncAwaitSupport();\n* if ( bool ) {\n* console.log( 'Environment has native async/await support.' );\n* } else {\n* console.log( 'Environment lacks native async/await support.' );\n* }\n*/\nfunction hasAsyncAwaitSupport() {\n\tvar bool;\n\ttry {\n\t\tevil( '\"use strict\"; async () => {}' );\n\t\tbool = true;\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\tbool = false;\n\t}\n\treturn bool;\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasAsyncAwaitSupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `async`/`await` support.\n*\n* @module @stdlib/assert/has-async-await-support\n*\n* @example\n* var hasAsyncAwaitSupport = require( '@stdlib/assert/has-async-await-support' );\n*\n* var bool = hasAsyncAwaitSupport();\n* if ( bool ) {\n* console.log( 'Environment has native async/await support.' );\n* } else {\n* console.log( 'Environment lacks native async/await support.' );\n* }\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n/* eslint-disable stdlib/require-globals */\n\n'use strict';\n\n// MODULES //\n\nvar hasOwnProp = require( './../../has-own-property' );\n\n\n// MAIN //\n\n/**\n* Tests for native `Symbol.asyncIterator` support.\n*\n* @returns {boolean} boolean indicating if an environment has `Symbol.asyncIterator` support\n*\n* @example\n* var bool = hasAsyncIteratorSymbolSupport();\n* // returns \n*/\nfunction hasAsyncIteratorSymbolSupport() { // eslint-disable-line id-length\n\treturn (\n\t\ttypeof Symbol === 'function' &&\n\t\ttypeof Symbol( 'foo' ) === 'symbol' &&\n\t\thasOwnProp( Symbol, 'asyncIterator' ) &&\n\t\ttypeof Symbol.asyncIterator === 'symbol'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasAsyncIteratorSymbolSupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `Symbol.asyncIterator` support.\n*\n* @module @stdlib/assert/has-async-iterator-symbol-support\n*\n* @example\n* var hasAsyncIteratorSymbolSupport = require( '@stdlib/assert/has-async-iterator-symbol-support' );\n*\n* var bool = hasAsyncIteratorSymbolSupport();\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar getGlobal = require( '@stdlib/utils/global' );\n\n\n// VARIABLES //\n\nvar Global = getGlobal();\n\n\n// MAIN //\n\n/**\n* Tests for native `BigInt` support.\n*\n* @returns {boolean} boolean indicating if an environment has `BigInt` support\n*\n* @example\n* var bool = hasBigIntSupport();\n* // returns \n*/\nfunction hasBigIntSupport() {\n\treturn (\n\t\ttypeof Global.BigInt === 'function' &&\n\t\ttypeof BigInt === 'function' && // eslint-disable-line stdlib/require-globals\n\t\ttypeof Global.BigInt( '1' ) === 'bigint' &&\n\t\ttypeof BigInt( '1' ) === 'bigint' // eslint-disable-line stdlib/require-globals, no-undef\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasBigIntSupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `BigInt` support.\n*\n* @module @stdlib/assert/has-bigint-support\n*\n* @example\n* var hasBigIntSupport = require( '@stdlib/assert/has-bigint-support' );\n*\n* var bool = hasBigIntSupport();\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar nativeClass = require( '@stdlib/utils/native-class' );\n\n\n// VARIABLES //\n\nvar hasBigInt64Array = ( typeof BigInt64Array === 'function' ); // eslint-disable-line stdlib/require-globals\n\n\n// MAIN //\n\n/**\n* Tests if a value is a BigInt64Array.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether the value is a BigInt64Array\n*\n* @example\n* var bool = isBigInt64Array( new BigInt64Array( 2 ) );\n* // returns true\n*\n* @example\n* var bool = isBigInt64Array( [] );\n* // returns false\n*\n* @example\n* var bool = isBigInt64Array( 123 );\n* // returns false\n*/\nfunction isBigInt64Array( value ) {\n\treturn (\n\t\t( hasBigInt64Array && value instanceof BigInt64Array ) || // eslint-disable-line stdlib/require-globals, no-undef\n\t\tnativeClass( value ) === '[object BigInt64Array]'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isBigInt64Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a BigInt64Array.\n*\n* @module @stdlib/assert/is-bigint64array\n*\n* @example\n* var isBigInt64Array = require( '@stdlib/assert/is-bigint64array' );\n*\n* var value = new BigInt64Array( 2 );\n* var bool = isBigInt64Array( value );\n* // returns true\n*\n* bool = isBigInt64Array( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isBigInt64Array = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = isBigInt64Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Tests if a value is a BigInt primitive.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a BigInt primitive\n*/\nfunction isBigInt( value ) {\n\treturn ( typeof value === 'bigint' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isBigInt;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\n/**\n* Attempts to call a `BigInt` method.\n*\n* @private\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if able to call a `BigInt` method\n*/\nfunction test( value ) {\n\ttry {\n\t\treturn (\n\t\t\t// Objects created via `Object.create( null )` have no `valueOf()` method:\n\t\t\ttypeof value.valueOf() === 'bigint'\n\t\t);\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\treturn false;\n\t}\n}\n\n\n// EXPORTS //\n\nmodule.exports = test;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar nativeClass = require( '@stdlib/utils/native-class' );\nvar test = require( './try2valueof.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a BigInt object.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a BigInt object\n*/\nfunction BigInt( value ) {\n\treturn (\n\t\ttypeof value === 'object' &&\n\t\tnativeClass( value ) === '[object BigInt]' &&\n\t\ttest( value )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = BigInt;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a BigInt.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a BigInt\n*/\nfunction isBigInt( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isBigInt;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar isSymbol = require( './generic.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( isSymbol, 'isPrimitive', isPrimitive );\nsetReadOnly( isSymbol, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = isSymbol;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar constantFunction = require( '@stdlib/utils/constant-function' );\n\n\n// MAIN //\n\nvar isBigInt = constantFunction( false );\nvar isPrimitive = constantFunction( false );\nvar isObject = constantFunction( false );\n\nsetReadOnly( isBigInt, 'isPrimitive', isPrimitive );\nsetReadOnly( isBigInt, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = isBigInt;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a BigInt.\n*\n* @module @stdlib/assert/is-bigint\n*\n* @example\n* var BigInt = require( '@stdlib/bigint/ctor' );\n* var isBigInt = require( '@stdlib/assert/is-bigint' );\n*\n* var bool = isBigInt( BigInt( '1' ) );\n* // returns true\n*\n* bool = isBigInt( Object( BigInt( '1' ) ) );\n* // returns true\n*\n* bool = isBigInt( {} );\n* // returns false\n*\n* @example\n* var isBigInt = require( '@stdlib/assert/is-bigint' ).isPrimitive;\n*\n* var bool = isBigInt( BigInt( '1' ) );\n* // returns true\n*\n* bool = isBigInt( Object( BigInt( '1' ) ) );\n* // returns false\n*\n* bool = isBigInt( {} );\n* // returns false\n*\n* @example\n* var isBigIntObject = require( '@stdlib/assert/is-bigint' ).isObject;\n*\n* var bool = isBigIntObject( BigInt( '1' ) );\n* // returns false\n*\n* bool = isBigIntObject( Object( BigInt( '1' ) ) );\n* // returns true\n*\n* bool = isBigIntObject( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar hasBigInts = require( './../../has-bigint-support' );\nvar main = require( './main.js' );\nvar polyfill = require( './polyfill.js' );\n\n\n// MAIN //\n\nvar isBigInt;\nif ( hasBigInts() ) {\n\tisBigInt = main;\n} else {\n\tisBigInt = polyfill;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isBigInt;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\nvar main = ( typeof BigInt64Array === 'function' ) ? BigInt64Array : null; // eslint-disable-line stdlib/require-globals, no-undef\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isBigInt64Array = require( './../../is-bigint64array' );\nvar isBigInt = require( './../../is-bigint' );\nvar GlobalBigInt64Array = require( './bigint64array.js' );\n\n\n// VARIABLES //\n\nvar MAX_FLOAT64_INTEGER = '9007199254740991'; // 2^53-1\nvar MAX_FLOAT64_INTEGER_P2 = '9007199254740993';\n\n\n// MAIN //\n\n/**\n* Tests for native `BigInt64Array` support.\n*\n* @returns {boolean} boolean indicating if an environment has `BigInt64Array` support\n*\n* @example\n* var bool = hasBigInt64ArraySupport();\n* // returns \n*/\nfunction hasBigInt64ArraySupport() {\n\tvar arr;\n\tif ( typeof GlobalBigInt64Array !== 'function' ) {\n\t\treturn false;\n\t}\n\t// Test basic support...\n\ttry {\n\t\tarr = new GlobalBigInt64Array([\n\t\t\tMAX_FLOAT64_INTEGER,\n\t\t\tMAX_FLOAT64_INTEGER_P2\n\t\t]);\n\t\treturn (\n\t\t\tisBigInt64Array( arr ) &&\n\t\t\tisBigInt( arr[ 0 ] ) &&\n\t\t\tarr[ 0 ].toString() === MAX_FLOAT64_INTEGER &&\n\t\t\tisBigInt( arr[ 1 ] ) &&\n\t\t\tarr[ 1 ].toString() === MAX_FLOAT64_INTEGER_P2\n\t\t);\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\treturn false;\n\t}\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasBigInt64ArraySupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `BigInt64Array` support.\n*\n* @module @stdlib/assert/has-bigint64array-support\n*\n* @example\n* var hasBigInt64ArraySupport = require( '@stdlib/assert/has-bigint64array-support' );\n*\n* var bool = hasBigInt64ArraySupport();\n* // returns \n*/\n\n// MODULES //\n\nvar hasBigInt64ArraySupport = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = hasBigInt64ArraySupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar nativeClass = require( '@stdlib/utils/native-class' );\n\n\n// VARIABLES //\n\nvar hasBigUint64Array = ( typeof BigUint64Array === 'function' ); // eslint-disable-line stdlib/require-globals\n\n\n// MAIN //\n\n/**\n* Tests if a value is a BigUint64Array.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether the value is a BigUint64Array\n*\n* @example\n* var value = new BigUint64Array( 2 );\n* var bool = isBigUint64Array( value );\n* // returns true\n*\n* @example\n* var bool = isBigUint64Array( [] );\n* // returns false\n*\n* @example\n* var bool = isBigUint64Array( 123 );\n* // returns false\n*/\nfunction isBigUint64Array( value ) {\n\treturn (\n\t\t( hasBigUint64Array && value instanceof BigUint64Array ) || // eslint-disable-line stdlib/require-globals, no-undef\n\t\tnativeClass( value ) === '[object BigUint64Array]'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isBigUint64Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a BigUint64Array.\n*\n* @module @stdlib/assert/is-biguint64array\n*\n* @example\n* var isBigUint64Array = require( '@stdlib/assert/is-biguint64array' );\n*\n* var value = new BigUint64Array( 2 );\n* var bool = isBigUint64Array( value );\n* // returns true\n*\n* bool = isBigUint64Array( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isBigUint64Array = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = isBigUint64Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\nvar main = ( typeof BigUint64Array === 'function' ) ? BigUint64Array : null; // eslint-disable-line stdlib/require-globals, no-undef\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isBigUint64Array = require( './../../is-biguint64array' );\nvar isBigInt = require( './../../is-bigint' );\nvar GlobalBigUint64Array = require( './biguint64array.js' );\n\n\n// VARIABLES //\n\nvar MAX_SIGNED_INT64 = '9223372036854775807'; // 2**63 - 1\nvar MAX_SIGNED_INT64_P2 = '9223372036854775809';\n\n\n// MAIN //\n\n/**\n* Tests for native `BigUint64Array` support.\n*\n* @returns {boolean} boolean indicating if an environment has `BigUint64Array` support\n*\n* @example\n* var bool = hasBigUint64ArraySupport();\n* // returns \n*/\nfunction hasBigUint64ArraySupport() {\n\tvar arr;\n\tif ( typeof GlobalBigUint64Array !== 'function' ) {\n\t\treturn false;\n\t}\n\t// Test basic support...\n\ttry {\n\t\tarr = new GlobalBigUint64Array([\n\t\t\tMAX_SIGNED_INT64,\n\t\t\tMAX_SIGNED_INT64_P2\n\t\t]);\n\t\treturn (\n\t\t\tisBigUint64Array( arr ) &&\n\t\t\tisBigInt( arr[ 0 ] ) &&\n\t\t\tarr[ 0 ].toString() === MAX_SIGNED_INT64 &&\n\t\t\tisBigInt( arr[ 1 ] ) &&\n\t\t\tarr[ 1 ].toString() === MAX_SIGNED_INT64_P2\n\t\t);\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\treturn false;\n\t}\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasBigUint64ArraySupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `BigUint64Array` support.\n*\n* @module @stdlib/assert/has-biguint64array-support\n*\n* @example\n* var hasBigUint64ArraySupport = require( '@stdlib/assert/has-biguint64array-support' );\n*\n* var bool = hasBigUint64ArraySupport();\n* // returns \n*/\n\n// MODULES //\n\nvar hasBigUint64ArraySupport = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = hasBigUint64ArraySupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar evil = require( '@stdlib/utils/eval' );\n\n\n// MAIN //\n\n/**\n* Tests for native `class` support.\n*\n* @returns {boolean} boolean indicating if an environment has native `class` support\n*\n* @example\n* var bool = hasClassSupport();\n* if ( bool ) {\n* console.log( 'Environment has native class support.' );\n* } else {\n* console.log( 'Environment lacks native class support.' );\n* }\n*/\nfunction hasClassSupport() {\n\tvar bool;\n\ttry {\n\t\tevil( '\"use strict\"; class A{};' );\n\t\tbool = true;\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\tbool = false;\n\t}\n\treturn bool;\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasClassSupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `class` support.\n*\n* @module @stdlib/assert/has-class-support\n*\n* @example\n* var hasClassSupport = require( '@stdlib/assert/has-class-support' );\n*\n* var bool = hasClassSupport();\n* if ( bool ) {\n* console.log( 'Environment has native class support.' );\n* } else {\n* console.log( 'Environment lacks native class support.' );\n* }\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar nativeClass = require( '@stdlib/utils/native-class' );\n\n\n// VARIABLES //\n\nvar hasDataView = ( typeof DataView === 'function' ); // eslint-disable-line stdlib/require-globals\n\n\n// MAIN //\n\n/**\n* Tests if a value is a `DataView`.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a DataView\n*\n* @example\n* var ArrayBuffer = require( '@stdlib/array/buffer' );\n* var DataView = require( '@stdlib/array/dataview' );\n*\n* var bool = isDataView( new DataView( new ArrayBuffer( 10 ) ) );\n* // returns true\n*\n* @example\n* var bool = isDataView( [] );\n* // returns false\n*/\nfunction isDataView( value ) {\n\treturn (\n\t\t( hasDataView && value instanceof DataView ) || // eslint-disable-line stdlib/require-globals\n\t\tnativeClass( value ) === '[object DataView]'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isDataView;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a `DataView`.\n*\n* @module @stdlib/assert/is-dataview\n*\n* @example\n* var ArrayBuffer = require( '@stdlib/array/buffer' );\n* var DataView = require( '@stdlib/array/dataview' );\n* var isDataView = require( '@stdlib/assert/is-dataview' );\n*\n* var bool = isDataView( new DataView( new ArrayBuffer( 10 ) ) );\n* // returns true\n*\n* bool = isDataView( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\nvar main = ( typeof DataView === 'function' ) ? DataView : null; // eslint-disable-line stdlib/require-globals\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isDataView = require( './../../is-dataview' );\nvar ArrayBuffer = require( '@stdlib/array/buffer' );\nvar GlobalDataView = require( './dataview.js' );\n\n\n// MAIN //\n\n/**\n* Tests for native `DataView` support.\n*\n* @returns {boolean} boolean indicating if an environment has `DataView` support\n*\n* @example\n* var bool = hasDataViewSupport();\n* // returns \n*/\nfunction hasDataViewSupport() {\n\tvar bool;\n\tvar view;\n\tvar buf;\n\n\tif ( typeof GlobalDataView !== 'function' ) {\n\t\treturn false;\n\t}\n\t// Test basic support...\n\ttry {\n\t\tbuf = new ArrayBuffer( 24 );\n\t\tview = new GlobalDataView( buf, 8 );\n\t\tbool = ( isDataView( view ) && typeof view.getFloat64 === 'function' && typeof view.setFloat64 === 'function' );\n\t\tif ( bool ) {\n\t\t\tview.setFloat64( 0, -3.14 );\n\t\t\tview.setFloat64( 8, NaN );\n\t\t\tbool = (\n\t\t\t\tbool &&\n\t\t\t\tview.buffer === buf &&\n\t\t\t\tview.byteLength === 16 &&\n\t\t\t\tview.byteOffset === 8 &&\n\t\t\t\tview.getFloat64( 0 ) === -3.14 &&\n\t\t\t\tview.getFloat64( 8 ) !== view.getFloat64( 8 )\n\t\t\t);\n\t\t}\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\tbool = false;\n\t}\n\treturn bool;\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasDataViewSupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `DataView` support.\n*\n* @module @stdlib/assert/has-dataview-support\n*\n* @example\n* var hasDataViewSupport = require( '@stdlib/assert/has-dataview-support' );\n*\n* var bool = hasDataViewSupport();\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\nvar main = ( typeof Object.defineProperties === 'function' ) ? Object.defineProperties : null;\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar defineProperties = require( './define_properties.js' );\n\n\n// MAIN //\n\n/**\n* Tests for `Object.defineProperties` support.\n*\n* @returns {boolean} boolean indicating if an environment has `Object.defineProperties` support\n*\n* @example\n* var bool = hasDefinePropertiesSupport();\n* // returns \n*/\nfunction hasDefinePropertiesSupport() {\n\t// Test basic support...\n\ttry {\n\t\tdefineProperties( {}, {\n\t\t\t'x': {}\n\t\t});\n\t\treturn true;\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\treturn false;\n\t}\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasDefinePropertiesSupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for `Object.defineProperties` support.\n*\n* @module @stdlib/assert/has-define-properties-support\n*\n* @example\n* var hasDefinePropertiesSupport = require( '@stdlib/assert/has-define-properties-support' );\n*\n* var bool = hasDefinePropertiesSupport();\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\nvar main = ( typeof Object.defineProperty === 'function' ) ? Object.defineProperty : null;\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar defineProperty = require( './define_property.js' );\n\n\n// MAIN //\n\n/**\n* Tests for `Object.defineProperty` support.\n*\n* @returns {boolean} boolean indicating if an environment has `Object.defineProperty` support\n*\n* @example\n* var bool = hasDefinePropertySupport();\n* // returns \n*/\nfunction hasDefinePropertySupport() {\n\t// Test basic support...\n\ttry {\n\t\tdefineProperty( {}, 'x', {} );\n\t\treturn true;\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\treturn false;\n\t}\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasDefinePropertySupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for `Object.defineProperty` support.\n*\n* @module @stdlib/assert/has-define-property-support\n*\n* @example\n* var hasDefinePropertySupport = require( '@stdlib/assert/has-define-property-support' );\n*\n* var bool = hasDefinePropertySupport();\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar nativeClass = require( '@stdlib/utils/native-class' );\n\n\n// VARIABLES //\n\nvar hasFloat32Array = ( typeof Float32Array === 'function' ); // eslint-disable-line stdlib/require-globals\n\n\n// MAIN //\n\n/**\n* Tests if a value is a Float32Array.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a Float32Array\n*\n* @example\n* var bool = isFloat32Array( new Float32Array( 10 ) );\n* // returns true\n*\n* @example\n* var bool = isFloat32Array( [] );\n* // returns false\n*/\nfunction isFloat32Array( value ) {\n\treturn (\n\t\t( hasFloat32Array && value instanceof Float32Array ) || // eslint-disable-line stdlib/require-globals\n\t\tnativeClass( value ) === '[object Float32Array]'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isFloat32Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a Float32Array.\n*\n* @module @stdlib/assert/is-float32array\n*\n* @example\n* var isFloat32Array = require( '@stdlib/assert/is-float32array' );\n*\n* var bool = isFloat32Array( new Float32Array( 10 ) );\n* // returns true\n*\n* bool = isFloat32Array( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isFloat32Array = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = isFloat32Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\nvar main = ( typeof Float32Array === 'function' ) ? Float32Array : null; // eslint-disable-line stdlib/require-globals\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isFloat32Array = require( './../../is-float32array' );\nvar PINF = require( '@stdlib/constants/float64/pinf' );\nvar GlobalFloat32Array = require( './float32array.js' );\n\n\n// MAIN //\n\n/**\n* Tests for native `Float32Array` support.\n*\n* @returns {boolean} boolean indicating if an environment has `Float32Array` support\n*\n* @example\n* var bool = hasFloat32ArraySupport();\n* // returns \n*/\nfunction hasFloat32ArraySupport() {\n\tvar bool;\n\tvar arr;\n\n\tif ( typeof GlobalFloat32Array !== 'function' ) {\n\t\treturn false;\n\t}\n\t// Test basic support...\n\ttry {\n\t\tarr = new GlobalFloat32Array( [ 1.0, 3.14, -3.14, 5.0e40 ] );\n\t\tbool = (\n\t\t\tisFloat32Array( arr ) &&\n\t\t\tarr[ 0 ] === 1.0 &&\n\t\t\tarr[ 1 ] === 3.140000104904175 &&\n\t\t\tarr[ 2 ] === -3.140000104904175 &&\n\t\t\tarr[ 3 ] === PINF\n\t\t);\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\tbool = false;\n\t}\n\treturn bool;\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasFloat32ArraySupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `Float32Array` support.\n*\n* @module @stdlib/assert/has-float32array-support\n*\n* @example\n* var hasFloat32ArraySupport = require( '@stdlib/assert/has-float32array-support' );\n*\n* var bool = hasFloat32ArraySupport();\n* // returns \n*/\n\n// MODULES //\n\nvar hasFloat32ArraySupport = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = hasFloat32ArraySupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar nativeClass = require( '@stdlib/utils/native-class' );\n\n\n// VARIABLES //\n\nvar hasFloat64Array = ( typeof Float64Array === 'function' ); // eslint-disable-line stdlib/require-globals\n\n\n// MAIN //\n\n/**\n* Tests if a value is a Float64Array.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a Float64Array\n*\n* @example\n* var bool = isFloat64Array( new Float64Array( 10 ) );\n* // returns true\n*\n* @example\n* var bool = isFloat64Array( [] );\n* // returns false\n*/\nfunction isFloat64Array( value ) {\n\treturn (\n\t\t( hasFloat64Array && value instanceof Float64Array ) || // eslint-disable-line stdlib/require-globals\n\t\tnativeClass( value ) === '[object Float64Array]'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isFloat64Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a Float64Array.\n*\n* @module @stdlib/assert/is-float64array\n*\n* @example\n* var isFloat64Array = require( '@stdlib/assert/is-float64array' );\n*\n* var bool = isFloat64Array( new Float64Array( 10 ) );\n* // returns true\n*\n* bool = isFloat64Array( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isFloat64Array = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = isFloat64Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\nvar main = ( typeof Float64Array === 'function' ) ? Float64Array : null; // eslint-disable-line stdlib/require-globals\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isFloat64Array = require( './../../is-float64array' );\nvar GlobalFloat64Array = require( './float64array.js' );\n\n\n// MAIN //\n\n/**\n* Tests for native `Float64Array` support.\n*\n* @returns {boolean} boolean indicating if an environment has `Float64Array` support\n*\n* @example\n* var bool = hasFloat64ArraySupport();\n* // returns \n*/\nfunction hasFloat64ArraySupport() {\n\tvar bool;\n\tvar arr;\n\n\tif ( typeof GlobalFloat64Array !== 'function' ) {\n\t\treturn false;\n\t}\n\t// Test basic support...\n\ttry {\n\t\tarr = new GlobalFloat64Array( [ 1.0, 3.14, -3.14, NaN ] );\n\t\tbool = (\n\t\t\tisFloat64Array( arr ) &&\n\t\t\tarr[ 0 ] === 1.0 &&\n\t\t\tarr[ 1 ] === 3.14 &&\n\t\t\tarr[ 2 ] === -3.14 &&\n\t\t\tarr[ 3 ] !== arr[ 3 ]\n\t\t);\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\tbool = false;\n\t}\n\treturn bool;\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasFloat64ArraySupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `Float64Array` support.\n*\n* @module @stdlib/assert/has-float64array-support\n*\n* @example\n* var hasFloat64ArraySupport = require( '@stdlib/assert/has-float64array-support' );\n*\n* var bool = hasFloat64ArraySupport();\n* // returns \n*/\n\n// MODULES //\n\nvar hasFloat64ArraySupport = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = hasFloat64ArraySupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Dummy function.\n*\n* @private\n*/\nfunction foo() {\n\t// No-op...\n}\n\n\n// EXPORTS //\n\nmodule.exports = foo;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar foo = require( './foo.js' );\n\n\n// MAIN //\n\n/**\n* Tests for native function `name` support.\n*\n* @returns {boolean} boolean indicating if an environment has function `name` support\n*\n* @example\n* var bool = hasFunctionNameSupport();\n* // returns \n*/\nfunction hasFunctionNameSupport() {\n\treturn ( foo.name === 'foo' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasFunctionNameSupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native function `name` support.\n*\n* @module @stdlib/assert/has-function-name-support\n*\n* @example\n* var hasFunctionNameSupport = require( '@stdlib/assert/has-function-name-support' );\n*\n* var bool = hasFunctionNameSupport();\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar evil = require( '@stdlib/utils/eval' );\n\n\n// MAIN //\n\n/**\n* Tests for native `function*()` support.\n*\n* @returns {boolean} boolean indicating if an environment has native `function*()` support\n*\n* @example\n* var bool = hasGeneratorSupport();\n* // returns \n*/\nfunction hasGeneratorSupport() {\n\tvar bool;\n\ttry {\n\t\tevil( '\"use strict\"; (function* () {})' );\n\t\tbool = true;\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\tbool = false;\n\t}\n\treturn bool;\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasGeneratorSupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `function*()` support.\n*\n* @module @stdlib/assert/has-generator-support\n*\n* @example\n* var hasGeneratorSupport = require( '@stdlib/assert/has-generator-support' );\n*\n* var bool = hasGeneratorSupport();\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2019 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\n/**\n* Tests for `globalThis` support.\n*\n* @returns {boolean} boolean indicating if an environment has `globalThis` support\n*\n* @example\n* var bool = hasGlobalThisSupport();\n* // returns \n*/\nfunction hasGlobalThisSupport() {\n\treturn (\n\t\ttypeof globalThis === 'object' &&\n\t\ttypeof globalThis.setTimeout === 'function' // eslint-disable-line no-undef\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasGlobalThisSupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2019 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for `globalThis` support.\n*\n* @module @stdlib/assert/has-globalthis-support\n*\n* @example\n* var hasGlobalThisSupport = require( '@stdlib/assert/has-globalthis-support' );\n*\n* var bool = hasGlobalThisSupport();\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar nativeClass = require( '@stdlib/utils/native-class' );\n\n\n// VARIABLES //\n\nvar hasInt8Array = ( typeof Int8Array === 'function' ); // eslint-disable-line stdlib/require-globals\n\n\n// MAIN //\n\n/**\n* Tests if a value is an Int8Array.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is an Int8Array\n*\n* @example\n* var bool = isInt8Array( new Int8Array( 10 ) );\n* // returns true\n*\n* @example\n* var bool = isInt8Array( [] );\n* // returns false\n*/\nfunction isInt8Array( value ) {\n\treturn (\n\t\t( hasInt8Array && value instanceof Int8Array ) || // eslint-disable-line stdlib/require-globals\n\t\tnativeClass( value ) === '[object Int8Array]'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isInt8Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an Int8Array.\n*\n* @module @stdlib/assert/is-int8array\n*\n* @example\n* var isInt8Array = require( '@stdlib/assert/is-int8array' );\n*\n* var bool = isInt8Array( new Int8Array( 10 ) );\n* // returns true\n*\n* bool = isInt8Array( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isInt8Array = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = isInt8Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\nvar main = ( typeof Int8Array === 'function' ) ? Int8Array : null; // eslint-disable-line stdlib/require-globals\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInt8Array = require( './../../is-int8array' );\nvar INT8_MAX = require( '@stdlib/constants/int8/max' );\nvar INT8_MIN = require( '@stdlib/constants/int8/min' );\nvar GlobalInt8Array = require( './int8array.js' );\n\n\n// MAIN //\n\n/**\n* Tests for native `Int8Array` support.\n*\n* @returns {boolean} boolean indicating if an environment has `Int8Array` support\n*\n* @example\n* var bool = hasInt8ArraySupport();\n* // returns \n*/\nfunction hasInt8ArraySupport() {\n\tvar bool;\n\tvar arr;\n\n\tif ( typeof GlobalInt8Array !== 'function' ) {\n\t\treturn false;\n\t}\n\t// Test basic support...\n\ttry {\n\t\tarr = new GlobalInt8Array( [ 1, 3.14, -3.14, INT8_MAX+1 ] );\n\t\tbool = (\n\t\t\tisInt8Array( arr ) &&\n\t\t\tarr[ 0 ] === 1 &&\n\t\t\tarr[ 1 ] === 3 && // truncation\n\t\t\tarr[ 2 ] === -3 && // truncation\n\t\t\tarr[ 3 ] === INT8_MIN // wrap around\n\t\t);\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\tbool = false;\n\t}\n\treturn bool;\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasInt8ArraySupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `Int8Array` support.\n*\n* @module @stdlib/assert/has-int8array-support\n*\n* @example\n* var hasInt8ArraySupport = require( '@stdlib/assert/has-int8array-support' );\n*\n* var bool = hasInt8ArraySupport();\n* // returns \n*/\n\n// MODULES //\n\nvar hasInt8ArraySupport = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = hasInt8ArraySupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar nativeClass = require( '@stdlib/utils/native-class' );\n\n\n// VARIABLES //\n\nvar hasInt16Array = ( typeof Int16Array === 'function' ); // eslint-disable-line stdlib/require-globals\n\n\n// MAIN //\n\n/**\n* Tests if a value is an Int16Array.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is an Int16Array\n*\n* @example\n* var bool = isInt16Array( new Int16Array( 10 ) );\n* // returns true\n*\n* @example\n* var bool = isInt16Array( [] );\n* // returns false\n*/\nfunction isInt16Array( value ) {\n\treturn (\n\t\t( hasInt16Array && value instanceof Int16Array ) || // eslint-disable-line stdlib/require-globals\n\t\tnativeClass( value ) === '[object Int16Array]'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isInt16Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an Int16Array.\n*\n* @module @stdlib/assert/is-int16array\n*\n* @example\n* var isInt16Array = require( '@stdlib/assert/is-int16array' );\n*\n* var bool = isInt16Array( new Int16Array( 10 ) );\n* // returns true\n*\n* bool = isInt16Array( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isInt16Array = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = isInt16Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\nvar main = ( typeof Int16Array === 'function' ) ? Int16Array : null; // eslint-disable-line stdlib/require-globals\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInt16Array = require( './../../is-int16array' );\nvar INT16_MAX = require( '@stdlib/constants/int16/max' );\nvar INT16_MIN = require( '@stdlib/constants/int16/min' );\nvar GlobalInt16Array = require( './int16array.js' );\n\n\n// MAIN //\n\n/**\n* Tests for native `Int16Array` support.\n*\n* @returns {boolean} boolean indicating if an environment has `Int16Array` support\n*\n* @example\n* var bool = hasInt16ArraySupport();\n* // returns \n*/\nfunction hasInt16ArraySupport() {\n\tvar bool;\n\tvar arr;\n\n\tif ( typeof GlobalInt16Array !== 'function' ) {\n\t\treturn false;\n\t}\n\t// Test basic support...\n\ttry {\n\t\tarr = new GlobalInt16Array( [ 1, 3.14, -3.14, INT16_MAX+1 ] );\n\t\tbool = (\n\t\t\tisInt16Array( arr ) &&\n\t\t\tarr[ 0 ] === 1 &&\n\t\t\tarr[ 1 ] === 3 && // truncation\n\t\t\tarr[ 2 ] === -3 && // truncation\n\t\t\tarr[ 3 ] === INT16_MIN // wrap around\n\t\t);\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\tbool = false;\n\t}\n\treturn bool;\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasInt16ArraySupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `Int16Array` support.\n*\n* @module @stdlib/assert/has-int16array-support\n*\n* @example\n* var hasInt16ArraySupport = require( '@stdlib/assert/has-int16array-support' );\n*\n* var bool = hasInt16ArraySupport();\n* // returns \n*/\n\n// MODULES //\n\nvar hasInt16ArraySupport = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = hasInt16ArraySupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar nativeClass = require( '@stdlib/utils/native-class' );\n\n\n// VARIABLES //\n\nvar hasInt32Array = ( typeof Int32Array === 'function' ); // eslint-disable-line stdlib/require-globals\n\n\n// MAIN //\n\n/**\n* Tests if a value is an Int32Array.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is an Int32Array\n*\n* @example\n* var bool = isInt32Array( new Int32Array( 10 ) );\n* // returns true\n*\n* @example\n* var bool = isInt32Array( [] );\n* // returns false\n*/\nfunction isInt32Array( value ) {\n\treturn (\n\t\t( hasInt32Array && value instanceof Int32Array ) || // eslint-disable-line stdlib/require-globals\n\t\tnativeClass( value ) === '[object Int32Array]'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isInt32Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an Int32Array.\n*\n* @module @stdlib/assert/is-int32array\n*\n* @example\n* var isInt32Array = require( '@stdlib/assert/is-int32array' );\n*\n* var bool = isInt32Array( new Int32Array( 10 ) );\n* // returns true\n*\n* bool = isInt32Array( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isInt32Array = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = isInt32Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\nvar main = ( typeof Int32Array === 'function' ) ? Int32Array : null; // eslint-disable-line stdlib/require-globals\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInt32Array = require( './../../is-int32array' );\nvar INT32_MAX = require( '@stdlib/constants/int32/max' );\nvar INT32_MIN = require( '@stdlib/constants/int32/min' );\nvar GlobalInt32Array = require( './int32array.js' );\n\n\n// MAIN //\n\n/**\n* Tests for native `Int32Array` support.\n*\n* @returns {boolean} boolean indicating if an environment has `Int32Array` support\n*\n* @example\n* var bool = hasInt32ArraySupport();\n* // returns \n*/\nfunction hasInt32ArraySupport() {\n\tvar bool;\n\tvar arr;\n\n\tif ( typeof GlobalInt32Array !== 'function' ) {\n\t\treturn false;\n\t}\n\t// Test basic support...\n\ttry {\n\t\tarr = new GlobalInt32Array( [ 1, 3.14, -3.14, INT32_MAX+1 ] );\n\t\tbool = (\n\t\t\tisInt32Array( arr ) &&\n\t\t\tarr[ 0 ] === 1 &&\n\t\t\tarr[ 1 ] === 3 && // truncation\n\t\t\tarr[ 2 ] === -3 && // truncation\n\t\t\tarr[ 3 ] === INT32_MIN // wrap around\n\t\t);\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\tbool = false;\n\t}\n\treturn bool;\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasInt32ArraySupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `Int32Array` support.\n*\n* @module @stdlib/assert/has-int32array-support\n*\n* @example\n* var hasInt32ArraySupport = require( '@stdlib/assert/has-int32array-support' );\n*\n* var bool = hasInt32ArraySupport();\n* // returns \n*/\n\n// MODULES //\n\nvar hasInt32ArraySupport = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = hasInt32ArraySupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar hasOwnProp = require( './../../has-own-property' );\nvar Symbol = require( '@stdlib/symbol/ctor' );\n\n\n// MAIN //\n\n/**\n* Tests for native `Symbol.iterator` support.\n*\n* @returns {boolean} boolean indicating if an environment has `Symbol.iterator` support\n*\n* @example\n* var bool = hasIteratorSymbolSupport();\n* // returns \n*/\nfunction hasIteratorSymbolSupport() {\n\treturn (\n\t\ttypeof Symbol === 'function' &&\n\t\ttypeof Symbol( 'foo' ) === 'symbol' &&\n\t\thasOwnProp( Symbol, 'iterator' ) &&\n\t\ttypeof Symbol.iterator === 'symbol'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasIteratorSymbolSupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `Symbol.iterator` support.\n*\n* @module @stdlib/assert/has-iterator-symbol-support\n*\n* @example\n* var hasIteratorSymbolSupport = require( '@stdlib/assert/has-iterator-symbol-support' );\n*\n* var bool = hasIteratorSymbolSupport();\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\nvar main = ( typeof Map === 'function' ) ? Map : null;\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar GlobalMap = require( './map.js' );\n\n\n// MAIN //\n\n/**\n* Tests for native `Map` support.\n*\n* @returns {boolean} boolean indicating if an environment has `Map` support\n*\n* @example\n* var bool = hasMapSupport();\n* // returns \n*/\nfunction hasMapSupport() {\n\tvar bool;\n\tvar key;\n\tvar map;\n\n\tif ( typeof GlobalMap !== 'function' ) {\n\t\treturn false;\n\t}\n\t// Test basic support...\n\ttry {\n\t\tkey = {};\n\t\tmap = new GlobalMap();\n\t\tmap.set( key, 'beep' );\n\t\tbool = (\n\t\t\tmap.has( key ) &&\n\t\t\tmap.get( key ) === 'beep'\n\t\t);\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\tbool = false;\n\t}\n\treturn bool;\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasMapSupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `Map` support.\n*\n* @module @stdlib/assert/has-map-support\n*\n* @example\n* var hasMapSupport = require( '@stdlib/assert/has-map-support' );\n*\n* var bool = hasMapSupport();\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\nvar main = ( typeof Buffer === 'function' ) ? Buffer : null; // eslint-disable-line stdlib/require-globals\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isBuffer = require( './../../is-buffer' );\nvar GlobalBuffer = require( './buffer.js' );\n\n\n// MAIN //\n\n/**\n* Tests for native `Buffer` support.\n*\n* @returns {boolean} boolean indicating if an environment has `Buffer` support\n*\n* @example\n* var bool = hasNodeBufferSupport();\n* // returns \n*/\nfunction hasNodeBufferSupport() {\n\tvar bool;\n\tvar b;\n\n\tif ( typeof GlobalBuffer !== 'function' ) {\n\t\treturn false;\n\t}\n\t// Test basic support...\n\ttry {\n\t\tif ( typeof GlobalBuffer.from === 'function' ) {\n\t\t\tb = GlobalBuffer.from( [ 1, 2, 3, 4 ] );\n\t\t} else {\n\t\t\tb = new GlobalBuffer( [ 1, 2, 3, 4 ] ); // Note: this is deprecated behavior starting in Node v6 (see https://nodejs.org/api/buffer.html#buffer_new_buffer_array)\n\t\t}\n\t\tbool = (\n\t\t\tisBuffer( b ) &&\n\t\t\tb[ 0 ] === 1 &&\n\t\t\tb[ 1 ] === 2 &&\n\t\t\tb[ 2 ] === 3 &&\n\t\t\tb[ 3 ] === 4\n\t\t);\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\tbool = false;\n\t}\n\treturn bool;\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasNodeBufferSupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `Buffer` support.\n*\n* @module @stdlib/assert/has-node-buffer-support\n*\n* @example\n* var hasNodeBufferSupport = require( '@stdlib/assert/has-node-buffer-support' );\n*\n* var bool = hasNodeBufferSupport();\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar evil = require( '@stdlib/utils/eval' );\n\n\n// MAIN //\n\n/**\n* Tests for native `Proxy` support.\n*\n* @returns {boolean} boolean indicating if an environment has native `Proxy` support\n*\n* @example\n* var bool = hasProxySupport();\n* // returns \n*/\nfunction hasProxySupport() {\n\tvar bool;\n\ttry {\n\t\tevil( '\"use strict\"; var handler = { \"get\": function get( t, n ) { return t[ n ] * 100; } }; var target = { \"beep\": 3.14 }; var p = new Proxy( target, handler ); var x = p.beep; if ( x !== 314 ) { throw new Error( \"native Proxy is not supported.\" ); }' );\n\t\tbool = true;\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\tbool = false;\n\t}\n\treturn bool;\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasProxySupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `Proxy` support.\n*\n* @module @stdlib/assert/has-proxy-support\n*\n* @example\n* var hasProxySupport = require( '@stdlib/assert/has-proxy-support' );\n*\n* var bool = hasProxySupport();\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\nvar main = ( typeof Set === 'function' ) ? Set : null;\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar GlobalSet = require( './set.js' );\n\n\n// MAIN //\n\n/**\n* Tests for native `Set` support.\n*\n* @returns {boolean} boolean indicating if an environment has `Set` support\n*\n* @example\n* var bool = hasSetSupport();\n* // returns \n*/\nfunction hasSetSupport() {\n\tvar bool;\n\tvar val;\n\tvar set;\n\n\tif ( typeof GlobalSet !== 'function' ) {\n\t\treturn false;\n\t}\n\t// Test basic support...\n\ttry {\n\t\tval = {};\n\t\tset = new GlobalSet();\n\t\tset.add( val );\n\t\tset.add( val );\n\t\tbool = set.has( val );\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\tbool = false;\n\t}\n\treturn bool;\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasSetSupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `Set` support.\n*\n* @module @stdlib/assert/has-set-support\n*\n* @example\n* var hasSetSupport = require( '@stdlib/assert/has-set-support' );\n*\n* var bool = hasSetSupport();\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar nativeClass = require( '@stdlib/utils/native-class' );\n\n\n// VARIABLES //\n\nvar hasSharedArrayBuffer = ( typeof SharedArrayBuffer === 'function' ); // eslint-disable-line stdlib/require-globals\n\n\n// MAIN //\n\n/**\n* Tests if a value is a `SharedArrayBuffer`.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a `SharedArrayBuffer`\n*\n* @example\n* var SharedArrayBuffer = require( '@stdlib/array/shared-buffer' );\n*\n* try {\n* var bool = isSharedArrayBuffer( new SharedArrayBuffer( 10 ) );\n* // returns true\n* } catch ( err ) {\n* console.log( 'Environment does not support SharedArrayBuffers.' );\n* }\n*\n* @example\n* var bool = isSharedArrayBuffer( [] );\n* // returns false\n*/\nfunction isSharedArrayBuffer( value ) {\n\treturn (\n\t\t( hasSharedArrayBuffer && value instanceof SharedArrayBuffer ) || // eslint-disable-line stdlib/require-globals, no-undef\n\t\tnativeClass( value ) === '[object SharedArrayBuffer]'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSharedArrayBuffer;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a `SharedArrayBuffer`.\n*\n* @module @stdlib/assert/is-sharedarraybuffer\n*\n* @example\n* var SharedArrayBuffer = require( '@stdlib/array/shared-buffer' );\n* var isSharedArrayBuffer = require( '@stdlib/assert/is-sharedarraybuffer' );\n*\n* var bool;\n* try {\n* bool = isSharedArrayBuffer( new SharedArrayBuffer( 10 ) );\n* // returns true\n* } catch ( err ) {\n* console.log( 'Environment does not support SharedArrayBuffers.' );\n* }\n* bool = isSharedArrayBuffer( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\nvar main = ( typeof SharedArrayBuffer === 'function' ) ? SharedArrayBuffer : null; // eslint-disable-line no-undef, stdlib/require-globals\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isSharedArrayBuffer = require( './../../is-sharedarraybuffer' );\nvar GlobalSharedArrayBuffer = require( './sharedarraybuffer.js' );\n\n\n// MAIN //\n\n/**\n* Tests for native `SharedArrayBuffer` support.\n*\n* @returns {boolean} boolean indicating if an environment has `SharedArrayBuffer` support\n*\n* @example\n* var bool = hasSharedArrayBufferSupport();\n* // returns \n*/\nfunction hasSharedArrayBufferSupport() { // eslint-disable-line id-length\n\tvar bool;\n\tvar b1;\n\tvar b2;\n\n\tif ( typeof GlobalSharedArrayBuffer !== 'function' ) {\n\t\treturn false;\n\t}\n\t// Test basic support...\n\ttry {\n\t\tb1 = new GlobalSharedArrayBuffer( 16 );\n\t\tb2 = b1.slice( 4, 8 );\n\t\tbool = (\n\t\t\tisSharedArrayBuffer( b1 ) &&\n\t\t\tisSharedArrayBuffer( b2 ) &&\n\t\t\tb1.byteLength === 16 &&\n\t\t\tb2.byteLength === 4\n\t\t);\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\tbool = false;\n\t}\n\treturn bool;\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasSharedArrayBufferSupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `SharedArrayBuffer` support.\n*\n* @module @stdlib/assert/has-sharedarraybuffer-support\n*\n* @example\n* var hasSharedArrayBufferSupport = require( '@stdlib/assert/has-sharedarraybuffer-support' );\n*\n* var bool = hasSharedArrayBufferSupport();\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar nativeClass = require( '@stdlib/utils/native-class' );\n\n\n// VARIABLES //\n\nvar hasUint8Array = ( typeof Uint8Array === 'function' ); // eslint-disable-line stdlib/require-globals\n\n\n// MAIN //\n\n/**\n* Tests if a value is a Uint8Array.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a Uint8Array\n*\n* @example\n* var bool = isUint8Array( new Uint8Array( 10 ) );\n* // returns true\n*\n* @example\n* var bool = isUint8Array( [] );\n* // returns false\n*/\nfunction isUint8Array( value ) {\n\treturn (\n\t\t( hasUint8Array && value instanceof Uint8Array ) || // eslint-disable-line stdlib/require-globals\n\t\tnativeClass( value ) === '[object Uint8Array]'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isUint8Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a Uint8Array.\n*\n* @module @stdlib/assert/is-uint8array\n*\n* @example\n* var isUint8Array = require( '@stdlib/assert/is-uint8array' );\n*\n* var bool = isUint8Array( new Uint8Array( 10 ) );\n* // returns true\n*\n* bool = isUint8Array( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isUint8Array = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = isUint8Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\nvar main = ( typeof Uint8Array === 'function' ) ? Uint8Array : null; // eslint-disable-line stdlib/require-globals\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isUint8Array = require( './../../is-uint8array' );\nvar UINT8_MAX = require( '@stdlib/constants/uint8/max' );\nvar GlobalUint8Array = require( './uint8array.js' );\n\n\n// MAIN //\n\n/**\n* Tests for native `Uint8Array` support.\n*\n* @returns {boolean} boolean indicating if an environment has `Uint8Array` support\n*\n* @example\n* var bool = hasUint8ArraySupport();\n* // returns \n*/\nfunction hasUint8ArraySupport() {\n\tvar bool;\n\tvar arr;\n\n\tif ( typeof GlobalUint8Array !== 'function' ) {\n\t\treturn false;\n\t}\n\t// Test basic support...\n\ttry {\n\t\tarr = [ 1, 3.14, -3.14, UINT8_MAX+1, UINT8_MAX+2 ];\n\t\tarr = new GlobalUint8Array( arr );\n\t\tbool = (\n\t\t\tisUint8Array( arr ) &&\n\t\t\tarr[ 0 ] === 1 &&\n\t\t\tarr[ 1 ] === 3 && // truncation\n\t\t\tarr[ 2 ] === UINT8_MAX-2 && // truncation and wrap around\n\t\t\tarr[ 3 ] === 0 && // wrap around\n\t\t\tarr[ 4 ] === 1 // wrap around\n\t\t);\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\tbool = false;\n\t}\n\treturn bool;\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasUint8ArraySupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `Uint8Array` support.\n*\n* @module @stdlib/assert/has-uint8array-support\n*\n* @example\n* var hasUint8ArraySupport = require( '@stdlib/assert/has-uint8array-support' );\n*\n* var bool = hasUint8ArraySupport();\n* // returns \n*/\n\n// MODULES //\n\nvar hasUint8ArraySupport = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = hasUint8ArraySupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar nativeClass = require( '@stdlib/utils/native-class' );\n\n\n// VARIABLES //\n\nvar hasUint8ClampedArray = ( typeof Uint8ClampedArray === 'function' ); // eslint-disable-line stdlib/require-globals\n\n\n// MAIN //\n\n/**\n* Tests if a value is a Uint8ClampedArray.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a Uint8ClampedArray\n*\n* @example\n* var bool = isUint8ClampedArray( new Uint8ClampedArray( 10 ) );\n* // returns true\n*\n* @example\n* var bool = isUint8ClampedArray( [] );\n* // returns false\n*/\nfunction isUint8ClampedArray( value ) {\n\treturn (\n\t\t( hasUint8ClampedArray && value instanceof Uint8ClampedArray ) || // eslint-disable-line stdlib/require-globals\n\t\tnativeClass( value ) === '[object Uint8ClampedArray]'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isUint8ClampedArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a Uint8ClampedArray.\n*\n* @module @stdlib/assert/is-uint8clampedarray\n*\n* @example\n* var isUint8ClampedArray = require( '@stdlib/assert/is-uint8clampedarray' );\n*\n* var bool = isUint8ClampedArray( new Uint8ClampedArray( 10 ) );\n* // returns true\n*\n* bool = isUint8ClampedArray( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isUint8ClampedArray = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = isUint8ClampedArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\nvar main = ( typeof Uint8ClampedArray === 'function' ) ? Uint8ClampedArray : null; // eslint-disable-line stdlib/require-globals\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isUint8ClampedArray = require( './../../is-uint8clampedarray' );\nvar GlobalUint8ClampedArray = require( './uint8clampedarray.js' );\n\n\n// MAIN //\n\n/**\n* Tests for native `Uint8ClampedArray` support.\n*\n* @returns {boolean} boolean indicating if an environment has `Uint8ClampedArray` support\n*\n* @example\n* var bool = hasUint8ClampedArraySupport();\n* // returns \n*/\nfunction hasUint8ClampedArraySupport() { // eslint-disable-line id-length\n\tvar bool;\n\tvar arr;\n\n\tif ( typeof GlobalUint8ClampedArray !== 'function' ) {\n\t\treturn false;\n\t}\n\t// Test basic support...\n\ttry {\n\t\tarr = new GlobalUint8ClampedArray( [ -1, 0, 1, 3.14, 4.99, 255, 256 ] );\n\t\tbool = (\n\t\t\tisUint8ClampedArray( arr ) &&\n\t\t\tarr[ 0 ] === 0 && // clamped\n\t\t\tarr[ 1 ] === 0 &&\n\t\t\tarr[ 2 ] === 1 &&\n\t\t\tarr[ 3 ] === 3 && // round to nearest\n\t\t\tarr[ 4 ] === 5 && // round to nearest\n\t\t\tarr[ 5 ] === 255 &&\n\t\t\tarr[ 6 ] === 255 // clamped\n\t\t);\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\tbool = false;\n\t}\n\treturn bool;\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasUint8ClampedArraySupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `Uint8ClampedArray` support.\n*\n* @module @stdlib/assert/has-uint8clampedarray-support\n*\n* @example\n* var hasUint8ClampedArraySupport = require( '@stdlib/assert/has-uint8clampedarray-support' );\n*\n* var bool = hasUint8ClampedArraySupport();\n* // returns \n*/\n\n// MODULES //\n\nvar hasUint8ClampedArraySupport = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = hasUint8ClampedArraySupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar nativeClass = require( '@stdlib/utils/native-class' );\n\n\n// VARIABLES //\n\nvar hasUint16Array = ( typeof Uint16Array === 'function' ); // eslint-disable-line stdlib/require-globals\n\n\n// MAIN //\n\n/**\n* Tests if a value is a Uint16Array.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a Uint16Array\n*\n* @example\n* var bool = isUint16Array( new Uint16Array( 10 ) );\n* // returns true\n*\n* @example\n* var bool = isUint16Array( [] );\n* // returns false\n*/\nfunction isUint16Array( value ) {\n\treturn (\n\t\t( hasUint16Array && value instanceof Uint16Array ) || // eslint-disable-line stdlib/require-globals\n\t\tnativeClass( value ) === '[object Uint16Array]'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isUint16Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a Uint16Array.\n*\n* @module @stdlib/assert/is-uint16array\n*\n* @example\n* var isUint16Array = require( '@stdlib/assert/is-uint16array' );\n*\n* var bool = isUint16Array( new Uint16Array( 10 ) );\n* // returns true\n*\n* bool = isUint16Array( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isUint16Array = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = isUint16Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\nvar main = ( typeof Uint16Array === 'function' ) ? Uint16Array : null; // eslint-disable-line stdlib/require-globals\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isUint16Array = require( './../../is-uint16array' );\nvar UINT16_MAX = require( '@stdlib/constants/uint16/max' );\nvar GlobalUint16Array = require( './uint16array.js' );\n\n\n// MAIN //\n\n/**\n* Tests for native `Uint16Array` support.\n*\n* @returns {boolean} boolean indicating if an environment has `Uint16Array` support\n*\n* @example\n* var bool = hasUint16ArraySupport();\n* // returns \n*/\nfunction hasUint16ArraySupport() {\n\tvar bool;\n\tvar arr;\n\n\tif ( typeof GlobalUint16Array !== 'function' ) {\n\t\treturn false;\n\t}\n\t// Test basic support...\n\ttry {\n\t\tarr = [ 1, 3.14, -3.14, UINT16_MAX+1, UINT16_MAX+2 ];\n\t\tarr = new GlobalUint16Array( arr );\n\t\tbool = (\n\t\t\tisUint16Array( arr ) &&\n\t\t\tarr[ 0 ] === 1 &&\n\t\t\tarr[ 1 ] === 3 && // truncation\n\t\t\tarr[ 2 ] === UINT16_MAX-2 && // truncation and wrap around\n\t\t\tarr[ 3 ] === 0 && // wrap around\n\t\t\tarr[ 4 ] === 1 // wrap around\n\t\t);\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\tbool = false;\n\t}\n\treturn bool;\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasUint16ArraySupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `Uint16Array` support.\n*\n* @module @stdlib/assert/has-uint16array-support\n*\n* @example\n* var hasUint16ArraySupport = require( '@stdlib/assert/has-uint16array-support' );\n*\n* var bool = hasUint16ArraySupport();\n* // returns \n*/\n\n// MODULES //\n\nvar hasUint16ArraySupport = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = hasUint16ArraySupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar nativeClass = require( '@stdlib/utils/native-class' );\n\n\n// VARIABLES //\n\nvar hasUint32Array = ( typeof Uint32Array === 'function' ); // eslint-disable-line stdlib/require-globals\n\n\n// MAIN //\n\n/**\n* Tests if a value is a Uint32Array.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a Uint32Array\n*\n* @example\n* var bool = isUint32Array( new Uint32Array( 10 ) );\n* // returns true\n*\n* @example\n* var bool = isUint32Array( [] );\n* // returns false\n*/\nfunction isUint32Array( value ) {\n\treturn (\n\t\t( hasUint32Array && value instanceof Uint32Array ) || // eslint-disable-line stdlib/require-globals\n\t\tnativeClass( value ) === '[object Uint32Array]'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isUint32Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a Uint32Array.\n*\n* @module @stdlib/assert/is-uint32array\n*\n* @example\n* var isUint32Array = require( '@stdlib/assert/is-uint32array' );\n*\n* var bool = isUint32Array( new Uint32Array( 10 ) );\n* // returns true\n*\n* bool = isUint32Array( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isUint32Array = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = isUint32Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\nvar main = ( typeof Uint32Array === 'function' ) ? Uint32Array : null; // eslint-disable-line stdlib/require-globals\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isUint32Array = require( './../../is-uint32array' );\nvar UINT32_MAX = require( '@stdlib/constants/uint32/max' );\nvar GlobalUint32Array = require( './uint32array.js' );\n\n\n// MAIN //\n\n/**\n* Tests for native `Uint32Array` support.\n*\n* @returns {boolean} boolean indicating if an environment has `Uint32Array` support\n*\n* @example\n* var bool = hasUint32ArraySupport();\n* // returns \n*/\nfunction hasUint32ArraySupport() {\n\tvar bool;\n\tvar arr;\n\n\tif ( typeof GlobalUint32Array !== 'function' ) {\n\t\treturn false;\n\t}\n\t// Test basic support...\n\ttry {\n\t\tarr = [ 1, 3.14, -3.14, UINT32_MAX+1, UINT32_MAX+2 ];\n\t\tarr = new GlobalUint32Array( arr );\n\t\tbool = (\n\t\t\tisUint32Array( arr ) &&\n\t\t\tarr[ 0 ] === 1 &&\n\t\t\tarr[ 1 ] === 3 && // truncation\n\t\t\tarr[ 2 ] === UINT32_MAX-2 && // truncation and wrap around\n\t\t\tarr[ 3 ] === 0 && // wrap around\n\t\t\tarr[ 4 ] === 1 // wrap around\n\t\t);\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\tbool = false;\n\t}\n\treturn bool;\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasUint32ArraySupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `Uint32Array` support.\n*\n* @module @stdlib/assert/has-uint32array-support\n*\n* @example\n* var hasUint32ArraySupport = require( '@stdlib/assert/has-uint32array-support' );\n*\n* var bool = hasUint32ArraySupport();\n* // returns \n*/\n\n// MODULES //\n\nvar hasUint32ArraySupport = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = hasUint32ArraySupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInteger = require( './../../is-integer' ).isPrimitive;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number primitive having a nonnegative integer value.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number primitive having a nonnegative integer value\n*\n* @example\n* var bool = isNonNegativeInteger( 3.0 );\n* // returns true\n*\n* @example\n* var bool = isNonNegativeInteger( new Number( 3.0 ) );\n* // returns false\n*/\nfunction isNonNegativeInteger( value ) {\n\treturn (\n\t\tisInteger( value ) &&\n\t\tvalue >= 0\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNonNegativeInteger;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInteger = require( './../../is-integer' ).isObject;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number object having a nonnegative integer value.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number object having a nonnegative integer value\n*\n* @example\n* var bool = isNonNegativeInteger( 3.0 );\n* // returns false\n*\n* @example\n* var bool = isNonNegativeInteger( new Number( 3.0 ) );\n* // returns true\n*/\nfunction isNonNegativeInteger( value ) {\n\treturn (\n\t\tisInteger( value ) &&\n\t\tvalue.valueOf() >= 0\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNonNegativeInteger;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a nonnegative integer.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a nonnegative integer\n*\n* @example\n* var bool = isNonNegativeInteger( 5.0 );\n* // returns true\n*\n* @example\n* var bool = isNonNegativeInteger( new Number( 5.0 ) );\n* // returns true\n*\n* @example\n* var bool = isNonNegativeInteger( -5.0 );\n* // returns false\n*\n* @example\n* var bool = isNonNegativeInteger( 3.14 );\n* // returns false\n*\n* @example\n* var bool = isNonNegativeInteger( null );\n* // returns false\n*/\nfunction isNonNegativeInteger( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNonNegativeInteger;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a nonnegative integer.\n*\n* @module @stdlib/assert/is-nonnegative-integer\n*\n* @example\n* var isNonNegativeInteger = require( '@stdlib/assert/is-nonnegative-integer' );\n*\n* var bool = isNonNegativeInteger( 5.0 );\n* // returns true\n*\n* bool = isNonNegativeInteger( new Number( 5.0 ) );\n* // returns true\n*\n* bool = isNonNegativeInteger( -5.0 );\n* // returns false\n*\n* bool = isNonNegativeInteger( 3.14 );\n* // returns false\n*\n* bool = isNonNegativeInteger( null );\n* // returns false\n*\n* @example\n* var isNonNegativeInteger = require( '@stdlib/assert/is-nonnegative-integer' ).isPrimitive;\n*\n* var bool = isNonNegativeInteger( 3.0 );\n* // returns true\n*\n* bool = isNonNegativeInteger( new Number( 3.0 ) );\n* // returns false\n*\n* @example\n* var isNonNegativeInteger = require( '@stdlib/assert/is-nonnegative-integer' ).isObject;\n*\n* var bool = isNonNegativeInteger( 3.0 );\n* // returns false\n*\n* bool = isNonNegativeInteger( new Number( 3.0 ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\nvar isNonNegativeInteger = require( './../../is-nonnegative-integer' ).isPrimitive;\nvar format = require( '@stdlib/string/format' );\n\n\n// VARIABLES //\n\n// Range for a high surrogate\nvar OxD800 = 0xD800|0; // 55296\nvar OxDBFF = 0xDBFF|0; // 56319\n\n// Range for a low surrogate\nvar OxDC00 = 0xDC00|0; // 56320\nvar OxDFFF = 0xDFFF|0; // 57343\n\n\n// MAIN //\n\n/**\n* Tests if a position in a string marks the start of a UTF-16 surrogate pair.\n*\n* @private\n* @param {string} str - input string\n* @param {NonNegativeInteger} pos - position in string\n* @throws {TypeError} first argument must be a string\n* @throws {TypeError} second argument must be a nonnegative integer\n* @throws {RangeError} position must be a valid index in string\n* @returns {boolean} boolean indicating whether the string has a surrogate pair at a position\n*\n* @example\n* var out = hasUTF16SurrogatePairAt( '\uD83C\uDF37', 0 );\n* // returns true\n*\n* @example\n* var out = hasUTF16SurrogatePairAt( '\uD83C\uDF37', 1 );\n* // returns false\n*/\nfunction hasUTF16SurrogatePairAt( str, pos ) {\n\tvar ch1;\n\tvar ch2;\n\tif ( !isString( str ) ) {\n\t\tthrow new TypeError( format( 'invalid argument. Must provide a string. Value: `%s`.', str ) );\n\t}\n\tif ( !isNonNegativeInteger( pos ) ) {\n\t\tthrow new TypeError( format( 'invalid argument. Must provide a valid position (i.e., a nonnegative integer). Value: `%s`.', pos ) );\n\t}\n\tif ( pos >= str.length ) {\n\t\tthrow new RangeError( format( 'invalid argument. Must provide a valid position (i.e., within string bounds). Value: `%u`.', pos ) );\n\t}\n\tch1 = str.charCodeAt( pos );\n\tch2 = str.charCodeAt( pos + 1 );\n\treturn ch1 >= OxD800 && ch1 <= OxDBFF && ch2 >= OxDC00 && ch2 <= OxDFFF;\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasUTF16SurrogatePairAt;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a position in a string marks the start of a UTF-16 surrogate pair.\n*\n* @module @stdlib/assert/has-utf16-surrogate-pair-at\n*\n* @example\n* var hasUTF16SurrogatePairAt = require( '@stdlib/assert/has-utf16-surrogate-pair-at' );\n*\n* var bool = hasUTF16SurrogatePairAt( '\uD83C\uDF37', 0 );\n* // returns true\n*\n* bool = hasUTF16SurrogatePairAt( '\uD83C\uDF37', 1 );\n* // returns false\n*/\n\n// MODULES //\n\nvar hasUTF16SurrogatePairAt = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = hasUTF16SurrogatePairAt;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\n/**\n* Tests for native WebAssembly support.\n*\n* @returns {boolean} boolean indicating if an environment has native WebAssembly support\n*\n* @example\n* var bool = hasWebAssemblySupport();\n* // returns \n*/\nfunction hasWebAssemblySupport() {\n\treturn ( typeof WebAssembly === 'object' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasWebAssemblySupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native WebAssembly support.\n*\n* @module @stdlib/assert/has-wasm-support\n*\n* @example\n* var hasWebAssemblySupport = require( '@stdlib/assert/has-wasm-support' );\n*\n* var bool = hasWebAssemblySupport();\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\nvar main = ( typeof WeakMap === 'function' ) ? WeakMap : null;\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar GlobalWeakMap = require( './weakmap.js' );\n\n\n// MAIN //\n\n/**\n* Tests for native `WeakMap` support.\n*\n* @returns {boolean} boolean indicating if an environment has `WeakMap` support\n*\n* @example\n* var bool = hasWeakMapSupport();\n* // returns \n*/\nfunction hasWeakMapSupport() {\n\tvar bool;\n\tvar key;\n\tvar wm;\n\n\tif ( typeof GlobalWeakMap !== 'function' ) {\n\t\treturn false;\n\t}\n\t// Test basic support...\n\ttry {\n\t\tkey = {};\n\t\twm = new GlobalWeakMap();\n\t\twm.set( key, 'beep' );\n\t\tbool = (\n\t\t\twm.has( key ) &&\n\t\t\twm.get( key ) === 'beep'\n\t\t);\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\tbool = false;\n\t}\n\treturn bool;\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasWeakMapSupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `WeakMap` support.\n*\n* @module @stdlib/assert/has-weakmap-support\n*\n* @example\n* var hasWeakMapSupport = require( '@stdlib/assert/has-weakmap-support' );\n*\n* var bool = hasWeakMapSupport();\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\nvar main = ( typeof WeakSet === 'function' ) ? WeakSet : null;\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar GlobalWeakSet = require( './weakset.js' );\n\n\n// MAIN //\n\n/**\n* Tests for native `WeakSet` support.\n*\n* @returns {boolean} boolean indicating if an environment has `WeakSet` support\n*\n* @example\n* var bool = hasWeakSetSupport();\n* // returns \n*/\nfunction hasWeakSetSupport() {\n\tvar bool;\n\tvar val;\n\tvar ws;\n\n\tif ( typeof GlobalWeakSet !== 'function' ) {\n\t\treturn false;\n\t}\n\t// Test basic support...\n\ttry {\n\t\tval = {};\n\t\tws = new GlobalWeakSet();\n\t\tws.add( val );\n\t\tws.add( val );\n\t\tbool = ws.has( val );\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\tbool = false;\n\t}\n\treturn bool;\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasWeakSetSupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `WeakSet` support.\n*\n* @module @stdlib/assert/has-weakset-support\n*\n* @example\n* var hasWeakSetSupport = require( '@stdlib/assert/has-weakset-support' );\n*\n* var bool = hasWeakSetSupport();\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar format = require( '@stdlib/string/format' );\n\n\n// MAIN //\n\n/**\n* Tests whether a value has in its prototype chain a specified constructor as a prototype property.\n*\n* @param {*} value - value to test\n* @param {Function} constructor - constructor to test against\n* @throws {TypeError} constructor must be callable\n* @returns {boolean} boolean indicating whether a value is an instance of a provided constructor\n*\n* @example\n* var bool = instanceOf( [], Array );\n* // returns true\n*\n* @example\n* var bool = instanceOf( {}, Object ); // exception\n* // returns true\n*\n* @example\n* var bool = instanceOf( 'beep', String );\n* // returns false\n*\n* @example\n* var bool = instanceOf( null, Object );\n* // returns false\n*\n* @example\n* var bool = instanceOf( 5, Object );\n* // returns false\n*/\nfunction instanceOf( value, constructor ) {\n\t// TODO: replace with `isCallable` check\n\tif ( typeof constructor !== 'function' ) {\n\t\tthrow new TypeError( format( 'invalid argument. Second argument must be callable. Value: `%s`.', constructor ) );\n\t}\n\treturn ( value instanceof constructor );\n}\n\n\n// EXPORTS //\n\nmodule.exports = instanceOf;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether a value has in its prototype chain a specified constructor as a prototype property.\n*\n* @module @stdlib/assert/instance-of\n*\n* @example\n* var instanceOf = require( '@stdlib/assert/instance-of' );\n*\n* var bool = instanceOf( [], Array );\n* // returns true\n*\n* bool = instanceOf( {}, Object ); // exception\n* // returns true\n*\n* bool = instanceOf( 'beep', String );\n* // returns false\n*\n* bool = instanceOf( null, Object );\n* // returns false\n*\n* bool = instanceOf( 5, Object );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\n\n\n// VARIABLES //\n\n/**\n* Matches parts of a URI according to RFC 3986.\n*\n* ```text\n* : [ ? ] [ # ]\n* ```\n*\n* Regular expression: `/(?:([^:\\/?#]+):)?(?:\\/\\/([^\\/?#]*))?([^?#]*)(?:\\?[^#]*)?(?:#.*)?/`\n*\n* - `(?:([^:\\/?#]+):)`\n*\n* - match the scheme, including the `:`, but only capture the scheme name\n*\n* - `?`\n*\n* - match the scheme zero or one times\n*\n* - `(?:\\/\\/([^\\/?#]*))`\n*\n* - match the hierarchical part which is everything which is not a `/`, `#`, or `?`, but only capture whatever comes after the `//`\n*\n* - `?`\n*\n* - match the hierarchical part zero or one times\n*\n* - `([^?#]*)`\n*\n* - capture everything (the path) until meeting a `?` or `#`\n*\n* - `(?:\\?[^#]*)`\n*\n* - match, but don't capture, a query\n*\n* - `?`\n*\n* - match the query zero or one times\n*\n* - `(?:#.*)`\n*\n* - match, but don't capture, a fragment\n*\n* - `?`\n*\n* - match the fragment zero or one times\n*\n* @private\n* @constant\n* @type {RegExp}\n* @default /(?:([^:\\/?#]+):)?(?:\\/\\/([^\\/?#]*))?([^?#]*)(?:\\?[^#]*)?(?:#.*)?/\n*/\nvar RE_URI = /(?:([^:\\/?#]+):)?(?:\\/\\/([^\\/?#]*))?([^?#]*)(?:\\?[^#]*)?(?:#.*)?/; // eslint-disable-line no-useless-escape\n\n// Illegal characters (anything which is not in between the square brackets):\nvar RE_ILLEGALS = /[^a-z0-9:\\/?#\\[\\]@!$&'()*+,;=.\\-_~%]/i; // eslint-disable-line no-useless-escape\n\n// Incomplete HEX escapes:\nvar RE_HEX1 = /%[^0-9a-f]/i;\nvar RE_HEX2 = /%[0-9a-f](:?[^0-9a-f]|$)/i;\n\n// If authority is not present, path must not begin with '//'\nvar RE_PATH = /^\\/\\//;\n\n// Scheme must begin with a letter, then consist of letters, digits, '+', '.', or '-' => e.g., 'http', 'https', 'ftp'\nvar RE_SCHEME = /^[a-z][a-z0-9+\\-.]*$/;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a URI.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a URI\n*\n* @example\n* var bool = isURI( 'http://google.com' );\n* // returns true\n*\n* @example\n* var bool = isURI( 'http://localhost/' );\n* // returns true\n*\n* @example\n* var bool = isURI( 'http://example.w3.org/path%20with%20spaces.html' );\n* // returns true\n*\n* @example\n* var bool = isURI( 'http://example.w3.org/%20' );\n* // returns true\n*\n* @example\n* var bool = isURI( 'ftp://ftp.is.co.za/rfc/rfc1808.txt' );\n* // returns true\n*\n* @example\n* var bool = isURI( 'ftp://ftp.is.co.za/../../../rfc/rfc1808.txt' );\n* // returns true\n*\n* @example\n* var bool = isURI( 'http://www.ietf.org/rfc/rfc2396.txt' );\n* // returns true\n*\n* @example\n* var bool = isURI( 'ldap://[2001:db8::7]/c=GB?objectClass?one' );\n* // returns true\n*\n* @example\n* var bool = isURI( 'mailto:John.Doe@example.com' );\n* // returns true\n*\n* @example\n* var bool = isURI( 'news:comp.infosystems.www.servers.unix' );\n* // returns true\n*\n* @example\n* var bool = isURI( 'tel:+1-816-555-1212' );\n* // returns true\n*\n* @example\n* var bool = isURI( 'telnet://192.0.2.16:80/' );\n* // returns true\n*\n* @example\n* var bool = isURI( 'urn:oasis:names:specification:docbook:dtd:xml:4.1.2' );\n* // returns true\n*\n* @example\n* // No scheme:\n* var bool = isURI( '' );\n* // returns false\n*\n* @example\n* // No scheme:\n* var bool = isURI( 'foo' );\n* // returns false\n*\n* @example\n* // No scheme:\n* var bool = isURI( 'foo@bar' );\n* // returns false\n*\n* @example\n* // No scheme:\n* var bool = isURI( '://foo/' );\n* // returns false\n*\n* @example\n* // Illegal characters:\n* var bool = isURI( 'http://' );\n* // returns false\n*\n* @example\n* // Invalid path:\n* var bool = isURI( 'http:////foo.html' );\n* // returns false\n*\n* @example\n* // Incomplete hex escapes...\n* var bool = isURI( 'http://example.w3.org/%a' );\n* // returns false\n*\n* @example\n* var bool = isURI( 'http://example.w3.org/%a/foo' );\n* // returns false\n*\n* @example\n* var bool = isURI( 'http://example.w3.org/%at' );\n* // returns false\n*/\nfunction isURI( value ) {\n\tvar authority;\n\tvar scheme;\n\tvar parts;\n\tvar path;\n\n\tif ( !isString( value ) ) {\n\t\treturn false;\n\t}\n\t// Check for illegal characters:\n\tif ( RE_ILLEGALS.test( value ) ) {\n\t\treturn false;\n\t}\n\t// Check for incomplete HEX escapes:\n\tif (\n\t\tRE_HEX1.test( value ) ||\n\t\tRE_HEX2.test( value )\n\t) {\n\t\treturn false;\n\t}\n\t// Split the string into various URI components:\n\tparts = value.match( RE_URI );\n\tscheme = parts[ 1 ];\n\tauthority = parts[ 2 ];\n\tpath = parts[ 3 ];\n\n\t// Scheme is required and must be valid:\n\tif (\n\t\t!scheme ||\n\t\t!scheme.length ||\n\t\t!RE_SCHEME.test( scheme.toLowerCase() )\n\t) {\n\t\treturn false;\n\t}\n\t// If authority is not present, path must not begin with `//`:\n\tif (\n\t\t!authority &&\n\t\tRE_PATH.test( path )\n\t) {\n\t\treturn false;\n\t}\n\treturn true;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isURI;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a URI.\n*\n* @module @stdlib/assert/is-uri\n*\n* @example\n* var isURI = require( '@stdlib/assert/is-uri' );\n*\n* var bool = isURI( 'http://google.com' );\n* // returns true\n*\n* bool = isURI( 'http://localhost/' );\n* // returns true\n*\n* bool = isURI( 'http://example.w3.org/path%20with%20spaces.html' );\n* // returns true\n*\n* bool = isURI( 'http://example.w3.org/%20' );\n* // returns true\n*\n* bool = isURI( 'ftp://ftp.is.co.za/rfc/rfc1808.txt' );\n* // returns true\n*\n* bool = isURI( 'ftp://ftp.is.co.za/../../../rfc/rfc1808.txt' );\n* // returns true\n*\n* bool = isURI( 'http://www.ietf.org/rfc/rfc2396.txt' );\n* // returns true\n*\n* bool = isURI( 'ldap://[2001:db8::7]/c=GB?objectClass?one' );\n* // returns true\n*\n* bool = isURI( 'mailto:John.Doe@example.com' );\n* // returns true\n*\n* bool = isURI( 'news:comp.infosystems.www.servers.unix' );\n* // returns true\n*\n* bool = isURI( 'tel:+1-816-555-1212' );\n* // returns true\n*\n* bool = isURI( 'telnet://192.0.2.16:80/' );\n* // returns true\n*\n* bool = isURI( 'urn:oasis:names:specification:docbook:dtd:xml:4.1.2' );\n* // returns true\n*\n* // No scheme:\n* bool = isURI( '' );\n* // returns false\n*\n* // No scheme:\n* bool = isURI( 'foo' );\n* // returns false\n*\n* // No scheme:\n* bool = isURI( 'foo@bar' );\n* // returns false\n*\n* // No scheme:\n* bool = isURI( '://foo/' );\n* // returns false\n*\n* // Illegal characters:\n* bool = isURI( 'http://' );\n* // returns false\n*\n* // Invalid path:\n* bool = isURI( 'http:////foo.html' );\n* // returns false\n*\n* // Incomplete hex escapes...\n* bool = isURI( 'http://example.w3.org/%a' );\n* // returns false\n*\n* bool = isURI( 'http://example.w3.org/%a/foo' );\n* // returns false\n*\n* bool = isURI( 'http://example.w3.org/%at' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isURI = require( './../../is-uri' );\n\n\n// VARIABLES //\n\nvar RE_HTTPS = /^https?:\\/\\//;\n\n\n// MAIN //\n\n/**\n* Tests whether a value is an absolute HTTP(S) URI.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is an absolute URI\n*\n* @example\n* var bool = isAbsoluteHttpURI( 'https://example.com' );\n* // returns true\n*\n* @example\n* var bool = isAbsoluteHttpURI( 'https://example.com/docs#heading' );\n* // returns true\n*\n* @example\n* var bool = isAbsoluteHttpURI( 'ftp://example.com' );\n* // returns false\n*\n* @example\n* var bool = isAbsoluteHttpURI( '/dashboard' );\n* // returns false\n*\n* @example\n* var bool = isAbsoluteHttpURI( './png.json' );\n* // returns false\n*\n* @example\n* var bool = isAbsoluteHttpURI( null );\n* // returns false\n*/\nfunction isAbsoluteHttpURI( value ) {\n\treturn isURI( value ) && RE_HTTPS.test( value );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isAbsoluteHttpURI;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether a value is an absolute HTTP(S) URI.\n*\n* @module @stdlib/assert/is-absolute-http-uri\n*\n* @example\n* var isAbsoluteHttpURI = require( '@stdlib/assert/is-absolute-http-uri' );\n*\n* var bool = isAbsoluteHttpURI( 'http://example.com' );\n* // returns true\n*\n* bool = isAbsoluteHttpURI( './beep/boop' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Boolean indicating if the current process is running on Windows.\n*\n* @module @stdlib/assert/is-windows\n* @type {boolean}\n*\n* @example\n* var PLATFORM = require( '@stdlib/os/platform' );\n* var IS_WINDOWS = require( '@stdlib/assert/is-windows' );\n*\n* if ( IS_WINDOWS ) {\n* console.log( 'Running on Windows...' );\n* } else {\n* console.log( 'Running on %s...', PLATFORM );\n* }\n*/\n\n// MODULES //\n\nvar PLATFORM = require( '@stdlib/os/platform' );\n\n\n// MAIN //\n\n/**\n* Boolean indicating if the current process is running on Windows.\n*\n* @constant\n* @type {boolean}\n*/\nvar IS_WINDOWS = ( PLATFORM === 'win32' );\n\n\n// EXPORTS //\n\nmodule.exports = IS_WINDOWS;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a POSIX absolute path.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a POSIX absolute path\n*\n* @example\n* var bool = isAbsolutePath( '/foo/bar/baz' );\n* // returns true\n*\n* @example\n* var bool = isAbsolutePath( 'foo/bar/baz' );\n* // returns false\n*/\nfunction isAbsolutePath( value ) {\n\t// Must be string longer than `0` characters and start with a forward slash '/':\n\treturn (\n\t\tisString( value ) &&\n\t\tvalue.length > 0 &&\n\t\tvalue.charCodeAt( 0 ) === 47\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isAbsolutePath;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a Windows absolute path.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a Windows absolute path\n*\n* @example\n* var bool = isAbsolutePath( 'C:\\\\foo\\\\bar\\\\baz' );\n* // returns true\n*\n* @example\n* var bool = isAbsolutePath( 'foo\\\\bar\\\\baz' );\n* // returns false\n*/\nfunction isAbsolutePath( value ) {\n\tvar code;\n\tvar len;\n\tif ( !isString( value ) ) {\n\t\treturn false;\n\t}\n\tlen = value.length;\n\tif ( len === 0 ) {\n\t\treturn false;\n\t}\n\tcode = value.charCodeAt( 0 );\n\n\t// Check if the string begins with either a forward '/' or backward slash '\\\\':\n\tif ( code === 47 || code === 92 ) {\n\t\treturn true;\n\t}\n\t// Check for a device root (e.g., C:\\\\)...\n\tif (\n\t\t(code >= 65 && code <= 90) || // A-Z\n\t\t(code >= 97 && code <= 122) // a-z\n\t) {\n\t\t// Check if the string has a colon ':' character:\n\t\tif ( len > 2 && value.charCodeAt( 1 ) === 58 ) {\n\t\t\tcode = value.charCodeAt( 2 );\n\n\t\t\t// Check for either a forward or backward slash:\n\t\t\tif ( code === 47 || code === 92 ) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isAbsolutePath;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an absolute path.\n*\n* @module @stdlib/assert/is-absolute-path\n*\n* @example\n* var IS_WINDOWS = require( '@stdlib/assert/is-windows' );\n* var isAbsolutePath = require( '@stdlib/assert/is-absolute-path' );\n*\n* var bool;\n* if ( IS_WINDOWS ) {\n* bool = isAbsolutePath( 'C:\\\\foo\\\\bar\\\\baz' );\n* // returns true\n* } else {\n* bool = isAbsolutePath( '/foo/bar/baz' );\n* // returns true\n* }\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar IS_WINDOWS = require( './../../is-windows' );\nvar isAbsolutePathPosix = require( './posix.js' );\nvar isAbsolutePathWin32 = require( './win32.js' );\n\n\n// MAIN //\n\nvar isAbsolutePath;\nif ( IS_WINDOWS ) {\n\tisAbsolutePath = isAbsolutePathWin32;\n} else {\n\tisAbsolutePath = isAbsolutePathPosix;\n}\nsetReadOnly( isAbsolutePath, 'posix', isAbsolutePathPosix );\nsetReadOnly( isAbsolutePath, 'win32', isAbsolutePathWin32 );\n\n\n// EXPORTS //\n\nmodule.exports = isAbsolutePath;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isURI = require( './../../is-uri' );\n\n\n// MAIN //\n\n/**\n* Tests whether a value is an absolute URI.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is an absolute URI\n*\n* @example\n* var bool = isAbsoluteURI( 'https://example.com' );\n* // returns true\n*\n* @example\n* var bool = isAbsoluteURI( 'https://example.com/docs#heading' );\n* // returns true\n*\n* @example\n* var bool = isAbsoluteURI( '/dashboard' );\n* // returns false\n*\n* @example\n* var bool = isAbsoluteURI( './png.json' );\n* // returns false\n*\n* @example\n* var bool = isAbsoluteURI( null );\n* // returns false\n*/\nfunction isAbsoluteURI( value ) {\n\treturn isURI( value );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isAbsoluteURI;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether a value is an absolute URI.\n*\n* @module @stdlib/assert/is-absolute-uri\n*\n* @example\n* var isAbsoluteURI = require( '@stdlib/assert/is-absolute-uri' );\n*\n* var bool = isAbsoluteURI( 'http://example.com' );\n* // returns true\n*\n* bool = isAbsoluteURI( './beep/boop' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2022 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isCollection = require( './../../is-collection' );\nvar isFunction = require( './../../is-function' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is an array-like object supporting the accessor (get/set) protocol.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is an accessor array\n*\n* @example\n* var Complex128Array = require( '@stdlib/array/complex128' );\n*\n* var bool = isAccessorArray( new Complex128Array( 10 ) );\n* // returns true\n*\n* @example\n* var bool = isAccessorArray( [] );\n* // returns false\n*\n* @example\n* var bool = isAccessorArray( {} );\n* // returns false\n*/\nfunction isAccessorArray( value ) {\n\treturn (\n\t\tisCollection( value ) &&\n\t\tisFunction( value.get ) &&\n\t\tisFunction( value.set )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isAccessorArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2022 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array-like object supporting the accessor (get/set) protocol.\n*\n* @module @stdlib/assert/is-accessor-array\n*\n* @example\n* var Complex128Array = require( '@stdlib/array/complex128array' );\n* var isAccessorArray = require( '@stdlib/assert/is-accessor-array' );\n*\n* var bool = isAccessorArray( new Complex128Array( 10 ) );\n* // returns true\n*\n* bool = isAccessorArray( [] );\n* // returns false\n*\n* bool = isAccessorArray( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar propertyDescriptor = require( '@stdlib/utils/property-descriptor' );\n\n\n// MAIN //\n\n/**\n* Tests if an object's own property has an accessor descriptor.\n*\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object property has an accessor descriptor\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* function getter() {\n* return 'beep';\n* }\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': false,\n* 'get': getter\n* });\n*\n* var bool = isAccessorProperty( obj, 'boop' );\n* // returns false\n*\n* bool = isAccessorProperty( obj, 'beep' );\n* // returns true\n*/\nfunction isAccessorProperty( value, property ) {\n\tvar desc = propertyDescriptor( value, property );\n\treturn (\n\t\tdesc !== null &&\n\t\t(\n\t\t\ttypeof desc.get === 'function' ||\n\t\t\ttypeof desc.set === 'function'\n\t\t)\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isAccessorProperty;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object's own property has an accessor descriptor.\n*\n* @module @stdlib/assert/is-accessor-property\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n* var isAccessorProperty = require( '@stdlib/assert/is-accessor-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* function getter() {\n* return 'beep';\n* }\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': false,\n* 'get': getter\n* });\n*\n* var bool = isAccessorProperty( obj, 'boop' );\n* // returns false\n*\n* bool = isAccessorProperty( obj, 'beep' );\n* // returns true\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar propertyDescriptorIn = require( '@stdlib/utils/property-descriptor-in' );\n\n\n// MAIN //\n\n/**\n* Tests if an object's own or inherited property has an accessor descriptor.\n*\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object property has an accessor descriptor\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* function getter() {\n* return 'beep';\n* }\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': false,\n* 'get': getter\n* });\n*\n* var bool = isAccessorPropertyIn( obj, 'boop' );\n* // returns false\n*\n* bool = isAccessorPropertyIn( obj, 'beep' );\n* // returns true\n*/\nfunction isAccessorPropertyIn( value, property ) {\n\tvar desc = propertyDescriptorIn( value, property );\n\treturn (\n\t\tdesc !== null &&\n\t\t(\n\t\t\ttypeof desc.get === 'function' ||\n\t\t\ttypeof desc.set === 'function'\n\t\t)\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isAccessorPropertyIn;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object's own or inherited property has an accessor descriptor.\n*\n* @module @stdlib/assert/is-accessor-property-in\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n* var isAccessorPropertyIn = require( '@stdlib/assert/is-accessor-property-in' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* function getter() {\n* return 'beep';\n* }\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': false,\n* 'get': getter\n* });\n*\n* var bool = isAccessorPropertyIn( obj, 'boop' );\n* // returns false\n*\n* bool = isAccessorPropertyIn( obj, 'beep' );\n* // returns true\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is an alphagram.\n*\n* @param {*} x - value to test\n* @returns {boolean} boolean indicating if a value is an alphagram\n*\n* @example\n* var out = isAlphagram( 'beep' );\n* // returns true\n*\n* @example\n* var out = isAlphagram( new String( 'beep' ) );\n* // returns true\n*\n* @example\n* var out = isAlphagram( 'zba' );\n* // returns false\n*\n* @example\n* var out = isAlphagram( '' );\n* // returns false\n*\n* @example\n* var out = isAlphagram( 123 );\n* // returns false\n*/\nfunction isAlphagram( x ) {\n\tvar len;\n\tvar i;\n\n\tif ( !isString( x ) ) {\n\t\treturn false;\n\t}\n\tlen = x.length;\n\tif ( !len ) {\n\t\treturn false;\n\t}\n\tfor ( i = 1; i < len; i++ ) {\n\t\tif ( x[ i-1 ] > x[ i ] ) {\n\t\t\treturn false;\n\t\t}\n\t}\n\treturn true;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isAlphagram;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an alphagram.\n*\n* @module @stdlib/assert/is-alphagram\n*\n* @example\n* var isAlphagram = require( '@stdlib/assert/is-alphagram' );\n*\n* var out = isAlphagram( 'beep' );\n* // returns true\n*\n* out = isAlphagram( 'zba' );\n* // returns false\n*\n* out = isAlphagram( '' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\n\n\n// VARIABLES //\n\n// Character codes:\nvar ZERO = 48;\nvar NINE = 57;\nvar A = 65;\nvar Z = 90;\nvar a = 97;\nvar z = 122;\n\n\n// MAIN //\n\n/**\n* Tests whether a string contains only alphanumeric characters.\n*\n* @param {*} x - value to test\n* @returns {boolean} boolean indicating if a string contains only alphanumeric characters\n*\n* @example\n* var out = isAlphaNumeric( 'abc123def456' );\n* // returns true\n*\n* @example\n* var out = isAlphaNumeric( '0xffffff' );\n* // returns true\n*\n* @example\n* var out = isAlphaNumeric( '123' );\n* // returns true\n*\n* @example\n* var out = isAlphaNumeric( '' );\n* // returns false\n*\n* @example\n* var out = isAlphaNumeric( 123 );\n* // returns false\n*/\nfunction isAlphaNumeric( x ) {\n\tvar len;\n\tvar ch;\n\tvar i;\n\tif ( !isString( x ) ) {\n\t\treturn false;\n\t}\n\tlen = x.length;\n\tif ( len === 0 ) {\n\t\treturn false;\n\t}\n\tfor ( i = 0; i < len; i++ ) {\n\t\tch = x.charCodeAt( i );\n\t\tif (\n\t\t\t(ch < ZERO || ch > NINE) &&\n\t\t\t(ch < a || ch > z) &&\n\t\t\t(ch < A || ch > Z)\n\t\t) {\n\t\t\treturn false;\n\t\t}\n\t}\n\treturn true;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isAlphaNumeric;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether a string contains only alphanumeric characters.\n*\n* @module @stdlib/assert/is-alphanumeric\n*\n* @example\n* var isAlphaNumeric = require( '@stdlib/assert/is-alphanumeric' );\n*\n* var out = isAlphaNumeric( 'abc123a' );\n* // returns true\n*\n* out = isAlphaNumeric( '0xffffff' );\n* // returns true\n*\n* out = isAlphaNumeric( '' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar lowercase = require( '@stdlib/string/base/lowercase' );\nvar replace = require( '@stdlib/string/base/replace' );\nvar isString = require( './../../is-string' ).isPrimitive;\nvar format = require( '@stdlib/string/format' );\n\n\n// VARIABLES //\n\nvar RE_NON_ALPHANUMERIC = /[^a-z0-9]/g;\n\n\n// FUNCTIONS //\n\n/**\n* Comparator function for sorting characters in ascending order.\n*\n* @private\n* @param {string} a - character\n* @param {string} b - character\n* @returns {number} comparison value\n*/\nfunction ascending( a, b ) {\n\tif ( a < b ) {\n\t\treturn -1;\n\t}\n\tif ( a === b ) {\n\t\treturn 0;\n\t}\n\treturn 1;\n}\n\n\n// MAIN //\n\n/**\n* Tests if a value is an anagram.\n*\n* @param {string} str - comparison string\n* @param {*} x - value to test\n* @throws {TypeError} first argument must be a string\n* @returns {boolean} boolean indicating if a value is an anagram\n*\n* @example\n* var bool = isAnagram( 'I am a weakish speller', 'William Shakespeare' );\n* // returns true\n*\n* @example\n* var bool = isAnagram( 'bat', 'tabba' );\n* // returns false\n*/\nfunction isAnagram( str, x ) {\n\tif ( !isString( str ) ) {\n\t\tthrow new TypeError( format( 'invalid argument. First argument must be a string. Value: `%s`.', str ) );\n\t}\n\tif ( !isString( x ) ) {\n\t\treturn false;\n\t}\n\tstr = replace( lowercase( str ), RE_NON_ALPHANUMERIC, '' );\n\tx = replace( lowercase( x ), RE_NON_ALPHANUMERIC, '' );\n\tif ( str.length !== x.length ) {\n\t\treturn false;\n\t}\n\tstr = str.split( '' ).sort( ascending ).join( '' );\n\tx = x.split( '' ).sort( ascending ).join( '' );\n\treturn ( str === x );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isAnagram;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an anagram.\n*\n* @module @stdlib/assert/is-anagram\n*\n* @example\n* var isAnagram = require( '@stdlib/assert/is-anagram' );\n*\n* var bool = isAnagram( 'I am a weakish speller', 'William Shakespeare' );\n* // returns true\n*\n* bool = isAnagram( 'bat', 'tabba' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar nativeClass = require( '@stdlib/utils/native-class' );\n\n\n// MAIN //\n\n/**\n* Tests whether a value is an `arguments` object.\n*\n* @private\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is an `arguments` object\n*\n* @example\n* function foo() {\n* return arguments;\n* }\n*\n* var bool = isArguments( foo() );\n* // returns true\n*\n* @example\n* var bool = isArguments( [] );\n* // returns false\n*/\nfunction isArguments( value ) {\n\treturn ( nativeClass( value ) === '[object Arguments]' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isArguments;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isArguments = require( './main.js' );\n\n\n// VARIABLES //\n\nvar bool;\n\n\n// FUNCTIONS //\n\n/**\n* Detects whether an environment returns the expected internal class of the `arguments` object.\n*\n* @private\n* @returns {boolean} boolean indicating whether an environment behaves as expected\n*\n* @example\n* var bool = detect();\n* // returns \n*/\nfunction detect() {\n\treturn isArguments( arguments );\n}\n\n\n// MAIN //\n\nbool = detect();\n\n\n// EXPORTS //\n\nmodule.exports = bool;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\n/**\n* Tests if an object's own property is enumerable.\n*\n* @private\n* @name isEnumerableProperty\n* @type {Function}\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object property is enumerable\n*\n* @example\n* var beep = {\n* 'boop': true\n* };\n*\n* var bool = isEnumerableProperty( beep, 'boop' );\n* // returns true\n*\n* @example\n* var beep = {\n* 'boop': true\n* };\n*\n* var bool = isEnumerableProperty( beep, 'hasOwnProperty' );\n* // returns false\n*/\nvar isEnumerableProperty = Object.prototype.propertyIsEnumerable;\n\n\n// EXPORTS //\n\nmodule.exports = isEnumerableProperty;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isEnum = require( './native.js' );\n\n\n// VARIABLES //\n\nvar bool;\n\n\n// FUNCTIONS //\n\n/**\n* Detects whether an environment has a bug where String indices are not detected as \"enumerable\" properties. Observed in Node v0.10.\n*\n* @private\n* @returns {boolean} boolean indicating whether an environment has the bug\n*/\nfunction detect() {\n\treturn !isEnum.call( 'beep', '0' );\n}\n\n\n// MAIN //\n\nbool = detect();\n\n\n// EXPORTS //\n\nmodule.exports = bool;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' );\nvar isnan = require( './../../is-nan' ).isPrimitive;\nvar isInteger = require( './../../is-integer' ).isPrimitive;\nvar isEnum = require( './native.js' );\nvar hasStringEnumBug = require( './has_string_enumerability_bug.js' );\n\n\n// MAIN //\n\n/**\n* Tests if an object's own property is enumerable.\n*\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object property is enumerable\n*\n* @example\n* var beep = {\n* 'boop': true\n* };\n*\n* var bool = isEnumerableProperty( beep, 'boop' );\n* // returns true\n*\n* @example\n* var beep = {\n* 'boop': true\n* };\n*\n* var bool = isEnumerableProperty( beep, 'hasOwnProperty' );\n* // returns false\n*/\nfunction isEnumerableProperty( value, property ) {\n\tvar bool;\n\tif (\n\t\tvalue === void 0 ||\n\t\tvalue === null\n\t) {\n\t\treturn false;\n\t}\n\tbool = isEnum.call( value, property );\n\tif ( !bool && hasStringEnumBug && isString( value ) ) {\n\t\t// Note: we only check for indices, as properties attached to a `String` object are properly detected as enumerable above.\n\t\tproperty = +property;\n\t\treturn (\n\t\t\t!isnan( property ) &&\n\t\t\tisInteger( property ) &&\n\t\t\tproperty >= 0 &&\n\t\t\tproperty < value.length\n\t\t);\n\t}\n\treturn bool;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isEnumerableProperty;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object's own property is enumerable.\n*\n* @module @stdlib/assert/is-enumerable-property\n*\n* @example\n* var isEnumerableProperty = require( '@stdlib/assert/is-enumerable-property' );\n*\n* var beep = {\n* 'boop': true\n* };\n*\n* var bool = isEnumerableProperty( beep, 'boop' );\n* // returns true\n*\n* bool = isEnumerableProperty( beep, 'hasOwnProperty' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar hasOwnProp = require( './../../has-own-property' );\nvar isEnumerableProperty = require( './../../is-enumerable-property' );\nvar isArray = require( './../../is-array' );\nvar isInteger = require( '@stdlib/math/base/assert/is-integer' );\nvar MAX_LENGTH = require( '@stdlib/constants/uint32/max' );\n\n\n// MAIN //\n\n/**\n* Tests whether a value is an `arguments` object.\n*\n* @private\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is an `arguments` object\n*\n* @example\n* function foo() {\n* return arguments;\n* }\n*\n* var bool = isArguments( foo() );\n* // returns true\n*\n* @example\n* var bool = isArguments( [] );\n* // returns false\n*/\nfunction isArguments( value ) {\n\treturn (\n\t\tvalue !== null &&\n\t\ttypeof value === 'object' &&\n\t\t!isArray( value ) &&\n\t\ttypeof value.length === 'number' &&\n\t\tisInteger( value.length ) &&\n\t\tvalue.length >= 0 &&\n\t\tvalue.length <= MAX_LENGTH &&\n\t\thasOwnProp( value, 'callee' ) &&\n\t\t!isEnumerableProperty( value, 'callee' )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isArguments;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an `arguments` object.\n*\n* @module @stdlib/assert/is-arguments\n*\n* @example\n* var isArguments = require( '@stdlib/assert/is-arguments' );\n*\n* function foo() {\n* return arguments;\n* }\n*\n* var bool = isArguments( foo() );\n* // returns true\n*\n* bool = isArguments( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar hasArgumentsClass = require( './detect.js' );\nvar main = require( './main.js' );\nvar polyfill = require( './polyfill.js' );\n\n\n// MAIN //\n\nvar isArguments;\nif ( hasArgumentsClass ) {\n\tisArguments = main;\n} else {\n\tisArguments = polyfill;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isArguments;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar arrayfun = require( './../../tools/array-function' );\nvar isArray = require( './../../is-array' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is an array of arrays.\n*\n* @name isArrayArray\n* @type {Function}\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is an array of arrays\n*\n* @example\n* var bool = isArrayArray( [ [], [] ] );\n* // returns true\n*\n* bool = isArrayArray( [ {}, {} ] );\n* // returns false\n*\n* bool = isArrayArray( [] );\n* // returns false\n*/\nvar isArrayArray = arrayfun( isArray );\n\n\n// EXPORTS //\n\nmodule.exports = isArrayArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array of arrays.\n*\n* @module @stdlib/assert/is-array-array\n*\n* @example\n* var isArrayArray = require( '@stdlib/assert/is-array-array' );\n*\n* var bool = isArrayArray( [ [], [] ] );\n* // returns true\n*\n* bool = isArrayArray( [ {}, {} ] );\n* // returns false\n*\n* bool = isArrayArray( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInteger = require( './../../is-integer' ).isPrimitive;\nvar MAX_ARRAY_LENGTH = require( '@stdlib/constants/array/max-array-length' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a valid array length.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a valid array length\n*\n* @example\n* var bool = isArrayLength( 3 );\n* // returns true\n*\n* @example\n* var bool = isArrayLength( 3.14 );\n* // returns false\n*/\nfunction isArrayLength( value ) {\n\treturn (\n\t\tisInteger( value ) &&\n\t\tvalue >= 0 &&\n\t\tvalue <= MAX_ARRAY_LENGTH\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isArrayLength;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a valid array length.\n*\n* @module @stdlib/assert/is-array-length\n*\n* @example\n* var isArrayLength = require( '@stdlib/assert/is-array-length' );\n*\n* var bool = isArrayLength( 5 );\n* // returns true\n*\n* bool = isArrayLength( 2.0e200 );\n* // returns false\n*\n* bool = isArrayLength( -3.14 );\n* // returns false\n*\n* bool = isArrayLength( null );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInteger = require( '@stdlib/math/base/assert/is-integer' );\nvar MAX_LENGTH = require( '@stdlib/constants/array/max-array-length' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is array-like.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is array-like\n*\n* @example\n* var bool = isArrayLike( [] );\n* // returns true\n*\n* @example\n* var bool = isArrayLike( {'length':10} );\n* // returns true\n*/\nfunction isArrayLike( value ) {\n\treturn (\n\t\tvalue !== void 0 &&\n\t\tvalue !== null &&\n\t\ttypeof value !== 'function' &&\n\t\ttypeof value.length === 'number' &&\n\t\tisInteger( value.length ) &&\n\t\tvalue.length >= 0 &&\n\t\tvalue.length <= MAX_LENGTH\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isArrayLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is array-like.\n*\n* @module @stdlib/assert/is-array-like\n*\n* @example\n* var isArrayLike = require( '@stdlib/assert/is-array-like' );\n*\n* var bool = isArrayLike( [] );\n* // returns true\n*\n* bool = isArrayLike( { 'length': 10 } );\n* // returns true\n*\n* bool = isArrayLike( 'beep' );\n* // returns true\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInteger = require( '@stdlib/math/base/assert/is-integer' );\nvar MAX_LENGTH = require( '@stdlib/constants/array/max-array-length' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is an array-like object.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is an array-like object\n*\n* @example\n* var bool = isArrayLikeObject( [] );\n* // returns true\n*\n* @example\n* var bool = isArrayLikeObject( { 'length':10 } );\n* // returns true\n*\n* @example\n* var bool = isArrayLikeObject( 'beep' );\n* // returns false\n*/\nfunction isArrayLikeObject( value ) {\n\treturn (\n\t\ttypeof value === 'object' &&\n\t\tvalue !== null &&\n\t\ttypeof value.length === 'number' &&\n\t\tisInteger( value.length ) &&\n\t\tvalue.length >= 0 &&\n\t\tvalue.length <= MAX_LENGTH\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isArrayLikeObject;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array-like object.\n*\n* @module @stdlib/assert/is-array-like-object\n*\n* @example\n* var isArrayLikeObject = require( '@stdlib/assert/is-array-like-object' );\n*\n* var bool = isArrayLikeObject( [] );\n* // returns true\n*\n* bool = isArrayLikeObject( { 'length':10 } );\n* // returns true\n*\n* bool = isArrayLikeObject( 'beep' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar constantFunction = require( '@stdlib/utils/constant-function' );\n\n\n// MAIN //\n\nvar isArrayBufferView = constantFunction( false );\n\n\n// EXPORTS //\n\nmodule.exports = isArrayBufferView;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar Int8Array = require( '@stdlib/array/int8' );\nvar Uint8Array = require( '@stdlib/array/uint8' );\nvar Uint8ClampedArray = require( '@stdlib/array/uint8c' );\nvar Int16Array = require( '@stdlib/array/int16' );\nvar Uint16Array = require( '@stdlib/array/uint16' );\nvar Int32Array = require( '@stdlib/array/int32' );\nvar Uint32Array = require( '@stdlib/array/uint32' );\nvar Float32Array = require( '@stdlib/array/float32' );\nvar Float64Array = require( '@stdlib/array/float64' );\n\n\n// MAIN //\n\nvar CTORS = [\n\tFloat64Array,\n\tFloat32Array,\n\tInt32Array,\n\tUint32Array,\n\tInt16Array,\n\tUint16Array,\n\tInt8Array,\n\tUint8Array,\n\tUint8ClampedArray\n];\n\n\n// EXPORTS //\n\nmodule.exports = CTORS;\n", "[\n\t\"Int8Array\",\n\t\"Uint8Array\",\n\t\"Uint8ClampedArray\",\n\t\"Int16Array\",\n\t\"Uint16Array\",\n\t\"Int32Array\",\n\t\"Uint32Array\",\n\t\"Float32Array\",\n\t\"Float64Array\"\n]\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar ctorName = require( '@stdlib/utils/constructor-name' );\nvar fcnName = require( '@stdlib/utils/function-name' );\nvar getPrototypeOf = require( '@stdlib/utils/get-prototype-of' );\nvar hasFloat64ArraySupport = require( './../../has-float64array-support' );\nvar Float64Array = require( '@stdlib/array/float64' );\nvar CTORS = require( './ctors.js' );\nvar NAMES = require( './names.json' );\n\n\n// VARIABLES //\n\n// Abstract `TypedArray` class:\nvar TypedArray = ( hasFloat64ArraySupport() ) ? getPrototypeOf( Float64Array ) : Dummy; // eslint-disable-line max-len\n\n// Ensure abstract typed array class has expected name:\nTypedArray = ( fcnName( TypedArray ) === 'TypedArray' ) ? TypedArray : Dummy;\n\n\n// FUNCTIONS //\n\n/**\n* Dummy constructor.\n*\n* @private\n*/\nfunction Dummy() {} // eslint-disable-line no-empty-function\n\n\n// MAIN //\n\n/**\n* Tests if a value is a typed array.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a typed array\n*\n* @example\n* var Int8Array = require( '@stdlib/array/int8' );\n*\n* var bool = isTypedArray( new Int8Array( 10 ) );\n* // returns true\n*/\nfunction isTypedArray( value ) {\n\tvar v;\n\tvar i;\n\n\tif ( typeof value !== 'object' || value === null ) {\n\t\treturn false;\n\t}\n\t// Check for the abstract class...\n\tif ( value instanceof TypedArray ) {\n\t\treturn true;\n\t}\n\t// Check for typed array objects from the same realm (same Node.js `vm` or same `Window` object)...\n\tfor ( i = 0; i < CTORS.length; i++ ) {\n\t\tif ( value instanceof CTORS[ i ] ) {\n\t\t\treturn true;\n\t\t}\n\t}\n\t// Walk the prototype tree until we find an object having a desired class...\n\twhile ( value ) {\n\t\tv = ctorName( value );\n\t\tfor ( i = 0; i < NAMES.length; i++ ) {\n\t\t\tif ( NAMES[ i ] === v ) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t\tvalue = getPrototypeOf( value );\n\t}\n\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isTypedArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a typed array.\n*\n* @module @stdlib/assert/is-typed-array\n*\n* @example\n* var Int8Array = require( '@stdlib/array/int8' );\n* var isTypedArray = require( '@stdlib/assert/is-typed-array' );\n*\n* var bool = isTypedArray( new Int8Array( 10 ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isTypedArray = require( './../../is-typed-array' );\nvar isDataView = require( './../../is-dataview' );\n\n\n// MAIN //\n\n/**\n* Polyfill for determining whether an object is an array buffer view.\n*\n* ## Notes\n*\n* - This polyfill should only be used in environments which do not provide native `ArrayBuffer.isView` support.\n* - The implementation checks whether a value is a data view or typed array.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is an array buffer view\n*\n* @example\n* var Int8Array = require( '@stdlib/array/int8' );\n* var bool = isArrayBufferView( new Int8Array( 10 ) );\n* // returns true\n*\n* @example\n* var bool = isArrayBufferView( [] );\n* // returns false\n*/\nfunction isArrayBufferView( value ) {\n\treturn isTypedArray( value ) || isDataView( value );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isArrayBufferView;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar ArrayBuffer = require( '@stdlib/array/buffer' );\n\n\n// MAIN //\n\n/**\n* Determines whether an object is an array buffer view.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is an array buffer view\n*\n* @example\n* var Int8Array = require( '@stdlib/array/int8' );\n* var bool = isArrayBufferView( new Int8Array( 10 ) );\n* // returns true\n*\n* @example\n* var bool = isArrayBufferView( [] );\n* // returns false\n*/\nfunction isArrayBufferView( value ) {\n\treturn ArrayBuffer.isView( value );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isArrayBufferView;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an `ArrayBuffer` view.\n*\n* @module @stdlib/assert/is-arraybuffer-view\n*\n* @example\n* var isArrayBufferView = require( '@stdlib/assert/is-arraybuffer-view' );\n* var Int32Array = require( '@stdlib/array/int32' );\n*\n* var bool = isArrayBufferView( new Int32Array( 10 ) );\n* // returns true\n*\n* bool = isArrayBufferView( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar hasArrayBufferSupport = require( './../../has-arraybuffer-support' );\nvar isFunction = require( './../../is-function' );\nvar ArrayBuffer = require( '@stdlib/array/buffer' );\nvar noArraybuffer = require( './no_arraybuffer.js' );\nvar polyfill = require( './polyfill.js' );\nvar main = require( './main.js' );\n\n\n// MAIN //\n\nvar isArrayBufferView;\nif ( hasArrayBufferSupport() ) {\n\tif ( isFunction( ArrayBuffer.isView ) ) {\n\t\tisArrayBufferView = main;\n\t} else {\n\t\tisArrayBufferView = polyfill;\n\t}\n} else {\n\tisArrayBufferView = noArraybuffer;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isArrayBufferView;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isFunction = require( './../../is-function' );\nvar function2string = require( '@stdlib/function/to-string' );\n\n\n// VARIABLES //\n\nvar RE_ARROW_FUNCTION = /^(?:\\([^)]*\\) *|[^=]*)=>/;\n\n\n// MAIN //\n\n/**\n* Tests whether a value is an arrow function.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is an arrow function\n*\n* @example\n* var arrow = () => {};\n* var bool = isArrowFunction( arrow );\n* // returns true\n*\n* @example\n* function beep() {\n* return 'beep';\n* }\n*\n* var bool = isArrowFunction( beep );\n* // returns false\n*/\nfunction isArrowFunction( value ) {\n\tvar str;\n\tif ( !isFunction( value ) ) {\n\t\treturn false;\n\t}\n\tstr = function2string( value );\n\treturn RE_ARROW_FUNCTION.test( str );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isArrowFunction;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an arrow function.\n*\n* @module @stdlib/assert/is-arrow-function\n*\n* @example\n* var isArrowFunction = require( '@stdlib/assert/is-arrow-function' );\n*\n* var beep = () => 'beep';\n*\n* var bool = isArrowFunction( beep );\n* // returns true\n\n* function boop() {\n* return 'boop';\n* }\n*\n* bool = isArrowFunction( boop );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\n\n\n// VARIABLES //\n\nvar MAX_ASCII = 127;\n\n\n// MAIN //\n\n/**\n* Tests whether a character belongs to the ASCII character set and whether this is true for all characters in a provided string.\n*\n* @param {*} x - value to test\n* @returns {boolean} boolean indicating if a string has all ASCII characters\n*\n* @example\n* var out = isASCII( 'beep' );\n* // returns true\n*\n* @example\n* var out = isASCII( '\u00C8' );\n* // returns false\n*\n* @example\n* var out = isASCII( '' );\n* // returns false\n*\n* @example\n* var out = isASCII( 123 );\n* // returns false\n*/\nfunction isASCII( x ) {\n\tvar len;\n\tvar i;\n\tif ( !isString( x ) ) {\n\t\treturn false;\n\t}\n\tlen = x.length;\n\tif ( !len ) {\n\t\treturn false;\n\t}\n\tfor ( i = 0; i < len; i++ ) {\n\t\tif ( x.charCodeAt( i ) > MAX_ASCII ) {\n\t\t\treturn false;\n\t\t}\n\t}\n\treturn true;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isASCII;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether a character belongs to the ASCII character set and whether this is true for all characters in a provided string.\n*\n* @module @stdlib/assert/is-ascii\n*\n* @example\n* var isASCII = require( '@stdlib/assert/is-ascii' );\n*\n* var out = isASCII( 'beep' );\n* // returns true\n*\n* out = isASCII( '\u00C8' );\n* // returns false\n*\n* out = isASCII( '' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar format = require( '@stdlib/string/format' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is between two values.\n*\n* @param {*} value - value to test\n* @param {*} a - left comparison value\n* @param {*} b - right comparison value\n* @param {string} [left=\"closed\"] - indicates whether the left comparison value is inclusive\n* @param {string} [right=\"closed\"] - indicates whether the right comparison value is inclusive\n* @throws {TypeError} `left` must be a recognized string\n* @throws {TypeError} `right` must be a recognized string\n* @returns {boolean} boolean indicating whether a value is between two values\n*\n* @example\n* var bool = isBetween( 3.14, 3.0, 4.0 );\n* // returns true\n*\n* @example\n* var bool = isBetween( 4.5, 3.0, 4.0 );\n* // returns false\n*\n* @example\n* var bool = isBetween( 3.14, 3.14, 4.0 );\n* // returns true\n*\n* @example\n* var bool = isBetween( 3.14, 3.14, 4.0, 'open', 'closed' );\n* // returns false\n*\n* @example\n* var bool = isBetween( 3.14, 3.0, 3.14 );\n* // returns true\n*\n* @example\n* var bool = isBetween( 3.14, 3.0, 3.14, 'closed', 'open' );\n* // returns false\n*/\nfunction isBetween( value, a, b, left, right ) {\n\tif ( arguments.length > 3 ) {\n\t\tif ( left !== 'closed' && left !== 'open' ) {\n\t\t\tthrow new TypeError( format( 'invalid argument. Fourth argument must be one of the following: \"%s\". Value: `%s`.', [ 'closed', 'open' ].join( '\", \"' ), left ) );\n\t\t}\n\t\tif ( right !== 'closed' && right !== 'open' ) {\n\t\t\tthrow new TypeError( format( 'invalid argument. Fifth argument must be one of the following: \"%s\". Value: `%s`.', [ 'closed', 'open' ].join( '\", \"' ), right ) );\n\t\t}\n\t}\n\tif ( left === 'closed' || left === void 0 ) {\n\t\tif ( right === 'closed' || right === void 0 ) {\n\t\t\treturn ( value >= a && value <= b );\n\t\t}\n\t\treturn ( value >= a && value < b );\n\t}\n\tif ( right === 'closed' || right === void 0 ) {\n\t\treturn ( value > a && value <= b );\n\t}\n\treturn ( value > a && value < b );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isBetween;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is between two values.\n*\n* @module @stdlib/assert/is-between\n*\n* @example\n* var isBetween = require( '@stdlib/assert/is-between' );\n*\n* var bool = isBetween( 3.14, 3.0, 4.0 );\n* // returns true\n*\n* bool = isBetween( 4.5, 3.0, 4.0 );\n* // returns false\n*\n* bool = isBetween( 3.14, 3.14, 4.0 );\n* // returns true\n*\n* bool = isBetween( 3.14, 3.14, 4.0, 'open', 'closed' );\n* // returns false\n*\n* bool = isBetween( 3.14, 3.0, 3.14 );\n* // returns true\n*\n* bool = isBetween( 3.14, 3.0, 3.14, 'closed', 'open' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isCollection = require( './../../is-collection' );\nvar format = require( '@stdlib/string/format' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is an array-like object where every element is between two values.\n*\n* @param {*} value - value to test\n* @param {*} a - left comparison value\n* @param {*} b - right comparison value\n* @param {string} [left=\"closed\"] - indicates whether the left comparison value is inclusive\n* @param {string} [right=\"closed\"] - indicates whether the right comparison value is inclusive\n* @throws {TypeError} `left` must be a recognized string\n* @throws {TypeError} `right` must be a recognized string\n* @returns {boolean} boolean indicating whether a value is an array-like object where every element is between two values\n*\n* @example\n* var arr = [ 3.0, 3.14, 4.0 ];\n* var bool = isBetweenArray( arr, 3.0, 4.0 );\n* // returns true\n*\n* @example\n* var arr = [ 3.0, 3.14, 4.0 ];\n* var bool = isBetweenArray( arr, 3.14, 4.0 );\n* // returns false\n*\n* @example\n* var arr = [ 3.0, 3.14, 4.0 ];\n* var bool = isBetweenArray( arr, 3.0, 3.14 );\n* // returns false\n*\n* @example\n* var arr = [ 3.0, 3.14, 4.0 ];\n* var bool = isBetweenArray( arr, 3.0, 4.0, 'open', 'closed' );\n* // returns false\n*\n* @example\n* var arr = [ 3.0, 3.14, 4.0 ];\n* var bool = isBetweenArray( arr, 3.0, 4.0, 'closed', 'open' );\n* // returns false\n*/\nfunction isBetweenArray( value, a, b, left, right ) {\n\tvar len;\n\tvar i;\n\tif ( arguments.length > 3 ) {\n\t\tif ( left !== 'closed' && left !== 'open' ) {\n\t\t\tthrow new TypeError( format( 'invalid argument. Fourth argument must be one of the following: \"%s\". Value: `%s`.', [ 'closed', 'open' ].join( '\", \"' ), left ) );\n\t\t}\n\t\tif ( right !== 'closed' && right !== 'open' ) {\n\t\t\tthrow new TypeError( format( 'invalid argument. Fifth argument must be one of the following: \"%s\". Value: `%s`.', [ 'closed', 'open' ].join( '\", \"' ), right ) );\n\t\t}\n\t}\n\tif ( !isCollection( value ) ) {\n\t\treturn false;\n\t}\n\tlen = value.length;\n\tif ( len === 0 ) {\n\t\treturn false;\n\t}\n\tif ( left === 'closed' || left === void 0 ) {\n\t\tif ( right === 'closed' || right === void 0 ) {\n\t\t\tfor ( i = 0; i < len; i++ ) {\n\t\t\t\tif ( value[ i ] < a || value[ i ] > b ) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn true;\n\t\t}\n\t\tfor ( i = 0; i < len; i++ ) {\n\t\t\tif ( value[ i ] < a || value[ i ] >= b ) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t\treturn true;\n\t}\n\tif ( right === 'closed' || right === void 0 ) {\n\t\tfor ( i = 0; i < len; i++ ) {\n\t\t\tif ( value[ i ] <= a || value[ i ] > b ) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t\treturn true;\n\t}\n\tfor ( i = 0; i < len; i++ ) {\n\t\tif ( value[ i ] <= a || value[ i ] >= b ) {\n\t\t\treturn false;\n\t\t}\n\t}\n\treturn true;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isBetweenArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array-like object where every element is between two values.\n*\n* @module @stdlib/assert/is-between-array\n*\n* @example\n* var isBetweenArray = require( '@stdlib/assert/is-between-array' );\n*\n* var arr = [ 3.0, 3.14, 4.0 ];\n*\n* var bool = isBetweenArray( arr, 3.0, 4.0 );\n* // returns true\n*\n* bool = isBetweenArray( arr, 3.14, 4.0 );\n* // returns false\n*\n* bool = isBetweenArray( arr, 3.0, 3.14 );\n* // returns false\n*\n* bool = isBetweenArray( arr, 3.0, 4.0, 'open', 'closed' );\n* // returns false\n*\n* bool = isBetweenArray( arr, 3.0, 4.0, 'closed', 'open' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar Uint8Array = require( '@stdlib/array/uint8' );\nvar Uint16Array = require( '@stdlib/array/uint16' );\n\n\n// MAIN //\n\nvar ctors = {\n\t'uint16': Uint16Array,\n\t'uint8': Uint8Array\n};\n\n\n// EXPORTS //\n\nmodule.exports = ctors;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar ctors = require( './ctors.js' );\n\n\n// VARIABLES //\n\nvar bool;\n\n\n// FUNCTIONS //\n\n/**\n* Returns a boolean indicating if an environment is big endian.\n*\n* @private\n* @returns {boolean} boolean indicating if an environment is big endian\n*\n* @example\n* var bool = isBigEndian();\n* // returns \n*/\nfunction isBigEndian() {\n\tvar uint16view;\n\tvar uint8view;\n\n\tuint16view = new ctors[ 'uint16' ]( 1 );\n\n\t/*\n\t* Set the uint16 view to a value having distinguishable lower and higher order words.\n\t*\n\t* 4660 => 0x1234 => 0x12 0x34 => '00010010 00110100' => (0x12,0x34) == (18,52)\n\t*/\n\tuint16view[ 0 ] = 0x1234;\n\n\t// Create a uint8 view on top of the uint16 buffer:\n\tuint8view = new ctors[ 'uint8' ]( uint16view.buffer );\n\n\t// If big endian, the least significant byte will be last...\n\treturn ( uint8view[ 1 ] === 0x34 );\n}\n\n\n// MAIN //\n\nbool = isBigEndian();\n\n\n// EXPORTS //\n\nmodule.exports = bool;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Boolean indicating if an environment is big endian.\n*\n* @module @stdlib/assert/is-big-endian\n*\n* @example\n* var IS_BIG_ENDIAN = require( '@stdlib/assert/is-big-endian' );\n*\n* var bool = IS_BIG_ENDIAN;\n* // returns \n*/\n\n// MODULES //\n\nvar IS_BIG_ENDIAN = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = IS_BIG_ENDIAN;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a binary string.\n*\n* @param {*} str - value to test\n* @returns {boolean} boolean indicating if an input value is a binary string\n*\n* @example\n* var bool = isBinaryString( '1000101' );\n* // returns true\n*\n* @example\n* var bool = isBinaryString( 'beep' );\n* // returns false\n*\n* @example\n* var bool = isBinaryString( '' );\n* // returns false\n*/\nfunction isBinaryString( str ) {\n\tvar ch;\n\tvar i;\n\tif ( !isString( str ) ) {\n\t\treturn false;\n\t}\n\tif ( str.length === 0 ) {\n\t\treturn false;\n\t}\n\tfor ( i = 0; i < str.length; i++ ) {\n\t\tch = str[ i ];\n\t\tif ( ch !== '1' && ch !== '0' ) {\n\t\t\treturn false;\n\t\t}\n\t}\n\treturn true;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isBinaryString;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a binary string.\n*\n* @module @stdlib/assert/is-binary-string\n*\n* @example\n* var isBinaryString = require( '@stdlib/assert/is-binary-string' );\n*\n* var bool = isBinaryString( '1000101' );\n* // returns true\n*\n* bool = isBinaryString( 'beep' );\n* // returns false\n*\n* bool = isBinaryString( '' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2022 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\n\n\n// VARIABLES //\n\nvar RE = /^[\\u0009\\u000A\\u000B\\u000C\\u000D\\u0020\\u0085\\u00A0\\u1680\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200A\\u2028\\u2029\\u202F\\u205F\\u3000\\uFEFF]*$/;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a blank string (i.e., an empty string or a string consisting only of whitespace characters).\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if an input value is a blank string\n*\n* @example\n* var bool = isBlankString( ' ' );\n* // returns true\n*\n* @example\n* var bool = isBlankString( '' );\n* // returns true\n*\n* @example\n* var bool = isBlankString( '\\t\\t\\t' );\n* // returns true\n*\n* @example\n* var bool = isBlankString( '\\r\\n\\r\\n' );\n* // returns true\n*\n* @example\n* var bool = isBlankString( 'beep' );\n* // returns false\n*/\nfunction isBlankString( value ) {\n\tif ( !isString( value ) ) {\n\t\treturn false;\n\t}\n\treturn RE.test( value );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isBlankString;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2022 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a blank string (i.e., an empty string or a string consisting only of whitespace characters).\n*\n* @module @stdlib/assert/is-blank-string\n*\n* @example\n* var isBlankString = require( '@stdlib/assert/is-blank-string' );\n*\n* var bool = isBlankString( ' ' );\n* // returns true\n*\n* bool = isBlankString( '' );\n* // returns true\n*\n* bool = isBlankString( 'beep' );\n* // returns false\n*\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Tests if a value is a boolean primitive.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a boolean primitive\n*\n* @example\n* var bool = isBoolean( true );\n* // returns true\n*\n* @example\n* var bool = isBoolean( false );\n* // returns true\n*\n* @example\n* var Boolean = require( '@stdlib/boolean/ctor' );\n*\n* var bool = isBoolean( new Boolean( true ) );\n* // returns false\n*/\nfunction isBoolean( value ) {\n\treturn ( typeof value === 'boolean' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isBoolean;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// eslint-disable-next-line stdlib/no-redeclare\nvar toString = Boolean.prototype.toString; // non-generic\n\n\n// EXPORTS //\n\nmodule.exports = toString;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar toString = require( './tostring.js' ); // eslint-disable-line stdlib/no-redeclare\n\n\n// MAIN //\n\n/**\n* Attempts to serialize a value to a string.\n*\n* @private\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value can be serialized\n*/\nfunction test( value ) {\n\ttry {\n\t\ttoString.call( value );\n\t\treturn true;\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\treturn false;\n\t}\n}\n\n\n// EXPORTS //\n\nmodule.exports = test;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar hasToStringTag = require( './../../has-tostringtag-support' );\nvar nativeClass = require( '@stdlib/utils/native-class' );\nvar Boolean = require( '@stdlib/boolean/ctor' );\nvar test = require( './try2serialize.js' );\n\n\n// VARIABLES //\n\nvar FLG = hasToStringTag();\n\n\n// MAIN //\n\n/**\n* Tests if a value is a boolean object.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a boolean object\n*\n* @example\n* var bool = isBoolean( true );\n* // returns false\n*\n* @example\n* var Boolean = require( '@stdlib/boolean/ctor' );\n*\n* var bool = isBoolean( new Boolean( false ) );\n* // returns true\n*/\nfunction isBoolean( value ) {\n\tif ( typeof value === 'object' ) {\n\t\tif ( value instanceof Boolean ) {\n\t\t\treturn true;\n\t\t}\n\t\tif ( FLG ) {\n\t\t\treturn test( value );\n\t\t}\n\t\treturn ( nativeClass( value ) === '[object Boolean]' );\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isBoolean;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a boolean.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a boolean\n*\n* @example\n* var bool = isBoolean( false );\n* // returns true\n*\n* @example\n* var bool = isBoolean( true );\n* // returns true\n*\n* @example\n* var Boolean = require( '@stdlib/boolean/ctor' );\n*\n* var bool = isBoolean( new Boolean( false ) );\n* // returns true\n*\n* @example\n* var Boolean = require( '@stdlib/boolean/ctor' );\n*\n* var bool = isBoolean( new Boolean( true ) );\n* // returns true\n*/\nfunction isBoolean( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isBoolean;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a boolean.\n*\n* @module @stdlib/assert/is-boolean\n*\n* @example\n* var Boolean = require( '@stdlib/boolean/ctor' );\n* var isBoolean = require( '@stdlib/assert/is-boolean' );\n*\n* var bool = isBoolean( false );\n* // returns true\n*\n* bool = isBoolean( new Boolean( false ) );\n* // returns true\n*\n* @example\n* var Boolean = require( '@stdlib/boolean/ctor' );\n* var isBoolean = require( '@stdlib/assert/is-boolean' ).isPrimitive;\n*\n* var bool = isBoolean( false );\n* // returns true\n*\n* bool = isBoolean( new Boolean( true ) );\n* // returns false\n*\n* @example\n* var Boolean = require( '@stdlib/boolean/ctor' );\n* var isBoolean = require( '@stdlib/assert/is-boolean' ).isObject;\n*\n* var bool = isBoolean( true );\n* // returns false\n*\n* bool = isBoolean( new Boolean( false ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isArrayLike = require( './../../../is-array-like' );\nvar format = require( '@stdlib/string/format' );\n\n\n// MAIN //\n\n/**\n* Returns a function which tests if every element in an array-like object passes a test condition.\n*\n* @param {Function} predicate - function to apply\n* @throws {TypeError} must provide a function\n* @returns {Function} an array-like object function\n*\n* @example\n* var isOdd = require( '@stdlib/assert/is-odd' );\n*\n* var arr1 = [ 1, 3, 5, 7 ];\n* var arr2 = [ 3, 5, 8 ];\n*\n* var validate = arraylikefcn( isOdd );\n*\n* var bool = validate( arr1 );\n* // returns true\n*\n* bool = validate( arr2 );\n* // returns false\n*/\nfunction arraylikefcn( predicate ) {\n\tif ( typeof predicate !== 'function' ) {\n\t\tthrow new TypeError( format( 'invalid argument. Must provide a function. Value: `%s`.', predicate ) );\n\t}\n\treturn every;\n\n\t/**\n\t* Tests if every element in an array-like object passes a test condition.\n\t*\n\t* @private\n\t* @param {*} value - value to test\n\t* @returns {boolean} boolean indicating whether a value is an array-like object for which all elements pass a test condition\n\t*/\n\tfunction every( value ) {\n\t\tvar len;\n\t\tvar i;\n\t\tif ( !isArrayLike( value ) ) {\n\t\t\treturn false;\n\t\t}\n\t\tlen = value.length;\n\t\tif ( len === 0 ) {\n\t\t\treturn false;\n\t\t}\n\t\tfor ( i = 0; i < len; i++ ) {\n\t\t\tif ( predicate( value[ i ] ) === false ) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t\treturn true;\n\t}\n}\n\n\n// EXPORTS //\n\nmodule.exports = arraylikefcn;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Return a function which tests if every element in an array-like object passes a test condition.\n*\n* @module @stdlib/assert/tools/array-like-function\n*\n* @example\n* var isOdd = require( '@stdlib/assert/is-odd' );\n* var arraylikefcn = require( '@stdlib/assert/tools/array-like-function' );\n*\n* var arr1 = [ 1, 3, 5, 7 ];\n* var arr2 = [ 3, 5, 8 ];\n*\n* var validate = arraylikefcn( isOdd );\n*\n* var bool = validate( arr1 );\n* // returns true\n*\n* bool = validate( arr2 );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array-like object of booleans.\n*\n* @module @stdlib/assert/is-boolean-array\n*\n* @example\n* var isBooleanArray = require( '@stdlib/assert/is-boolean-array' );\n*\n* var bool = isBooleanArray( [ true, false, true ] );\n* // returns true\n*\n* bool = isBooleanArray( [ true, 'abc', false ] );\n* // returns false\n*\n* @example\n* var Boolean = require( '@stdlib/boolean/ctor' );\n* var isBooleanArray = require( '@stdlib/assert/is-boolean-array' ).primitives;\n*\n* var bool = isBooleanArray( [ true, false ] );\n* // returns true\n*\n* bool = isBooleanArray( [ false, new Boolean( true ) ] );\n* // returns false\n*\n* @example\n* var Boolean = require( '@stdlib/boolean/ctor' );\n* var isBooleanArray = require( '@stdlib/assert/is-boolean-array' ).objects;\n*\n* var bool = isBooleanArray( [ new Boolean( false ), new Boolean( true ) ] );\n* // returns true\n*\n* bool = isBooleanArray( [ new Boolean( false ), true ] );\n* // returns false\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar arrayfun = require( './../../tools/array-like-function' );\nvar isBoolean = require( './../../is-boolean' );\n\n\n// VARIABLES //\n\nvar isPrimitiveArray = arrayfun( isBoolean.isPrimitive );\nvar isObjectArray = arrayfun( isBoolean.isObject );\n\n\n// MAIN //\n\nvar isBooleanArray = arrayfun( isBoolean );\nsetReadOnly( isBooleanArray, 'primitives', isPrimitiveArray );\nsetReadOnly( isBooleanArray, 'objects', isObjectArray );\n\n\n// EXPORTS //\n\nmodule.exports = isBooleanArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Tests if a value is a symbol primitive.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a symbol primitive\n*/\nfunction isSymbol( value ) {\n\treturn ( typeof value === 'symbol' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSymbol;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/*\n* Note: we wrap `toString` to allow loading this file in non-ES2015 environments.\n*/\n\n// MAIN //\n\n/**\n* Attempts to serialize a value as a symbol.\n*\n* @private\n* @param {*} value - value to serialize\n* @returns {string} serialized value\n*/\nfunction toStr( value ) {\n\t// Non-generic:\n\treturn Symbol.prototype.toString.call( value );\n}\n\n\n// EXPORTS //\n\nmodule.exports = toStr;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar toStr = require( './tostring.js' );\n\n\n// VARIABLES //\n\nvar RE = /^Symbol\\(.*\\)$/;\n\n\n// MAIN //\n\n/**\n* Attempts to call a `Symbol` method.\n*\n* @private\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if able to call a `Symbol` method\n*/\nfunction test( value ) {\n\ttry {\n\t\treturn (\n\t\t\t// Objects created via `Object.create( null )` have no `valueOf()` method:\n\t\t\ttypeof value.valueOf() === 'symbol' &&\n\n\t\t\t// Test output of a non-generic method:\n\t\t\tRE.test( toStr( value ) )\n\t\t);\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\treturn false;\n\t}\n}\n\n\n// EXPORTS //\n\nmodule.exports = test;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar nativeClass = require( '@stdlib/utils/native-class' );\nvar test = require( './try2tostring.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a symbol object.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a symbol object\n*/\nfunction isSymbol( value ) {\n\treturn (\n\t\ttypeof value === 'object' &&\n\t\tnativeClass( value ) === '[object Symbol]' &&\n\t\ttest( value )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSymbol;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a symbol.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a symbol\n*/\nfunction isSymbol( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSymbol;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar isSymbol = require( './generic.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( isSymbol, 'isPrimitive', isPrimitive );\nsetReadOnly( isSymbol, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = isSymbol;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar constantFunction = require( '@stdlib/utils/constant-function' );\n\n\n// MAIN //\n\nvar isSymbol = constantFunction( false );\nvar isPrimitive = constantFunction( false );\nvar isObject = constantFunction( false );\n\nsetReadOnly( isSymbol, 'isPrimitive', isPrimitive );\nsetReadOnly( isSymbol, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = isSymbol;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a symbol.\n*\n* @module @stdlib/assert/is-symbol\n*\n* @example\n* var Symbol = require( '@stdlib/symbol/ctor' );\n* var isSymbol = require( '@stdlib/assert/is-symbol' );\n*\n* var bool = isSymbol( Symbol( 'beep' ) );\n* // returns true\n*\n* bool = isSymbol( Object( Symbol( 'beep' ) ) );\n* // returns true\n*\n* bool = isSymbol( {} );\n* // returns false\n*\n* @example\n* var Symbol = require( '@stdlib/symbol/ctor' );\n* var isSymbol = require( '@stdlib/assert/is-symbol' ).isPrimitive;\n*\n* var bool = isSymbol( Symbol( 'beep' ) );\n* // returns true\n*\n* bool = isSymbol( Object( Symbol( 'beep' ) ) );\n* // returns false\n*\n* bool = isSymbol( {} );\n* // returns false\n*\n* @example\n* var Symbol = require( '@stdlib/symbol/ctor' );\n* var isSymbolObject = require( '@stdlib/assert/is-symbol' ).isObject;\n*\n* var bool = isSymbolObject( Symbol( 'beep' ) );\n* // returns false\n*\n* bool = isSymbolObject( Object( Symbol( 'beep' ) ) );\n* // returns true\n*\n* bool = isSymbolObject( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar hasSymbols = require( './../../has-symbol-support' );\nvar main = require( './main.js' );\nvar polyfill = require( './polyfill.js' );\n\n\n// MAIN //\n\nvar isSymbol;\nif ( hasSymbols() ) {\n\tisSymbol = main;\n} else {\n\tisSymbol = polyfill;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSymbol;\n\n// exports: { \"isPrimitive\": \"isSymbol.isPrimitive\", \"isObject\": \"isSymbol.isObject\" }\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isBoolean = require( './../../is-boolean' ).isObject;\nvar isNumber = require( './../../is-number' ).isObject;\nvar isString = require( './../../is-string' ).isObject;\nvar isSymbol = require( './../../is-symbol' ).isObject;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a JavaScript boxed primitive.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a JavaScript boxed primitive\n*\n* @example\n* var bool = isBoxedPrimitive( new String( 'beep' ) );\n* // returns true\n*\n* @example\n* var bool = isBoxedPrimitive( new Number( 3.21 ) );\n* // returns true\n*\n* @example\n* var Symbol = require( '@stdlib/symbol/ctor' );\n* var bool = isBoxedPrimitive( Object( Symbol( 'beep' ) ) );\n* // returns true\n*\n* @example\n* var bool = isBoxedPrimitive( true );\n* // returns false\n*\n* @example\n* var bool = isBoxedPrimitive( {} );\n* // returns false\n*\n* @example\n* var Symbol = require( '@stdlib/symbol/ctor' );\n* var bool = isBoxedPrimitive( Symbol( 'beep' ) );\n* // returns false\n*/\nfunction isBoxedPrimitive( value ) {\n\tif ( typeof value !== 'object' ) {\n\t\treturn false;\n\t}\n\treturn (\n\t\tisBoolean( value ) ||\n\t\tisNumber( value ) ||\n\t\tisString( value ) ||\n\t\tisSymbol( value )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isBoxedPrimitive;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a JavaScript boxed primitive.\n*\n* @module @stdlib/assert/is-boxed-primitive\n*\n* @example\n* var Boolean = require( '@stdlib/boolean/ctor' );\n* var isBoxedPrimitive = require( '@stdlib/assert/is-boxed-primitive' );\n*\n* var bool = isBoxedPrimitive( new Boolean( true ) );\n* // returns true\n*\n* bool = isBoxedPrimitive( true );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// VARIABLES //\n\nvar toStr = Object.prototype.toString;\n\n\n// MAIN //\n\n/**\n* Returns the internal class of a provided value.\n*\n* @private\n* @param {*} value - input value\n* @returns {string} internal class\n*/\nfunction toString( value ) { // eslint-disable-line stdlib/no-redeclare\n\treturn toStr.call( value );\n}\n\n\n// EXPORTS //\n\nmodule.exports = toString;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// VARIABLES //\n\nvar Global;\n\n\n// FUNCTIONS //\n\n/**\n* Test if the global scope is bound to the \"global\" variable present in Node.js environments. When creating a new function using the `Function(){}` constructor, the execution scope aliased by the `this` variable is the global scope.\n*\n* @private\n* @returns {boolean} boolean indicating if global scope is bound to \"global\" variable\n*/\nfunction globalScope() {\n\tvar fcn = '';\n\tfcn += 'try {';\n\tfcn += 'return this === global;';\n\tfcn += '} catch ( err ) {';\n\tfcn += 'return false;';\n\tfcn += '}';\n\treturn (new Function( fcn ))(); // eslint-disable-line no-new-func, stdlib/require-globals\n}\n\n\n// MAIN //\n\nGlobal = globalScope();\n\n\n// EXPORTS //\n\nmodule.exports = Global;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar proc = require( 'process' );\nvar getGlobal = require( '@stdlib/utils/global' );\nvar nativeClass = require( '@stdlib/utils/native-class' );\nvar isObject = require( './../../is-plain-object' );\nvar isString = require( './../../is-string' ).isPrimitive;\nvar toStr = require( './to_string.js' );\nvar globalScope = require( './global_scope.js' );\n\n\n// VARIABLES //\n\nvar Global = getGlobal();\nvar RE = /node|io\\.js/;\n\n\n// MAIN //\n\n/**\n* Returns a boolean indicating if the runtime is Node.js.\n*\n* @returns {boolean} boolean indicating if runtime is Node.js\n*\n* @example\n* var bool = isNode();\n* // returns \n*/\nfunction isNode() {\n\treturn (\n\t\t// Check for presence of `global` variable:\n\t\ttypeof global === 'object' &&\n\n\t\t// Check that the `global` variable matches the determined global variable:\n\t\tglobal === Global &&\n\n\t\t// Check for a circular reference to the global variable:\n\t\tGlobal === Global.global &&\n\n\t\t// Check that the global variable has the expected internal class:\n\t\t(\n\t\t\t// Node < v7\n\t\t\tnativeClass( Global ) === '[object global]' ||\n\n\t\t\t// Node >= v7 (https://github.com/nodejs/node/issues/9274)\n\t\t\tnativeClass( Global ) === '[object Object]'\n\t\t) &&\n\n\t\t// Check that the `global` variable is equal to the global scope:\n\t\tglobalScope === true &&\n\n\t\t// Check for a `require` global variable:\n\t\ttypeof require === 'function' &&\n\n\t\t// Check for a `process` global variable:\n\t\ttypeof proc === 'object' &&\n\n\t\t// Check that the `process` global variable has the expected internal class (NOTE: we use `toStr`, rather than `nativecClass` to address changes introduced in Node >= v14.6.0; see https://github.com/stdlib-js/stdlib/issues/375):\n\t\ttoStr( proc ) === '[object process]' &&\n\n\t\t// Check for a `versions` property:\n\t\tisObject( proc.versions ) &&\n\n\t\t// Check for a `node` property:\n\t\tisString( proc.versions.node ) &&\n\n\t\t/* eslint-disable node/no-unsupported-features/es-builtins */\n\t\t(\n\t\t\t// `process.release` was added in Node v3.0.0 via io.js:\n\t\t\ttypeof proc.release === 'undefined' ||\n\n\t\t\t(\n\t\t\t\t// Check for a `release` property:\n\t\t\t\tisObject( proc.release ) &&\n\n\t\t\t\t// Check for a `name` property:\n\t\t\t\tisString( proc.release.name ) &&\n\n\t\t\t\t// Check that the release name contains either `node` or `io.js` (in Node.js/io.js, the release name is read-only):\n\t\t\t\tRE.test( proc.release.name )\n\t\t\t)\n\t\t)\n\t\t/* eslint-enable node/no-unsupported-features/es-builtins */\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNode;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Boolean indicating if the runtime is Node.js.\n*\n* @module @stdlib/assert/is-node\n*\n* @example\n* var IS_NODE = require( '@stdlib/assert/is-node' );\n*\n* var bool = IS_NODE;\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// MAIN //\n\nvar bool = main();\n\n\n// EXPORTS //\n\nmodule.exports = bool;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// VARIABLES //\n\nvar scope;\n\n\n// FUNCTIONS //\n\n/**\n* Test if the global scope is bound to the \"window\" variable present in browser environments. When creating a new function using the `Function(){}` constructor, the execution scope aliased by the `this` variable is the global scope.\n*\n* @private\n* @returns {boolean} boolean indicating if global scope is bound to \"window\" variable\n*/\nfunction globalScope() {\n\tvar fcn = '';\n\tfcn += 'try {';\n\tfcn += 'return this === window;';\n\tfcn += '} catch ( err ) {';\n\tfcn += 'return false;';\n\tfcn += '}';\n\treturn (new Function( fcn ))(); // eslint-disable-line stdlib/require-globals, no-new-func\n}\n\n\n// MAIN //\n\nscope = globalScope();\n\n\n// EXPORTS //\n\nmodule.exports = scope;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n/* global window */\n\n'use strict';\n\n// MODULES //\n\nvar getGlobal = require( '@stdlib/utils/global' );\nvar IS_NODE = require( './../../is-node' );\nvar globalScope = require( './global_scope.js' );\n\n\n// VARIABLES //\n\nvar Global = getGlobal();\n\n\n// MAIN //\n\n/**\n* Returns a boolean indicating if the runtime is a web browser.\n*\n* @returns {boolean} boolean indicating if runtime is a web browser\n*\n* @example\n* var bool = isBrowser();\n* // returns \n*/\nfunction isBrowser() {\n\treturn (\n\t\t// Check that we are not running in a Node.js runtime:\n\t\tIS_NODE === false &&\n\n\t\t// Check for presence of `window` variable:\n\t\ttypeof window === 'object' &&\n\n\t\t// Check that the `window` variable matches the determined global variable:\n\t\twindow === Global &&\n\n\t\t// Check that the `window` variable is equal to the global scope:\n\t\tglobalScope === true\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isBrowser;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Boolean indicating if the runtime is a web browser.\n*\n* @module @stdlib/assert/is-browser\n*\n* @example\n* var IS_BROWSER = require( '@stdlib/assert/is-browser' );\n*\n* var bool = IS_BROWSER;\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// MAIN //\n\nvar bool = main();\n\n\n// EXPORTS //\n\nmodule.exports = bool;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2022 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\nvar camelcase = require( '@stdlib/string/base/camelcase' );\n\n\n// MAIN //\n\n/**\n* Tests if a string is in camelcase.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a string is in camelcase\n*\n* @example\n* var bool = isCamelcase( 'beepBoop' );\n* // returns true\n*\n* @example\n* var bool = isCamelcase( 'beepBoop123' );\n* // returns true\n*\n* @example\n* var bool = isCamelcase( 'beep Boop' );\n* // returns false\n*\n* @example\n* var bool = isCamelcase( 'beep' );\n* // returns true\n*/\nfunction isCamelcase( value ) {\n\treturn (\n\t\tisString( value ) &&\n\t\tvalue === camelcase( value )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isCamelcase;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2022 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a camelcase string.\n*\n* @module @stdlib/assert/is-camelcase\n*\n* @example\n* var isCamelcase = require( '@stdlib/assert/is-camelcase' );\n*\n* var bool = isCamelcase( 'beepBoop' );\n* // returns true\n*\n* bool = isCamelcase( 'beep Boop' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar lowercase = require( '@stdlib/string/lowercase' );\nvar uppercase = require( '@stdlib/string/uppercase' );\nvar isString = require( './../../is-string' ).isPrimitive;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a string having an uppercase first character.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is a string with an uppercase first character\n*\n* @example\n* var bool = isCapitalized( 'Hello' );\n* // returns true\n*\n* @example\n* var bool = isCapitalized( 'WORLD' );\n* // returns true\n*\n* @example\n* var bool = isCapitalized( '!' );\n* // returns false\n*\n* @example\n* var bool = isCapitalized( 'salt and light' );\n* // returns false\n*/\nfunction isCapitalized( value ) {\n\tvar ch;\n\tif ( isString( value ) && value !== '' ) {\n\t\tch = value[ 0 ];\n\t\treturn ( ch === uppercase( ch ) && ch !== lowercase( ch ) );\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isCapitalized;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a string having an uppercase first character.\n*\n* @module @stdlib/assert/is-capitalized\n*\n* @example\n* var isCapitalized = require( '@stdlib/assert/is-capitalized' );\n*\n* var bool = isCapitalized( 'Hello' );\n* // returns true\n*\n* bool = isCapitalized( 'world' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar ndarray = require( '@stdlib/ndarray/base/ctor' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is ndarray-like.\n*\n* @param {*} v - value to test\n* @returns {boolean} boolean indicating if a value is ndarray-like\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n*\n* var arr = ndarray( 'generic', [ 0, 0, 0, 0 ], [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n*\n* var bool = isndarrayLike( arr );\n* // returns true\n*\n* bool = isndarrayLike( [] );\n* // returns false\n*/\nfunction isndarrayLike( v ) {\n\treturn (\n\t\tv instanceof ndarray ||\n\t\t(\n\t\t\tv !== null &&\n\t\t\ttypeof v === 'object' &&\n\t\t\ttypeof v.data === 'object' &&\n\t\t\ttypeof v.shape === 'object' &&\n\t\t\ttypeof v.strides === 'object' &&\n\t\t\ttypeof v.offset === 'number' &&\n\t\t\ttypeof v.order === 'string' &&\n\t\t\ttypeof v.ndims === 'number' &&\n\t\t\ttypeof v.dtype === 'string' &&\n\t\t\ttypeof v.length === 'number' &&\n\t\t\ttypeof v.flags === 'object' &&\n\t\t\ttypeof v.get === 'function' &&\n\t\t\ttypeof v.set === 'function'\n\t\t)\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isndarrayLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is ndarray-like.\n*\n* @module @stdlib/assert/is-ndarray-like\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n* var isndarrayLike = require( '@stdlib/assert/is-ndarray-like' );\n*\n* var arr = ndarray( 'generic', [ 0, 0, 0, 0 ], [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n* var bool = isndarrayLike( arr );\n* // returns true\n*\n* bool = isndarrayLike( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isndarrayLike = require( './../../is-ndarray-like' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a 2-dimensional ndarray-like object.\n*\n* @param {*} v - value to test\n* @returns {boolean} boolean indicating if a value is a 2-dimensional ndarray-like object\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n*\n* var arr = ndarray( 'generic', [ 0, 0, 0, 0 ], [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n*\n* var bool = isMatrixLike( arr );\n* // returns true\n*\n* bool = isMatrixLike( [] );\n* // returns false\n*/\nfunction isMatrixLike( v ) {\n\treturn (\n\t\tisndarrayLike( v ) &&\n\t\tv.ndims === 2 &&\n\t\tv.shape.length === 2 &&\n\t\tv.strides.length === 2\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isMatrixLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a 2-dimensional ndarray-like object.\n*\n* @module @stdlib/assert/is-matrix-like\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n* var isMatrixLike = require( '@stdlib/assert/is-matrix-like' );\n*\n* var arr = ndarray( 'float64', [ 0, 0, 0, 0 ], [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n*\n* var bool = isMatrixLike( arr );\n* // returns true\n*\n* bool = isMatrixLike( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isMatrixLike = require( './../../is-matrix-like' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a 2-dimensional ndarray-like object having equal dimensions.\n*\n* @param {*} v - value to test\n* @returns {boolean} boolean indicating if a value is a 2-dimensional ndarray-like object having equal dimensions\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n*\n* var arr = ndarray( 'generic', [ 0, 0, 0, 0 ], [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n* var bool = isSquareMatrix( arr );\n* // returns true\n*\n* bool = isSquareMatrix( [] );\n* // returns false\n*/\nfunction isSquareMatrix( v ) {\n\treturn (\n\t\tisMatrixLike( v ) &&\n\t\tv.shape[ 0 ] === v.shape[ 1 ]\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSquareMatrix;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a 2-dimensional ndarray-like object having equal dimensions.\n*\n* @module @stdlib/assert/is-square-matrix\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n* var isSquareMatrix = require( '@stdlib/assert/is-square-matrix' );\n*\n* var arr = ndarray( 'generic', [ 0, 0, 0, 0 ], [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n* var bool = isSquareMatrix( arr );\n* // returns true\n*\n* bool = isSquareMatrix( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isSquareMatrix = require( './../../is-square-matrix' );\nvar floor = require( '@stdlib/math/base/special/floor' );\nvar isOdd = require( '@stdlib/math/base/assert/is-odd' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a centrosymmetric matrix.\n*\n* ## Notes\n*\n* - The implementation must rely on manually checking that \\\\(M_{ij} = M_{N-i-1,N-j-1}\\\\), and, while element access is deterministic, no way exists to prevent cache misses outside of reordering the underlying matrix elements, thus incurring a larger performance penalty than just \"jumping around\" in a single pass.\n* - Worst case scenario: O(N^2).\n*\n* @param {*} v - value to test\n* @returns {boolean} boolean indicating if a value is a centrosymmetric matrix\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n*\n* var arr = ndarray( 'generic', [ 2, 1, 1, 2 ], [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n*\n* var bool = isCentrosymmetricMatrix( arr );\n* // returns true\n*\n* bool = isCentrosymmetricMatrix( [] );\n* // returns false\n*/\nfunction isCentrosymmetricMatrix( v ) {\n\tvar m1;\n\tvar M;\n\tvar N;\n\tvar n;\n\tvar i;\n\tvar j;\n\tif ( !isSquareMatrix( v ) ) {\n\t\treturn false;\n\t}\n\tM = v.shape[ 0 ];\n\tN = floor( M/2.0 ); // corresponds to a row index + 1\n\tm1 = M - 1;\n\tfor ( i = 0; i < N; i++ ) {\n\t\tn = m1 - i;\n\t\tfor ( j = 0; j < M; j++ ) {\n\t\t\tif ( v.get( i, j ) !== v.get( n, m1-j ) ) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t}\n\tif ( isOdd( M ) ) {\n\t\t// Only need to examine the first half of the row (up until the center element) due to symmetry...\n\t\tfor ( j = 0; j < N; j++ ) {\n\t\t\tif ( v.get( i, j ) !== v.get( N, m1-j ) ) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t}\n\treturn true;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isCentrosymmetricMatrix;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a centrosymmetric matrix.\n*\n* @module @stdlib/assert/is-centrosymmetric-matrix\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n* var isCentrosymmetricMatrix = require( '@stdlib/assert/is-centrosymmetric-matrix' );\n*\n* var arr = ndarray( 'generic', [ 2, 1, 1, 2 ], [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n*\n* var bool = isCentrosymmetricMatrix( arr );\n* // returns true\n*\n* bool = isCentrosymmetricMatrix( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar objectKeys = require( '@stdlib/utils/keys' );\n\n\n// FUNCTIONS //\n\n/**\n* Tests if a value is an object.\n*\n* ## Notes\n*\n* - The function excludes `null`.\n*\n* @private\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is an object\n*/\nfunction isObject( value ) {\n\tvar type = typeof value;\n\treturn ( value !== null && ( type === 'object' || type === 'function' ) );\n}\n\n/**\n* Tests if the seen array contains a search value.\n*\n* @private\n* @param {Array} seen - array of seen objects\n* @param {*} searchValue - search value\n* @returns {boolean} boolean indicating whether array contains search value\n*/\nfunction contains( seen, searchValue ) {\n\tvar i;\n\tfor ( i = 0; i < seen.length; i++ ) {\n\t\tif ( seen[ i ] === searchValue ) {\n\t\t\treturn true;\n\t\t}\n\t}\n\treturn false;\n}\n\n/**\n* Tests if an object contains a circular reference by recursively traversing object keys.\n*\n* @private\n* @param {Object} obj - object to test\n* @param {Array} seen - array of seen objects\n* @returns {boolean} boolean indicating whether object contains a circular reference\n*/\nfunction isCircObj( obj, seen ) {\n\tvar keys;\n\tvar val;\n\tvar i;\n\n\tseen.push( obj );\n\tkeys = objectKeys( obj );\n\tif ( keys.length === 0 ) {\n\t\treturn false;\n\t}\n\tfor ( i = 0; i < keys.length; i++ ) {\n\t\tval = obj[ keys[ i ] ];\n\t\tif ( isObject( val ) && ( contains( seen, val ) || isCircObj( val, seen ) ) ) { // eslint-disable-line max-len\n\t\t\treturn true;\n\t\t}\n\t}\n\tseen.pop( obj );\n\treturn false;\n}\n\n\n// MAIN //\n\n/**\n* Tests if an object-like value contains a circular reference.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is object-like and contains a circular reference\n*\n* @example\n* var obj = {\n* 'a': 'beep',\n* 'b': {\n* 'c': 'boop'\n* }\n* };\n* obj.b.self = obj;\n* var bool = isCircular( obj );\n* // returns true\n*\n* @example\n* var arr = [ 1, 2, 3 ];\n* arr.push( arr );\n* var bool = isCircular( arr );\n* // returns true\n*\n* @example\n* var bool = isCircular( {} );\n* // returns false\n*\n* @example\n* var bool = isCircular( null );\n* // returns false\n*/\nfunction isCircular( value ) {\n\tif ( !isObject( value ) ) {\n\t\treturn false;\n\t}\n\treturn isCircObj( value, [] );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isCircular;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if an object-like value contains a circular reference.\n*\n* @module @stdlib/assert/is-circular\n*\n* @example\n* var isCircular = require( '@stdlib/assert/is-circular' );\n*\n* var obj = {\n* 'a': 'beep',\n* 'b': {\n* 'c': 'boop'\n* }\n* };\n* obj.b.self = obj;\n*\n* var bool = isCircular( obj );\n* // returns true\n*\n* bool = isCircular( null );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isArray = require( './../../is-array' );\nvar isCircular = require( './../../is-circular' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is an array containing a circular reference.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is an array containing a circular reference\n*\n* @example\n* var arr = [ 1, 2, 3 ];\n* arr.push( arr );\n* var bool = isCircularArray( arr );\n* // returns true\n*\n* @example\n* var obj = {\n* 'a': 'beep',\n* 'b': {\n* 'c': 'boop'\n* }\n* };\n* obj.b.self = obj;\n* var bool = isCircularArray( obj );\n* // returns false\n*\n* @example\n* var bool = isCircularArray( [] );\n* // returns false\n*\n* @example\n* var bool = isCircularArray( null );\n* // returns false\n*/\nfunction isCircularArray( value ) {\n\tif ( !isArray( value ) ) {\n\t\treturn false;\n\t}\n\treturn isCircular( value );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isCircularArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array containing a circular reference.\n*\n* @module @stdlib/assert/is-circular-array\n*\n* @example\n* var isCircularArray = require( '@stdlib/assert/is-circular-array' );\n*\n* var arr = [ 1, 2, 3 ];\n* arr.push( arr );\n*\n* var bool = isCircularArray( arr );\n* // returns true\n*\n* bool = isCircularArray( null );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPlainObject = require( './../../is-plain-object' );\nvar isCircular = require( './../../is-circular' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a plain object containing a circular reference.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a plain object containing a circular reference\n*\n* @example\n* var obj = {\n* 'a': 'beep',\n* 'b': {\n* 'c': 'boop'\n* }\n* };\n* obj.b.self = obj;\n* var bool = isCircularPlainObject( obj );\n* // returns true\n*\n* @example\n* var arr = [ 1, 2, 3 ];\n* arr.push( arr );\n* var bool = isCircularPlainObject( arr );\n* // returns false\n*\n* @example\n* var bool = isCircularPlainObject( {} );\n* // returns false\n*\n* @example\n* var bool = isCircularPlainObject( null );\n* // returns false\n*/\nfunction isCircularPlainObject( value ) {\n\tif ( !isPlainObject( value ) ) {\n\t\treturn false;\n\t}\n\treturn isCircular( value );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isCircularPlainObject;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a plain object containing a circular reference.\n*\n* @module @stdlib/assert/is-circular-plain-object\n*\n* @example\n* var isCircular = require( '@stdlib/assert/is-circular-plain-object' );\n*\n* var obj = {\n* 'a': 'beep',\n* 'b': {\n* 'c': 'boop'\n* }\n* };\n* obj.b.self = obj;\n*\n* var bool = isCircularPlainObject( obj );\n* // returns true\n*\n* bool = isCircularPlainObject( null );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isFunction = require( './../../is-function' );\nvar function2string = require( '@stdlib/function/to-string' );\n\n\n// VARIABLES //\n\nvar RE_CLASS = /^\\s*class\\s/;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a class.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a class\n*\n* @example\n* var bool = isClass( class Person {} );\n* // returns true\n*\n* @example\n* var bool = isClass( function Person() {} );\n* // returns false\n*\n* @example\n* var bool = isClass( null );\n* // returns false\n*/\nfunction isClass( value ) {\n\tvar str;\n\tif ( !isFunction( value ) ) {\n\t\treturn false;\n\t}\n\tstr = function2string( value );\n\treturn RE_CLASS.test( str );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isClass;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a class.\n*\n* @module @stdlib/assert/is-class\n*\n* @example\n* var isClass = require( '@stdlib/assert/is-class' );\n*\n* var bool = isClass( class Person {} );\n* // returns true\n*\n* bool = isClass( function Person() {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar Complex128 = require( '@stdlib/complex/float64' );\nvar Complex64 = require( '@stdlib/complex/float32' );\nvar constructorName = require( '@stdlib/utils/constructor-name' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a 64-bit or 128-bit complex number.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a 64-bit or 128-bit complex number\n*\n* @example\n* var Complex128 = require( '@stdlib/complex/float64' );\n* var Complex64 = require( '@stdlib/complex/float32' );\n*\n* var x = new Complex128( 4.0, 2.0 );\n* var bool = isComplex( x );\n* // returns true\n*\n* x = new Complex64( 4.0, 2.0 );\n* bool = isComplex( x );\n* // returns true\n*/\nfunction isComplex( value ) {\n\tvar type;\n\tif ( value instanceof Complex128 || value instanceof Complex64 ) {\n\t\treturn true;\n\t}\n\ttype = constructorName( value );\n\treturn ( type === 'Complex64' || type === 'Complex128' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isComplex;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a 64-bit or 128-bit complex number.\n*\n* @module @stdlib/assert/is-complex\n*\n* @example\n* var Complex128 = require( '@stdlib/complex/float64' );\n* var Complex64 = require( '@stdlib/complex/float32' );\n* var isComplex = require( '@stdlib/assert/is-complex' );\n*\n* var x = new Complex128( 4.0, 2.0 );\n* var bool = isComplex( x );\n* // returns true\n*\n* x = new Complex64( 4.0, 2.0 );\n* bool = isComplex( x );\n* // returns true\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar Complex128 = require( '@stdlib/complex/float64' );\nvar Complex64 = require( '@stdlib/complex/float32' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a complex number-like object.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a complex number-like object.\n*\n* @example\n* var Complex128 = require( '@stdlib/complex/float64' );\n* var Complex64 = require( '@stdlib/complex/float32' );\n*\n* var x = new Complex128( 4.0, 2.0 );\n* var bool = isComplexLike( x );\n* // returns true\n*\n* x = new Complex64( 4.0, 2.0 );\n* bool = isComplexLike( x );\n* // returns true\n*/\nfunction isComplexLike( value ) {\n\tif ( value instanceof Complex128 || value instanceof Complex64 ) {\n\t\treturn true;\n\t}\n\treturn (\n\t\ttypeof value === 'object' &&\n\t\tvalue !== null &&\n\t\ttypeof value.re === 'number' &&\n\t\ttypeof value.im === 'number'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isComplexLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a complex number-like object.\n*\n* @module @stdlib/assert/is-complex-like\n*\n* @example\n* var Complex128 = require( '@stdlib/complex/float64' );\n* var Complex64 = require( '@stdlib/complex/float32' );\n* var isComplexLike = require( '@stdlib/assert/is-complex-like' );\n*\n* var x = new Complex128( 4.0, 2.0 );\n* var bool = isComplexLike( x );\n* // returns true\n*\n* x = new Complex64( 4.0, 2.0 );\n* bool = isComplexLike( x );\n* // returns true\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar Complex64Array = require( '@stdlib/array/complex64' );\nvar Complex128Array = require( '@stdlib/array/complex128' );\n\n\n// MAIN //\n\nvar CTORS = [\n\tComplex128Array,\n\tComplex64Array\n];\n\n\n// EXPORTS //\n\nmodule.exports = CTORS;\n", "[\n\t\"Complex64Array\",\n\t\"Complex128Array\"\n]\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar ctorName = require( '@stdlib/utils/constructor-name' );\nvar getPrototypeOf = require( '@stdlib/utils/get-prototype-of' );\nvar CTORS = require( './ctors.js' );\nvar NAMES = require( './names.json' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a complex typed array.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a complex typed array\n*\n* @example\n* var Complex128Array = require( '@stdlib/array/complex128' );\n*\n* var bool = isComplexTypedArray( new Complex128Array( 10 ) );\n* // returns true\n*/\nfunction isComplexTypedArray( value ) {\n\tvar v;\n\tvar i;\n\n\tif ( typeof value !== 'object' || value === null ) {\n\t\treturn false;\n\t}\n\t// Check for complex typed array objects from the same realm (same Node.js `vm` or same `Window` object)...\n\tfor ( i = 0; i < CTORS.length; i++ ) {\n\t\tif ( value instanceof CTORS[ i ] ) {\n\t\t\treturn true;\n\t\t}\n\t}\n\t// Walk the prototype tree until we find an object having a desired class...\n\twhile ( value ) {\n\t\tv = ctorName( value );\n\t\tfor ( i = 0; i < NAMES.length; i++ ) {\n\t\t\tif ( NAMES[ i ] === v ) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t\tvalue = getPrototypeOf( value );\n\t}\n\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isComplexTypedArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a complex typed array.\n*\n* @module @stdlib/assert/is-complex-typed-array\n*\n* @example\n* var Complex128Array = require( '@stdlib/array/complex128' );\n* var isComplexTypedArray = require( '@stdlib/assert/is-complex-typed-array' );\n*\n* var bool = isComplexTypedArray( new Complex128Array( 10 ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNonNegativeInteger = require( './../../is-nonnegative-integer' ).isPrimitive;\nvar MAX = require( '@stdlib/constants/array/max-typed-array-length' );\n\n\n// VARIABLES //\n\nvar MAX_LENGTH = MAX / 2; // every complex array element has both a real and imaginary component stored as separate numbers, so the maximum length is half that of a normal typed array\n\n\n// MAIN //\n\n/**\n* Tests if a value is complex-typed-array-like.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is complex-typed-array-like\n*\n* @example\n* var arr = {\n*\t'BYTES_PER_ELEMENT': 8,\n*\t'length': 10,\n*\t'byteOffset': 0,\n*\t'byteLength': 10,\n* 'get': function get() {},\n* 'set': function set() {}\n* };\n* var val = isComplexTypedArrayLike( arr );\n* // returns true\n*\n* @example\n* var Complex64Array = require( '@stdlib/array/complex64' );\n*\n* var val = isComplexTypedArrayLike( new Complex64Array( 4 ) );\n* // returns true\n*\n* @example\n* var val = isComplexTypedArrayLike( [] );\n* // returns false\n*\n* @example\n* var val = isComplexTypedArrayLike( {} );\n* // returns false\n*\n* @example\n* var val = isComplexTypedArrayLike( null );\n* // returns false\n*\n* @example\n* var val = isComplexTypedArrayLike( 'beep' );\n* // returns false\n*/\nfunction isComplexTypedArrayLike( value ) {\n\treturn (\n\t\tvalue !== null &&\n\t\ttypeof value === 'object' &&\n\n\t\t// Check for standard typed array properties:\n\t\tisNonNegativeInteger( value.length ) &&\n\t\tvalue.length <= MAX_LENGTH &&\n\t\ttypeof value.BYTES_PER_ELEMENT === 'number' &&\n\t\ttypeof value.byteOffset === 'number' &&\n\t\ttypeof value.byteLength === 'number' &&\n\n\t\t// Check for properties necessary for complex typed arrays:\n\t\ttypeof value.get === 'function' &&\n\t\ttypeof value.set === 'function'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isComplexTypedArrayLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is complex-typed-array-like.\n*\n* @module @stdlib/assert/is-complex-typed-array-like\n*\n* @example\n* var Complex64Array = require( '@stdlib/array/complex64' );\n* var isComplexTypedArrayLike = require( '@stdlib/assert/is-complex-typed-array-like' );\n*\n* var bool = isComplexTypedArrayLike( new Complex64Array() );\n* // returns true\n*\n* bool = isComplexTypedArrayLike({\n*\t'length': 10,\n*\t'byteOffset': 0,\n*\t'byteLength': 10,\n*\t'BYTES_PER_ELEMENT': 4,\n* 'get': function get() {},\n* 'set': function set() {}\n* });\n* // returns true\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar Complex64 = require( '@stdlib/complex/float32' );\nvar constructorName = require( '@stdlib/utils/constructor-name' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a 64-bit complex number.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a 64-bit complex number\n*\n* @example\n* var Complex64 = require( '@stdlib/complex/float32' );\n*\n* var x = new Complex64( 4.0, 2.0 );\n*\n* var bool = isComplex64( x );\n* // returns true\n*/\nfunction isComplex64( value ) {\n\treturn (\n\t\tvalue instanceof Complex64 ||\n\t\tconstructorName( value ) === 'Complex64'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isComplex64;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a 64-bit complex number.\n*\n* @module @stdlib/assert/is-complex64\n*\n* @example\n* var Complex64 = require( '@stdlib/complex/float32' );\n* var isComplex64 = require( '@stdlib/assert/is-complex64' );\n*\n* var x = new Complex64( 4.0, 2.0 );\n*\n* var bool = isComplex64( x );\n* // returns true\n*/\n\n// MODULES //\n\nvar isComplex64 = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = isComplex64;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar Complex64Array = require( '@stdlib/array/complex64' );\nvar constructorName = require( '@stdlib/utils/constructor-name' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a Complex64Array.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a Complex64Array\n*\n* @example\n* var bool = isComplex64Array( new Complex64Array( 10 ) );\n* // returns true\n*\n* @example\n* var bool = isComplex64Array( [] );\n* // returns false\n*/\nfunction isComplex64Array( value ) {\n\treturn (\n\t\tvalue instanceof Complex64Array ||\n\t\tconstructorName( value ) === 'Complex64Array'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isComplex64Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a Complex64Array.\n*\n* @module @stdlib/assert/is-complex64array\n*\n* @example\n* var isComplex64Array = require( '@stdlib/assert/is-complex64array' );\n*\n* var bool = isComplex64Array( new Complex64Array( 10 ) );\n* // returns true\n*\n* bool = isComplex64Array( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isComplex64Array = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = isComplex64Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2023 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isMatrixLike = require( './../../is-matrix-like' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a 2-dimensional ndarray-like object whose underlying data type is `complex64`.\n*\n* @param {*} v - value to test\n* @returns {boolean} boolean indicating if a value is a 2-dimensional ndarray-like object whose underlying data type is `complex64`\n*\n* @example\n* var Complex64Array = require( '@stdlib/array/complex64' );\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n*\n* var buffer = new Complex64Array( [ 0, 0, 0, 0, 0, 0, 0, 0 ] );\n* var arr = ndarray( 'complex64', buffer, [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n*\n* var bool = isComplex64MatrixLike( arr );\n* // returns true\n*\n* bool = isComplex64MatrixLike( [] );\n* // returns false\n*/\nfunction isComplex64MatrixLike( v ) {\n\treturn ( isMatrixLike( v ) && v.dtype === 'complex64' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isComplex64MatrixLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2023 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a 2-dimensional ndarray-like object whose underlying data type is `complex64`.\n*\n* @module @stdlib/assert/is-complex64matrix-like\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n* var Complex64Array = require( '@stdlib/array/complex64' );\n* var isComplex64MatrixLike = require( '@stdlib/assert/is-complex64matrix-like' );\n*\n* var buffer = new Complex64Array( [ 0, 0, 0, 0, 0, 0, 0, 0 ] );\n*\n* var arr = ndarray( 'complex64', buffer, [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n*\n* var bool = isComplex64MatrixLike( arr );\n* // returns true\n*\n* bool = isComplex64MatrixLike( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2023 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isndarrayLike = require( './../../is-ndarray-like' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is an ndarray-like object whose underlying data type is `complex64`.\n*\n* @param {*} v - value to test\n* @returns {boolean} boolean indicating if a value is an ndarray-like object whose underlying data type is `complex64`\n*\n* @example\n* var Complex64Array = require( '@stdlib/array/complex64' );\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n*\n* var buffer = new Complex64Array( [ 0, 0, 0, 0, 0, 0, 0, 0 ] );\n* var arr = ndarray( 'complex64', buffer, [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n*\n* var bool = isComplex64ndarrayLike( arr );\n* // returns true\n*\n* bool = isComplex64ndarrayLike( [] );\n* // returns false\n*/\nfunction isComplex64ndarrayLike( v ) {\n\treturn ( isndarrayLike( v ) && v.dtype === 'complex64' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isComplex64ndarrayLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2023 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an ndarray-like object whose underlying data type is `complex64`.\n*\n* @module @stdlib/assert/is-complex64ndarray-like\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n* var Complex64Array = require( '@stdlib/array/complex64' );\n* var isComplex64ndarrayLike = require( '@stdlib/assert/is-complex64ndarray-like' );\n*\n* var buffer = new Complex64Array( [ 0, 0, 0, 0, 0, 0, 0, 0 ] );\n*\n* var arr = ndarray( 'complex64', buffer, [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n*\n* var bool = isComplex64ndarrayLike( arr );\n* // returns true\n*\n* bool = isComplex64ndarrayLike( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isndarrayLike = require( './../../is-ndarray-like' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a 1-dimensional ndarray-like object.\n*\n* @param {*} v - value to test\n* @returns {boolean} boolean indicating if a value is a 1-dimensional ndarray-like object\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n*\n* var arr = ndarray( 'generic', [ 0, 0, 0, 0 ], [ 4 ], [ 1 ], 0, 'row-major' );\n* var bool = isVectorLike( arr );\n* // returns true\n*\n* bool = isVectorLike( [] );\n* // returns false\n*/\nfunction isVectorLike( v ) {\n\treturn (\n\t\tisndarrayLike( v ) &&\n\t\tv.ndims === 1 &&\n\t\tv.shape.length === 1 &&\n\t\tv.strides.length === 1\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isVectorLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a 1-dimensional ndarray-like object.\n*\n* @module @stdlib/assert/is-vector-like\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n* var isVectorLike = require( '@stdlib/assert/is-vector-like' );\n*\n* var arr = ndarray( 'generic', [ 0, 0, 0, 0 ], [ 4 ], [ 1 ], 0, 'row-major' );\n* var bool = isVectorLike( arr );\n* // returns true\n*\n* bool = isVectorLike( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2023 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isVectorLike = require( './../../is-vector-like' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a 1-dimensional ndarray-like object whose underlying data type is `complex64`.\n*\n* @param {*} v - value to test\n* @returns {boolean} boolean indicating if a value is a 1-dimensional ndarray-like object whose underlying data type is `complex64`\n*\n* @example\n* var Complex64Array = require( '@stdlib/array/complex64' );\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n*\n* var buffer = new Complex64Array( [ 0, 0, 0, 0, 0, 0, 0, 0 ] );\n* var arr = ndarray( 'complex64', buffer, [ 4 ], [ 1 ], 0, 'row-major' );\n*\n* var bool = isComplex64VectorLike( arr );\n* // returns true\n*\n* bool = isComplex64VectorLike( [] );\n* // returns false\n*/\nfunction isComplex64VectorLike( v ) {\n\treturn ( isVectorLike( v ) && v.dtype === 'complex64' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isComplex64VectorLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2023 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a 1-dimensional ndarray-like object whose underlying data type is `complex64`.\n*\n* @module @stdlib/assert/is-complex64vector-like\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n* var Complex64Array = require( '@stdlib/array/complex64' );\n* var isComplex64VectorLike = require( '@stdlib/assert/is-complex64vector-like' );\n*\n* var buffer = new Complex64Array( [ 0, 0, 0, 0, 0, 0, 0, 0 ] );\n*\n* var arr = ndarray( 'complex64', buffer, [ 4 ], [ 1 ], 0, 'row-major' );\n*\n* var bool = isComplex64VectorLike( arr );\n* // returns true\n*\n* bool = isComplex64VectorLike( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar Complex128 = require( '@stdlib/complex/float64' );\nvar constructorName = require( '@stdlib/utils/constructor-name' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a 128-bit complex number.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a 128-bit complex number\n*\n* @example\n* var Complex128 = require( '@stdlib/complex/float64' );\n*\n* var x = new Complex128( 4.0, 2.0 );\n*\n* var bool = isComplex128( x );\n* // returns true\n*/\nfunction isComplex128( value ) {\n\treturn (\n\t\tvalue instanceof Complex128 ||\n\t\tconstructorName( value ) === 'Complex128'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isComplex128;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a 128-bit complex number.\n*\n* @module @stdlib/assert/is-complex128\n*\n* @example\n* var Complex128 = require( '@stdlib/complex/float64' );\n* var isComplex128 = require( '@stdlib/assert/is-complex128' );\n*\n* var x = new Complex128( 4.0, 2.0 );\n*\n* var bool = isComplex128( x );\n* // returns true\n*/\n\n// MODULES //\n\nvar isComplex128 = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = isComplex128;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar Complex128Array = require( '@stdlib/array/complex128' );\nvar constructorName = require( '@stdlib/utils/constructor-name' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a Complex128Array.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a Complex128Array\n*\n* @example\n* var bool = isComplex128Array( new Complex128Array( 10 ) );\n* // returns true\n*\n* @example\n* var bool = isComplex128Array( [] );\n* // returns false\n*/\nfunction isComplex128Array( value ) {\n\treturn (\n\t\tvalue instanceof Complex128Array ||\n\t\tconstructorName( value ) === 'Complex128Array'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isComplex128Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a Complex128Array.\n*\n* @module @stdlib/assert/is-complex128array\n*\n* @example\n* var isComplex128Array = require( '@stdlib/assert/is-complex128array' );\n*\n* var bool = isComplex128Array( new Complex128Array( 10 ) );\n* // returns true\n*\n* bool = isComplex128Array( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isComplex128Array = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = isComplex128Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2023 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isMatrixLike = require( './../../is-matrix-like' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a 2-dimensional ndarray-like object whose underlying data type is `complex128`.\n*\n* @param {*} v - value to test\n* @returns {boolean} boolean indicating if a value is a 2-dimensional ndarray-like object whose underlying data type is `complex128`\n*\n* @example\n* var Complex128Array = require( '@stdlib/array/complex128' );\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n*\n* var buffer = new Complex128Array( [ 0, 0, 0, 0, 0, 0, 0, 0 ] );\n* var arr = ndarray( 'complex128', buffer, [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n*\n* var bool = isComplex128MatrixLike( arr );\n* // returns true\n*\n* bool = isComplex128MatrixLike( [] );\n* // returns false\n*/\nfunction isComplex128MatrixLike( v ) {\n\treturn ( isMatrixLike( v ) && v.dtype === 'complex128' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isComplex128MatrixLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2023 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a 2-dimensional ndarray-like object whose underlying data type is `complex128`.\n*\n* @module @stdlib/assert/is-complex128matrix-like\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n* var Complex128Array = require( '@stdlib/array/complex128' );\n* var isComplex128MatrixLike = require( '@stdlib/assert/is-complex128matrix-like' );\n*\n* var buffer = new Complex128Array( [ 0, 0, 0, 0, 0, 0, 0, 0 ] );\n*\n* var arr = ndarray( 'complex128', buffer, [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n*\n* var bool = isComplex128MatrixLike( arr );\n* // returns true\n*\n* bool = isComplex128MatrixLike( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2023 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isndarrayLike = require( './../../is-ndarray-like' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is an ndarray-like object whose underlying data type is `complex128`.\n*\n* @param {*} v - value to test\n* @returns {boolean} boolean indicating if a value is an ndarray-like object whose underlying data type is `complex128`\n*\n* @example\n* var Complex128Array = require( '@stdlib/array/complex128' );\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n*\n* var buffer = new Complex128Array( [ 0, 0, 0, 0, 0, 0, 0, 0 ] );\n* var arr = ndarray( 'complex128', buffer, [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n*\n* var bool = isComplex128ndarrayLike( arr );\n* // returns true\n*\n* bool = isComplex128ndarrayLike( [] );\n* // returns false\n*/\nfunction isComplex128ndarrayLike( v ) {\n\treturn ( isndarrayLike( v ) && v.dtype === 'complex128' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isComplex128ndarrayLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2023 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an ndarray-like object whose underlying data type is `complex128`.\n*\n* @module @stdlib/assert/is-complex128ndarray-like\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n* var Complex128Array = require( '@stdlib/array/complex128' );\n* var isComplex128ndarrayLike = require( '@stdlib/assert/is-complex128ndarray-like' );\n*\n* var buffer = new Complex128Array( [ 0, 0, 0, 0, 0, 0, 0, 0 ] );\n*\n* var arr = ndarray( 'complex128', buffer, [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n*\n* var bool = isComplex128ndarrayLike( arr );\n* // returns true\n*\n* bool = isComplex128ndarrayLike( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2023 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isVectorLike = require( './../../is-vector-like' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a 1-dimensional ndarray-like object whose underlying data type is `complex128`.\n*\n* @param {*} v - value to test\n* @returns {boolean} boolean indicating if a value is a 1-dimensional ndarray-like object whose underlying data type is `complex128`\n*\n* @example\n* var Complex128Array = require( '@stdlib/array/complex128' );\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n*\n* var buffer = new Complex128Array( [ 0, 0, 0, 0, 0, 0, 0, 0 ] );\n* var arr = ndarray( 'complex128', buffer, [ 4 ], [ 1 ], 0, 'row-major' );\n*\n* var bool = isComplex128VectorLike( arr );\n* // returns true\n*\n* bool = isComplex128VectorLike( [] );\n* // returns false\n*/\nfunction isComplex128VectorLike( v ) {\n\treturn ( isVectorLike( v ) && v.dtype === 'complex128' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isComplex128VectorLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2023 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a 1-dimensional ndarray-like object whose underlying data type is `complex128`.\n*\n* @module @stdlib/assert/is-complex128vector-like\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n* var Complex128Array = require( '@stdlib/array/complex128' );\n* var isComplex128VectorLike = require( '@stdlib/assert/is-complex128vector-like' );\n*\n* var buffer = new Complex128Array( [ 0, 0, 0, 0, 0, 0, 0, 0 ] );\n* var arr = ndarray( 'complex128', buffer, [ 4 ], [ 1 ], 0, 'row-major' );\n*\n* var bool = isComplex128VectorLike( arr );\n* // returns true\n*\n* bool = isComplex128VectorLike( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isPrimitive;\nvar iscomposite = require( '@stdlib/math/base/assert/is-composite' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number primitive having a value which is a composite number.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number primitive having a value which is a composite number\n*\n* @example\n* var bool = isComposite( 4.0 );\n* // returns true\n*\n* @example\n* var bool = isComposite( new Number( 4.0 ) );\n* // returns false\n*/\nfunction isComposite( value ) {\n\tif ( !isNumber( value ) ) {\n\t\treturn false;\n\t}\n\treturn iscomposite( value );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isComposite;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isObject;\nvar iscomposite = require( '@stdlib/math/base/assert/is-composite' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number object having a value which is a composite number.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number object having a value which is a composite number\n*\n* @example\n* var bool = isComposite( 4.0 );\n* // returns false\n*\n* @example\n* var bool = isComposite( new Number( 4.0 ) );\n* // returns true\n*/\nfunction isComposite( value ) {\n\tif ( !isNumber( value ) ) {\n\t\treturn false;\n\t}\n\treturn iscomposite( value.valueOf() );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isComposite;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a composite number.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a composite number\n*\n* @example\n* var bool = isComposite( 4.0 );\n* // returns true\n*\n* @example\n* var bool = isComposite( new Number( 4.0 ) );\n* // returns true\n*\n* @example\n* var bool = isComposite( 3.14 );\n* // returns false\n*\n* @example\n* var bool = isComposite( -4.0 );\n* // returns false\n*\n* @example\n* var bool = isComposite( null );\n* // returns false\n*/\nfunction isComposite( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isComposite;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a composite number.\n*\n* @module @stdlib/assert/is-composite\n*\n* @example\n* var isComposite = require( '@stdlib/assert/is-composite' );\n*\n* var bool = isComposite( 4.0 );\n* // returns true\n*\n* bool = isComposite( new Number( 4.0 ) );\n* // returns true\n*\n* bool = isComposite( 3.14 );\n* // returns false\n*\n* bool = isComposite( -4.0 );\n* // returns false\n*\n* bool = isComposite( null );\n* // returns false\n*\n* @example\n* var isComposite = require( '@stdlib/assert/is-composite' ).isPrimitive;\n*\n* var bool = isComposite( 4.0 );\n* // returns true\n*\n* bool = isComposite( new Number( 4.0 ) );\n* // returns false\n*\n* @example\n* var isComposite = require( '@stdlib/assert/is-composite' ).isObject;\n*\n* var bool = isComposite( 4.0 );\n* // returns false\n*\n* bool = isComposite( new Number( 4.0 ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar propertyDescriptor = require( '@stdlib/utils/property-descriptor' );\n\n\n// MAIN //\n\n/**\n* Tests if an object's own property is configurable.\n*\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object property is configurable\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': true,\n* 'writable': true,\n* 'value': true\n* });\n*\n* var bool = isConfigurableProperty( obj, 'boop' );\n* // returns true\n*\n* bool = isConfigurableProperty( obj, 'beep' );\n* // returns false\n*/\nfunction isConfigurableProperty( value, property ) {\n\tvar desc = propertyDescriptor( value, property );\n\treturn ( desc !== null && desc.configurable === true );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isConfigurableProperty;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object's own property is configurable.\n*\n* @module @stdlib/assert/is-configurable-property\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n* var isConfigurableProperty = require( '@stdlib/assert/is-configurable-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': true,\n* 'writable': true,\n* 'value': true\n* });\n*\n* var bool = isConfigurableProperty( obj, 'boop' );\n* // returns true\n*\n* bool = isConfigurableProperty( obj, 'beep' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar propertyDescriptorIn = require( '@stdlib/utils/property-descriptor-in' );\n\n\n// MAIN //\n\n/**\n* Tests if an object's own or inherited property is configurable.\n*\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object property is configurable\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': true,\n* 'writable': true,\n* 'value': true\n* });\n*\n* var bool = isConfigurablePropertyIn( obj, 'boop' );\n* // returns true\n*\n* bool = isConfigurablePropertyIn( obj, 'beep' );\n* // returns false\n*/\nfunction isConfigurablePropertyIn( value, property ) {\n\tvar desc = propertyDescriptorIn( value, property );\n\treturn ( desc !== null && desc.configurable === true );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isConfigurablePropertyIn;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object's own or inherited property is configurable.\n*\n* @module @stdlib/assert/is-configurable-property-in\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n* var isConfigurablePropertyIn = require( '@stdlib/assert/is-configurable-property-in' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': true,\n* 'writable': true,\n* 'value': true\n* });\n*\n* var bool = isConfigurablePropertyIn( obj, 'boop' );\n* // returns true\n*\n* bool = isConfigurablePropertyIn( obj, 'beep' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/*\n* @license Apache-2.0\n*\n* Copyright (c) 2022 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\nvar constantcase = require( '@stdlib/string/base/constantcase' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a constantcase string.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is a constantcase string\n*\n* @example\n* var bool = isConstantcase( 'BEEP_BOOP' );\n* // returns true\n*\n* bool = isConstantcase( 'beep_boop' );\n* // returns false\n*\n* bool = isConstantcase( 'BEEP-BOOP' );\n* // returns true\n*\n* bool = isConstantcase( 'beep boop' );\n* // returns false\n*\n* bool = isConstantcase( 'beep' );\n* // returns false\n*\n* bool = isConstantcase( '' );\n* // returns true\n*\n* bool = isConstantcase( null );\n* // returns false\n*/\nfunction isConstantcase( value ) {\n\treturn (\n\t\tisString( value ) &&\n\t\tvalue === constantcase( value )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isConstantcase;\n", "/*\n* @license Apache-2.0\n*\n* Copyright (c) 2022 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a constantcase string.\n*\n* @module @stdlib/assert/is-constantcase\n*\n* @example\n* var isConstantcase = require( '@stdlib/assert/is-constantcase' );\n*\n* var bool = isConstantcase( 'BEEP_BOOP' );\n* // returns true\n*\n* bool = isConstantcase( 'BEEP and BOOP' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInteger = require( './../../is-integer' ).isPrimitive;\nvar cbrt = require( '@stdlib/math/base/special/cbrt' );\nvar floor = require( '@stdlib/math/base/special/floor' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number primitive having a value which is a cube number.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number primitive having a value which is a cube number\n*\n* @example\n* var bool = isCubeNumber( 8.0 );\n* // returns true\n*\n* @example\n* var bool = isCubeNumber( new Number( 8.0 ) );\n* // returns false\n*/\nfunction isCubeNumber( value ) {\n\tvar n;\n\tif ( !isInteger( value ) ) {\n\t\treturn false;\n\t}\n\tn = floor( cbrt( value ) + 0.5 );\n\treturn n*n*n === value;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isCubeNumber;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInteger = require( './../../is-integer' ).isObject;\nvar cbrt = require( '@stdlib/math/base/special/cbrt' );\nvar floor = require( '@stdlib/math/base/special/floor' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number object having a value which is a cube number.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number object having a value which is a cube number\n*\n* @example\n* var bool = isCubeNumber( 8.0 );\n* // returns false\n*\n* @example\n* var bool = isCubeNumber( new Number( 8.0 ) );\n* // returns true\n*/\nfunction isCubeNumber( value ) {\n\tvar n;\n\tvar x;\n\tif ( !isInteger( value ) ) {\n\t\treturn false;\n\t}\n\tx = value.valueOf();\n\tn = floor( cbrt( x ) + 0.5 );\n\treturn n*n*n === x;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isCubeNumber;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a cube number.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a cube number\n*\n* @example\n* var bool = isCubeNumber( 8.0 );\n* // returns true\n*\n* @example\n* var bool = isCubeNumber( new Number( 8.0 ) );\n* // returns true\n*\n* @example\n* var bool = isCubeNumber( 3.14 );\n* // returns false\n*\n* @example\n* var bool = isCubeNumber( -5.0 );\n* // returns false\n*\n* @example\n* var bool = isCubeNumber( null );\n* // returns false\n*/\nfunction isCubeNumber( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isCubeNumber;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a cube number.\n*\n* @module @stdlib/assert/is-cube-number\n*\n* @example\n* var isCubeNumber = require( '@stdlib/assert/is-cube-number' );\n*\n* var bool = isCubeNumber( 8.0 );\n* // returns true\n*\n* bool = isCubeNumber( new Number( 8.0 ) );\n* // returns true\n*\n* bool = isCubeNumber( 3.14 );\n* // returns false\n*\n* bool = isCubeNumber( -5.0 );\n* // returns false\n*\n* bool = isCubeNumber( null );\n* // returns false\n*\n* @example\n* var isCubeNumber = require( '@stdlib/assert/is-cube-number' ).isPrimitive;\n*\n* var bool = isCubeNumber( 8.0 );\n* // returns true\n*\n* bool = isCubeNumber( new Number( 8.0 ) );\n* // returns false\n*\n* @example\n* var isCubeNumber = require( '@stdlib/assert/is-cube-number' ).isObject;\n*\n* var bool = isCubeNumber( 8.0 );\n* // returns false\n*\n* bool = isCubeNumber( new Number( 8.0 ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2022 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isDateObject = require( './../../is-date-object' );\nvar currentYear = require( '@stdlib/time/current-year' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is either an integer equal to the current year or a `Date` object representing the current year.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a provided value is the current year\n*\n* @example\n* var bool = isCurrentYear( new Date() );\n* // returns true\n*\n* @example\n* var currentYear = require( '@stdlib/time/current-year' );\n* var bool = isCurrentYear( currentYear() );\n* // returns true\n*\n* @example\n* var bool = isCurrentYear( 2021 );\n* // returns false\n*\n* @example\n* var bool = isCurrentYear( null );\n* // returns false\n*/\nfunction isCurrentYear( value ) {\n\tif ( isDateObject( value ) ) {\n\t\treturn value.getFullYear() === currentYear();\n\t}\n\treturn ( value === currentYear() );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isCurrentYear;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2022 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is the current year.\n*\n* @module @stdlib/assert/is-current-year\n*\n* @example\n* var currentYear = require( '@stdlib/time/current-year' );\n* var isCurrentYear = require( '@stdlib/assert/is-current-year' );\n*\n* var bool = isCurrentYear( currentYear() );\n* // returns true\n*\n* bool = isCurrentYear( 2021 );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Boolean indicating if the current process is running on Darwin.\n*\n* @module @stdlib/assert/is-darwin\n* @type {boolean}\n*\n* @example\n* var PLATFORM = require( '@stdlib/os/platform' );\n* var IS_DARWIN = require( '@stdlib/assert/is-darwin' );\n*\n* if ( IS_DARWIN ) {\n* console.log( 'Running on Darwin...' );\n* } else {\n* console.log( 'Running on %s...', PLATFORM );\n* }\n*/\n\n// MODULES //\n\nvar PLATFORM = require( '@stdlib/os/platform' );\n\n\n// MAIN //\n\n/**\n* Boolean indicating if the current process is running on Darwin.\n*\n* @constant\n* @type {boolean}\n*/\nvar IS_DARWIN = ( PLATFORM === 'darwin' );\n\n\n// EXPORTS //\n\nmodule.exports = IS_DARWIN;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar propertyDescriptor = require( '@stdlib/utils/property-descriptor' );\n\n\n// MAIN //\n\n/**\n* Tests if an object's own property has a data descriptor.\n*\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object property has a data descriptor\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* function getter() {\n* return 'beep';\n* }\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': false,\n* 'get': getter\n* });\n*\n* var bool = isDataProperty( obj, 'boop' );\n* // returns true\n*\n* bool = isDataProperty( obj, 'beep' );\n* // returns false\n*/\nfunction isDataProperty( value, property ) {\n\tvar desc = propertyDescriptor( value, property );\n\treturn ( desc !== null && typeof desc.writable === 'boolean' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isDataProperty;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object's own property has a data descriptor.\n*\n* @module @stdlib/assert/is-data-property\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n* var isDataProperty = require( '@stdlib/assert/is-data-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* function getter() {\n* return 'beep';\n* }\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': false,\n* 'get': getter\n* });\n*\n* var bool = isDataProperty( obj, 'boop' );\n* // returns true\n*\n* bool = isDataProperty( obj, 'beep' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar propertyDescriptorIn = require( '@stdlib/utils/property-descriptor-in' );\n\n\n// MAIN //\n\n/**\n* Tests if an object's own or inherited property has a data descriptor.\n*\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object property has a data descriptor\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* function getter() {\n* return 'beep';\n* }\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': false,\n* 'get': getter\n* });\n*\n* var bool = isDataPropertyIn( obj, 'boop' );\n* // returns true\n*\n* bool = isDataPropertyIn( obj, 'beep' );\n* // returns false\n*/\nfunction isDataPropertyIn( value, property ) {\n\tvar desc = propertyDescriptorIn( value, property );\n\treturn ( desc !== null && typeof desc.writable === 'boolean' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isDataPropertyIn;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object's own or inherited property has a data descriptor.\n*\n* @module @stdlib/assert/is-data-property-in\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n* var isDataPropertyIn = require( '@stdlib/assert/is-data-property-in' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* function getter() {\n* return 'beep';\n* }\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': false,\n* 'get': getter\n* });\n*\n* var bool = isDataPropertyIn( obj, 'boop' );\n* // returns true\n*\n* bool = isDataPropertyIn( obj, 'beep' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array-like object containing only `Date` objects.\n*\n* @module @stdlib/assert/is-date-object-array\n*\n* @example\n* var isDateObjectArray = require( '@stdlib/assert/is-date-object-array' );\n*\n* var bool = isDateObjectArray( [ new Date(), new Date() ] );\n* // returns true\n*\n* bool = isDateObjectArray( [ {}, new Number( 3.0 ) ] );\n* // returns false\n*\n* bool = isDateObjectArray( [ {}, '3.0' ] );\n* // returns false\n*/\n\n// MODULES //\n\nvar arrayfun = require( './../../tools/array-like-function' );\nvar isDateObject = require( './../../is-date-object' );\n\n\n// MAIN //\n\nvar isDateObjectArray = arrayfun( isDateObject );\n\n\n// EXPORTS //\n\nmodule.exports = isDateObjectArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\n\n\n// VARIABLES //\n\n// Character codes:\nvar ZERO = 48;\nvar NINE = 57;\n\n\n// MAIN //\n\n/**\n* Tests whether a string contains only numeric digits.\n*\n* @param {*} x - value to test\n* @returns {boolean} boolean indicating if a string contains only numeric digits\n*\n* @example\n* var out = isDigitString( '0123456789' );\n* // returns true\n*\n* @example\n* var out = isDigitString( '0xffffff' );\n* // returns false\n*\n* @example\n* var out = isDigitString( '' );\n* // returns false\n*\n* @example\n* var out = isDigitString( 123 );\n* // returns false\n*/\nfunction isDigitString( x ) {\n\tvar len;\n\tvar ch;\n\tvar i;\n\tif ( !isString( x ) ) {\n\t\treturn false;\n\t}\n\tlen = x.length;\n\tif ( len === 0 ) {\n\t\treturn false;\n\t}\n\tfor ( i = 0; i < len; i++ ) {\n\t\tch = x.charCodeAt( i );\n\t\tif ( ch < ZERO || ch > NINE ) {\n\t\t\treturn false;\n\t\t}\n\t}\n\treturn true;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isDigitString;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether a string contains only numeric digits.\n*\n* @module @stdlib/assert/is-digit-string\n*\n* @example\n* var isDigitString = require( '@stdlib/assert/is-digit-string' );\n*\n* var out = isDigitString( '0123456789' );\n* // returns true\n*\n* out = isDigitString( '0xffffff' );\n* // returns false\n*\n* out = isDigitString( '' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar readFile = require( '@stdlib/fs/read-file' ).sync;\nvar contains = require( './../../contains' );\nvar exists = require( '@stdlib/fs/exists' ).sync;\n\n\n// VARIABLES //\n\nvar OPTS = {\n\t'encoding': 'utf8'\n};\n\n\n// MAIN //\n\n/**\n* Returns a boolean indicating if the process is running in a Docker container.\n*\n* @returns {boolean} boolean indicating if the process is running in a Docker container\n*\n* @example\n* var bool = isDocker();\n* // returns \n*/\nfunction isDocker() {\n\tvar file;\n\tif ( exists( '/.dockerenv' ) ) {\n\t\treturn true;\n\t}\n\tfile = readFile( '/proc/self/cgroup', OPTS );\n\tif ( file instanceof Error ) {\n\t\treturn false;\n\t}\n\treturn contains( file, 'docker' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isDocker;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Boolean indicating if the process is running in a Docker container.\n*\n* @module @stdlib/assert/is-docker\n*\n* @example\n* var IS_DOCKER = require( '@stdlib/assert/is-docker' );\n*\n* var bool = IS_DOCKER;\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// MAIN //\n\nvar bool = main();\n\n\n// EXPORTS //\n\nmodule.exports = bool;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2022 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\n\n\n// VARIABLES //\n\n/**\n* Regular expression: `/^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\\.)+[a-z0-9][a-z0-9-]{0,61}[a-z0-9]$/`\n*\n* - `\\^`\n* - match any string which begins with\n*\n* - `(?:)`\n* - capture but do not remember\n*\n* - `[a-z0-9]`\n* - match a single digit or letter\n*\n* - `(?:)`\n* - capture but do not remember\n*\n* - `[a-z0-9-]{0,61}`\n* - match between 0 and 61 digits, letters, or hyphens\n*\n* - `[a-z0-9]`\n* - match a single digit or letter\n*\n* - `?`\n* - match the previous token between zero and one times\n*\n* - `\\.`\n* - match a literal `.`\n*\n* - `+`\n* - match the previous group one or more times\n*\n* - `[a-z0-9]`\n* - match a single digit or letter\n*\n* - `[a-z0-9-]{0,61}`\n* - match between 0 and 61 digits, letters, or hyphens\n*\n* - `[a-z0-9]`\n* - match a single digit or letter\n*\n* - `$`\n* - match end of string\n*\n* @private\n* @constant\n* @type {RegExp}\n*/\nvar RE_DOMAIN_NAME = /^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\\.)+[a-z0-9][a-z0-9-]{0,61}[a-z0-9]$/i;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a domain name.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is a domain name\n*\n* @example\n* var bool = isDomainName( 'beep.boop' );\n* // returns true\n*\n* @example\n* var bool = isDomainName( 'beep boop' );\n* // returns false\n*\n* @example\n* var bool = isDomainName( 'foo@bar.com' );\n* // returns false\n*\n* @example\n* var bool = isDomainName( null );\n* // returns false\n*/\nfunction isDomainName( value ) {\n\tif ( !isString( value ) ) {\n\t\treturn false;\n\t}\n\tif ( value.length < 2 || value.length > 255 ) {\n\t\treturn false;\n\t}\n\treturn RE_DOMAIN_NAME.test( value );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isDomainName;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2022 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a domain name.\n*\n* @module @stdlib/assert/is-domain-name\n*\n* @example\n* var isDomainName = require( '@stdlib/assert/is-domain-name' );\n*\n* var bool = isDomainName( 'example.com' );\n* // returns true\n*\n* bool = isDomainName( 'foo@bar.com' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2022 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\n\n\n// VARIABLES //\n\nvar RE_DURATION_STRING = /^(?:\\d+d)?(?:\\d+h)?(?:\\d+m)?(?:\\d+s)?(?:\\d+ms)?$/i;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a duration string.\n*\n* ## Notes\n*\n* - The function validates that a value is a string. For all other types, the function returns `false`.\n*\n* - A duration string is a string containing a sequence of time units. A time unit is a non-negative integer followed by a unit identifier. The following unit identifiers are supported:\n*\n* - `d`: days\n* - `h`: hours\n* - `m`: minutes\n* - `s`: seconds\n* - `ms`: milliseconds\n*\n* For example, the string `1m3s10ms` is a duration string containing three time units: `1m` (1 minute), `3s` (3 seconds), and `10ms` (10 milliseconds). The string `60m` is a duration string containing a single time unit: `60m` (60 minutes). A duration string must contain at least one time unit. Time units must be supplied in descending order of magnitude (i.e., days, hours, minutes, seconds, milliseconds).\n*\n* - Duration strings are case insensitive. For example, the string `1M3S10MS` is equivalent to `1m3s10ms`.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a duration string\n*\n* @example\n* var bool = isDurationString( '1d' );\n* // returns true\n*\n* @example\n* var bool = isDurationString( '1d2h' );\n* // returns true\n*/\nfunction isDurationString( value ) {\n\tif ( !isString( value ) ) {\n\t\treturn false;\n\t}\n\treturn RE_DURATION_STRING.test( value );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isDurationString;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2022 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a duration string.\n*\n* @module @stdlib/assert/is-duration-string\n*\n* @example\n* var isDurationString = require( '@stdlib/assert/is-duration-string' );\n*\n* var bool = isDurationString( '1d' );\n* // returns true\n*\n* bool = isDurationString( '1d2h' );\n* // returns true\n*\n* bool = isDurationString( '1d2h-2m' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// EXPORTS //\n\nmodule.exports = process;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar nativeClass = require( '@stdlib/utils/native-class' );\nvar isObject = require( './../../is-plain-object' );\nvar isString = require( './../../is-string' ).isPrimitive;\nvar proc = require( './process.js' );\n\n\n// MAIN //\n\n/**\n* Returns a boolean indicating if the runtime is Electron.\n*\n* @returns {boolean} boolean indicating if runtime is Electron\n*\n* @example\n* var bool = isElectron();\n* // returns \n*/\nfunction isElectron() {\n\treturn (\n\t\t// Check for a `process` global variable:\n\t\ttypeof proc === 'object' &&\n\n\t\t// Check that the `process` global variable has the expected internal class:\n\t\tnativeClass( proc ) === '[object process]' &&\n\n\t\t// Check for a `versions` property:\n\t\tisObject( proc.versions ) &&\n\n\t\t// Check for an `electron` property:\n\t\tisString( proc.versions.electron ) &&\n\n\t\t// Check for a `chrome` property:\n\t\tisString( proc.versions.chrome ) &&\n\n\t\t// Check for a `type` property:\n\t\t(\n\t\t\tproc.type === 'browser' ||\n\t\t\tproc.type === 'renderer'\n\t\t)\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isElectron;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Boolean indicating if the runtime is Electron.\n*\n* @module @stdlib/assert/is-electron\n*\n* @example\n* var IS_ELECTRON = require( '@stdlib/assert/is-electron' );\n*\n* var bool = IS_ELECTRON;\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// MAIN //\n\nvar bool = main();\n\n\n// EXPORTS //\n\nmodule.exports = bool;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// EXPORTS //\n\nmodule.exports = process;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isElectron = require( './../../is-electron' );\nvar proc = require( './process.js' );\n\n\n// MAIN //\n\n/**\n* Returns a boolean indicating if the runtime is the main Electron process.\n*\n* @returns {boolean} boolean indicating if runtime is the main Electron process\n*\n* @example\n* var bool = isElectronMain();\n* // returns \n*/\nfunction isElectronMain() {\n\treturn (\n\t\tisElectron &&\n\t\tproc.type === 'browser'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isElectronMain;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Boolean indicating if the runtime is the main Electron process.\n*\n* @module @stdlib/assert/is-electron-main\n*\n* @example\n* var IS_ELECTRON_MAIN = require( '@stdlib/assert/is-electron-main' );\n*\n* var bool = IS_ELECTRON_MAIN;\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// MAIN //\n\nvar bool = main();\n\n\n// EXPORTS //\n\nmodule.exports = bool;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar process = require( 'process' );\n\n\n// EXPORTS //\n\nmodule.exports = process;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isElectron = require( './../../is-electron' );\nvar proc = require( './process.js' );\n\n\n// MAIN //\n\n/**\n* Returns a boolean indicating if the runtime is the Electron renderer process.\n*\n* @returns {boolean} boolean indicating if runtime is the Electron renderer process\n*\n* @example\n* var bool = isElectronRenderer();\n* // returns \n*/\nfunction isElectronRenderer() {\n\treturn (\n\t\tisElectron &&\n\t\tproc.type === 'renderer'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isElectronRenderer;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Boolean indicating if the runtime is the Electron renderer process.\n*\n* @module @stdlib/assert/is-electron-renderer\n*\n* @example\n* var IS_ELECTRON_RENDERER = require( '@stdlib/assert/is-electron-renderer' );\n*\n* var bool = IS_ELECTRON_RENDERER;\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// MAIN //\n\nvar bool = main();\n\n\n// EXPORTS //\n\nmodule.exports = bool;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\n\n\n// VARIABLES //\n\nvar RE = /@/;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a valid(ish) email address.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is a valid(ish) email address\n*\n* @example\n* var bool = isEmail( 'beep@boop.com' );\n* // returns true\n*\n* @example\n* var bool = isEmail( 'beep' );\n* // returns false\n*\n* @example\n* var bool = isEmail( 'beep.com' );\n* // returns false\n*\n* @example\n* var bool = isEmail( null );\n* // returns false\n*/\nfunction isEmail( value ) {\n\treturn isString( value ) && RE.test( value );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isEmail;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an email address.\n*\n* @module @stdlib/assert/is-email-address\n*\n* @example\n* var isEmail = require( '@stdlib/assert/is-email-address' );\n*\n* var bool = isEmail( 'beep@boop.com' );\n* // returns true\n*\n* bool = isEmail( 'beep' );\n* // returns false\n*\n* bool = isEmail( null );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isArray = require( './../../is-array' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is an empty array.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is an empty array\n*\n* @example\n* var bool = isEmptyArray( [] );\n* // returns true\n*\n* @example\n* var bool = isEmptyArray( [ 1, 2, 3 ] );\n* // returns false\n*\n* @example\n* var bool = isEmptyArray( {} );\n* // returns false\n*/\nfunction isEmptyArray( value ) {\n\treturn (\n\t\tisArray( value ) &&\n\t\tvalue.length === 0\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isEmptyArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an empty array.\n*\n* @module @stdlib/assert/is-empty-array\n*\n* @example\n* var isEmptyArray = require( '@stdlib/assert/is-empty-array' );\n*\n* var bool = isEmptyArray( [] );\n* // returns true\n*\n* bool = isEmptyArray( [ 1, 2, 3 ] );\n* // returns false\n*\n* bool = isEmptyArray( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\n/**\n* Tests if a value is an empty array-like object.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is an empty array-like object\n*\n* @example\n* var bool = isEmptyArrayLikeObject( [] );\n* // returns true\n*\n* @example\n* var bool = isEmptyArrayLikeObject( { 'length': 0 } );\n* // returns true\n*\n* @example\n* var bool = isEmptyArrayLikeObject( '' );\n* // returns false\n*/\nfunction isEmptyArrayLikeObject( value ) {\n\treturn (\n\t\ttypeof value === 'object' &&\n\t\tvalue !== null &&\n\t\tvalue.length === 0\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isEmptyArrayLikeObject;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an empty array-like object.\n*\n* @module @stdlib/assert/is-empty-array-like-object\n*\n* @example\n* var isEmptyArrayLikeObject = require( '@stdlib/assert/is-empty-array-like-object' );\n*\n* var bool = isEmptyArrayLikeObject( [] );\n* // returns true\n*\n* bool = isEmptyArrayLikeObject( { 'length': 0 } );\n* // returns true\n*\n* bool = isEmptyArrayLikeObject( '' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\n/**\n* Tests if a value is an empty collection.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is an empty collection\n*\n* @example\n* var bool = isEmptyCollection( [] );\n* // returns true\n*\n* @example\n* var bool = isEmptyCollection( { 'length': 0 } );\n* // returns true\n*\n* @example\n* var bool = isEmptyCollection( [ 1, 2, 3 ] );\n* // returns false\n*\n* @example\n* var bool = isEmptyCollection( {} );\n* // returns false\n*/\nfunction isEmptyCollection( value ) {\n\treturn (\n\t\ttypeof value === 'object' &&\n\t\tvalue !== null &&\n\t\tvalue.length === 0\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isEmptyCollection;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an empty collection.\n*\n* @module @stdlib/assert/is-empty-collection\n*\n* @example\n* var isEmptyCollection = require( '@stdlib/assert/is-empty-collection' );\n*\n* var bool = isEmptyCollection( [] );\n* // returns true\n*\n* bool = isEmptyCollection( [ 1, 2, 3 ] );\n* // returns false\n*\n* bool = isEmptyCollection( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar objectKeys = require( '@stdlib/utils/keys' );\nvar isPlainObject = require( './../../is-plain-object' );\nvar hasSymbolSupport = require( './../../has-symbol-support' );\n\n\n// VARIABLES //\n\nvar FLG = hasSymbolSupport();\n\n\n// MAIN //\n\n/**\n* Tests if a value is an empty object.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is an empty object\n*\n* @example\n* var bool = isEmptyObject( {} );\n* // returns true\n*\n* @example\n* var bool = isEmptyObject( { 'beep': 'boop' } );\n* // returns false\n*\n* @example\n* var bool = isEmptyObject( [] );\n* // returns false\n*/\nfunction isEmptyObject( value ) {\n\tif ( !isPlainObject( value ) ) {\n\t\treturn false;\n\t}\n\tif ( objectKeys( value ).length > 0 ) {\n\t\treturn false;\n\t}\n\tif ( FLG && Object.getOwnPropertySymbols( value ).length > 0 ) {\n\t\treturn false;\n\t}\n\treturn true;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isEmptyObject;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an empty object.\n*\n* @module @stdlib/assert/is-empty-object\n*\n* @example\n* var isEmptyObject = require( '@stdlib/assert/is-empty-object' );\n*\n* var bool = isEmptyObject( {} );\n* // returns true\n*\n* bool = isEmptyObject( { 'beep': 'boop' } );\n* // returns false\n*\n* bool = isEmptyObject( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\n/**\n* Tests if a value is an empty string primitive.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is an empty string primitive\n*\n* @example\n* var bool = isEmptyString( '' );\n* // returns true\n*\n* @example\n* var bool = isEmptyString( 'beep' );\n* // returns false\n*\n* @example\n* var bool = isEmptyString( [] );\n* // returns false\n*/\nfunction isEmptyString( value ) {\n\treturn ( value === '' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isEmptyString;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isObject;\n\n\n// MAIN //\n\n/**\n* Tests if a value is an empty string object.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is an empty string object\n*\n* @example\n* var bool = isEmptyString( '' );\n* // returns false\n*\n* @example\n* var bool = isEmptyString( new String( '' ) );\n* // returns true\n*\n* @example\n* var bool = isEmptyString( [] );\n* // returns false\n*/\nfunction isEmptyString( value ) {\n\treturn (\n\t\tisString( value ) &&\n\t\tvalue.valueOf() === ''\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isEmptyString;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is an empty string.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is an empty string\n*\n* @example\n* var bool = isEmptyString( '' );\n* // returns true\n*\n* @example\n* var bool = isEmptyString( 'beep' );\n* // returns false\n*\n* @example\n* var bool = isEmptyString( [] );\n* // returns false\n*/\nfunction isEmptyString( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isEmptyString;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an empty string.\n*\n* @module @stdlib/assert/is-empty-string\n*\n* @example\n* var isEmptyString = require( '@stdlib/assert/is-empty-string' );\n*\n* var bool = isEmptyString( '' );\n* // returns true\n*\n* bool = isEmptyString( 'beep' );\n* // returns false\n*\n* bool = isEmptyString( [] );\n* // returns false\n*\n* @example\n* var isEmptyString = require( '@stdlib/assert/is-empty-string' ).isObject;\n*\n* var bool = isEmptyString( new String( '' ) );\n* // returns true\n*\n* bool = isEmptyString( '' );\n* // returns false\n*\n* @example\n* var isEmptyString = require( '@stdlib/assert/is-empty-string' ).isPrimitive;\n*\n* var bool = isEmptyString( '' );\n* // returns true\n*\n* bool = isEmptyString( new String( '' ) );\n* // returns false\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar propertyDescriptorIn = require( '@stdlib/utils/property-descriptor-in' );\n\n\n// MAIN //\n\n/**\n* Tests if an object's own or inherited property is enumerable.\n*\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object property is enumerable\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': true,\n* 'enumerable': false,\n* 'writable': true,\n* 'value': true\n* });\n*\n* var bool = isEnumerablePropertyIn( obj, 'boop' );\n* // returns true\n*\n* bool = isEnumerablePropertyIn( obj, 'beep' );\n* // returns false\n*/\nfunction isEnumerablePropertyIn( value, property ) {\n\tvar desc = propertyDescriptorIn( value, property ); // Note: works for both property names and symbols, which the `in` operator does not.\n\treturn ( desc !== null && desc.enumerable === true );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isEnumerablePropertyIn;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object's own or inherited property is enumerable.\n*\n* @module @stdlib/assert/is-enumerable-property-in\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n* var isEnumerablePropertyIn = require( '@stdlib/assert/is-enumerable-property-in' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': true,\n* 'enumerable': false,\n* 'writable': true,\n* 'value': true\n* });\n*\n* var bool = isEnumerablePropertyIn( obj, 'boop' );\n* // returns true\n*\n* bool = isEnumerablePropertyIn( obj, 'beep' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar getPrototypeOf = require( '@stdlib/utils/get-prototype-of' );\nvar typeOf = require( '@stdlib/utils/type-of' );\nvar isError = require( './../../is-error' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is an `EvalError` object.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is an `EvalError` object\n*\n* @example\n* var bool = isEvalError( new EvalError( 'beep' ) );\n* // returns true\n*\n* @example\n* var bool = isEvalError( {} );\n* // returns false\n*/\nfunction isEvalError( value ) {\n\tif ( typeof value !== 'object' || value === null ) {\n\t\treturn false;\n\t}\n\t// Check for `EvalError` objects from the same realm (same Node.js `vm` or same `Window` object)...\n\tif ( value instanceof EvalError ) {\n\t\treturn true;\n\t}\n\t// All `EvalError` objects are `Error` objects...\n\tif ( isError( value ) ) {\n\t\t// Walk the prototype tree until we find the desired constructor...\n\t\twhile ( value ) {\n\t\t\tif ( typeOf( value ) === 'evalerror' ) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\tvalue = getPrototypeOf( value );\n\t\t}\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isEvalError;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an `EvalError` object.\n*\n* @module @stdlib/assert/is-eval-error\n*\n* @example\n* var isEvalError = require( '@stdlib/assert/is-eval-error' );\n*\n* var bool = isEvalError( new EvalError( 'beep' ) );\n* // returns true\n*\n* bool = isEvalError( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInteger = require( './../../is-integer' ).isPrimitive;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number primitive that is an even number.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number primitive that is an even number\n*\n* @example\n* var bool = isEven( -4.0 );\n* // returns true\n*\n* @example\n* var bool = isEven( new Number( -4.0 ) );\n* // returns false\n*/\nfunction isEven( value ) {\n\treturn (\n\t\tisInteger( value ) &&\n\t\tvalue % 2 === 0\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isEven;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInteger = require( './../../is-integer' ).isObject;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number object that is an even number.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number object that is an even number\n*\n* @example\n* var bool = isEven( 4.0 );\n* // returns false\n*\n* @example\n* var bool = isEven( new Number( 4.0 ) );\n* // returns true\n*/\nfunction isEven( value ) {\n\treturn (\n\t\tisInteger( value ) &&\n\t\tvalue % 2 === 0\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isEven;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is an even number.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is an even number.\n*\n* @example\n* var bool = isEven( 4.0 );\n* // returns true\n*\n* @example\n* var bool = isEven( new Number( 4.0 ) );\n* // returns true\n*\n* @example\n* var bool = isEven( 3.0 );\n* // returns false\n*\n* @example\n* var bool = isEven( new Number( 5.0 ) );\n* // returns false\n*\n* @example\n* var bool = isEven( -3.14 );\n* // returns false\n*\n* @example\n* var bool = isEven( null );\n* // returns false\n*/\nfunction isEven( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isEven;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an even number.\n*\n* @module @stdlib/assert/is-even\n*\n* @example\n* var isEven = require( '@stdlib/assert/is-even' );\n*\n* var bool = isEven( 4.0 );\n* // returns true\n*\n* bool = isEven( new Number( 4.0 ) );\n* // returns true\n*\n* bool = isEven( 3.0 );\n* // returns false\n*\n* bool = isEven( new Number( 5.0 ) );\n* // returns false\n*\n* bool = isEven( -3.14 );\n* // returns false\n*\n* bool = isEven( null );\n* // returns false\n*\n* @example\n* // Use interface to check for even number primitives...\n* var isEven = require( '@stdlib/assert/is-even' ).isPrimitive;\n*\n* var bool = isEven( -4.0 );\n* // returns true\n*\n* bool = isEven( new Number( -4.0 ) );\n* // returns false\n*\n* @example\n* // Use interface to check for even number objects...\n* var isEven = require( '@stdlib/assert/is-even' ).isObject;\n*\n* var bool = isEven( 4.0 );\n* // returns false\n*\n* bool = isEven( new Number( 4.0 ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\n/**\n* Tests if a value is falsy.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is falsy\n*\n* @example\n* var bool = isFalsy( false );\n* // returns true\n*\n* @example\n* var bool = isFalsy( null );\n* // returns true\n*\n* @example\n* var bool = isFalsy( '' );\n* // returns true\n*\n* @example\n* var bool = isFalsy( 0 );\n* // returns true\n*\n* @example\n* var bool = isFalsy( void 0 );\n* // returns true\n*\n* @example\n* var bool = isFalsy( NaN );\n* // returns true\n*\n* @example\n* var bool = isFalsy( [] );\n* // returns false\n*/\nfunction isFalsy( value ) {\n\treturn ( value ) ? false : true; // eslint-disable-line no-unneeded-ternary\n}\n\n\n// EXPORTS //\n\nmodule.exports = isFalsy;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is falsy.\n*\n* @module @stdlib/assert/is-falsy\n*\n* @example\n* var isFalsy = require( '@stdlib/assert/is-falsy' );\n*\n* var bool = isFalsy( false );\n* // returns true\n*\n* bool = isFalsy( null );\n* // returns true\n*\n* bool = isFalsy( '' );\n* // returns true\n*\n* bool = isFalsy( 0 );\n* // returns true\n*\n* bool = isFalsy( void 0 );\n* // returns true\n*\n* bool = isFalsy( NaN );\n* // returns true\n*\n* bool = isFalsy( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array-like object containing only falsy values.\n*\n* @module @stdlib/assert/is-falsy-array\n*\n* @example\n* var isFalsyArray = require( '@stdlib/assert/is-falsy-array' );\n*\n* var bool = isFalsyArray( [ false, null, void 0, '', 0, NaN ] );\n* // returns true\n*\n* bool = isFalsyArray( [ {}, [] ] );\n* // returns false\n*\n* bool = isFalsyArray( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar arrayfun = require( './../../tools/array-like-function' );\nvar isFalsy = require( './../../is-falsy' );\n\n\n// MAIN //\n\nvar isFalsyArray = arrayfun( isFalsy );\n\n\n// EXPORTS //\n\nmodule.exports = isFalsyArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n/* eslint-disable stdlib/no-redeclare */\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isPrimitive;\nvar isfinite = require( '@stdlib/math/base/assert/is-finite' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number primitive having a finite value.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number primitive having a finite value\n*\n* @example\n* var bool = isFinite( -3.0 );\n* // returns true\n*\n* @example\n* var bool = isFinite( new Number( -3.0 ) );\n* // returns false\n*/\nfunction isFinite( value ) {\n\treturn (\n\t\tisNumber( value ) &&\n\t\tisfinite( value )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isFinite;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n/* eslint-disable stdlib/no-redeclare */\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isObject;\nvar isfinite = require( '@stdlib/math/base/assert/is-finite' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number object having a finite value.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number object having a finite value\n*\n* @example\n* var bool = isFinite( 3.0 );\n* // returns false\n*\n* @example\n* var bool = isFinite( new Number( 3.0 ) );\n* // returns true\n*/\nfunction isFinite( value ) {\n\treturn (\n\t\tisNumber( value ) &&\n\t\tisfinite( value.valueOf() )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isFinite;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n/* eslint-disable stdlib/no-redeclare */\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a finite number.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is a finite number\n*\n* @example\n* var bool = isFinite( 5.0 );\n* // returns true\n*\n* @example\n* var bool = isFinite( new Number( 5.0 ) );\n* // returns true\n*\n* @example\n* var bool = isFinite( 1.0/0.0 );\n* // returns false\n*\n* @example\n* var bool = isFinite( null );\n* // returns false\n*/\nfunction isFinite( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isFinite;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a finite number.\n*\n* @module @stdlib/assert/is-finite\n*\n* @example\n* var isFinite = require( '@stdlib/assert/is-finite' );\n*\n* var bool = isFinite( 5.0 );\n* // returns true\n*\n* bool = isFinite( new Number( 5.0 ) );\n* // returns true\n*\n* bool = isFinite( 1.0/0.0 );\n* // returns false\n*\n* bool = isFinite( null );\n* // returns false\n*\n* @example\n* var isFinite = require( '@stdlib/assert/is-finite' ).isPrimitive;\n*\n* var bool = isFinite( -3.0 );\n* // returns true\n*\n* bool = isFinite( new Number( -3.0 ) );\n* // returns false\n*\n* @example\n* var isFinite = require( '@stdlib/assert/is-finite' ).isObject;\n*\n* var bool = isFinite( 3.0 );\n* // returns false\n*\n* bool = isFinite( new Number( 3.0 ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array-like object containing only finite numbers.\n*\n* @module @stdlib/assert/is-finite-array\n*\n* @example\n* var isFiniteArray = require( '@stdlib/assert/is-finite-array' );\n*\n* var bool = isFiniteArray( [ -3.0, new Number(0.0), 2.0 ] );\n* // returns true\n*\n* bool = isFiniteArray( [ -3.0, 1.0/0.0 ] );\n* // returns false\n*\n* @example\n* var isFiniteArray = require( '@stdlib/assert/is-finite-array' ).primitives;\n*\n* var bool = isFiniteArray( [ -1.0, 10.0 ] );\n* // returns true\n*\n* bool = isFiniteArray( [ -1.5, 0.0, 5.0 ] );\n* // returns true\n*\n* bool = isFiniteArray( [ -3.0, new Number(-1.0) ] );\n* // returns false\n*\n* @example\n* var isFiniteArray = require( '@stdlib/assert/is-finite-array' ).objects;\n*\n* var bool = isFiniteArray( [ new Number(1.0), new Number(3.0) ] );\n* // returns true\n*\n* bool = isFiniteArray( [ -1.0, 0.0, 3.0 ] );\n* // returns false\n*\n* bool = isFiniteArray( [ 3.0, new Number(-1.0) ] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isFinite = require( './../../is-finite' ); // eslint-disable-line stdlib/no-redeclare\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar arrayfun = require( './../../tools/array-like-function' );\n\n\n// VARIABLES //\n\nvar isPrimitiveArray = arrayfun( isFinite.isPrimitive );\nvar isObjectArray = arrayfun( isFinite.isObject );\n\n\n// MAIN //\n\nvar isFiniteArray = arrayfun( isFinite );\nsetReadOnly( isFiniteArray, 'primitives', isPrimitiveArray );\nsetReadOnly( isFiniteArray, 'objects', isObjectArray );\n\n\n// EXPORTS //\n\nmodule.exports = isFiniteArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isMatrixLike = require( './../../is-matrix-like' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a 2-dimensional ndarray-like object whose underlying data type is `float32`.\n*\n* @param {*} v - value to test\n* @returns {boolean} boolean indicating if a value is a 2-dimensional ndarray-like object whose underlying data type is `float32`\n*\n* @example\n* var Float32Array = require( '@stdlib/array/float32' );\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n*\n* var buffer = new Float32Array( [ 0, 0, 0, 0 ] );\n* var arr = ndarray( 'float32', buffer, [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n*\n* var bool = isFloat32MatrixLike( arr );\n* // returns true\n*\n* bool = isFloat32MatrixLike( [] );\n* // returns false\n*/\nfunction isFloat32MatrixLike( v ) {\n\treturn ( isMatrixLike( v ) && v.dtype === 'float32' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isFloat32MatrixLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a 2-dimensional ndarray-like object whose underlying data type is `float32`.\n*\n* @module @stdlib/assert/is-float32matrix-like\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n* var Float32Array = require( '@stdlib/array/float32' );\n* var isFloat32MatrixLike = require( '@stdlib/assert/is-float32matrix-like' );\n*\n* var buffer = new Float32Array( [ 0, 0, 0, 0 ] );\n*\n* var arr = ndarray( 'float32', buffer, [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n*\n* var bool = isFloat32MatrixLike( arr );\n* // returns true\n*\n* bool = isFloat32MatrixLike( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isFloat32MatrixLike = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = isFloat32MatrixLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isndarrayLike = require( './../../is-ndarray-like' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is an ndarray-like object whose underlying data type is `float32`.\n*\n* @param {*} v - value to test\n* @returns {boolean} boolean indicating if a value is an ndarray-like object whose underlying data type is `float32`\n*\n* @example\n* var Float32Array = require( '@stdlib/array/float32' );\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n*\n* var buffer = new Float32Array( [ 0, 0, 0, 0 ] );\n* var arr = ndarray( 'float32', buffer, [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n*\n* var bool = isFloat32ndarrayLike( arr );\n* // returns true\n*\n* bool = isFloat32ndarrayLike( [] );\n* // returns false\n*/\nfunction isFloat32ndarrayLike( v ) {\n\treturn ( isndarrayLike( v ) && v.dtype === 'float32' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isFloat32ndarrayLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an ndarray-like object whose underlying data type is `float32`.\n*\n* @module @stdlib/assert/is-float32ndarray-like\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n* var Float32Array = require( '@stdlib/array/float32' );\n* var isFloat32ndarrayLike = require( '@stdlib/assert/is-float32ndarray-like' );\n*\n* var buffer = new Float32Array( [ 0, 0, 0, 0 ] );\n*\n* var arr = ndarray( 'float32', buffer, [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n*\n* var bool = isFloat32ndarrayLike( arr );\n* // returns true\n*\n* bool = isFloat32ndarrayLike( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isFloat32ndarrayLike = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = isFloat32ndarrayLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isVectorLike = require( './../../is-vector-like' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a 1-dimensional ndarray-like object whose underlying data type is `float32`.\n*\n* @param {*} v - value to test\n* @returns {boolean} boolean indicating if a value is a 1-dimensional ndarray-like object whose underlying data type is `float32`\n*\n* @example\n* var Float32Array = require( '@stdlib/array/float32' );\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n*\n* var buffer = new Float32Array( [ 0, 0, 0, 0 ] );\n* var arr = ndarray( 'float32', buffer, [ 4 ], [ 1 ], 0, 'row-major' );\n*\n* var bool = isFloat32VectorLike( arr );\n* // returns true\n*\n* bool = isFloat32VectorLike( [] );\n* // returns false\n*/\nfunction isFloat32VectorLike( v ) {\n\treturn ( isVectorLike( v ) && v.dtype === 'float32' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isFloat32VectorLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a 1-dimensional ndarray-like object whose underlying data type is `float32`.\n*\n* @module @stdlib/assert/is-float32vector-like\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n* var Float32Array = require( '@stdlib/array/float32' );\n* var isFloat32VectorLike = require( '@stdlib/assert/is-float32vector-like' );\n*\n* var buffer = new Float32Array( [ 0, 0, 0, 0 ] );\n*\n* var arr = ndarray( 'float32', buffer, [ 4 ], [ 1 ], 0, 'row-major' );\n*\n* var bool = isFloat32VectorLike( arr );\n* // returns true\n*\n* bool = isFloat32VectorLike( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isFloat32VectorLike = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = isFloat32VectorLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isMatrixLike = require( './../../is-matrix-like' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a 2-dimensional ndarray-like object whose underlying data type is `float64`.\n*\n* @param {*} v - value to test\n* @returns {boolean} boolean indicating if a value is a 2-dimensional ndarray-like object whose underlying data type is `float64`\n*\n* @example\n* var Float64Array = require( '@stdlib/array/float64' );\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n*\n* var buffer = new Float64Array( [ 0, 0, 0, 0 ] );\n* var arr = ndarray( 'float64', buffer, [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n*\n* var bool = isFloat64MatrixLike( arr );\n* // returns true\n*\n* bool = isFloat64MatrixLike( [] );\n* // returns false\n*/\nfunction isFloat64MatrixLike( v ) {\n\treturn ( isMatrixLike( v ) && v.dtype === 'float64' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isFloat64MatrixLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a 2-dimensional ndarray-like object whose underlying data type is `float64`.\n*\n* @module @stdlib/assert/is-float64matrix-like\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n* var Float64Array = require( '@stdlib/array/float64' );\n* var isFloat64MatrixLike = require( '@stdlib/assert/is-float64matrix-like' );\n*\n* var buffer = new Float64Array( [ 0, 0, 0, 0 ] );\n*\n* var arr = ndarray( 'float64', buffer, [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n*\n* var bool = isFloat64MatrixLike( arr );\n* // returns true\n*\n* bool = isFloat64MatrixLike( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isFloat64MatrixLike = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = isFloat64MatrixLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isndarrayLike = require( './../../is-ndarray-like' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is an ndarray-like object whose underlying data type is `float64`.\n*\n* @param {*} v - value to test\n* @returns {boolean} boolean indicating if a value is an ndarray-like object whose underlying data type is `float64`\n*\n* @example\n* var Float64Array = require( '@stdlib/array/float64' );\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n*\n* var buffer = new Float64Array( [ 0, 0, 0, 0 ] );\n* var arr = ndarray( 'float64', buffer, [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n*\n* var bool = isFloat64ndarrayLike( arr );\n* // returns true\n*\n* bool = isFloat64ndarrayLike( [] );\n* // returns false\n*/\nfunction isFloat64ndarrayLike( v ) {\n\treturn ( isndarrayLike( v ) && v.dtype === 'float64' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isFloat64ndarrayLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an ndarray-like object whose underlying data type is `float64`.\n*\n* @module @stdlib/assert/is-float64ndarray-like\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n* var Float64Array = require( '@stdlib/array/float64' );\n* var isFloat64ndarrayLike = require( '@stdlib/assert/is-float64ndarray-like' );\n*\n* var buffer = new Float64Array( [ 0, 0, 0, 0 ] );\n*\n* var arr = ndarray( 'float64', buffer, [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n*\n* var bool = isFloat64ndarrayLike( arr );\n* // returns true\n*\n* bool = isFloat64ndarrayLike( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isFloat64ndarrayLike = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = isFloat64ndarrayLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isVectorLike = require( './../../is-vector-like' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a 1-dimensional ndarray-like object whose underlying data type is `float64`.\n*\n* @param {*} v - value to test\n* @returns {boolean} boolean indicating if a value is a 1-dimensional ndarray-like object whose underlying data type is `float64`\n*\n* @example\n* var Float64Array = require( '@stdlib/array/float64' );\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n*\n* var buffer = new Float64Array( [ 0, 0, 0, 0 ] );\n* var arr = ndarray( 'float64', buffer, [ 4 ], [ 1 ], 0, 'row-major' );\n*\n* var bool = isFloat64VectorLike( arr );\n* // returns true\n*\n* bool = isFloat64VectorLike( [] );\n* // returns false\n*/\nfunction isFloat64VectorLike( v ) {\n\treturn ( isVectorLike( v ) && v.dtype === 'float64' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isFloat64VectorLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a 1-dimensional ndarray-like object whose underlying data type is `float64`.\n*\n* @module @stdlib/assert/is-float64vector-like\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n* var Float64Array = require( '@stdlib/array/float64' );\n* var isFloat64VectorLike = require( '@stdlib/assert/is-float64vector-like' );\n*\n* var buffer = new Float64Array( [ 0, 0, 0, 0 ] );\n* var arr = ndarray( 'float64', buffer, [ 4 ], [ 1 ], 0, 'row-major' );\n*\n* var bool = isFloat64VectorLike( arr );\n* // returns true\n*\n* bool = isFloat64VectorLike( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isFloat64VectorLike = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = isFloat64VectorLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array-like object containing only functions.\n*\n* @module @stdlib/assert/is-function-array\n*\n* @example\n* var isFunctionArray = require( '@stdlib/assert/is-function-array' );\n*\n* function beep() {}\n*\n* function boop() {}\n*\n* var bool = isFunctionArray( [ beep, boop ] );\n* // returns true\n*\n* bool = isFunctionArray( [ {}, beep ] );\n* // returns false\n*\n* bool = isFunctionArray( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar arrayfun = require( './../../tools/array-like-function' );\nvar isFunction = require( './../../is-function' );\n\n\n// MAIN //\n\nvar isFunctionArray = arrayfun( isFunction );\n\n\n// EXPORTS //\n\nmodule.exports = isFunctionArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar hasGeneratorSupport = require( './../../has-generator-support' );\nvar nativeClass = require( '@stdlib/utils/native-class' );\n\n\n// VARIABLES //\n\nvar hasGenerators = hasGeneratorSupport();\n\n\n// MAIN //\n\n/**\n* Tests if a value is a generator object.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a generator object\n*\n* @example\n* function* generateID() {\n* var idx = 0;\n* while ( idx < idx+1 ) {\n* yield idx;\n* idx += 1;\n* }\n* }\n* var bool = isGeneratorObject( generateID() );\n* // returns true\n*\n* @example\n* var bool = isGeneratorObject( {} );\n* // returns false\n*\n* @example\n* var bool = isGeneratorObject( null );\n* // returns false\n*/\nfunction isGeneratorObject( value ) {\n\treturn ( hasGenerators && nativeClass( value ) === '[object Generator]' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isGeneratorObject;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a generator object.\n*\n* @module @stdlib/assert/is-generator-object\n*\n* @example\n* var isGeneratorObject = require( '@stdlib/assert/is-generator-object' );\n*\n* function* generateID() {\n* var idx = 0;\n* while ( idx < idx+1 ) {\n* yield idx;\n* idx += 1;\n* }\n* }\n*\n* var bool = isGeneratorObject( generateID() );\n* // returns true\n*\n* bool = isGeneratorObject( generateID );\n* // returns false\n*\n* bool = isGeneratorObject( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\n/**\n* Tests if a value is generator object-like.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is generator object-like\n*\n* @example\n* var gen = {\n* 'next': function noop() {},\n* 'return': function noop() {},\n* 'throw': function noop() {}\n* };\n* var bool = isGeneratorObjectLike( gen );\n* // returns true\n*\n* @example\n* function* generateID() {\n* var idx = 0;\n* while ( idx < idx+1 ) {\n* yield idx;\n* idx += 1;\n* }\n* }\n* var bool = isGeneratorObjectLike( generateID() );\n* // returns true\n*\n* @example\n* var bool = isGeneratorObjectLike( {} );\n* // returns false\n*\n* @example\n* var bool = isGeneratorObjectLike( null );\n* // returns false\n*/\nfunction isGeneratorObjectLike( value ) {\n\treturn (\n\t\tvalue !== null &&\n\t\ttypeof value === 'object' &&\n\t\ttypeof value.next === 'function' &&\n\t\ttypeof value.return === 'function' &&\n\t\ttypeof value.throw === 'function'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isGeneratorObjectLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is generator object-like.\n*\n* @module @stdlib/assert/is-generator-object-like\n*\n* @example\n* var isGeneratorObjectLike = require( '@stdlib/assert/is-generator-object-like' );\n*\n* var gen = {\n* 'next': function noop() {},\n* 'return': function noop() {},\n* 'throw': function noop() {}\n* };\n* var bool = isGeneratorObjectLike( gen );\n* // returns true\n*\n* bool = isGeneratorObjectLike( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isUint8Array = require( './../../is-uint8array' );\nvar isBuffer = require( './../../is-buffer' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a gzip buffer (or Uint8Array).\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is a gzip buffer\n*\n* @example\n* var Uint8Array = require( '@stdlib/array/uint8' );\n*\n* var buf = new Uint8Array( 20 );\n* buf[ 0 ] = 31; // 0x1f => magic number\n* buf[ 1 ] = 139; // 0x8b\n* buf[ 2 ] = 8; // 0x08 => compression method\n*\n* var bool = isgzipBuffer( buf );\n* // returns true\n*\n* @example\n* var Uint8Array = require( '@stdlib/array/uint8' );\n*\n* var bool = isgzipBuffer( new Uint8Array( 20 ) );\n* // returns false\n*\n* @example\n* var bool = isgzipBuffer( [] );\n* // returns false\n*/\nfunction isgzipBuffer( value ) {\n\tif ( !isUint8Array( value ) && !isBuffer( value ) ) {\n\t\treturn false;\n\t}\n\tif ( value.length < 19 ) { // 10-byte header + 8-byte footer + payload\n\t\treturn false;\n\t}\n\treturn (\n\t\t// Check for expected magic number:\n\t\tvalue[ 0 ] === 0x1F &&\n\t\tvalue[ 1 ] === 0x8B &&\n\n\t\t// Check for expected compression method:\n\t\tvalue[ 2 ] === 0x08\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isgzipBuffer;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a gzip buffer (or Uint8Array).\n*\n* @module @stdlib/assert/is-gzip-buffer\n*\n* @example\n* var Uint8Array = require( '@stdlib/array/uint8' );\n* var isgzipBuffer = require( '@stdlib/assert/is-gzip-buffer' );\n*\n* var buf = new Uint8Array( 20 );\n* buf[ 0 ] = 31; // 0x1f => magic number\n* buf[ 1 ] = 139; // 0x8b\n* buf[ 2 ] = 8; // 0x08 => compression method\n*\n* var bool = isgzipBuffer( buf );\n* // returns true\n*\n* bool = isgzipBuffer( new Uint8Array( 20 ) );\n* // returns false\n*\n* bool = isgzipBuffer( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\n\n\n// VARIABLES //\n\n// Character codes:\nvar ZERO = 48;\nvar NINE = 57;\nvar A = 65;\nvar F = 70;\nvar a = 97;\nvar f = 102;\n\n\n// MAIN //\n\n/**\n* Tests whether a string contains only hexadecimal digits.\n*\n* @param {*} x - value to test\n* @returns {boolean} boolean indicating if a string contains only hexadecimal digits\n*\n* @example\n* var out = isHexString( '0123456789abcdefABCDEF' );\n* // returns true\n*\n* @example\n* var out = isHexString( '0xffffff' );\n* // returns false\n*\n* @example\n* var out = isHexString( '' );\n* // returns false\n*\n* @example\n* var out = isHexString( 123 );\n* // returns false\n*/\nfunction isHexString( x ) {\n\tvar len;\n\tvar ch;\n\tvar i;\n\tif ( !isString( x ) ) {\n\t\treturn false;\n\t}\n\tlen = x.length;\n\tif ( !len ) {\n\t\treturn false;\n\t}\n\tfor ( i = 0; i < len; i++ ) {\n\t\tch = x.charCodeAt( i );\n\t\tif (\n\t\t\tch < ZERO ||\n\t\t\t( ch > NINE && ch < A ) ||\n\t\t\t( ch > F && ch < a ) ||\n\t\t\tch > f\n\t\t) {\n\t\t\treturn false;\n\t\t}\n\t}\n\treturn true;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isHexString;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether a string contains only hexadecimal digits.\n*\n* @module @stdlib/assert/is-hex-string\n*\n* @example\n* var isHexString = require( '@stdlib/assert/is-hex-string' );\n*\n* var out = isHexString( '0123456789abcdefABCDEF' );\n* // returns true\n*\n* out = isHexString( '0xffffff' );\n* // returns false\n*\n* out = isHexString( '' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isPrimitive;\nvar isinf = require( '@stdlib/math/base/assert/is-infinite' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number primitive having an infinite value.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number primitive having an infinite value\n*\n* @example\n* var bool = isInfinite( -1.0/0.0 );\n* // returns true\n*\n* @example\n* var bool = isInfinite( new Number( -1.0/0.0 ) );\n* // returns false\n*/\nfunction isInfinite( value ) {\n\treturn (\n\t\tisNumber( value ) &&\n\t\tisinf( value )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isInfinite;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isObject;\nvar isinf = require( '@stdlib/math/base/assert/is-infinite' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number object having an infinite value.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number object having an infinite value\n*\n* @example\n* var bool = isInfinite( 1.0/0.0 );\n* // returns false\n*\n* @example\n* var bool = isInfinite( new Number( 1.0/0.0 ) );\n* // returns true\n*/\nfunction isInfinite( value ) {\n\treturn (\n\t\tisNumber( value ) &&\n\t\tisinf( value.valueOf() )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isInfinite;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is an infinite number.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is an infinite number\n*\n* @example\n* var bool = isInfinite( 1.0/0.0 );\n* // returns true\n*\n* @example\n* var bool = isInfinite( new Number( 1.0/0.0 ) );\n* // returns true\n*\n* @example\n* var bool = isInfinite( 5.0 );\n* // returns false\n*\n* @example\n* var bool = isInfinite( null );\n* // returns false\n*/\nfunction isInfinite( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isInfinite;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an infinite number.\n*\n* @module @stdlib/assert/is-infinite\n*\n* @example\n* var isInfinite = require( '@stdlib/assert/is-infinite' );\n*\n* var bool = isInfinite( 1.0/0.0 );\n* // returns true\n*\n* bool = isInfinite( new Number( 1.0/0.0 ) );\n* // returns true\n*\n* bool = isInfinite( 5.0 );\n* // returns false\n*\n* bool = isInfinite( null );\n* // returns false\n*\n* @example\n* var isInfinite = require( '@stdlib/assert/is-infinite' ).isPrimitive;\n*\n* var bool = isInfinite( -1.0/0.0 );\n* // returns true\n*\n* bool = isInfinite( new Number( -1.0/0.0 ) );\n* // returns false\n*\n* @example\n* var isInfinite = require( '@stdlib/assert/is-infinite' ).isObject;\n*\n* var bool = isInfinite( 1.0/0.0 );\n* // returns false\n*\n* bool = isInfinite( new Number( 1.0/0.0 ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar hasOwnProp = require( './../../has-own-property' );\n\n\n// MAIN //\n\n/**\n* Tests if an object has an inherited property.\n*\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object has an inherited property\n*\n* @example\n* var obj = {\n* 'boop': true\n* };\n*\n* var bool = isInheritedProperty( obj, 'toString' );\n* // returns true\n*\n* @example\n* var obj = {\n* 'boop': true\n* };\n*\n* var bool = isInheritedProperty( obj, 'boop' );\n* // returns false\n*\n* @example\n* var obj = {\n* 'boop': true\n* };\n*\n* var bool = isInheritedProperty( obj, 'bap' );\n* // returns false\n*/\nfunction isInheritedProperty( value, property ) {\n\tif ( value === void 0 || value === null || hasOwnProp( value, property ) ) {\n\t\treturn false;\n\t}\n\tif ( typeof property === 'symbol' ) {\n\t\treturn property in Object( value );\n\t}\n\treturn ( String( property ) in Object( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isInheritedProperty;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object has an inherited property.\n*\n* @module @stdlib/assert/is-inherited-property\n*\n* @example\n* var isInheritedProperty = require( '@stdlib/assert/is-inherited-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* var bool = isInheritedProperty( obj, 'toString' );\n* // returns true\n*\n* bool = isInheritedProperty( obj, 'boop' );\n* // returns false\n*\n* bool = isInheritedProperty( obj, 'bop' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array-like object containing only integers.\n*\n* @module @stdlib/assert/is-integer-array\n*\n* @example\n* var isIntegerArray = require( '@stdlib/assert/is-integer-array' );\n*\n* var bool = isIntegerArray( [ -3.0, new Number(0.0), 2.0 ] );\n* // returns true\n*\n* bool = isIntegerArray( [ -3.0, '3.0' ] );\n* // returns false\n*\n* @example\n* var isIntegerArray = require( '@stdlib/assert/is-integer-array' ).primitives;\n*\n* var bool = isIntegerArray( [ -1.0, 10.0 ] );\n* // returns true\n*\n* bool = isIntegerArray( [ -1.0, 0.0, 5.0 ] );\n* // returns true\n*\n* bool = isIntegerArray( [ -3.0, new Number(-1.0) ] );\n* // returns false\n*\n* @example\n* var isIntegerArray = require( '@stdlib/assert/is-integer-array' ).objects;\n*\n* var bool = isIntegerArray( [ new Number(1.0), new Number(3.0) ] );\n* // returns true\n*\n* bool = isIntegerArray( [ -1.0, 0.0, 3.0 ] );\n* // returns false\n*\n* bool = isIntegerArray( [ 3.0, new Number(-1.0) ] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isInteger = require( './../../is-integer' );\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar arrayfun = require( './../../tools/array-like-function' );\n\n\n// VARIABLES //\n\nvar isPrimitiveArray = arrayfun( isInteger.isPrimitive );\nvar isObjectArray = arrayfun( isInteger.isObject );\n\n\n// MAIN //\n\nvar isIntegerArray = arrayfun( isInteger );\nsetReadOnly( isIntegerArray, 'primitives', isPrimitiveArray );\nsetReadOnly( isIntegerArray, 'objects', isObjectArray );\n\n\n// EXPORTS //\n\nmodule.exports = isIntegerArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Tests if a value is a JavaScript primitive.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a JavaScript primitive\n*\n* @example\n* var bool = isPrimitive( true );\n* // returns true\n*\n* @example\n* var bool = isPrimitive( {} );\n* // returns false\n*/\nfunction isPrimitive( value ) {\n\tvar type = typeof value;\n\treturn (\n\t\ttype === 'string' ||\n\t\ttype === 'number' ||\n\t\ttype === 'boolean' ||\n\t\ttype === 'symbol' || // ES6/ES2015\n\t\ttype === 'bigint' || // ES11/ES2020\n\t\tvalue === null ||\n\t\tvalue === void 0\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isPrimitive;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a JavaScript primitive.\n*\n* @module @stdlib/assert/is-primitive\n*\n* @example\n* var isPrimitive = require( '@stdlib/assert/is-primitive' );\n*\n* var bool = isPrimitive( true );\n* // returns true\n*\n* bool = isPrimitive( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isFunction = require( './../../is-function' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is iterator-like.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is iterator-like\n*\n* @example\n* var it = {\n* 'next': function noop() {}\n* };\n* var bool = isIteratorLike( it );\n* // returns true\n*\n* @example\n* var bool = isIteratorLike( {} );\n* // returns false\n*\n* @example\n* var bool = isIteratorLike( null );\n* // returns false\n*/\nfunction isIteratorLike( value ) {\n\tvar t = typeof value;\n\treturn (\n\t\tvalue !== null &&\n\t\t( t === 'object' || t === 'function' ) &&\n\t\tisFunction( value.next )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isIteratorLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is iterator-like.\n*\n* @module @stdlib/assert/is-iterator-like\n*\n* @example\n* var isIteratorLike = require( '@stdlib/assert/is-iterator-like' );\n*\n* var it = {\n* 'next': function noop() {}\n* };\n* var bool = isIteratorLike( it );\n* // returns true\n*\n* bool = isIteratorLike( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './../../is-primitive' );\nvar isFunction = require( './../../is-function' );\nvar ITERATOR = require( '@stdlib/symbol/iterator' );\nvar isIteratorLike = require( './../../is-iterator-like' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is iterable-like.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is iterable-like\n*\n* @example\n* var bool = isIterableLike( [] );\n* // returns \n*\n* @example\n* var bool = isIterableLike( {} );\n* // returns false\n*\n* @example\n* var bool = isIterableLike( null );\n* // returns false\n*/\nfunction isIterableLike( value ) {\n\tvar f;\n\tif ( isPrimitive( value ) ) {\n\t\treturn false;\n\t}\n\tf = value[ ITERATOR ];\n\treturn (\n\t\tisFunction( f ) &&\n\t\tf.length === 0 &&\n\t\tisIteratorLike( value[ ITERATOR ]() ) // Why this form? In order to preserve `this`.\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isIterableLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is iterable-like.\n*\n* @module @stdlib/assert/is-iterable-like\n*\n* @example\n* var isIterableLike = require( '@stdlib/assert/is-iterable-like' );\n*\n* var bool = isIterableLike( [] );\n* // returns \n*\n* bool = isIterableLike( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar hasIteratorSymbolSupport = require( './../../has-iterator-symbol-support' );\nvar constantFunction = require( '@stdlib/utils/constant-function' );\nvar main = require( './main.js' );\n\n\n// MAIN //\n\nvar isIterable;\nif ( hasIteratorSymbolSupport() ) {\n\tisIterable = main;\n} else {\n\tisIterable = constantFunction( false );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isIterable;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// VARIABLES //\n\n/**\n* Detects a JSON string.\n*\n* Regular expression: `/^\\{[\\s\\S]*\\}$|^\\[[\\s\\S]*\\]$/`\n*\n* - `^\\{`\n*\n* - match a `{` literal which is the first character\n*\n* - `[\\s\\S]*`\n*\n* - match any whitespace and non-whitespace characters which occur `0` or more times\n*\n* - `\\}$`\n*\n* - match a `}` literal which is the last character\n*\n* - `|`\n*\n* - alternatively\n*\n* - `^\\[`\n*\n* - match a `[` literal which is the first character\n*\n* - `[\\s\\S]*`\n*\n* - match any whitespace and non-whitespace characters which occur `0` or more times\n*\n* - `\\]$`\n*\n* - match a `]` literal which is the last character\n*\n*\n* Example matching strings:\n*\n* - `'{}'`\n* - `'[]'`\n* - `'{adjlkfaj3743.,><\\n\\t\\rdf}'`\n* - `'[adjlkfaj3743.,><\\n\\t\\rdf]'`\n* - `'{\"a\":5}'`\n*\n* @constant\n* @type {RegExp}\n* @default /^\\{[\\s\\S]*\\}$|^\\[[\\s\\S]*\\]$/\n*/\nvar re = /^\\{[\\s\\S]*\\}$|^\\[[\\s\\S]*\\]$/;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a parseable JSON string.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a parseable JSON string\n*\n* @example\n* var v = isJSON( '{\"a\":5}' );\n* // returns true\n*\n* @example\n* var v = isJSON( '{a\":5}' );\n* // returns false\n*/\nfunction isJSON( value ) {\n\tif ( typeof value !== 'string' ) {\n\t\treturn false;\n\t}\n\tif ( !re.test( value ) ) {\n\t\treturn false;\n\t}\n\ttry {\n\t\tJSON.parse( value );\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\treturn false;\n\t}\n\treturn true;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isJSON;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a parseable JSON string.\n*\n* @module @stdlib/assert/is-json\n*\n* @example\n* var isJSON = require( '@stdlib/assert/is-json' );\n*\n* var v = isJSON( '{\"a\":5}' );\n* // returns true\n*\n* v = isJSON( '{a\":5}' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2022 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\nvar kebabcase = require( '@stdlib/string/base/kebabcase' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a string in kebab case.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is a string in kebab case\n*\n* @example\n* var bool = isKebabcase( 'beep-boop' );\n* // returns true\n*\n* @example\n* var bool = isKebabcase( 'Beep-boop' );\n* // returns false\n*\n* @example\n* var bool = isKebabcase( 'BEEP_BOOP' );\n* // returns false\n*\n* @example\n* var bool = isKebabcase( 1 );\n* // returns false\n*/\nfunction isKebabcase( value ) {\n\treturn ( isString( value ) && kebabcase( value ) === value );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isKebabcase;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2022 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a string in kebab case.\n*\n* @module @stdlib/assert/is-kebabcase\n*\n* @example\n* var isKebabcase = require( '@stdlib/assert/is-kebabcase' );\n*\n* var bool = isKebabcase( 'beep-boop' );\n* // returns true\n*\n* bool = isKebabcase( 'BEEP_BOOP' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isDateObject = require( './../../is-date-object' );\nvar isInteger = require( './../../is-integer' ).isPrimitive;\nvar currentYear = require( '@stdlib/time/current-year' );\n\n\n// MAIN //\n\n/**\n* Tests whether a value corresponds to a leap year in the Gregorian calendar.\n*\n* ## Notes\n*\n* - According to the Gregorian calendar, every year that is exactly divisible by `4` is a leap year, except those years which are also divisible by `100` and not by `400` (e.g., `1900`).\n*\n* @param {*} [value] - input value\n* @returns {boolean} boolean whether a value corresponds to a leap year\n*\n* @example\n* var bool = isLeapYear();\n* // returns \n*\n* @example\n* var bool = isLeapYear( new Date() );\n* // returns \n*\n* @example\n* var bool = isLeapYear( 1996 );\n* // returns true\n*\n* @example\n* var bool = isLeapYear( 2001 );\n* // returns false\n*/\nfunction isLeapYear( value ) {\n\tvar yr;\n\tif ( arguments.length ) {\n\t\tif ( isDateObject( value ) ) {\n\t\t\tyr = value.getFullYear();\n\t\t} else if ( isInteger( value ) ) {\n\t\t\tyr = value;\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t} else {\n\t\t// Note: cannot cache, as possible for application to cross into a new year:\n\t\tyr = currentYear();\n\t}\n\t// Special case if year is a new century...\n\tif ( (yr % 100) === 0 ) {\n\t\t// Centuries are only leap years at the end of \"leap cycles\" which happen every `400` years:\n\t\treturn ( (yr % 400) === 0 );\n\t}\n\t// All other years which are exactly divisible by `4` are leap years:\n\treturn ( (yr % 4) === 0 );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isLeapYear;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether a value corresponds to a leap year in the Gregorian calendar.\n*\n* @module @stdlib/assert/is-leap-year\n*\n* @example\n* var isLeapYear = require( '@stdlib/assert/is-leap-year' );\n*\n* var bool = isLeapYear();\n* // returns \n*\n* bool = isLeapYear( new Date() );\n* // returns \n*\n* bool = isLeapYear( 1996 );\n* // returns true\n*\n* bool = isLeapYear( 2001 );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar Uint8Array = require( '@stdlib/array/uint8' );\nvar Uint16Array = require( '@stdlib/array/uint16' );\n\n\n// MAIN //\n\nvar ctors = {\n\t'uint16': Uint16Array,\n\t'uint8': Uint8Array\n};\n\n\n// EXPORTS //\n\nmodule.exports = ctors;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar ctors = require( './ctors.js' );\n\n\n// VARIABLES //\n\nvar bool;\n\n\n// FUNCTIONS //\n\n/**\n* Returns a boolean indicating if an environment is little endian.\n*\n* @private\n* @returns {boolean} boolean indicating if an environment is little endian\n*\n* @example\n* var bool = isLittleEndian();\n* // returns \n*/\nfunction isLittleEndian() {\n\tvar uint16view;\n\tvar uint8view;\n\n\tuint16view = new ctors[ 'uint16' ]( 1 );\n\n\t/*\n\t* Set the uint16 view to a value having distinguishable lower and higher order words.\n\t*\n\t* 4660 => 0x1234 => 0x12 0x34 => '00010010 00110100' => (0x12,0x34) == (18,52)\n\t*/\n\tuint16view[ 0 ] = 0x1234;\n\n\t// Create a uint8 view on top of the uint16 buffer:\n\tuint8view = new ctors[ 'uint8' ]( uint16view.buffer );\n\n\t// If little endian, the least significant byte will be first...\n\treturn ( uint8view[ 0 ] === 0x34 );\n}\n\n\n// MAIN //\n\nbool = isLittleEndian();\n\n\n// EXPORTS //\n\nmodule.exports = bool;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Return a boolean indicating if an environment is little endian.\n*\n* @module @stdlib/assert/is-little-endian\n*\n* @example\n* var IS_LITTLE_ENDIAN = require( '@stdlib/assert/is-little-endian' );\n*\n* var bool = IS_LITTLE_ENDIAN;\n* // returns \n*/\n\n// MODULES //\n\nvar IS_LITTLE_ENDIAN = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = IS_LITTLE_ENDIAN;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\n\n\n// VARIABLES //\n\n// IPv4 127.0.0.0/8 address block:\nvar RE_LOCALHOST_IPV4 = /^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/;\n\n\n// MAIN //\n\n/**\n* Tests whether a value is a localhost hostname.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a localhost hostname\n*\n* @example\n* var bool = isLocalhost( 'localhost' );\n* // returns true\n*\n* @example\n* var bool = isLocalhost( '127.0.0.1' );\n* // returns true\n*\n* @example\n* var bool = isLocalhost( '[::1]' );\n* // returns true\n*\n* @example\n* var bool = isLocalhost( 'wikipedia.org' );\n* // returns false\n*\n* @example\n* var bool = isLocalhost( 'stdlib.io' );\n* // returns false\n*\n* @example\n* var bool = isLocalhost( null );\n* // returns false\n*/\nfunction isLocalhost( value ) {\n\tif ( !isString( value ) ) {\n\t\treturn false;\n\t}\n\treturn (\n\t\tvalue === 'localhost' || value === 'LOCALHOST' ||\n\n\t\t// IPv6 localhost address:\n\t\tvalue === '[::1]' ||\n\n\t\tRE_LOCALHOST_IPV4.test( value )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isLocalhost;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether a value is is a localhost hostname.\n*\n* @module @stdlib/assert/is-localhost\n*\n* @example\n* var isLocalhost = require( '@stdlib/assert/is-localhost' );\n*\n* var bool = isLocalhost( 'localhost' );\n* // returns true\n*\n* bool = isLocalhost( '127.0.0.1' );\n* // returns true\n*\n* bool = isLocalhost( '[::1]' );\n* // returns true\n*\n* bool = isLocalhost( 'stdlib.io' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar lowercase = require( '@stdlib/string/lowercase' );\nvar uppercase = require( '@stdlib/string/uppercase' );\nvar isString = require( './../../is-string' ).isPrimitive;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a lowercase string.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a lowercase string\n*\n* @example\n* var bool = isLowercase( 'salt and light' );\n* // returns true\n*\n* @example\n* var bool = isLowercase( 'HELLO' );\n* // returns false\n*\n* @example\n* var bool = isLowercase( 'World' );\n* // returns false\n*\n* @example\n* var bool = isLowercase( '!' );\n* // returns false\n*/\nfunction isLowercase( value ) {\n\treturn (\n\t\tisString( value ) &&\n\t\tvalue === lowercase( value ) &&\n\t\tvalue !== uppercase( value )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isLowercase;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a lowercase string.\n*\n* @module @stdlib/assert/is-lowercase\n*\n* @example\n* var isLowercase = require( '@stdlib/assert/is-lowercase' );\n*\n* var bool = isLowercase( 'hello' );\n* // returns true\n*\n* bool = isLowercase( 'World' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar hasOwnProp = require( './../../has-own-property' );\nvar isFunction = require( './../../is-function' );\n\n\n// MAIN //\n\n/**\n* Tests if an object has a specified method name.\n*\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object has a specified method name\n*\n* @example\n* var beep = {\n* 'boop': isMethod\n* };\n*\n* var bool = isMethod( beep, 'boop' );\n* // returns true\n*\n* var bool = isMethod( beep, 'toString' );\n* // returns false\n*/\nfunction isMethod( value, property ) {\n\treturn (\n\t\thasOwnProp( value, property ) &&\n\t\tisFunction( value[ property ] )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isMethod;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object has a specified method name.\n*\n* @module @stdlib/assert/is-method\n*\n* @example\n* var isMethod = require( '@stdlib/assert/is-method' );\n*\n* var beep = {\n* 'boop': isMethod\n* };\n*\n* var bool = isMethod( beep, 'boop' );\n* // returns true\n*\n* bool = isMethod( beep, 'toString' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isFunction = require( './../../is-function' );\nvar Object = require( '@stdlib/object/ctor' );\n\n\n// MAIN //\n\n/**\n* Tests if an object has a specified method name, either own or inherited.\n*\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object has a specified method name\n*\n* @example\n* var beep = {\n* 'boop': true\n* };\n*\n* var bool = isMethodIn( beep, 'toString' );\n* // returns true\n*\n* bool = isMethodIn( beep, 'boop' );\n* // returns false\n*/\nfunction isMethodIn( value, property ) {\n\tif ( value === void 0 || value === null ) {\n\t\treturn false;\n\t}\n\tvalue = Object( value );\n\tif ( typeof property !== 'symbol' ) {\n\t\tproperty = String( property );\n\t}\n\treturn (\n\t\t( property in value ) &&\n\t\tisFunction( value[ property ] )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isMethodIn;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object has a specified method name, either own or inherited.\n*\n* @module @stdlib/assert/is-method-in\n*\n* @example\n* var isMethodIn = require( '@stdlib/assert/is-method-in' );\n*\n* var beep = {\n* 'boop': true\n* };\n*\n* var bool = isMethodIn( beep, 'toString' );\n* // returns true\n*\n* bool = isMethodIn( beep, 'boop' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar constantFunction = require( '@stdlib/utils/constant-function' );\n\n\n// MAIN //\n\nvar isMobile = constantFunction( false );\n\n\n// EXPORTS //\n\nmodule.exports = isMobile;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Boolean indicating if the current environment is a mobile device.\n*\n* @module @stdlib/assert/is-mobile\n*\n* @example\n* var IS_MOBILE = require( '@stdlib/assert/is-mobile' );\n*\n* var bool = IS_MOBILE;\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// MAIN //\n\nvar bool = main();\n\n\n// EXPORTS //\n\nmodule.exports = bool;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2023 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar MultiSlice = require( '@stdlib/slice/multi' );\nvar constructorName = require( '@stdlib/utils/constructor-name' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a MultiSlice object.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a MultiSlice object\n*\n* @example\n* var MultiSlice = require( '@stdlib/slice/multi' );\n*\n* var s = new MultiSlice();\n*\n* var bool = isMultiSlice( s );\n* // returns true\n*/\nfunction isMultiSlice( value ) {\n\treturn (\n\t\tvalue instanceof MultiSlice ||\n\t\tconstructorName( value ) === 'MultiSlice'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isMultiSlice;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2023 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a MultiSlice object.\n*\n* @module @stdlib/assert/is-multi-slice\n*\n* @example\n* var MultiSlice = require( '@stdlib/slice/multi' );\n* var isMultiSlice = require( '@stdlib/assert/is-multi-slice' );\n*\n* var s = new MultiSlice();\n*\n* var bool = isMultiSlice( s );\n* // returns true\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isTypedArray = require( './../../is-typed-array' );\nvar hasOwnProp = require( './../../has-own-property' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is named typed tuple-like.\n*\n* @param {*} v - value to test\n* @returns {boolean} boolean indicating if a value is named typed tuple-like\n*\n* @example\n* var namedtypedtuple = require( '@stdlib/utils/named-typed-tuple' );\n*\n* var Point = namedtypedtuple( [ 'x', 'y' ] );\n*\n* var p = new Point();\n*\n* var bool = isNamedTypedTupleLike( p );\n* // returns true\n*\n* bool = isNamedTypedTupleLike( [] );\n* // returns false\n*/\nfunction isNamedTypedTupleLike( v ) {\n\treturn (\n\t\tisTypedArray( v ) &&\n\t\ttypeof v.fieldOf === 'function' &&\n\t\ttypeof v.findField === 'function' &&\n\t\ttypeof v.ind2key === 'function' &&\n\t\ttypeof v.key2ind === 'function' &&\n\t\ttypeof v.lastFieldOf === 'function' &&\n\t\ttypeof v.subtuple === 'function' &&\n\t\thasOwnProp( v, 'fields' ) &&\n\t\thasOwnProp( v, 'orderedFields' )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNamedTypedTupleLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is named typed tuple-like.\n*\n* @module @stdlib/assert/is-named-typed-tuple-like\n*\n* @example\n* var namedtypedtuple = require( '@stdlib/utils/named-typed-tuple' );\n* var isNamedTypedTupleLike = require( '@stdlib/assert/is-named-typed-tuple-like' );\n*\n* var Point = namedtypedtuple( [ 'x', 'y' ] );\n*\n* var p = new Point();\n*\n* var bool = isNamedTypedTupleLike( p );\n* // returns true\n*\n* bool = isNamedTypedTupleLike( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array-like object containing only `NaN` values.\n*\n* @module @stdlib/assert/is-nan-array\n*\n* @example\n* var isNaNArray = require( '@stdlib/assert/is-nan-array' );\n*\n* var bool = isNaNArray( [ NaN, NaN, NaN ] );\n* // returns true\n*\n* bool = isNaNArray( [ NaN, 2 ] );\n* // returns false\n*\n* bool = isNaNArray.primitives( [ NaN, new Number( NaN ) ] );\n* // returns false\n*\n* bool = isNaNArray.primitives( [ NaN, NaN, NaN ] );\n* // returns true\n*\n* bool = isNaNArray.objects( [ new Number( NaN ), new Number( NaN ) ] );\n* // returns true\n*\n* bool = isNaNArray.objects( [ NaN, new Number( NaN ), new Number( NaN ) ] );\n* // returns false\n*\n* bool = isNaNArray.objects( [ NaN, NaN, NaN ] );\n* // returns false\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar arrayfun = require( './../../tools/array-like-function' );\nvar isnan = require( './../../is-nan' );\n\n\n// VARIABLES //\n\nvar isPrimitiveArray = arrayfun( isnan.isPrimitive );\nvar isObjectArray = arrayfun( isnan.isObject );\n\n\n// MAIN //\n\nvar isNaNArray = arrayfun( isnan );\nsetReadOnly( isNaNArray, 'primitives', isPrimitiveArray );\nsetReadOnly( isNaNArray, 'objects', isObjectArray );\n\n\n// EXPORTS //\n\nmodule.exports = isNaNArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isFunction = require( './../../is-function' );\nvar reNativeFunction = require( '@stdlib/regexp/native-function' );\nvar function2string = require( '@stdlib/function/to-string' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a native function.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a native function\n*\n* @example\n* function beep() {\n* console.log( 'boop' );\n* }\n*\n* var bool = isNativeFunction( beep );\n* // returns false\n*\n* bool = isNativeFunction( Date );\n* // returns true\n*/\nfunction isNativeFunction( value ) {\n\treturn (\n\t\tisFunction( value ) &&\n\t\treNativeFunction.REGEXP.test( function2string( value ) )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNativeFunction;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a native function.\n*\n* @module @stdlib/assert/is-native-function\n*\n* @example\n* var isNativeFunction = require( '@stdlib/assert/is-native-function' );\n*\n* function beep() {\n* console.log( 'boop' );\n* }\n*\n* var bool = isNativeFunction( beep );\n* // returns false\n*\n* bool = isNativeFunction( Date );\n* // returns true\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInteger = require( './../../is-integer' ).isPrimitive;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number primitive having a negative integer value.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number primitive having a negative integer value\n*\n* @example\n* var bool = isNegativeInteger( -3.0 );\n* // returns true\n*\n* @example\n* var bool = isNegativeInteger( new Number( -3.0 ) );\n* // returns false\n*/\nfunction isNegativeInteger( value ) {\n\treturn (\n\t\tisInteger( value ) &&\n\t\tvalue < 0.0\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNegativeInteger;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInteger = require( './../../is-integer' ).isObject;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number object having a negative integer value.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number object having a negative integer value\n*\n* @example\n* var bool = isNegativeInteger( -3.0 );\n* // returns false\n*\n* @example\n* var bool = isNegativeInteger( new Number( -3.0 ) );\n* // returns true\n*/\nfunction isNegativeInteger( value ) {\n\treturn (\n\t\tisInteger( value ) &&\n\t\tvalue.valueOf() < 0.0\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNegativeInteger;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a negative integer.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a negative integer\n*\n* @example\n* var bool = isNegativeInteger( -5.0 );\n* // returns true\n*\n* @example\n* var bool = isNegativeInteger( new Number( -5.0 ) );\n* // returns true\n*\n* @example\n* var bool = isNegativeInteger( 5.0 );\n* // returns false\n*\n* @example\n* var bool = isNegativeInteger( -3.14 );\n* // returns false\n*\n* @example\n* var bool = isNegativeInteger( null );\n* // returns false\n*/\nfunction isNegativeInteger( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNegativeInteger;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a negative integer.\n*\n* @module @stdlib/assert/is-negative-integer\n*\n* @example\n* var isNegativeInteger = require( '@stdlib/assert/is-negative-integer' );\n*\n* var bool = isNegativeInteger( -5.0 );\n* // returns true\n*\n* bool = isNegativeInteger( new Number( -5.0 ) );\n* // returns true\n*\n* bool = isNegativeInteger( 5.0 );\n* // returns false\n*\n* bool = isNegativeInteger( -3.14 );\n* // returns false\n*\n* bool = isNegativeInteger( null );\n* // returns false\n*\n* @example\n* var isNegativeInteger = require( '@stdlib/assert/is-negative-integer' ).isPrimitive;\n*\n* var bool = isNegativeInteger( -3.0 );\n* // returns true\n*\n* bool = isNegativeInteger( new Number( -3.0 ) );\n* // returns false\n*\n* @example\n* var isNegativeInteger = require( '@stdlib/assert/is-negative-integer' ).isObject;\n*\n* var bool = isNegativeInteger( -3.0 );\n* // returns false\n*\n* bool = isNegativeInteger( new Number( -3.0 ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array-like object containing only negative integers.\n*\n* @module @stdlib/assert/is-negative-integer-array\n*\n* @example\n* var isNegativeIntegerArray = require( '@stdlib/assert/is-negative-integer-array' );\n*\n* var bool = isNegativeIntegerArray( [ -3.0, new Number(-3.0) ] );\n* // returns true\n*\n* bool = isNegativeIntegerArray( [ -3.0, '-3.0' ] );\n* // returns false\n*\n* @example\n* var isNegativeIntegerArray = require( '@stdlib/assert/is-negative-integer-array' ).primitives;\n*\n* var bool = isNegativeIntegerArray( [ -1.0, -10.0 ] );\n* // returns true\n*\n* bool = isNegativeIntegerArray( [ -1.0, 0.0, -10.0 ] );\n* // returns false\n*\n* bool = isNegativeIntegerArray( [ -3.0, new Number(-1.0) ] );\n* // returns false\n*\n* @example\n* var isNegativeIntegerArray = require( '@stdlib/assert/is-negative-integer-array' ).objects;\n*\n* var bool = isNegativeIntegerArray( [ new Number(-1.0), new Number(-10.0) ] );\n* // returns true\n*\n* bool = isNegativeIntegerArray( [ -1.0, 0.0, -10.0 ] );\n* // returns false\n*\n* bool = isNegativeIntegerArray( [ -3.0, new Number(-1.0) ] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isNegativeInteger = require( './../../is-negative-integer' );\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar arrayfun = require( './../../tools/array-like-function' );\n\n\n// VARIABLES //\n\nvar isPrimitiveArray = arrayfun( isNegativeInteger.isPrimitive );\nvar isObjectArray = arrayfun( isNegativeInteger.isObject );\n\n\n// MAIN //\n\nvar isNegativeIntegerArray = arrayfun( isNegativeInteger );\nsetReadOnly( isNegativeIntegerArray, 'primitives', isPrimitiveArray );\nsetReadOnly( isNegativeIntegerArray, 'objects', isObjectArray );\n\n\n// EXPORTS //\n\nmodule.exports = isNegativeIntegerArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isPrimitive;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number primitive having a negative value.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number primitive having a negative value\n*\n* @example\n* var bool = isNegativeNumber( -3.0 );\n* // returns true\n*\n* @example\n* var bool = isNegativeNumber( new Number( -3.0 ) );\n* // returns false\n*/\nfunction isNegativeNumber( value ) {\n\treturn (\n\t\tisNumber( value ) &&\n\t\tvalue < 0.0\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNegativeNumber;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isObject;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number object having a negative value.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number object having a negative value\n*\n* @example\n* var bool = isNegativeNumber( -3.0 );\n* // returns false\n*\n* @example\n* var bool = isNegativeNumber( new Number( -3.0 ) );\n* // returns true\n*/\nfunction isNegativeNumber( value ) {\n\treturn (\n\t\tisNumber( value ) &&\n\t\tvalue.valueOf() < 0.0\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNegativeNumber;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a negative number.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a negative number\n*\n* @example\n* var bool = isNegativeNumber( -5.0 );\n* // returns true\n*\n* @example\n* var bool = isNegativeNumber( new Number( -5.0 ) );\n* // returns true\n*\n* @example\n* var bool = isNegativeNumber( -3.14 );\n* // returns true\n*\n* @example\n* var bool = isNegativeNumber( 5.0 );\n* // returns false\n*\n* @example\n* var bool = isNegativeNumber( null );\n* // returns false\n*/\nfunction isNegativeNumber( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNegativeNumber;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a negative number.\n*\n* @module @stdlib/assert/is-negative-number\n*\n* @example\n* var isNegativeNumber = require( '@stdlib/assert/is-negative-number' );\n*\n* var bool = isNegativeNumber( -5.0 );\n* // returns true\n*\n* bool = isNegativeNumber( new Number( -5.0 ) );\n* // returns true\n*\n* bool = isNegativeNumber( -3.14 );\n* // returns true\n*\n* bool = isNegativeNumber( 5.0 );\n* // returns false\n*\n* bool = isNegativeNumber( null );\n* // returns false\n*\n* @example\n* // Use interface to check for negative number primitives...\n* var isNegativeNumber = require( '@stdlib/assert/is-negative-number' ).isPrimitive;\n*\n* var bool = isNegativeNumber( -3.0 );\n* // returns true\n*\n* bool = isNegativeNumber( new Number( -3.0 ) );\n* // returns false\n*\n* @example\n* // Use interface to check for negative number objects...\n* var isNegativeNumber = require( '@stdlib/assert/is-negative-number' ).isObject;\n*\n* var bool = isNegativeNumber( -3.0 );\n* // returns false\n*\n* bool = isNegativeNumber( new Number( -3.0 ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array-like object containing only negative numbers.\n*\n* @module @stdlib/assert/is-negative-number-array\n*\n* @example\n* var isNegativeNumberArray = require( '@stdlib/assert/is-negative-number-array' );\n*\n* var bool = isNegativeNumberArray( [ -3.0, new Number(-3.0) ] );\n* // returns true\n*\n* bool = isNegativeNumberArray( [ -3.0, '-3.0' ] );\n* // returns false\n*\n* @example\n* var isNegativeNumberArray = require( '@stdlib/assert/is-negative-number-array' ).primitives;\n*\n* var bool = isNegativeNumberArray( [ -1.0, -5.0, -10.0 ] );\n* // returns true\n*\n* bool = isNegativeNumberArray( [ -3.0, new Number(-1.0) ] );\n* // returns false\n*\n* @example\n* var isNegativeNumberArray = require( '@stdlib/assert/is-negative-number-array' ).objects;\n*\n* var bool = isNegativeNumberArray( [ new Number(-3.0), new Number(-1.0) ] );\n* // returns true\n*\n* bool = isNegativeNumberArray( [ -1.0, -5.0, -10.0 ] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isNegativeNumber = require( './../../is-negative-number' );\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar arrayfun = require( './../../tools/array-like-function' );\n\n\n// VARIABLES //\n\nvar isPrimitiveArray = arrayfun( isNegativeNumber.isPrimitive );\nvar isObjectArray = arrayfun( isNegativeNumber.isObject );\n\n\n// MAIN //\n\nvar isNegativeNumberArray = arrayfun( isNegativeNumber );\nsetReadOnly( isNegativeNumberArray, 'primitives', isPrimitiveArray );\nsetReadOnly( isNegativeNumberArray, 'objects', isObjectArray );\n\n\n// EXPORTS //\n\nmodule.exports = isNegativeNumberArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isPrimitive;\nvar NINF = require( '@stdlib/constants/float64/ninf' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number primitive equal to negative zero.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number primitive equal to negative zero\n*\n* @example\n* var bool = isNegativeZero( -0.0 );\n* // returns true\n*\n* @example\n* var bool = isNegativeZero( new Number( -0.0 ) );\n* // returns false\n*/\nfunction isNegativeZero( value ) {\n\treturn (\n\t\tisNumber( value ) &&\n\t\t( 1.0 / value ) === NINF\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNegativeZero;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isObject;\nvar NINF = require( '@stdlib/constants/float64/ninf' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number object having a value equal to negative zero.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number object having a value equal to negative zero\n*\n* @example\n* var bool = isNegativeZero( -0.0 );\n* // returns false\n*\n* @example\n* var bool = isNegativeZero( new Number( -0.0 ) );\n* // returns true\n*/\nfunction isNegativeZero( value ) {\n\treturn (\n\t\tisNumber( value ) &&\n\t\t( 1.0 / value.valueOf() ) === NINF\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNegativeZero;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is equal to negative zero.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is equal to negative zero\n*\n* @example\n* var bool = isNegativeZero( -0.0 );\n* // returns true\n*\n* @example\n* var bool = isNegativeZero( new Number( -0.0 ) );\n* // returns true\n*\n* @example\n* var bool = isNegativeZero( -3.14 );\n* // returns false\n*\n* @example\n* var bool = isNegativeZero( 5.0 );\n* // returns false\n*\n* @example\n* var bool = isNegativeZero( 0.0 );\n* // returns false\n*\n* @example\n* var bool = isNegativeZero( null );\n* // returns false\n*/\nfunction isNegativeZero( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNegativeZero;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is equal to negative zero.\n*\n* @module @stdlib/assert/is-negative-zero\n*\n* @example\n* var isNegativeZero = require( '@stdlib/assert/is-negative-zero' );\n*\n* var bool = isNegativeZero( -0.0 );\n* // returns true\n*\n* bool = isNegativeZero( new Number( -0.0 ) );\n* // returns true\n*\n* bool = isNegativeZero( -3.14 );\n* // returns false\n*\n* bool = isNegativeZero( 5.0 );\n* // returns false\n*\n* bool = isNegativeZero( 0.0 );\n* // returns false\n*\n* bool = isNegativeZero( null );\n* // returns false\n*\n* @example\n* var isNegativeZero = require( '@stdlib/assert/is-negative-zero' ).isPrimitive;\n*\n* var bool = isNegativeZero( -0.0 );\n* // returns true\n*\n* bool = isNegativeZero( new Number( -0.0 ) );\n* // returns false\n*\n* @example\n* var isNegativeZero = require( '@stdlib/assert/is-negative-zero' ).isObject;\n*\n* var bool = isNegativeZero( -0.0 );\n* // returns false\n*\n* bool = isNegativeZero( new Number( -0.0 ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "[\n\t\"assert\",\n\t\"async_hooks\",\n\t\"buffer\",\n\t\"child_process\",\n\t\"cluster\",\n\t\"console\",\n\t\"constants\",\n\t\"crypto\",\n\t\"dgram\",\n\t\"dns\",\n\t\"domain\",\n\t\"events\",\n\t\"fs\",\n\t\"http\",\n\t\"http2\",\n\t\"https\",\n\t\"_http_agent\",\n\t\"_http_client\",\n\t\"_http_common\",\n\t\"_http_incoming\",\n\t\"_http_outgoing\",\n\t\"_http_server\",\n\t\"inspector\",\n\t\"module\",\n\t\"net\",\n\t\"os\",\n\t\"path\",\n\t\"perf_hooks\",\n\t\"process\",\n\t\"punycode\",\n\t\"querystring\",\n\t\"readline\",\n\t\"repl\",\n\t\"stream\",\n\t\"_stream_readable\",\n\t\"_stream_writable\",\n\t\"_stream_duplex\",\n\t\"_stream_transform\",\n\t\"_stream_passthrough\",\n\t\"_stream_wrap\",\n\t\"string_decoder\",\n\t\"sys\",\n\t\"timers\",\n\t\"tls\",\n\t\"_tls_common\",\n\t\"_tls_legacy\",\n\t\"_tls_wrap\",\n\t\"tty\",\n\t\"url\",\n\t\"util\",\n\t\"v8\",\n\t\"vm\",\n\t\"zlib\",\n\t\"v8/tools/splaytree\",\n\t\"v8/tools/codemap\",\n\t\"v8/tools/consarray\",\n\t\"v8/tools/csvparser\",\n\t\"v8/tools/profile\",\n\t\"v8/tools/profile_view\",\n\t\"v8/tools/logreader\",\n\t\"v8/tools/tickprocessor\",\n\t\"v8/tools/SourceMap\",\n\t\"v8/tools/tickprocessor-driver\",\n\t\"node-inspect/lib/_inspect\",\n\t\"node-inspect/lib/internal/inspect_client\",\n\t\"node-inspect/lib/internal/inspect_repl\"\n]\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar mod = require( 'module' );\nvar contains = require( './../../contains' );\nvar isString = require( './../../is-string' ).isPrimitive;\nvar BUILTINS = require( './builtins.json' );\n\n\n// VARIABLES //\n\nvar LIST = mod.builtinModules || BUILTINS;\n\n\n// MAIN //\n\n/**\n* Tests whether a string matches a Node.js built-in module name.\n*\n* @param {*} x - value to test\n* @returns {boolean} boolean indicating whether a string matches a Node.js built-in module name\n*\n* @example\n* var out = isNodeBuiltin( 'cluster' );\n* // returns true\n*\n* @example\n* var out = isNodeBuiltin( 'crypto' );\n* // returns true\n*\n* @example\n* var out = isNodeBuiltin( 'fs-extra' );\n* // returns false\n*\n* @example\n* var out = isNodeBuiltin( '' );\n* // returns false\n*/\nfunction isNodeBuiltin( x ) {\n\tif ( !isString( x ) ) {\n\t\treturn false;\n\t}\n\treturn contains( LIST, x );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNodeBuiltin;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether a string matches a Node.js built-in module name.\n*\n* @module @stdlib/assert/is-node-builtin\n*\n* @example\n* var isNodeBuiltin = require( '@stdlib/assert/is-node-builtin' );\n*\n* var out = isNodeBuiltin( 'crypto' );\n* // returns true\n*\n* out = isNodeBuiltin( 'cluster' );\n* // returns true\n*\n* out = isNodeBuiltin( '' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\n/**\n* Tests if a value is Node stream-like.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is Node stream-like\n*\n* @example\n* var transformStream = require( '@stdlib/streams/node/transform' );\n*\n* var stream = transformStream();\n*\n* var bool = isNodeStreamLike( stream );\n* // returns true\n*\n* bool = isNodeStreamLike( {} );\n* // returns false\n*/\nfunction isNodeStreamLike( value ) {\n\treturn (\n\t\t// Must be an object:\n\t\tvalue !== null &&\n\t\ttypeof value === 'object' &&\n\n\t\t// Should be an event emitter:\n\t\ttypeof value.on === 'function' &&\n\t\ttypeof value.once === 'function' &&\n\t\ttypeof value.emit === 'function' &&\n\t\ttypeof value.addListener === 'function' &&\n\t\ttypeof value.removeListener === 'function' &&\n\t\ttypeof value.removeAllListeners === 'function' &&\n\n\t\t// Should have a `pipe` method (Node streams inherit from `Stream`, including writable streams):\n\t\ttypeof value.pipe === 'function'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNodeStreamLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is Node stream-like.\n*\n* @module @stdlib/assert/is-node-stream-like\n*\n* @example\n* var transformStream = require( '@stdlib/streams/node/transform' );\n* var isNodeStreamLike = require( '@stdlib/assert/is-node-stream-like' );\n*\n* var stream = transformStream();\n*\n* var bool = isNodeStreamLike( stream );\n* // returns true\n*\n* bool = isNodeStreamLike( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n/* eslint-disable no-underscore-dangle */\n\n'use strict';\n\n// MODULES //\n\nvar isNodeStreamLike = require( './../../is-node-stream-like' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is Node writable stream-like.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is Node writable stream-like\n*\n* @example\n* var transformStream = require( '@stdlib/streams/node/transform' );\n*\n* var stream = transformStream();\n*\n* var bool = isNodeWritableStreamLike( stream );\n* // returns true\n*\n* bool = isNodeWritableStreamLike( {} );\n* // returns false\n*/\nfunction isNodeWritableStreamLike( value ) {\n\treturn (\n\t\t// Must be stream-like:\n\t\tisNodeStreamLike( value ) &&\n\n\t\t// Should have writable stream methods:\n\t\ttypeof value._write === 'function' &&\n\n\t\t// Should have writable stream state:\n\t\ttypeof value._writableState === 'object'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNodeWritableStreamLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is Node writable stream-like.\n*\n* @module @stdlib/assert/is-node-writable-stream-like\n*\n* @example\n* var transformStream = require( '@stdlib/streams/node/transform' );\n* var isNodeWritableStreamLike = require( '@stdlib/assert/is-node-writable-stream-like' );\n*\n* var stream = transformStream();\n*\n* var bool = isNodeWritableStreamLike( stream );\n* // returns true\n*\n* bool = isNodeWritableStreamLike( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n/* eslint-disable no-underscore-dangle */\n\n'use strict';\n\n// MODULES //\n\nvar isNodeStreamLike = require( './../../is-node-stream-like' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is Node readable stream-like.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is Node readable stream-like\n*\n* @example\n* var transformStream = require( '@stdlib/streams/node/transform' );\n*\n* var stream = transformStream();\n*\n* var bool = isNodeReadableStreamLike( stream );\n* // returns true\n*\n* bool = isNodeReadableStreamLike( {} );\n* // returns false\n*/\nfunction isNodeReadableStreamLike( value ) {\n\treturn (\n\t\t// Must be stream-like:\n\t\tisNodeStreamLike( value ) &&\n\n\t\t// Should have readable stream methods:\n\t\ttypeof value._read === 'function' &&\n\n\t\t// Should have readable stream state:\n\t\ttypeof value._readableState === 'object'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNodeReadableStreamLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is Node readable stream-like.\n*\n* @module @stdlib/assert/is-node-readable-stream-like\n*\n* @example\n* var transformStream = require( '@stdlib/streams/node/transform' );\n* var isNodeReadableStreamLike = require( '@stdlib/assert/is-node-readable-stream-like' );\n*\n* var stream = transformStream();\n*\n* var bool = isNodeReadableStreamLike( stream );\n* // returns true\n*\n* bool = isNodeReadableStreamLike( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNodeWritableStreamLike = require( './../../is-node-writable-stream-like' );\nvar isNodeReadableStreamLike = require( './../../is-node-readable-stream-like' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is Node duplex stream-like.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is Node duplex stream-like\n*\n* @example\n* var transformStream = require( '@stdlib/streams/node/transform' );\n*\n* var stream = transformStream();\n*\n* var bool = isNodeDuplexStreamLike( stream );\n* // returns true\n*\n* bool = isNodeDuplexStreamLike( {} );\n* // returns false\n*/\nfunction isNodeDuplexStreamLike( value ) {\n\treturn (\n\t\t// Must be both readable and writable:\n\t\tisNodeWritableStreamLike( value ) &&\n\t\tisNodeReadableStreamLike( value )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNodeDuplexStreamLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is Node duplex stream-like.\n*\n* @module @stdlib/assert/is-node-duplex-stream-like\n*\n* @example\n* var transformStream = require( '@stdlib/streams/node/transform' );\n* var isNodeDuplexStreamLike = require( '@stdlib/assert/is-node-duplex-stream-like' );\n*\n* var stream = transformStream();\n*\n* var bool = isNodeDuplexStreamLike( stream );\n* // returns true\n*\n* bool = isNodeDuplexStreamLike( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\n/**\n* Returns the parent module.\n*\n* @private\n* @returns {Module} parent module\n*/\nfunction parent() { // eslint-disable-line stdlib/no-redeclare\n\treturn module;\n}\n\n\n// EXPORTS //\n\nmodule.exports = parent;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\n/**\n* Returns a stacktrace.\n*\n* @private\n* @returns {(string|void)} stacktrace\n*/\nfunction stacktrace() {\n\tvar err = new Error();\n\treturn err.stack;\n}\n\n\n// EXPORTS //\n\nmodule.exports = stacktrace;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar IS_NODE = require( './../../is-node' );\nvar p = require( './parent.js' );\nvar stacktrace = require( './stacktrace.js' );\n\n\n// VARIABLES //\n\n// The module id for the builtin REPL was `repl` in Node versions <4 and then changed to `` for Node versions >=4 (see https://github.com/nodejs/node/commit/ee72ee753118f2576bfd1ccf58fb2ff651e8bfb0#diff-b13d72249263845d8e8341db0426f9d3R527).\nvar RE_MODULE_ID = /^repl$|^$/;\n\n// This is V8 specific (!!), as this assumes the V8 stacktrace API. TODO: rely on an engine agnostic approach to determining callsites.\nvar RE_ERROR_STACK = /at REPLServer/;\n\n\n// MAIN //\n\n/**\n* Returns a boolean indicating if the function is called from a Node.js REPL environment.\n*\n* ## Notes\n*\n* - False positives are possible due to the existence of a userland package having the same module `id` (see [repl][repl-template-lib]) as the builtin Node.js `repl`.\n*\n* [repl-template-lib]: https://www.npmjs.com/package/repl\n*\n* @returns {boolean} boolean indicating if the function is called from a Node.js REPL environment\n*\n* @example\n* var bool = isNodeREPL();\n* // returns \n*/\nfunction isNodeREPL() {\n\tvar stack;\n\tvar m;\n\tif ( !IS_NODE ) {\n\t\treturn false;\n\t}\n\t// If this module was required in a REPL environment, we can walk up the module dependency tree to find a `repl` ancestor...\n\tm = p();\n\twhile ( m ) {\n\t\tif ( RE_MODULE_ID.test( m.id ) ) {\n\t\t\treturn true;\n\t\t}\n\t\tm = m.parent;\n\t}\n\t// Unable to find a `repl` ancestor, so try determining if this function was called from a REPL environment...\n\tstack = stacktrace();\n\tif ( stack ) {\n\t\treturn RE_ERROR_STACK.test( stack );\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNodeREPL;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Check if running within a Node.js REPL environment.\n*\n* @module @stdlib/assert/is-node-repl\n*\n* @example\n* var isNodeREPL = require( '@stdlib/assert/is-node-repl' );\n*\n* var bool = isNodeREPL();\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n/* eslint-disable no-underscore-dangle */\n\n'use strict';\n\n// MODULES //\n\nvar isNodeDuplexStreamLike = require( './../../is-node-duplex-stream-like' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is Node transform stream-like.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is Node transform stream-like\n*\n* @example\n* var transformStream = require( '@stdlib/streams/node/transform' );\n*\n* var stream = transformStream();\n*\n* var bool = isNodeTransformStreamLike( stream );\n* // returns true\n*\n* bool = isNodeTransformStreamLike( {} );\n* // returns false\n*/\nfunction isNodeTransformStreamLike( value ) {\n\treturn (\n\t\t// Must be duplex stream-like:\n\t\tisNodeDuplexStreamLike( value ) &&\n\n\t\t// Should have transform stream methods:\n\t\ttypeof value._transform === 'function'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNodeTransformStreamLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is Node transform stream-like.\n*\n* @module @stdlib/assert/is-node-transform-stream-like\n*\n* @example\n* var transformStream = require( '@stdlib/streams/node/transform' );\n* var isNodeTransformStreamLike = require( '@stdlib/assert/is-node-transform-stream-like' );\n*\n* var stream = transformStream();\n*\n* var bool = isNodeTransformStreamLike( stream );\n* // returns true\n*\n* bool = isNodeTransformStreamLike( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar propertyDescriptor = require( '@stdlib/utils/property-descriptor' );\n\n\n// MAIN //\n\n/**\n* Tests if an object's own property is non-configurable.\n*\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object property is non-configurable\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': true,\n* 'writable': true,\n* 'value': 'beep'\n* });\n*\n* var bool = isNonConfigurableProperty( obj, 'boop' );\n* // returns false\n*\n* bool = isNonConfigurableProperty( obj, 'beep' );\n* // returns true\n*/\nfunction isNonConfigurableProperty( value, property ) {\n\tvar desc = propertyDescriptor( value, property );\n\treturn ( desc !== null && desc.configurable === false );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNonConfigurableProperty;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object's own property is non-configurable.\n*\n* @module @stdlib/assert/is-nonconfigurable-property\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n* var isNonConfigurableProperty = require( '@stdlib/assert/is-nonconfigurable-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': true,\n* 'writable': true,\n* 'value': 'beep'\n* });\n*\n* var bool = isNonConfigurableProperty( obj, 'boop' );\n* // returns false\n*\n* bool = isNonConfigurableProperty( obj, 'beep' );\n* // returns true\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar propertyDescriptorIn = require( '@stdlib/utils/property-descriptor-in' );\n\n\n// MAIN //\n\n/**\n* Tests if an object's own or inherited property is non-configurable.\n*\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object property is non-configurable\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': true,\n* 'writable': true,\n* 'value': true\n* });\n*\n* var bool = isNonConfigurablePropertyIn( obj, 'boop' );\n* // returns false\n*\n* bool = isNonConfigurablePropertyIn( obj, 'beep' );\n* // returns true\n*/\nfunction isNonConfigurablePropertyIn( value, property ) { // eslint-disable-line id-length\n\tvar desc = propertyDescriptorIn( value, property );\n\treturn ( desc !== null && desc.configurable === false );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNonConfigurablePropertyIn;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object's own or inherited property is non-configurable.\n*\n* @module @stdlib/assert/is-nonconfigurable-property-in\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n* var isNonConfigurablePropertyIn = require( '@stdlib/assert/is-nonconfigurable-property-in' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': true,\n* 'writable': true,\n* 'value': true\n* });\n*\n* var bool = isNonConfigurablePropertyIn( obj, 'boop' );\n* // returns false\n*\n* bool = isNonConfigurablePropertyIn( obj, 'beep' );\n* // returns true\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar hasOwnProp = require( './../../has-own-property' );\nvar isEnumerableProperty = require( './../../is-enumerable-property' );\n\n\n// MAIN //\n\n/**\n* Tests if an object's own property is non-enumerable.\n*\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object property is non-enumerable\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': false,\n* 'writable': true,\n* 'value': 'beep'\n* });\n*\n* var bool = isNonEnumerableProperty( obj, 'boop' );\n* // returns false\n*\n* bool = isNonEnumerableProperty( obj, 'beep' );\n* // returns true\n*/\nfunction isNonEnumerableProperty( value, property ) {\n\tif ( hasOwnProp( value, property ) === false ) {\n\t\treturn false;\n\t}\n\treturn ( isEnumerableProperty( value, property ) === false );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNonEnumerableProperty;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object's own property is non-enumerable.\n*\n* @module @stdlib/assert/is-nonenumerable-property\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n* var isNonEnumerableProperty = require( '@stdlib/assert/is-nonenumerable-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': false,\n* 'writable': true,\n* 'value': 'beep'\n* });\n*\n* var bool = isNonEnumerableProperty( obj, 'boop' );\n* // returns false\n*\n* bool = isNonEnumerableProperty( obj, 'beep' );\n* // returns true\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar propertyDescriptorIn = require( '@stdlib/utils/property-descriptor-in' );\n\n\n// MAIN //\n\n/**\n* Tests if an object's own or inherited property is non-enumerable.\n*\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object property is non-enumerable\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': true,\n* 'enumerable': false,\n* 'writable': true,\n* 'value': true\n* });\n*\n* var bool = isNonEnumerablePropertyIn( obj, 'boop' );\n* // returns false\n*\n* bool = isNonEnumerablePropertyIn( obj, 'beep' );\n* // returns true\n*/\nfunction isNonEnumerablePropertyIn( value, property ) {\n\tvar desc = propertyDescriptorIn( value, property );\n\treturn ( desc !== null && desc.enumerable === false );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNonEnumerablePropertyIn;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object's own or inherited property is non-enumerable.\n*\n* @module @stdlib/assert/is-nonenumerable-property-in\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n* var isNonEnumerablePropertyIn = require( '@stdlib/assert/is-nonenumerable-property-in' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': true,\n* 'enumerable': false,\n* 'writable': true,\n* 'value': true\n* });\n*\n* var bool = isNonEnumerablePropertyIn( obj, 'boop' );\n* // returns false\n*\n* bool = isNonEnumerablePropertyIn( obj, 'beep' );\n* // returns true\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array-like object containing only nonnegative integers.\n*\n* @module @stdlib/assert/is-nonnegative-integer-array\n*\n* @example\n* var isNonNegativeIntegerArray = require( '@stdlib/assert/is-nonnegative-integer-array' );\n*\n* var bool = isNonNegativeIntegerArray( [ 3.0, new Number(3.0) ] );\n* // returns true\n*\n* bool = isNonNegativeIntegerArray( [ 3.0, '3.0' ] );\n* // returns false\n*\n* @example\n* var isNonNegativeIntegerArray = require( '@stdlib/assert/is-nonnegative-integer-array' ).primitives;\n*\n* var bool = isNonNegativeIntegerArray( [ 1.0, 0.0, 10.0 ] );\n* // returns true\n*\n* bool = isNonNegativeIntegerArray( [ 3.0, new Number(1.0) ] );\n* // returns false\n*\n* @example\n* var isNonNegativeIntegerArray = require( '@stdlib/assert/is-nonnegative-integer-array' ).objects;\n*\n* var bool = isNonNegativeIntegerArray( [ new Number(3.0), new Number(1.0) ] );\n* // returns true\n*\n* bool = isNonNegativeIntegerArray( [ 1.0, 0.0, 10.0 ] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isNonNegativeInteger = require( './../../is-nonnegative-integer' );\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar arrayfun = require( './../../tools/array-like-function' );\n\n\n// VARIABLES //\n\nvar isPrimitiveArray = arrayfun( isNonNegativeInteger.isPrimitive );\nvar isObjectArray = arrayfun( isNonNegativeInteger.isObject );\n\n\n// MAIN //\n\nvar isNonNegativeIntegerArray = arrayfun( isNonNegativeInteger );\nsetReadOnly( isNonNegativeIntegerArray, 'primitives', isPrimitiveArray );\nsetReadOnly( isNonNegativeIntegerArray, 'objects', isObjectArray );\n\n\n// EXPORTS //\n\nmodule.exports = isNonNegativeIntegerArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isPrimitive;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number primitive having a nonnegative value.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number primitive having a nonnegative number value\n*\n* @example\n* var bool = isNonNegativeNumber( 3.0 );\n* // returns true\n*\n* @example\n* var bool = isNonNegativeNumber( new Number( 3.0 ) );\n* // returns false\n*/\nfunction isNonNegativeNumber( value ) {\n\treturn (\n\t\tisNumber( value ) &&\n\t\tvalue >= 0.0\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNonNegativeNumber;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isObject;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number object having a nonnegative value.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number object having a nonnegative number value\n*\n* @example\n* var bool = isNonNegativeNumber( 3.0 );\n* // returns false\n*\n* @example\n* var bool = isNonNegativeNumber( new Number( 3.0 ) );\n* // returns true\n*/\nfunction isNonNegativeNumber( value ) {\n\treturn (\n\t\tisNumber( value ) &&\n\t\tvalue.valueOf() >= 0.0\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNonNegativeNumber;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a nonnegative number.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a nonnegative number\n*\n* @example\n* var bool = isNonNegativeNumber( 5.0 );\n* // returns true\n*\n* @example\n* var bool = isNonNegativeNumber( new Number( 5.0 ) );\n* // returns true\n*\n* @example\n* var bool = isNonNegativeNumber( 3.14 );\n* // returns true\n*\n* @example\n* var bool = isNonNegativeNumber( -5.0 );\n* // returns false\n*\n* @example\n* var bool = isNonNegativeNumber( null );\n* // returns false\n*/\nfunction isNonNegativeNumber( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNonNegativeNumber;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a nonnegative number.\n*\n* @module @stdlib/assert/is-nonnegative-number\n*\n* @example\n* var isNonNegativeNumber = require( '@stdlib/assert/is-nonnegative-number' );\n*\n* var bool = isNonNegativeNumber( 5.0 );\n* // returns true\n*\n* bool = isNonNegativeNumber( new Number( 5.0 ) );\n* // returns true\n*\n* bool = isNonNegativeNumber( 3.14 );\n* // returns true\n*\n* bool = isNonNegativeNumber( -5.0 );\n* // returns false\n*\n* bool = isNonNegativeNumber( null );\n* // returns false\n*\n* @example\n* var isNonNegativeNumber = require( '@stdlib/assert/is-nonnegative-number' ).isPrimitive;\n*\n* var bool = isNonNegativeNumber( 3.0 );\n* // returns true\n*\n* bool = isNonNegativeNumber( new Number( 3.0 ) );\n* // returns false\n*\n* @example\n* var isNonNegativeNumber = require( '@stdlib/assert/is-nonnegative-number' ).isObject;\n*\n* var bool = isNonNegativeNumber( 3.0 );\n* // returns false\n*\n* bool = isNonNegativeNumber( new Number( 3.0 ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array-like object containing only nonnegative numbers.\n*\n* @module @stdlib/assert/is-nonnegative-number-array\n*\n* @example\n* var isNonNegativeNumberArray = require( '@stdlib/assert/is-nonnegative-number-array' );\n*\n* var bool = isNonNegativeNumberArray( [ 3.0, new Number(3.0) ] );\n* // returns true\n*\n* bool = isNonNegativeNumberArray( [ 3.0, '3.0' ] );\n* // returns false\n*\n* @example\n* var isNonNegativeNumberArray = require( '@stdlib/assert/is-nonnegative-number-array' ).primitives;\n*\n* var bool = isNonNegativeNumberArray( [ 1.0, 0.0, 10.0 ] );\n* // returns true\n*\n* bool = isNonNegativeNumberArray( [ 3.0, new Number(1.0) ] );\n* // returns false\n*\n* @example\n* var isNonNegativeNumberArray = require( '@stdlib/assert/is-nonnegative-number-array' ).objects;\n*\n* var bool = isNonNegativeNumberArray( [ new Number(3.0), new Number(1.0) ] );\n* // returns true\n*\n* bool = isNonNegativeNumberArray( [ 1.0, 0.0, 10.0 ] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isNonNegativeNumber = require( './../../is-nonnegative-number' );\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar arrayfun = require( './../../tools/array-like-function' );\n\n\n// VARIABLES //\n\nvar isPrimitiveArray = arrayfun( isNonNegativeNumber.isPrimitive );\nvar isObjectArray = arrayfun( isNonNegativeNumber.isObject );\n\n\n// MAIN //\n\nvar isNonNegativeNumberArray = arrayfun( isNonNegativeNumber );\nsetReadOnly( isNonNegativeNumberArray, 'primitives', isPrimitiveArray );\nsetReadOnly( isNonNegativeNumberArray, 'objects', isObjectArray );\n\n\n// EXPORTS //\n\nmodule.exports = isNonNegativeNumberArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInteger = require( './../../is-integer' ).isPrimitive;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number primitive having a nonpositive integer value.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number primitive having a nonpositive integer value\n*\n* @example\n* var bool = isNonPositiveInteger( -3.0 );\n* // returns true\n*\n* @example\n* var bool = isNonPositiveInteger( new Number( -3.0 ) );\n* // returns false\n*/\nfunction isNonPositiveInteger( value ) {\n\treturn (\n\t\tisInteger( value ) &&\n\t\tvalue <= 0\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNonPositiveInteger;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInteger = require( './../../is-integer' ).isObject;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number object having a nonpositive integer value.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number object having a nonpositive integer value\n*\n* @example\n* var bool = isNonPositiveInteger( -3.0 );\n* // returns false\n*\n* @example\n* var bool = isNonPositiveInteger( new Number( -3.0 ) );\n* // returns true\n*/\nfunction isNonPositiveInteger( value ) {\n\treturn (\n\t\tisInteger( value ) &&\n\t\tvalue.valueOf() <= 0\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNonPositiveInteger;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a nonpositive integer.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a nonpositive integer\n*\n* @example\n* var bool = isNonPositiveInteger( -5.0 );\n* // returns true\n*\n* @example\n* var bool = isNonPositiveInteger( new Number( -5.0 ) );\n* // returns true\n*\n* @example\n* var bool = isNonPositiveInteger( 5.0 );\n* // returns false\n*\n* @example\n* var bool = isNonPositiveInteger( -3.14 );\n* // returns false\n*\n* @example\n* var bool = isNonPositiveInteger( null );\n* // returns false\n*/\nfunction isNonPositiveInteger( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNonPositiveInteger;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a nonpositive integer.\n*\n* @module @stdlib/assert/is-nonpositive-integer\n*\n* @example\n* var isNonPositiveInteger = require( '@stdlib/assert/is-nonpositive-integer' );\n*\n* var bool = isNonPositiveInteger( -5.0 );\n* // returns true\n*\n* bool = isNonPositiveInteger( new Number( -5.0 ) );\n* // returns true\n*\n* bool = isNonPositiveInteger( 5.0 );\n* // returns false\n*\n* bool = isNonPositiveInteger( -3.14 );\n* // returns false\n*\n* bool = isNonPositiveInteger( null );\n* // returns false\n*\n* @example\n* var isNonPositiveInteger = require( '@stdlib/assert/is-nonpositive-integer' ).isPrimitive;\n*\n* var bool = isNonPositiveInteger( -3.0 );\n* // returns true\n*\n* bool = isNonPositiveInteger( new Number( -3.0 ) );\n* // returns false\n*\n* @example\n* var isNonPositiveInteger = require( '@stdlib/assert/is-nonpositive-integer' ).isObject;\n*\n* var bool = isNonPositiveInteger( -3.0 );\n* // returns false\n*\n* bool = isNonPositiveInteger( new Number( -3.0 ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array-like object containing only nonpositive integers.\n*\n* @module @stdlib/assert/is-nonpositive-integer-array\n*\n* @example\n* var isNonPositiveIntegerArray = require( '@stdlib/assert/is-nonpositive-integer-array' );\n*\n* var bool = isNonPositiveIntegerArray( [ -3.0, new Number(-3.0) ] );\n* // returns true\n*\n* bool = isNonPositiveIntegerArray( [ -3.0, '-3.0' ] );\n* // returns false\n*\n* @example\n* var isNonPositiveIntegerArray = require( '@stdlib/assert/is-nonpositive-integer-array' ).primitives;\n*\n* var bool = isNonPositiveIntegerArray( [ -1.0, 0.0, -10.0 ] );\n* // returns true\n*\n* bool = isNonPositiveIntegerArray( [ -3.0, new Number(-1.0) ] );\n* // returns false\n*\n* @example\n* var isNonPositiveIntegerArray = require( '@stdlib/assert/is-nonpositive-integer-array' ).objects;\n*\n* var bool = isNonPositiveIntegerArray( [ new Number(-3.0), new Number(-1.0) ] );\n* // returns true\n*\n* bool = isNonPositiveIntegerArray( [ -1.0, 0.0, -10.0 ] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isNonPositiveInteger = require( './../../is-nonpositive-integer' );\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar arrayfun = require( './../../tools/array-like-function' );\n\n\n// VARIABLES //\n\nvar isPrimitiveArray = arrayfun( isNonPositiveInteger.isPrimitive );\nvar isObjectArray = arrayfun( isNonPositiveInteger.isObject );\n\n\n// MAIN //\n\nvar isNonPositiveIntegerArray = arrayfun( isNonPositiveInteger );\nsetReadOnly( isNonPositiveIntegerArray, 'primitives', isPrimitiveArray );\nsetReadOnly( isNonPositiveIntegerArray, 'objects', isObjectArray );\n\n\n// EXPORTS //\n\nmodule.exports = isNonPositiveIntegerArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isPrimitive;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number primitive having a nonpositive value.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number primitive having a nonpositive number value\n*\n* @example\n* var bool = isNonPositiveNumber( -3.0 );\n* // returns true\n*\n* @example\n* var bool = isNonPositiveNumber( new Number( -3.0 ) );\n* // returns false\n*/\nfunction isNonPositiveNumber( value ) {\n\treturn (\n\t\tisNumber( value ) &&\n\t\tvalue <= 0.0\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNonPositiveNumber;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isObject;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number object having a nonpositive value.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number object having a nonpositive number value\n*\n* @example\n* var bool = isNonPositiveNumber( -3.0 );\n* // returns false\n*\n* @example\n* var bool = isNonPositiveNumber( new Number( -3.0 ) );\n* // returns true\n*/\nfunction isNonPositiveNumber( value ) {\n\treturn (\n\t\tisNumber( value ) &&\n\t\tvalue.valueOf() <= 0.0\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNonPositiveNumber;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a nonpositive number.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a nonpositive number\n*\n* @example\n* var bool = isNonPositiveNumber( -5.0 );\n* // returns true\n*\n* @example\n* var bool = isNonPositiveNumber( new Number( -5.0 ) );\n* // returns true\n*\n* @example\n* var bool = isNonPositiveNumber( -3.14 );\n* // returns true\n*\n* @example\n* var bool = isNonPositiveNumber( 5.0 );\n* // returns false\n*\n* @example\n* var bool = isNonPositiveNumber( null );\n* // returns false\n*/\nfunction isNonPositiveNumber( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNonPositiveNumber;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a nonpositive number.\n*\n* @module @stdlib/assert/is-nonpositive-number\n*\n* @example\n* var isNonPositiveNumber = require( '@stdlib/assert/is-nonpositive-number' );\n*\n* var bool = isNonPositiveNumber( -5.0 );\n* // returns true\n*\n* bool = isNonPositiveNumber( new Number( -5.0 ) );\n* // returns true\n*\n* bool = isNonPositiveNumber( -3.14 );\n* // returns true\n*\n* bool = isNonPositiveNumber( 5.0 );\n* // returns false\n*\n* bool = isNonPositiveNumber( null );\n* // returns false\n*\n* @example\n* var isNonPositiveNumber = require( '@stdlib/assert/is-nonpositive-number' ).isPrimitive;\n*\n* var bool = isNonPositiveNumber( -3.0 );\n* // returns true\n*\n* bool = isNonPositiveNumber( new Number( -3.0 ) );\n* // returns false\n*\n* @example\n* var isNonPositiveNumber = require( '@stdlib/assert/is-nonpositive-number' ).isObject;\n*\n* var bool = isNonPositiveNumber( -3.0 );\n* // returns false\n*\n* bool = isNonPositiveNumber( new Number( -3.0 ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array-like object containing only nonpositive numbers.\n*\n* @module @stdlib/assert/is-nonpositive-number-array\n*\n* @example\n* var isNonPositiveNumberArray = require( '@stdlib/assert/is-nonpositive-number-array' );\n*\n* var bool = isNonPositiveNumberArray( [ -3.0, new Number(-3.0) ] );\n* // returns true\n*\n* bool = isNonPositiveNumberArray( [ -3.0, '-3.0' ] );\n* // returns false\n*\n* @example\n* var isNonPositiveNumberArray = require( '@stdlib/assert/is-nonpositive-number-array' ).primitives;\n*\n* var bool = isNonPositiveNumberArray( [ -1.0, 0.0, -10.0 ] );\n* // returns true\n*\n* bool = isNonPositiveNumberArray( [ -3.0, new Number(-1.0) ] );\n* // returns false\n*\n* @example\n* var isNonPositiveNumberArray = require( '@stdlib/assert/is-nonpositive-number-array' ).objects;\n*\n* var bool = isNonPositiveNumberArray( [ new Number(-3.0), new Number(-1.0) ] );\n* // returns true\n*\n* bool = isNonPositiveNumberArray( [ -1.0, 0.0, -10.0 ] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isNonPositiveNumber = require( './../../is-nonpositive-number' );\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar arrayfun = require( './../../tools/array-like-function' );\n\n\n// VARIABLES //\n\nvar isPrimitiveArray = arrayfun( isNonPositiveNumber.isPrimitive );\nvar isObjectArray = arrayfun( isNonPositiveNumber.isObject );\n\n\n// MAIN //\n\nvar isNonPositiveNumberArray = arrayfun( isNonPositiveNumber );\nsetReadOnly( isNonPositiveNumberArray, 'primitives', isPrimitiveArray );\nsetReadOnly( isNonPositiveNumberArray, 'objects', isObjectArray );\n\n\n// EXPORTS //\n\nmodule.exports = isNonPositiveNumberArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isMatrixLike = require( './../../is-matrix-like' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a non-symmetric matrix.\n*\n* ## Notes\n*\n* - The implementation must rely on manually checking that \\\\(M_{ij} \\neq M_{ji}\\\\), and, while element access is deterministic, no way exists to prevent cache misses outside of reordering the underlying matrix elements, thus incurring a larger performance penalty than just \"jumping around\" in a single pass.\n* - Worst case scenario: O(N^2).\n*\n* @param {*} v - value to test\n* @returns {boolean} boolean indicating if a value is a non-symmetric matrix\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n*\n* var arr = ndarray( 'generic', [ 1, 2, 3, 4 ], [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n* var bool = isNonSymmetricMatrix( arr );\n* // returns true\n*\n* bool = isNonSymmetricMatrix( [] );\n* // returns false\n*/\nfunction isNonSymmetricMatrix( v ) {\n\tvar M;\n\tvar i;\n\tvar j;\n\tif ( !isMatrixLike( v ) ) {\n\t\treturn false;\n\t}\n\tM = v.shape[ 0 ];\n\tif ( M !== v.shape[ 1 ] ) {\n\t\treturn true;\n\t}\n\tfor ( i = 0; i < M; i++ ) {\n\t\tfor ( j = 0; j < i; j++ ) {\n\t\t\tif ( v.get( i, j ) !== v.get( j, i ) ) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNonSymmetricMatrix;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a non-symmetric matrix.\n*\n* @module @stdlib/assert/is-nonsymmetric-matrix\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n* var isNonSymmetricMatrix = require( '@stdlib/assert/is-nonsymmetric-matrix' );\n*\n* var arr = ndarray( 'generic', [ 1, 2, 3, 4 ], [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n* var bool = isNonSymmetricMatrix( arr );\n* // returns true\n*\n* bool = isNonSymmetricMatrix( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Tests if a value is `null`.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is null\n*\n* @example\n* var bool = isNull( null );\n* // returns true\n*\n* bool = isNull( true );\n* // returns false\n*/\nfunction isNull( value ) {\n\treturn value === null;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNull;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is `null`.\n*\n* @module @stdlib/assert/is-null\n*\n* @example\n* var isNull = require( '@stdlib/assert/is-null' );\n*\n* var value = null;\n*\n* var bool = isNull( value );\n* // returns true\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar arrayfun = require( './../../tools/array-like-function' );\nvar isNull = require( './../../is-null' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is an array-like object containing only `null` values.\n*\n* @name isNullArray\n* @type {Function}\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether an input value is an array-like object containing only `null` values\n*\n* @example\n* var bool = isNullArray( [null,null,null] );\n* // returns true\n*\n* bool = isNullArray( [NaN,2,null] );\n* // returns false\n*/\nvar isNullArray = arrayfun( isNull );\n\n\n// EXPORTS //\n\nmodule.exports = isNullArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array-like object containing only `null` values.\n*\n* @module @stdlib/assert/is-null-array\n*\n* @example\n* var isNullArray = require( '@stdlib/assert/is-null-array' );\n*\n* var bool = isNullArray( [null,null,null] );\n* // returns true\n*\n* bool = isNullArray( [NaN,2,null] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array-like object of numbers.\n*\n* @module @stdlib/assert/is-number-array\n*\n* @example\n* var isNumberArray = require( '@stdlib/assert/is-number-array' );\n*\n* var bool = isNumberArray( [ 1, 2, 3 ] );\n* // returns true\n*\n* bool = isNumberArray( [ '1', 2, 3 ] );\n* // returns false\n*\n* @example\n* var isNumberArray = require( '@stdlib/assert/is-number-array' ).primitives;\n*\n* var bool = isNumberArray( [ 1, 2, 3 ] );\n* // returns true\n*\n* bool = isNumberArray( [ 1, new Number( 2 ) ] );\n* // returns false\n*\n* @example\n* var isNumberArray = require( '@stdlib/assert/is-number-array' ).objects;\n*\n* var bool = isNumberArray( [ new Number( 1 ), new Number( 2 ) ] );\n* // returns true\n*\n* bool = isNumberArray( [ new Number( 1 ), 2 ] );\n* // returns false\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar arrayfun = require( './../../tools/array-like-function' );\nvar isNumber = require( './../../is-number' );\n\n\n// VARIABLES //\n\nvar isPrimitiveArray = arrayfun( isNumber.isPrimitive );\nvar isObjectArray = arrayfun( isNumber.isObject );\n\n\n// MAIN //\n\nvar isNumberArray = arrayfun( isNumber );\nsetReadOnly( isNumberArray, 'primitives', isPrimitiveArray );\nsetReadOnly( isNumberArray, 'objects', isObjectArray );\n\n\n// EXPORTS //\n\nmodule.exports = isNumberArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isTypedArray = require( './../../is-typed-array' );\nvar isNumberArray = require( './../../is-number-array' ).primitives;\nvar isBuffer = require( './../../is-buffer' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a numeric array.\n*\n* @param {*} v - value to test\n* @returns {boolean} boolean indicating if a value is a numeric array\n*\n* @example\n* var bool = isNumericArray( new Int8Array( 10 ) );\n* // returns true\n*\n* bool = isNumericArray( [ 1, 2, 3 ] );\n* // returns true\n*\n* bool = isNumericArray( [ '1', '2', '3' ] );\n* // returns false\n*/\nfunction isNumericArray( v ) {\n\treturn (\n\t\t!isBuffer( v ) &&\n\t\t(isTypedArray( v ) || isNumberArray( v ))\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNumericArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a numeric array.\n*\n* @module @stdlib/assert/is-numeric-array\n*\n* @example\n* var isNumericArray = require( '@stdlib/assert/is-numeric-array' );\n*\n* var bool = isNumericArray( new Int8Array( 10 ) );\n* // returns true\n*\n* bool = isNumericArray( [ 1, 2, 3 ] );\n* // returns true\n*\n* bool = isNumericArray( [ '1', '2', '3' ] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar arrayfun = require( './../../tools/array-like-function' );\nvar isObject = require( './../../is-object' );\n\n\n// MAIN //\n\n/**\n* Test if a value is an array-like object containing only objects.\n*\n* @name isObjectArray\n* @type {Function}\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether an input value is an array-like object containing only objects\n*\n* @example\n* var bool = isObjectArray( [ {}, new Number(3.0) ] );\n* // returns true\n*\n* bool = isObjectArray( [ {}, { 'beep': 'boop' } ] );\n* // returns true\n*\n* bool = isObjectArray( [ {}, '3.0' ] );\n* // returns false\n*/\nvar isObjectArray = arrayfun( isObject );\n\n\n// EXPORTS //\n\nmodule.exports = isObjectArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array-like object containing only objects.\n*\n* @module @stdlib/assert/is-object-array\n*\n* @example\n* var isObjectArray = require( '@stdlib/assert/is-object-array' );\n*\n* var bool = isObjectArray( [ {}, new Number(3.0) ] );\n* // returns true\n*\n* bool = isObjectArray( [ {}, { 'beep': 'boop' } ] );\n* // returns true\n*\n* bool = isObjectArray( [ {}, '3.0' ] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInteger = require( './../../is-integer' ).isPrimitive;\nvar isEven = require( './../../is-even' ).isPrimitive;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number primitive that is an odd number.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number primitive that is an odd number\n*\n* @example\n* var bool = isOdd( -5.0 );\n* // returns true\n*\n* @example\n* var bool = isOdd( new Number( -5.0 ) );\n* // returns false\n*/\nfunction isOdd( value ) {\n\tif ( !isInteger( value ) ) {\n\t\treturn false;\n\t}\n\t// Check sign to prevent overflow...\n\tif ( value > 0.0 ) {\n\t\treturn isEven( value-1.0 );\n\t}\n\treturn isEven( value+1.0 );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isOdd;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInteger = require( './../../is-integer' ).isObject;\nvar isEven = require( './../../is-even' ).isPrimitive;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number object that has an odd number value.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number object that has an odd number value\n*\n* @example\n* var bool = isOdd( 5.0 );\n* // returns false\n*\n* @example\n* var bool = isOdd( new Number( 5.0 ) );\n* // returns true\n*/\nfunction isOdd( value ) {\n\tif ( !isInteger( value ) ) {\n\t\treturn false;\n\t}\n\t// Check sign to prevent overflow...\n\tif ( value > 0.0 ) {\n\t\treturn isEven( value-1.0 );\n\t}\n\treturn isEven( value+1.0 );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isOdd;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is an odd number.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is an odd number.\n*\n* @example\n* var bool = isOdd( 5.0 );\n* // returns true\n*\n* @example\n* var bool = isOdd( new Number( 5.0 ) );\n* // returns true\n*\n* @example\n* var bool = isOdd( 4.0 );\n* // returns false\n*\n* @example\n* var bool = isOdd( new Number( 4.0 ) );\n* // returns false\n*\n* @example\n* var bool = isOdd( -3.14 );\n* // returns false\n*\n* @example\n* var bool = isOdd( null );\n* // returns false\n*/\nfunction isOdd( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isOdd;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an odd number.\n*\n* @module @stdlib/assert/is-odd\n*\n* @example\n* var isOdd = require( '@stdlib/assert/is-odd' );\n*\n* var bool = isOdd( 5.0 );\n* // returns true\n*\n* bool = isOdd( new Number( 5.0 ) );\n* // returns true\n*\n* bool = isOdd( 4.0 );\n* // returns false\n*\n* bool = isOdd( new Number( 4.0 ) );\n* // returns false\n*\n* bool = isOdd( -3.14 );\n* // returns false\n*\n* bool = isOdd( null );\n* // returns false\n*\n* @example\n* var isOdd = require( '@stdlib/assert/is-odd' ).isPrimitive;\n*\n* var bool = isOdd( -5.0 );\n* // returns true\n*\n* bool = isOdd( new Number( -5.0 ) );\n* // returns false\n*\n* @example\n* var isOdd = require( '@stdlib/assert/is-odd' ).isObject;\n*\n* var bool = isOdd( 5.0 );\n* // returns false\n*\n* bool = isOdd( new Number( 5.0 ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/*\n* @license Apache-2.0\n*\n* Copyright (c) 2022 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\nvar pascalcase = require( '@stdlib/string/base/pascalcase' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a string in Pascal case.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is a string in Pascal case\n*\n* @example\n* var bool = isPascalcase( 'HelloWorld' );\n* // returns true\n*\n* @example\n* var bool = isPascalcase( 'helloWorld' );\n* // returns false\n*\n* @example\n* var bool = isPascalcase( 'HELLO_WORLD' );\n* // returns false\n*\n* @example\n* var bool = isPascalcase( null );\n* // returns false\n*/\nfunction isPascalcase( value ) {\n\treturn ( isString( value ) && pascalcase( value ) === value );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isPascalcase;\n", "/*\n* @license Apache-2.0\n*\n* Copyright (c) 2022 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a string in Pascal case.\n*\n* @module @stdlib/assert/is-pascalcase\n*\n* @example\n* var isPascalcase = require( '@stdlib/assert/is-pascalcase' );\n*\n* var bool = isPascalcase( 'HelloWorld' );\n* // returns true\n*\n* bool = isPascalcase( 'Hello World' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isSquareMatrix = require( './../../is-square-matrix' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a persymmetric matrix.\n*\n* ## Notes\n*\n* - The implementation must rely on manually checking that \\\\(M_{ij} = M_{N-j-1,N-i-1}\\\\), and, while element access is deterministic, no way exists to prevent cache misses outside of reordering the underlying matrix elements, thus incurring a larger performance penalty than just \"jumping around\" in a single pass.\n* - Worst case scenario: O(N^2).\n*\n* @param {*} v - value to test\n* @returns {boolean} boolean indicating if a value is a persymmetric matrix\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n*\n* var arr = ndarray( 'generic', [ 1, 2, 3, 1 ], [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n* var bool = isPersymmetricMatrix( arr );\n* // returns true\n*\n* bool = isPersymmetricMatrix( [] );\n* // returns false\n*/\nfunction isPersymmetricMatrix( v ) {\n\tvar M;\n\tvar n;\n\tvar i;\n\tvar j;\n\tif ( !isSquareMatrix( v ) ) {\n\t\treturn false;\n\t}\n\tM = v.shape[ 0 ] - 1;\n\tfor ( i = 0; i < M; i++ ) {\n\t\tn = M - i;\n\t\tfor ( j = 0; j < n; j++ ) {\n\t\t\tif ( v.get( i, j ) !== v.get( M-j, n ) ) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t}\n\treturn true;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isPersymmetricMatrix;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a persymmetric matrix.\n*\n* @module @stdlib/assert/is-persymmetric-matrix\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n* var isPersymmetricMatrix = require( '@stdlib/assert/is-persymmetric-matrix' );\n*\n* var arr = ndarray( 'generic', [ 1, 2, 3, 1 ], [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n* var bool = isPersymmetricMatrix( arr );\n* // returns true\n*\n* bool = isPersymmetricMatrix( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar arrayfun = require( './../../tools/array-like-function' );\nvar isPlainObject = require( './../../is-plain-object' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is an array-like object containing only plain objects.\n*\n* @name isPlainObjectArray\n* @type {Function}\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether an input value is an array-like object containing only plain objects\n*\n* @example\n* var bool = isPlainObjectArray( [ {}, { 'beep': 'boop' } ] );\n* // returns true\n*\n* bool = isPlainObjectArray( [ {}, new Number(3.0) ] );\n* // returns false\n*\n* bool = isPlainObjectArray( [ {}, '3.0' ] );\n* // returns false\n*/\nvar isPlainObjectArray = arrayfun( isPlainObject );\n\n\n// EXPORTS //\n\nmodule.exports = isPlainObjectArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array-like object containing only plain objects.\n*\n* @module @stdlib/assert/is-plain-object-array\n*\n* @example\n* var isPlainObjectArray = require( '@stdlib/assert/is-plain-object-array' );\n*\n* var bool = isPlainObjectArray( [ {}, { 'beep': 'boop' } ] );\n* // returns true\n*\n* bool = isPlainObjectArray( [ {}, new Number(3.0) ] );\n* // returns false\n*\n* bool = isPlainObjectArray( [ {}, '3.0' ] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInteger = require( './../../is-integer' ).isPrimitive;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number primitive having a positive integer value.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number primitive having a positive integer value\n*\n* @example\n* var bool = isPositiveInteger( 3.0 );\n* // returns true\n*\n* @example\n* var bool = isPositiveInteger( new Number( 3.0 ) );\n* // returns false\n*/\nfunction isPositiveInteger( value ) {\n\treturn (\n\t\tisInteger( value ) &&\n\t\tvalue > 0.0\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isPositiveInteger;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInteger = require( './../../is-integer' ).isObject;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number object having a positive integer value.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number object having a positive integer value\n*\n* @example\n* var bool = isPositiveInteger( 3.0 );\n* // returns false\n*\n* @example\n* var bool = isPositiveInteger( new Number( 3.0 ) );\n* // returns true\n*/\nfunction isPositiveInteger( value ) {\n\treturn (\n\t\tisInteger( value ) &&\n\t\tvalue.valueOf() > 0.0\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isPositiveInteger;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a positive integer.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a positive integer\n*\n* @example\n* var bool = isPositiveInteger( 5.0 );\n* // returns true\n*\n* @example\n* var bool = isPositiveInteger( new Number( 5.0 ) );\n* // returns true\n*\n* @example\n* var bool = isPositiveInteger( 0.0 );\n* // returns false\n*\n* @example\n* var bool = isPositiveInteger( -5.0 );\n* // returns false\n*\n* @example\n* var bool = isPositiveInteger( 3.14 );\n* // returns false\n*\n* @example\n* var bool = isPositiveInteger( null );\n* // returns false\n*/\nfunction isPositiveInteger( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isPositiveInteger;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a positive integer.\n*\n* @module @stdlib/assert/is-positive-integer\n*\n* @example\n* var isPositiveInteger = require( '@stdlib/assert/is-positive-integer' );\n*\n* var bool = isPositiveInteger( 5.0 );\n* // returns true\n*\n* bool = isPositiveInteger( new Number( 5.0 ) );\n* // returns true\n*\n* bool = isPositiveInteger( -5.0 );\n* // returns false\n*\n* bool = isPositiveInteger( 3.14 );\n* // returns false\n*\n* bool = isPositiveInteger( null );\n* // returns false\n*\n* @example\n* var isPositiveInteger = require( '@stdlib/assert/is-positive-integer' ).isPrimitive;\n*\n* var bool = isPositiveInteger( 3.0 );\n* // returns true\n*\n* bool = isPositiveInteger( new Number( 3.0 ) );\n* // returns false\n*\n* @example\n* var isPositiveInteger = require( '@stdlib/assert/is-positive-integer' ).isObject;\n*\n* var bool = isPositiveInteger( 3.0 );\n* // returns false\n*\n* bool = isPositiveInteger( new Number( 3.0 ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array-like object containing only positive integers.\n*\n* @module @stdlib/assert/is-positive-integer-array\n*\n* @example\n* var isPositiveIntegerArray = require( '@stdlib/assert/is-positive-integer-array' );\n*\n* var bool = isPositiveIntegerArray( [ 3.0, new Number(3.0) ] );\n* // returns true\n*\n* bool = isPositiveIntegerArray( [ 3.0, '3.0' ] );\n* // returns false\n*\n* @example\n* var isPositiveIntegerArray = require( '@stdlib/assert/is-positive-integer-array' ).primitives;\n*\n* var bool = isPositiveIntegerArray( [ 1.0, 2.0, 10.0 ] );\n* // returns true\n*\n* bool = isPositiveIntegerArray( [ 3.0, new Number(1.0) ] );\n* // returns false\n*\n* @example\n* var isPositiveIntegerArray = require( '@stdlib/assert/is-positive-integer-array' ).objects;\n*\n* var bool = isPositiveIntegerArray( [ new Number(3.0), new Number(1.0) ] );\n* // returns true\n*\n* bool = isPositiveIntegerArray( [ 1.0, 2.0, 10.0 ] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isPositiveInteger = require( './../../is-positive-integer' );\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar arrayfun = require( './../../tools/array-like-function' );\n\n\n// VARIABLES //\n\nvar isPrimitiveArray = arrayfun( isPositiveInteger.isPrimitive );\nvar isObjectArray = arrayfun( isPositiveInteger.isObject );\n\n\n// MAIN //\n\nvar isPositiveIntegerArray = arrayfun( isPositiveInteger );\nsetReadOnly( isPositiveIntegerArray, 'primitives', isPrimitiveArray );\nsetReadOnly( isPositiveIntegerArray, 'objects', isObjectArray );\n\n\n// EXPORTS //\n\nmodule.exports = isPositiveIntegerArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isPrimitive;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number primitive having a positive value.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number primitive having a positive value\n*\n* @example\n* var bool = isPositiveNumber( 3.0 );\n* // returns true\n*\n* @example\n* var bool = isPositiveNumber( new Number( 3.0 ) );\n* // returns false\n*/\nfunction isPositiveNumber( value ) {\n\treturn (\n\t\tisNumber( value ) &&\n\t\tvalue > 0.0\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isPositiveNumber;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isObject;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number object having a positive value.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number object having a positive value\n*\n* @example\n* var bool = isPositiveNumber( 3.0 );\n* // returns false\n*\n* @example\n* var bool = isPositiveNumber( new Number( 3.0 ) );\n* // returns true\n*/\nfunction isPositiveNumber( value ) {\n\treturn (\n\t\tisNumber( value ) &&\n\t\tvalue.valueOf() > 0.0\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isPositiveNumber;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a positive number.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a positive number\n*\n* @example\n* var bool = isPositiveNumber( 5.0 );\n* // returns true\n*\n* @example\n* var bool = isPositiveNumber( new Number( 5.0 ) );\n* // returns true\n*\n* @example\n* var bool = isPositiveNumber( 3.14 );\n* // returns true\n*\n* @example\n* var bool = isPositiveNumber( -5.0 );\n* // returns false\n*\n* @example\n* var bool = isPositiveNumber( null );\n* // returns false\n*/\nfunction isPositiveNumber( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isPositiveNumber;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a positive number.\n*\n* @module @stdlib/assert/is-positive-number\n*\n* @example\n* var isPositiveNumber = require( '@stdlib/assert/is-positive-number' );\n*\n* var bool = isPositiveNumber( 5.0 );\n* // returns true\n*\n* bool = isPositiveNumber( new Number( 5.0 ) );\n* // returns true\n*\n* bool = isPositiveNumber( 3.14 );\n* // returns true\n*\n* bool = isPositiveNumber( -5.0 );\n* // returns false\n*\n* bool = isPositiveNumber( null );\n* // returns false\n*\n* @example\n* var isPositiveNumber = require( '@stdlib/assert/is-positive-number' ).isPrimitive;\n*\n* var bool = isPositiveNumber( 3.0 );\n* // returns true\n*\n* bool = isPositiveNumber( new Number( 3.0 ) );\n* // returns false\n*\n* @example\n* var isPositiveNumber = require( '@stdlib/assert/is-positive-number' ).isObject;\n*\n* var bool = isPositiveNumber( 3.0 );\n* // returns false\n*\n* bool = isPositiveNumber( new Number( 3.0 ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array-like object containing only positive numbers.\n*\n* @module @stdlib/assert/is-positive-number-array\n*\n* @example\n* var isPositiveNumberArray = require( '@stdlib/assert/is-positive-number-array' );\n*\n* var bool = isPositiveNumberArray( [ 3.0, new Number(3.0) ] );\n* // returns true\n*\n* bool = isPositiveNumberArray( [ 3.0, '3.0' ] );\n* // returns false\n*\n* @example\n* var isPositiveNumberArray = require( '@stdlib/assert/is-positive-number-array' ).primitives;\n*\n* var bool = isPositiveNumberArray( [ 1.0, 5.0, 10.0 ] );\n* // returns true\n*\n* bool = isPositiveNumberArray( [ 3.0, new Number(1.0) ] );\n* // returns false\n*\n* @example\n* var isPositiveNumberArray = require( '@stdlib/assert/is-positive-number-array' ).objects;\n*\n* var bool = isPositiveNumberArray( [ new Number(3.0), new Number(1.0) ] );\n* // returns true\n*\n* bool = isPositiveNumberArray( [ 1.0, 5.0, 10.0 ] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isPositiveNumber = require( './../../is-positive-number' );\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar arrayfun = require( './../../tools/array-like-function' );\n\n\n// VARIABLES //\n\nvar isPrimitiveArray = arrayfun( isPositiveNumber.isPrimitive );\nvar isObjectArray = arrayfun( isPositiveNumber.isObject );\n\n\n// MAIN //\n\nvar isPositiveNumberArray = arrayfun( isPositiveNumber );\nsetReadOnly( isPositiveNumberArray, 'primitives', isPrimitiveArray );\nsetReadOnly( isPositiveNumberArray, 'objects', isObjectArray );\n\n\n// EXPORTS //\n\nmodule.exports = isPositiveNumberArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isPrimitive;\nvar PINF = require( '@stdlib/constants/float64/pinf' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number primitive equal to positive zero.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number primitive equal to positive zero\n*\n* @example\n* var bool = isPositiveZero( 0.0 );\n* // returns true\n*\n* @example\n* var bool = isPositiveZero( new Number( 0.0 ) );\n* // returns false\n*/\nfunction isPositiveZero( value ) {\n\treturn (\n\t\tisNumber( value ) &&\n\t\t( 1.0 / value ) === PINF\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isPositiveZero;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isObject;\nvar PINF = require( '@stdlib/constants/float64/pinf' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number object having a value equal to positive zero.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number object having a value equal to positive zero\n*\n* @example\n* var bool = isPositiveZero( 0.0 );\n* // returns false\n*\n* @example\n* var bool = isPositiveZero( new Number( 0.0 ) );\n* // returns true\n*/\nfunction isPositiveZero( value ) {\n\treturn (\n\t\tisNumber( value ) &&\n\t\t( 1.0 / value.valueOf() ) === PINF\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isPositiveZero;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is equal to positive zero.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is equal to positive zero\n*\n* @example\n* var bool = isPositiveZero( 0.0 );\n* // returns true\n*\n* @example\n* var bool = isPositiveZero( new Number( 0.0 ) );\n* // returns true\n*\n* @example\n* var bool = isPositiveZero( -3.14 );\n* // returns false\n*\n* @example\n* var bool = isPositiveZero( 5.0 );\n* // returns false\n*\n* @example\n* var bool = isPositiveZero( -0.0 );\n* // returns false\n*\n* @example\n* var bool = isPositiveZero( null );\n* // returns false\n*/\nfunction isPositiveZero( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isPositiveZero;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is equal to positive zero.\n*\n* @module @stdlib/assert/is-positive-zero\n*\n* @example\n* var isPositiveZero = require( '@stdlib/assert/is-positive-zero' );\n*\n* var bool = isPositiveZero( 0.0 );\n* // returns true\n*\n* bool = isPositiveZero( new Number( 0.0 ) );\n* // returns true\n*\n* bool = isPositiveZero( -3.14 );\n* // returns false\n*\n* bool = isPositiveZero( 5.0 );\n* // returns false\n*\n* bool = isPositiveZero( -0.0 );\n* // returns false\n*\n* bool = isPositiveZero( null );\n* // returns false\n*\n* @example\n* var isPositiveZero = require( '@stdlib/assert/is-positive-zero' ).isPrimitive;\n*\n* var bool = isPositiveZero( 0.0 );\n* // returns true\n*\n* bool = isPositiveZero( new Number( 0.0 ) );\n* // returns false\n*\n* @example\n* var isPositiveZero = require( '@stdlib/assert/is-positive-zero' ).isObject;\n*\n* var bool = isPositiveZero( 0.0 );\n* // returns false\n*\n* bool = isPositiveZero( new Number( 0.0 ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isPrimitive;\nvar isprime = require( '@stdlib/math/base/assert/is-prime' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number primitive having a value which is a prime number.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number primitive having a value which is a prime number\n*\n* @example\n* var bool = isPrime( 5.0 );\n* // returns true\n*\n* @example\n* var bool = isPrime( new Number( 5.0 ) );\n* // returns false\n*/\nfunction isPrime( value ) {\n\tif ( !isNumber( value ) ) {\n\t\treturn false;\n\t}\n\treturn isprime( value );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isPrime;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isObject;\nvar isprime = require( '@stdlib/math/base/assert/is-prime' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number object having a value which is a prime number.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number object having a value which is a prime number\n*\n* @example\n* var bool = isPrime( 5.0 );\n* // returns false\n*\n* @example\n* var bool = isPrime( new Number( 5.0 ) );\n* // returns true\n*/\nfunction isPrime( value ) {\n\tif ( !isNumber( value ) ) {\n\t\treturn false;\n\t}\n\treturn isprime( value.valueOf() );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isPrime;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a prime number.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a prime number\n*\n* @example\n* var bool = isPrime( 5.0 );\n* // returns true\n*\n* @example\n* var bool = isPrime( new Number( 5.0 ) );\n* // returns true\n*\n* @example\n* var bool = isPrime( 3.14 );\n* // returns false\n*\n* @example\n* var bool = isPrime( -5.0 );\n* // returns false\n*\n* @example\n* var bool = isPrime( null );\n* // returns false\n*/\nfunction isPrime( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isPrime;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a prime number.\n*\n* @module @stdlib/assert/is-prime\n*\n* @example\n* var isPrime = require( '@stdlib/assert/is-prime' );\n*\n* var bool = isPrime( 5.0 );\n* // returns true\n*\n* bool = isPrime( new Number( 5.0 ) );\n* // returns true\n*\n* bool = isPrime( 3.14 );\n* // returns false\n*\n* bool = isPrime( -5.0 );\n* // returns false\n*\n* bool = isPrime( null );\n* // returns false\n*\n* @example\n* var isPrime = require( '@stdlib/assert/is-prime' ).isPrimitive;\n*\n* var bool = isPrime( 5.0 );\n* // returns true\n*\n* bool = isPrime( new Number( 5.0 ) );\n* // returns false\n*\n* @example\n* var isPrime = require( '@stdlib/assert/is-prime' ).isObject;\n*\n* var bool = isPrime( 5.0 );\n* // returns false\n*\n* bool = isPrime( new Number( 5.0 ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar arrayfun = require( './../../tools/array-like-function' );\nvar isPrimitive = require( './../../is-primitive' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is an array-like object containing only JavaScript primitives.\n*\n* @name isPrimitiveArray\n* @type {Function}\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether an input value is an array-like object containing only JavaScript primitives\n*\n* @example\n* var bool = isPrimitiveArray( [ '3', 2, null ] );\n* // returns true\n*\n* bool = isPrimitiveArray( [ {}, 2, 1 ] );\n* // returns false\n*\n* bool = isPrimitiveArray( [ new String('abc'), '3.0' ] );\n* // returns false\n*/\nvar isPrimitiveArray = arrayfun( isPrimitive );\n\n\n// EXPORTS //\n\nmodule.exports = isPrimitiveArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array-like object containing only JavaScript primitives.\n*\n* @module @stdlib/assert/is-primitive-array\n*\n* @example\n* var isPrimitiveArray = require( '@stdlib/assert/is-primitive-array' );\n*\n* var bool = isPrimitiveArray( [ '3', 2, null ] );\n* // returns true\n*\n* bool = isPrimitiveArray( [ {}, 2, 1 ] );\n* // returns false\n*\n* bool = isPrimitiveArray( [ new String('abc'), '3.0' ] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isFunction = require( './../../is-function' );\nvar hasOwnProp = require( './../../has-own-property' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is PRNG-like.\n*\n* @param {*} v - value to test\n* @returns {boolean} boolean indicating if a value is PRNG-like\n*\n* @example\n* var randu = require( '@stdlib/random/base/randu' );\n*\n* var bool = isPRNGLike( randu );\n* // returns true\n*\n* bool = isPRNGLike( [] );\n* // returns false\n*/\nfunction isPRNGLike( v ) {\n\treturn (\n\t\tisFunction( v ) &&\n\t\ttypeof v.NAME === 'string' &&\n\t\thasOwnProp( v, 'state' ) &&\n\t\thasOwnProp( v, 'seed' )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isPRNGLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is PRNG-like.\n*\n* @module @stdlib/assert/is-prng-like\n*\n* @example\n* var randu = require( '@stdlib/random/base/randu' );\n* var isPRNGLike = require( '@stdlib/assert/is-prng-like' );\n*\n* var bool = isPRNGLike( randu );\n* // returns true\n*\n* bool = isPRNGLike( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isPrimitive;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number primitive having a value which is a probability.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number primitive having a value which is a probability\n*\n* @example\n* var bool = isProbability( 0.66 );\n* // returns true\n*\n* @example\n* var bool = isProbability( new Number( 0.66 ) );\n* // returns false\n*/\nfunction isProbability( value ) {\n\treturn (\n\t\tisNumber( value ) &&\n\t\tvalue >= 0.0 &&\n\t\tvalue <= 1.0\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isProbability;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isObject;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number object having a value which is a probability.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number object having a value which is a probability\n*\n* @example\n* var bool = isProbability( 0.5 );\n* // returns false\n*\n* @example\n* var bool = isProbability( new Number( 0.5 ) );\n* // returns true\n*/\nfunction isProbability( value ) {\n\treturn (\n\t\tisNumber( value ) &&\n\t\tvalue.valueOf() >= 0.0 &&\n\t\tvalue.valueOf() <= 1.0\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isProbability;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a probability.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a probability\n*\n* @example\n* var bool = isProbability( 0.5 );\n* // returns true\n*\n* @example\n* var bool = isProbability( new Number( 0.5 ) );\n* // returns true\n*\n* @example\n* var bool = isProbability( 3.14 );\n* // returns false\n*\n* @example\n* var bool = isProbability( -5.0 );\n* // returns false\n*\n* @example\n* var bool = isProbability( null );\n* // returns false\n*/\nfunction isProbability( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isProbability;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a probability.\n*\n* @module @stdlib/assert/is-probability\n*\n* @example\n* var isProbability = require( '@stdlib/assert/is-probability' );\n*\n* var bool = isProbability( 0.5 );\n* // returns true\n*\n* bool = isProbability( new Number( 0.5 ) );\n* // returns true\n*\n* bool = isProbability( 3.14 );\n* // returns false\n*\n* bool = isProbability( -5.0 );\n* // returns false\n*\n* bool = isProbability( null );\n* // returns false\n*\n* @example\n* var isProbability = require( '@stdlib/assert/is-probability' ).isPrimitive;\n*\n* var bool = isProbability( 0.3 );\n* // returns true\n*\n* bool = isProbability( new Number( 0.3 ) );\n* // returns false\n*\n* @example\n* var isProbability = require( '@stdlib/assert/is-probability' ).isObject;\n*\n* var bool = isProbability( 0.77 );\n* // returns false\n*\n* bool = isProbability( new Number( 0.77 ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array-like object containing only probabilities.\n*\n* @module @stdlib/assert/is-probability-array\n*\n* @example\n* var isNonNegativeNumberArray = require( '@stdlib/assert/is-probability-array' );\n*\n* var bool = isProbabilityArray( [ 0.5, new Number(0.8) ] );\n* // returns true\n*\n* bool = isProbabilityArray( [ 0.8, 1.2 ] );\n* // returns false\n*\n* bool = isProbabilityArray( [ 0.8, '0.2' ] );\n* // returns false\n*\n* @example\n* var isProbabilityArray = require( '@stdlib/assert/is-probability-array' ).primitives;\n*\n* var bool = isProbabilityArray( [ 1.0, 0.0, 0.5 ] );\n* // returns true\n*\n* bool = isProbabilityArray( [ 0.3, new Number(0.4) ] );\n* // returns false\n*\n* @example\n* var isProbabilityArray = require( '@stdlib/assert/is-probability-array' ).objects;\n*\n* var bool = isProbabilityArray( [ new Number(0.7), new Number(1.0) ] );\n* // returns true\n*\n* bool = isProbabilityArray( [ 1.0, 0.0, new Number(0.7) ] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isProbability = require( './../../is-probability' );\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar arrayfun = require( './../../tools/array-like-function' );\n\n\n// VARIABLES //\n\nvar isPrimitiveArray = arrayfun( isProbability.isPrimitive );\nvar isObjectArray = arrayfun( isProbability.isObject );\n\n\n// MAIN //\n\nvar isProbabilityArray = arrayfun( isProbability );\nsetReadOnly( isProbabilityArray, 'primitives', isPrimitiveArray );\nsetReadOnly( isProbabilityArray, 'objects', isObjectArray );\n\n\n// EXPORTS //\n\nmodule.exports = isProbabilityArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\nvar isSymbol = require( './../../is-symbol' ).isPrimitive;\nvar isNonNegativeInteger = require( './../../is-nonnegative-integer' ).isPrimitive;\n\n\n// MAIN //\n\n/**\n* Tests whether a value is a property key.\n*\n* ## Notes\n*\n* - A property key is either a string, symbol, or a nonnegative integer.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a property key\n*\n* @example\n* var bool = isPropertyKey( 'beep' );\n* // returns true\n*\n* @example\n* var bool = isPropertyKey( 37 );\n* // returns true\n*\n* @example\n* var bool = isPropertyKey( {} );\n* // returns false\n*\n* @example\n* var bool = isPropertyKey( [] );\n* // returns false\n*/\nfunction isPropertyKey( value ) {\n\treturn (\n\t\tisString( value ) ||\n\t\tisSymbol( value ) ||\n\t\tisNonNegativeInteger( value )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isPropertyKey;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether a value is a property key.\n*\n* @module @stdlib/assert/is-property-key\n*\n* @example\n* var isPropertyKey = require( '@stdlib/assert/is-property-key' );\n*\n* var bool = isPropertyKey( 'beep' );\n* // returns true\n*\n* bool = isPropertyKey( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// VARIABLES //\n\nvar isProtoOf = Object.prototype.isPrototypeOf;\nvar format = require( '@stdlib/string/format' );\n\n\n// MAIN //\n\n/**\n* Tests if an object's prototype chain contains a provided prototype.\n*\n* @param {*} value - value to test\n* @param {(Object|Function)} proto - prototype\n* @throws {TypeError} second argument must be an object and not null\n* @returns {boolean} boolean indicating if a provided prototype exists in a prototype chain\n*\n* @example\n* var inherit = require( '@stdlib/utils/inherit' );\n*\n* function Foo() {\n* return this;\n* }\n*\n* function Bar() {\n* return this;\n* }\n* inherit( Bar, Foo );\n*\n* var bar = new Bar();\n*\n* var bool = isPrototypeOf( bar, Foo.prototype );\n* // returns true\n*/\nfunction isPrototypeOf( value, proto ) { // eslint-disable-line stdlib/no-redeclare\n\tvar type = typeof proto;\n\tif (\n\t\tproto === null ||\n\t\t(type !== 'object' && type !== 'function')\n\t) {\n\t\tthrow new TypeError( format( 'invalid argument. Second argument must be either an object (except null) or a function. Value: `%s`.', proto ) );\n\t}\n\ttype = typeof value;\n\tif (\n\t\tvalue === null ||\n\t\t(type !== 'object' && type !== 'function')\n\t) {\n\t\treturn false;\n\t}\n\treturn isProtoOf.call( proto, value );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isPrototypeOf;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if an object's prototype chain contains a provided prototype.\n*\n* @module @stdlib/assert/is-prototype-of\n*\n* @example\n* var inherit = require( '@stdlib/utils/inherit' );\n* var isPrototypeOf = require( '@stdlib/assert/is-prototype-of' );\n*\n* function Foo() {\n* return this;\n* }\n*\n* function Bar() {\n* return this;\n* }\n* inherit( Bar, Foo );\n*\n* var bar = new Bar();\n*\n* var bool = isPrototypeOf( bar, Foo.prototype );\n* // returns true\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar getPrototypeOf = require( '@stdlib/utils/get-prototype-of' );\nvar typeOf = require( '@stdlib/utils/type-of' );\nvar isError = require( './../../is-error' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a `RangeError` object.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is a `RangeError` object\n*\n* @example\n* var bool = isRangeError( new RangeError( 'beep' ) );\n* // returns true\n*\n* @example\n* var bool = isRangeError( {} );\n* // returns false\n*/\nfunction isRangeError( value ) {\n\tif ( typeof value !== 'object' || value === null ) {\n\t\treturn false;\n\t}\n\t// Check for `RangeError` objects from the same realm (same Node.js `vm` or same `Window` object)...\n\tif ( value instanceof RangeError ) {\n\t\treturn true;\n\t}\n\t// All `RangeError` objects are `Error` objects...\n\tif ( isError( value ) ) {\n\t\t// Walk the prototype tree until we find the desired constructor...\n\t\twhile ( value ) {\n\t\t\tif ( typeOf( value ) === 'rangeerror' ) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\tvalue = getPrototypeOf( value );\n\t\t}\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isRangeError;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a `RangeError` object.\n*\n* @module @stdlib/assert/is-range-error\n*\n* @example\n* var isRangeError = require( '@stdlib/assert/is-range-error' );\n*\n* var bool = isRangeError( new RangeError( 'beep' ) );\n* // returns true\n*\n* bool = isRangeError( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar propertyDescriptor = require( '@stdlib/utils/property-descriptor' );\n\n\n// MAIN //\n\n/**\n* Tests if an object's own property is read-only.\n*\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object property is read-only\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': true,\n* 'writable': false,\n* 'value': true\n* });\n*\n* var bool = isReadOnlyProperty( obj, 'boop' );\n* // returns false\n*\n* bool = isReadOnlyProperty( obj, 'beep' );\n* // returns true\n*/\nfunction isReadOnlyProperty( value, property ) {\n\tvar desc = propertyDescriptor( value, property );\n\treturn (\n\t\tdesc !== null &&\n\t\tdesc.configurable === false &&\n\t\t(\n\t\t\t// Data descriptor:\n\t\t\tdesc.writable === false ||\n\n\t\t\t// Accessor descriptor:\n\t\t\t(\n\t\t\t\ttypeof desc.get === 'function' &&\n\t\t\t\tdesc.set === void 0\n\t\t\t)\n\t\t)\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isReadOnlyProperty;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object's own property is read-only.\n*\n* @module @stdlib/assert/is-read-only-property\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n* var isReadOnlyProperty = require( '@stdlib/assert/is-read-only-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': true,\n* 'writable': false,\n* 'value': true\n* });\n*\n* var bool = isReadOnlyProperty( obj, 'boop' );\n* // returns false\n*\n* bool = isReadOnlyProperty( obj, 'beep' );\n* // returns true\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar propertyDescriptorIn = require( '@stdlib/utils/property-descriptor-in' );\n\n\n// MAIN //\n\n/**\n* Tests if an object's own or inherited property is read-only.\n*\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object property is read-only\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': true,\n* 'writable': false,\n* 'value': true\n* });\n*\n* var bool = isReadOnlyPropertyIn( obj, 'boop' );\n* // returns false\n*\n* bool = isReadOnlyPropertyIn( obj, 'beep' );\n* // returns true\n*/\nfunction isReadOnlyPropertyIn( value, property ) {\n\tvar desc = propertyDescriptorIn( value, property );\n\treturn (\n\t\tdesc !== null &&\n\t\tdesc.configurable === false &&\n\t\t(\n\t\t\t// Data descriptor:\n\t\t\tdesc.writable === false ||\n\n\t\t\t// Accessor descriptor:\n\t\t\t(\n\t\t\t\ttypeof desc.get === 'function' &&\n\t\t\t\tdesc.set === void 0\n\t\t\t)\n\t\t)\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isReadOnlyPropertyIn;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object's own or inherited property is read-only.\n*\n* @module @stdlib/assert/is-read-only-property-in\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n* var isReadOnlyPropertyIn = require( '@stdlib/assert/is-read-only-property-in' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': true,\n* 'writable': false,\n* 'value': true\n* });\n*\n* var bool = isReadOnlyPropertyIn( obj, 'boop' );\n* // returns false\n*\n* bool = isReadOnlyPropertyIn( obj, 'beep' );\n* // returns true\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar propertyDescriptor = require( '@stdlib/utils/property-descriptor' );\n\n\n// MAIN //\n\n/**\n* Tests if an object's own property is readable and writable.\n*\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object property is readable and writable\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* function setter( v ) {\n* obj.boop = v;\n* }\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': false,\n* 'set': setter\n* });\n*\n* var bool = isReadWriteProperty( obj, 'boop' );\n* // returns true\n*\n* bool = isReadWriteProperty( obj, 'beep' );\n* // returns false\n*/\nfunction isReadWriteProperty( value, property ) {\n\tvar desc = propertyDescriptor( value, property );\n\treturn (\n\t\tdesc !== null &&\n\t\t(\n\t\t\t// Data descriptor:\n\t\t\tdesc.writable === true ||\n\n\t\t\t// Accessor descriptor:\n\t\t\t(\n\t\t\t\ttypeof desc.get === 'function' &&\n\t\t\t\ttypeof desc.set === 'function'\n\t\t\t)\n\t\t)\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isReadWriteProperty;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object's own property is readable and writable.\n*\n* @module @stdlib/assert/is-read-write-property\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n* var isReadWriteProperty = require( '@stdlib/assert/is-read-write-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* function setter( v ) {\n* obj.boop = v;\n* }\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': false,\n* 'set': setter\n* });\n*\n* var bool = isReadWriteProperty( obj, 'boop' );\n* // returns true\n*\n* bool = isReadWriteProperty( obj, 'beep' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar propertyDescriptorIn = require( '@stdlib/utils/property-descriptor-in' );\n\n\n// MAIN //\n\n/**\n* Tests if an object's own or inherited property is readable and writable.\n*\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object property is readable and writable\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* function setter( v ) {\n* obj.boop = v;\n* }\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': false,\n* 'set': setter\n* });\n*\n* var bool = isReadWritePropertyIn( obj, 'boop' );\n* // returns true\n*\n* bool = isReadWritePropertyIn( obj, 'beep' );\n* // returns false\n*/\nfunction isReadWritePropertyIn( value, property ) {\n\tvar desc = propertyDescriptorIn( value, property );\n\treturn (\n\t\tdesc !== null &&\n\t\t(\n\t\t\t// Data descriptor:\n\t\t\tdesc.writable === true ||\n\n\t\t\t// Accessor descriptor:\n\t\t\t(\n\t\t\t\ttypeof desc.get === 'function' &&\n\t\t\t\ttypeof desc.set === 'function'\n\t\t\t)\n\t\t)\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isReadWritePropertyIn;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object's own or inherited property is readable and writable.\n*\n* @module @stdlib/assert/is-read-write-property-in\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n* var isReadWritePropertyIn = require( '@stdlib/assert/is-read-write-property-in' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* function setter( v ) {\n* obj.boop = v;\n* }\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': false,\n* 'set': setter\n* });\n*\n* var bool = isReadWritePropertyIn( obj, 'boop' );\n* // returns true\n*\n* bool = isReadWritePropertyIn( obj, 'beep' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar propertyDescriptor = require( '@stdlib/utils/property-descriptor' );\n\n\n// MAIN //\n\n/**\n* Tests if an object's own property is readable.\n*\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object property is readable\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* function setter( v ) {\n* obj.boop = v;\n* }\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': false,\n* 'set': setter\n* });\n*\n* var bool = isReadableProperty( obj, 'boop' );\n* // returns true\n*\n* bool = isReadableProperty( obj, 'beep' );\n* // returns false\n*/\nfunction isReadableProperty( value, property ) {\n\tvar desc = propertyDescriptor( value, property );\n\treturn (\n\t\tdesc !== null &&\n\t\t(\n\t\t\tdesc.writable !== void 0 || // data descriptor\n\t\t\ttypeof desc.get === 'function' // accessor descriptor\n\t\t)\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isReadableProperty;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object's own property is readable.\n*\n* @module @stdlib/assert/is-readable-property\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n* var isReadableProperty = require( '@stdlib/assert/is-readable-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* function setter( v ) {\n* obj.boop = v;\n* }\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': false,\n* 'set': setter\n* });\n*\n* var bool = isReadableProperty( obj, 'boop' );\n* // returns true\n*\n* bool = isReadableProperty( obj, 'beep' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar propertyDescriptorIn = require( '@stdlib/utils/property-descriptor-in' );\n\n\n// MAIN //\n\n/**\n* Tests if an object's own or inherited property is readable.\n*\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object property is readable\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* function setter( v ) {\n* obj.boop = v;\n* }\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': false,\n* 'set': setter\n* });\n*\n* var bool = isReadablePropertyIn( obj, 'boop' );\n* // returns true\n*\n* bool = isReadablePropertyIn( obj, 'beep' );\n* // returns false\n*/\nfunction isReadablePropertyIn( value, property ) {\n\tvar desc = propertyDescriptorIn( value, property );\n\treturn (\n\t\tdesc !== null &&\n\t\t(\n\t\t\tdesc.writable !== void 0 || // data descriptor\n\t\t\ttypeof desc.get === 'function' // accessor descriptor\n\t\t)\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isReadablePropertyIn;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object's own or inherited property is readable.\n*\n* @module @stdlib/assert/is-readable-property-in\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n* var isReadablePropertyIn = require( '@stdlib/assert/is-readable-property-in' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* function setter( v ) {\n* obj.boop = v;\n* }\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': false,\n* 'set': setter\n* });\n*\n* var bool = isReadablePropertyIn( obj, 'boop' );\n* // returns true\n*\n* bool = isReadablePropertyIn( obj, 'beep' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar getPrototypeOf = require( '@stdlib/utils/get-prototype-of' );\nvar typeOf = require( '@stdlib/utils/type-of' );\nvar isError = require( './../../is-error' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a `ReferenceError` object.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is a `ReferenceError` object\n*\n* @example\n* var bool = isReferenceError( new ReferenceError( 'beep' ) );\n* // returns true\n*\n* @example\n* var bool = isReferenceError( {} );\n* // returns false\n*/\nfunction isReferenceError( value ) {\n\tif ( typeof value !== 'object' || value === null ) {\n\t\treturn false;\n\t}\n\t// Check for `ReferenceError` objects from the same realm (same Node.js `vm` or same `Window` object)...\n\tif ( value instanceof ReferenceError ) {\n\t\treturn true;\n\t}\n\t// All `ReferenceError` objects are `Error` objects...\n\tif ( isError( value ) ) {\n\t\t// Walk the prototype tree until we find the desired constructor...\n\t\twhile ( value ) {\n\t\t\tif ( typeOf( value ) === 'referenceerror' ) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\tvalue = getPrototypeOf( value );\n\t\t}\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isReferenceError;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a `ReferenceError` object.\n*\n* @module @stdlib/assert/is-reference-error\n*\n* @example\n* var isReferenceError = require( '@stdlib/assert/is-reference-error' );\n*\n* var bool = isReferenceError( new ReferenceError( 'beep' ) );\n* // returns true\n*\n* bool = isReferenceError( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\nvar RE = require( '@stdlib/regexp/regexp' ).REGEXP;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a regular expression string.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is a regular expression string\n*\n* @example\n* var bool = isRegExpString( '/beep/' );\n* // returns true\n*\n* @example\n* var bool = isRegExpString( '/beep/gim' );\n* // returns true\n*\n* @example\n* var bool = isRegExpString( 'beep' );\n* // returns false\n*\n* @example\n* var bool = isRegExpString( '' );\n* // returns false\n*\n* @example\n* var bool = isRegExpString( null );\n* // returns false\n*/\nfunction isRegExpString( value ) {\n\treturn isString( value ) && RE.test( value );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isRegExpString;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a regular expression string.\n*\n* @module @stdlib/assert/is-regexp-string\n*\n* @example\n* var isRegExpString = require( '@stdlib/assert/is-regexp-string' );\n*\n* var bool = isRegExpString( '/beep/' );\n* // returns true\n*\n* bool = isRegExpString( 'beep' );\n* // returns false\n*\n* bool = isRegExpString( '' );\n* // returns false\n*\n* bool = isRegExpString( null );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\nvar isAbsolutePath = require( './../../is-absolute-path' ).posix;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a POSIX relative path.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a POSIX relative path\n*\n* @example\n* var bool = isRelativePath( './foo/bar/baz' );\n* // returns true\n*\n* @example\n* var bool = isRelativePath( '/foo/../bar/baz' );\n* // returns false\n*/\nfunction isRelativePath( value ) {\n\treturn (\n\t\tisString( value ) &&\n\t\t!isAbsolutePath( value )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isRelativePath;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\nvar isAbsolutePath = require( './../../is-absolute-path' ).win32;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a Windows relative path.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a Windows relative path\n*\n* @example\n* var bool = isRelativePath( 'foo\\\\bar\\\\baz' );\n* // returns true\n*\n* @example\n* var bool = isRelativePath( 'C:\\\\foo\\\\..\\\\bar\\\\baz' );\n* // returns false\n*/\nfunction isRelativePath( value ) {\n\treturn (\n\t\tisString( value ) &&\n\t\t!isAbsolutePath( value )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isRelativePath;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a relative path.\n*\n* @module @stdlib/assert/is-relative-path\n*\n* @example\n* var IS_WINDOWS = require( '@stdlib/assert/is-windows' );\n* var isRelativePath = require( '@stdlib/assert/is-relative-path' );\n*\n* var bool;\n* if ( IS_WINDOWS ) {\n* bool = isRelativePath( 'foo\\\\bar\\\\baz' );\n* // returns true\n*\n* bool = isRelativePath( 'C:\\\\foo\\\\..\\\\bar\\\\baz' );\n* // returns false\n* } else {\n* bool = isRelativePath( './foo/bar/baz' );\n* // returns true\n*\n* bool = isRelativePath( '/foo/../bar/baz' );\n* // returns false\n* }\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar IS_WINDOWS = require( './../../is-windows' );\nvar isRelativePathPosix = require( './posix.js' );\nvar isRelativePathWin32 = require( './win32.js' );\n\n\n// MAIN //\n\nvar isRelativePath;\nif ( IS_WINDOWS ) {\n\tisRelativePath = isRelativePathWin32;\n} else {\n\tisRelativePath = isRelativePathPosix;\n}\nsetReadOnly( isRelativePath, 'posix', isRelativePathPosix );\nsetReadOnly( isRelativePath, 'win32', isRelativePathWin32 );\n\n\n// EXPORTS //\n\nmodule.exports = isRelativePath;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\n\n\n// VARIABLES //\n\n/**\n* Matches parts of a URI according to RFC 3986.\n*\n* ```text\n* : [ ? ] [ # ]\n* ```\n*\n* Regular expression: `/(?:([^:\\/?#]+):)?(?:\\/\\/([^\\/?#]*))?([^?#]*)(?:\\?[^#]*)?(?:#.*)?/`\n*\n* - `(?:([^:\\/?#]+):)`\n*\n* - match the scheme, including the `:`, but only capture the scheme name\n*\n* - `?`\n*\n* - match the scheme zero or one times\n*\n* - `(?:\\/\\/([^\\/?#]*))`\n*\n* - match the hierarchical part which is everything which is not a `/`, `#`, or `?`, but only capture whatever comes after the `//`\n*\n* - `?`\n*\n* - match the hierarchical part zero or one times\n*\n* - `([^?#]*)`\n*\n* - capture everything (the path) until meeting a `?` or `#`\n*\n* - `(?:\\?[^#]*)`\n*\n* - match, but don't capture, a query\n*\n* - `?`\n*\n* - match the query zero or one times\n*\n* - `(?:#.*)`\n*\n* - match, but don't capture, a fragment\n*\n* - `?`\n*\n* - match the fragment zero or one times\n*\n* @private\n* @constant\n* @type {RegExp}\n* @default /(?:([^:\\/?#]+):)?(?:\\/\\/([^\\/?#]*))?([^?#]*)(?:\\?[^#]*)?(?:#.*)?/\n*/\nvar RE_URI = /(?:([^:\\/?#]+):)?(?:\\/\\/([^\\/?#]*))?([^?#]*)(?:\\?[^#]*)?(?:#.*)?/; // eslint-disable-line no-useless-escape\n\n// Illegal characters (anything which is not in between the square brackets):\nvar RE_ILLEGALS = /[^a-z0-9:\\/?#\\[\\]@!$&'()*+,;=.\\-_~%]/i; // eslint-disable-line no-useless-escape\n\n// Incomplete HEX escapes:\nvar RE_HEX1 = /%[^0-9a-f]/i;\nvar RE_HEX2 = /%[0-9a-f](:?[^0-9a-f]|$)/i;\n\n// If authority is not present, path must not begin with '//'\nvar RE_PATH = /^\\/\\//;\n\n// Scheme must begin with a letter, then consist of letters, digits, '+', '.', or '-' => e.g., 'http', 'https', 'ftp'\nvar RE_SCHEME = /^[a-z][a-z0-9+\\-.]*$/;\n\n\n// MAIN //\n\n/**\n* Tests whether a value is a relative URI.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is a relative URI\n*\n* @example\n* var bool = isRelativeURI( './beep/boop' );\n* // returns true\n*\n* @example\n* var bool = isRelativeURI( '/dashboard/admin' );\n* // returns true\n*\n* @example\n* var bool = isRelativeURI( 'https://wikipedia.org' );\n* // returns false\n*\n* @example\n* var bool = isRelativeURI( null );\n* // returns false\n*/\nfunction isRelativeURI( value ) {\n\tvar authority;\n\tvar scheme;\n\tvar parts;\n\tvar path;\n\tif ( !isString( value ) ) {\n\t\treturn false;\n\t}\n\t// Check for illegal characters:\n\tif ( RE_ILLEGALS.test( value ) ) {\n\t\treturn false;\n\t}\n\t// Check for incomplete HEX escapes:\n\tif (\n\t\tRE_HEX1.test( value ) ||\n\t\tRE_HEX2.test( value )\n\t) {\n\t\treturn false;\n\t}\n\t// Split the string into various URI components:\n\tparts = value.match( RE_URI );\n\tscheme = parts[ 1 ];\n\tauthority = parts[ 2 ];\n\tpath = parts[ 3 ];\n\n\tif (\n\t\t!scheme ||\n\t\t!scheme.length ||\n\t\t!RE_SCHEME.test( scheme.toLowerCase() )\n\t) {\n\t\treturn true;\n\t}\n\tif (\n\t\t!authority &&\n\t\tRE_PATH.test( path )\n\t) {\n\t\treturn true;\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isRelativeURI;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether a value is a relative URI.\n*\n* @module @stdlib/assert/is-relative-uri\n*\n* @example\n* var isRelativeURI = require( '@stdlib/assert/is-relative-uri' );\n*\n* var bool = isRelativeURI( 'foo/bar' );\n* // returns true\n*\n* bool = isRelativeURI( 'https://example.com/' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isPrimitive;\nvar isSafeInt = require( '@stdlib/math/base/assert/is-safe-integer' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number primitive having a safe integer value.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number primitive having a safe integer value\n*\n* @example\n* var bool = isSafeInteger( -3.0 );\n* // returns true\n*\n* @example\n* var bool = isSafeInteger( new Number( -3.0 ) );\n* // returns false\n*/\nfunction isSafeInteger( value ) {\n\treturn (\n\t\tisNumber( value ) &&\n\t\tisSafeInt( value )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSafeInteger;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isObject;\nvar isSafeInt = require( '@stdlib/math/base/assert/is-safe-integer' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number object having a safe integer value.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number object having a safe integer value\n*\n* @example\n* var bool = isSafeInteger( 3.0 );\n* // returns false\n*\n* @example\n* var bool = isSafeInteger( new Number( 3.0 ) );\n* // returns true\n*/\nfunction isSafeInteger( value ) {\n\treturn (\n\t\tisNumber( value ) &&\n\t\tisSafeInt( value.valueOf() )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSafeInteger;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a safe integer.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a safe integer\n*\n* @example\n* var bool = isSafeInteger( 5.0 );\n* // returns true\n*\n* @example\n* var bool = isSafeInteger( new Number( 5.0 ) );\n* // returns true\n*\n* @example\n* var bool = isSafeInteger( 2.0e300 );\n* // returns false\n*\n* @example\n* var bool = isSafeInteger( -3.14 );\n* // returns false\n*\n* @example\n* var bool = isSafeInteger( null );\n* // returns false\n*/\nfunction isSafeInteger( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSafeInteger;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a safe integer.\n*\n* @module @stdlib/assert/is-safe-integer\n*\n* @example\n* var isSafeInteger = require( '@stdlib/assert/is-safe-integer' );\n*\n* var bool = isSafeInteger( 5.0 );\n* // returns true\n*\n* bool = isSafeInteger( new Number( 5.0 ) );\n* // returns true\n*\n* bool = isSafeInteger( 2.0e200 );\n* // returns false\n*\n* bool = isSafeInteger( -3.14 );\n* // returns false\n*\n* bool = isSafeInteger( null );\n* // returns false\n*\n* @example\n* var isSafeInteger = require( '@stdlib/assert/is-safe-integer' ).isPrimitive;\n*\n* var bool = isSafeInteger( -3.0 );\n* // returns true\n*\n* bool = isSafeInteger( new Number( -3.0 ) );\n* // returns false\n*\n* @example\n* var isSafeInteger = require( '@stdlib/assert/is-safe-integer' ).isObject;\n*\n* var bool = isSafeInteger( 3.0 );\n* // returns false\n*\n* bool = isSafeInteger( new Number( 3.0 ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array-like object containing only safe integers.\n*\n* @module @stdlib/assert/is-safe-integer-array\n*\n* @example\n* var isSafeIntegerArray = require( '@stdlib/assert/is-safe-integer-array' );\n*\n* var bool = isSafeIntegerArray( [ -3.0, new Number(0.0), 2.0 ] );\n* // returns true\n*\n* bool = isSafeIntegerArray( [ -3.0, '3.0' ] );\n* // returns false\n*\n* @example\n* var isSafeIntegerArray = require( '@stdlib/assert/is-safe-integer-array' ).primitives;\n*\n* var bool = isSafeIntegerArray( [ -1.0, 10.0 ] );\n* // returns true\n*\n* bool = isSafeIntegerArray( [ -1.0, 0.0, 5.0 ] );\n* // returns true\n*\n* bool = isSafeIntegerArray( [ -3.0, new Number(-1.0) ] );\n* // returns false\n*\n* @example\n* var isSafeIntegerArray = require( '@stdlib/assert/is-safe-integer-array' ).objects;\n*\n* var bool = isSafeIntegerArray( [ new Number(1.0), new Number(3.0) ] );\n* // returns true\n*\n* bool = isSafeIntegerArray( [ -1.0, 0.0, 3.0 ] );\n* // returns false\n*\n* bool = isSafeIntegerArray( [ 3.0, new Number(-1.0) ] );\n* // returns false\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar arrayfun = require( './../../tools/array-like-function' );\nvar isSafeInteger = require( './../../is-safe-integer' );\n\n\n// VARIABLES //\n\nvar isPrimitiveArray = arrayfun( isSafeInteger.isPrimitive );\nvar isObjectArray = arrayfun( isSafeInteger.isObject );\n\n\n// MAIN //\n\nvar isSafeIntegerArray = arrayfun( isSafeInteger );\nsetReadOnly( isSafeIntegerArray, 'primitives', isPrimitiveArray );\nsetReadOnly( isSafeIntegerArray, 'objects', isObjectArray );\n\n\n// EXPORTS //\n\nmodule.exports = isSafeIntegerArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2024 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isComplex64Array = require( './../../is-complex64array' );\nvar hasSameValues = require( '@stdlib/array/base/assert/has-same-values' );\n\n\n// MAIN //\n\n/**\n* Tests if two arguments are both Complex64Arrays and have the same values.\n*\n* @param {*} v1 - first value\n* @param {*} v2 - second value\n* @returns {boolean} boolean result\n*\n* @example\n* var Complex64Array = require( '@stdlib/array/complex64' );\n*\n* var x = new Complex64Array( [ 1.0, 2.0, 3.0, 4.0 ] );\n* var y = new Complex64Array( [ 1.0, 2.0, 3.0, 4.0 ] );\n*\n* var out = isSameComplex64Array( x, y );\n* // returns true\n*\n* @example\n* var Complex64Array = require( '@stdlib/array/complex64' );\n*\n* var x = new Complex64Array( [ 1.0, 2.0, 3.0, 4.0 ] );\n* var y = new Complex64Array( [ 1.0, 2.0, 4.0, 4.0 ] );\n*\n* var out = isSameComplex64Array( x, y );\n* // returns false\n*/\nfunction isSameComplex64Array( v1, v2 ) {\n\tif ( isComplex64Array( v1 ) && isComplex64Array( v2 ) ) {\n\t\treturn hasSameValues( v1, v2 );\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSameComplex64Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2024 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if two arguments are both Complex64Arrays and have the same values.\n*\n* @module @stdlib/assert/is-same-complex64array\n*\n* @example\n* var Complex64Array = require( '@stdlib/array/complex64' );\n* var isSameComplex64Array = require( '@stdlib/assert/is-same-complex64array' );\n*\n* var x = new Complex64Array( [ 1.0, 2.0, 3.0, 4.0 ] );\n* var y = new Complex64Array( [ 1.0, 2.0, 3.0, 4.0 ] );\n*\n* var out = isSameComplex64Array( x, y );\n* // returns true\n*\n* @example\n* var Complex64Array = require( '@stdlib/array/complex64' );\n* var isSameComplex64Array = require( '@stdlib/assert/is-same-complex64array' );\n*\n* var x = new Complex64Array( [ 1.0, 2.0, 3.0, 4.0 ] );\n* var y = new Complex64Array( [ 1.0, 2.0, 4.0, 4.0 ] );\n*\n* var out = isSameComplex64Array( x, y );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2024 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isComplex128 = require( './../../is-complex128' );\nvar isSameValue = require( '@stdlib/complex/base/assert/is-same-value' );\n\n\n// MAIN //\n\n/**\n* Tests if two arguments are both double-precision complex floating-point numbers and have the same value.\n*\n* @param {*} v1 - first value\n* @param {*} v2 - second value\n* @returns {boolean} boolean result\n*\n* @example\n* var Complex128 = require( '@stdlib/complex/float64' );\n*\n* var x = new Complex128( 1.0, 2.0 );\n* var y = new Complex128( 1.0, 2.0 );\n*\n* var out = isSameComplex128( x, y );\n* // returns true\n*\n* @example\n* var Complex128 = require( '@stdlib/complex/float64' );\n*\n* var x = new Complex128( 1.0, 2.0 );\n* var y = new Complex128( -1.0, -2.0 );\n*\n* var out = isSameComplex128( x, y );\n* // returns false\n*/\nfunction isSameComplex128( v1, v2 ) {\n\tif ( isComplex128( v1 ) && isComplex128( v2 ) ) {\n\t\treturn isSameValue( v1, v2 );\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSameComplex128;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2024 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if two arguments are both double-precision complex floating-point numbers and have the same value.\n*\n* @module @stdlib/assert/is-same-complex128\n*\n* @example\n* var Complex128 = require( '@stdlib/complex/float64' );\n* var isSameComplex128 = require( '@stdlib/assert/is-same-complex128' );\n*\n* var x = new Complex128( 1.0, 2.0 );\n* var y = new Complex128( 1.0, 2.0 );\n*\n* var out = isSameComplex128( x, y );\n* // returns true\n*\n* @example\n* var Complex128 = require( '@stdlib/complex/float64' );\n* var isSameComplex128 = require( '@stdlib/assert/is-same-complex128' );\n*\n* var x = new Complex128( 1.0, 2.0 );\n* var y = new Complex128( -1.0, -2.0 );\n*\n* var out = isSameComplex128( x, y );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2024 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isComplex128Array = require( './../../is-complex128array' );\nvar hasSameValues = require( '@stdlib/array/base/assert/has-same-values' );\n\n\n// MAIN //\n\n/**\n* Tests if two arguments are both Complex128Arrays and have the same values.\n*\n* @param {*} v1 - first value\n* @param {*} v2 - second value\n* @returns {boolean} boolean result\n*\n* @example\n* var Complex128Array = require( '@stdlib/array/complex128' );\n*\n* var x = new Complex128Array( [ 1.0, 2.0, 3.0, 4.0 ] );\n* var y = new Complex128Array( [ 1.0, 2.0, 3.0, 4.0 ] );\n*\n* var out = isSameComplex128Array( x, y );\n* // returns true\n*\n* @example\n* var Complex128Array = require( '@stdlib/array/complex128' );\n*\n* var x = new Complex128Array( [ 1.0, 2.0, 3.0, 4.0 ] );\n* var y = new Complex128Array( [ 1.0, 2.0, 4.0, 4.0 ] );\n*\n* var out = isSameComplex128Array( x, y );\n* // returns false\n*/\nfunction isSameComplex128Array( v1, v2 ) {\n\tif ( isComplex128Array( v1 ) && isComplex128Array( v2 ) ) {\n\t\treturn hasSameValues( v1, v2 );\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSameComplex128Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2024 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if two arguments are both Complex128Arrays and have the same values.\n*\n* @module @stdlib/assert/is-same-complex128array\n*\n* @example\n* var Complex128Array = require( '@stdlib/array/complex128' );\n* var isSameComplex128Array = require( '@stdlib/assert/is-same-complex128array' );\n*\n* var x = new Complex128Array( [ 1.0, 2.0, 3.0, 4.0 ] );\n* var y = new Complex128Array( [ 1.0, 2.0, 3.0, 4.0 ] );\n*\n* var out = isSameComplex128Array( x, y );\n* // returns true\n*\n* @example\n* var Complex128Array = require( '@stdlib/array/complex128' );\n* var isSameComplex128Array = require( '@stdlib/assert/is-same-complex128array' );\n*\n* var x = new Complex128Array( [ 1.0, 2.0, 3.0, 4.0 ] );\n* var y = new Complex128Array( [ 1.0, 2.0, 4.0, 4.0 ] );\n*\n* var out = isSameComplex128Array( x, y );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2024 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isFloat32Array = require( './../../is-float32array' );\nvar hasSameValues = require( '@stdlib/array/base/assert/has-same-values' );\n\n\n// MAIN //\n\n/**\n* Tests if two arguments are both Float32Arrays and have the same values.\n*\n* @param {*} v1 - first value\n* @param {*} v2 - second value\n* @returns {boolean} boolean result\n*\n* @example\n* var Float32Array = require( '@stdlib/array/float32' );\n*\n* var x = new Float32Array( [ 1.0, 2.0, 3.0 ] );\n* var y = new Float32Array( [ 1.0, 2.0, 3.0 ] );\n*\n* var out = isSameFloat32Array( x, y );\n* // returns true\n*\n* @example\n* var Float32Array = require( '@stdlib/array/float32' );\n*\n* var x = new Float32Array( [ 1.0, 2.0, 3.0 ] );\n* var y = new Float32Array( [ 1.0, 2.0, 4.0 ] );\n*\n* var out = isSameFloat32Array( x, y );\n* // returns false\n*/\nfunction isSameFloat32Array( v1, v2 ) {\n\tif ( isFloat32Array( v1 ) && isFloat32Array( v2 ) ) {\n\t\treturn hasSameValues( v1, v2 );\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSameFloat32Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2024 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if two arguments are both Float32Arrays and have the same values.\n*\n* @module @stdlib/assert/is-same-float32array\n*\n* @example\n* var Float32Array = require( '@stdlib/array/float32' );\n* var isSameFloat32Array = require( '@stdlib/assert/is-same-float32array' );\n*\n* var x = new Float32Array( [ 1.0, 2.0, 3.0 ] );\n* var y = new Float32Array( [ 1.0, 2.0, 3.0 ] );\n*\n* var out = isSameFloat32Array( x, y );\n* // returns true\n*\n* @example\n* var Float32Array = require( '@stdlib/array/float32' );\n* var isSameFloat32Array = require( '@stdlib/assert/is-same-float32array' );\n*\n* var x = new Float32Array( [ 1.0, 2.0, 3.0 ] );\n* var y = new Float32Array( [ 1.0, 2.0, 4.0 ] );\n*\n* var out = isSameFloat32Array( x, y );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2024 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isFloat64Array = require( './../../is-float64array' );\nvar hasSameValues = require( '@stdlib/array/base/assert/has-same-values' );\n\n\n// MAIN //\n\n/**\n* Tests if two arguments are both Float64Arrays and have the same values.\n*\n* @param {*} v1 - first value\n* @param {*} v2 - second value\n* @returns {boolean} boolean result\n*\n* @example\n* var Float64Array = require( '@stdlib/array/float64' );\n*\n* var x = new Float64Array( [ 1.0, 2.0, 3.0 ] );\n* var y = new Float64Array( [ 1.0, 2.0, 3.0 ] );\n*\n* var out = isSameFloat64Array( x, y );\n* // returns true\n*\n* @example\n* var Float64Array = require( '@stdlib/array/float64' );\n*\n* var x = new Float64Array( [ 1.0, 2.0, 3.0 ] );\n* var y = new Float64Array( [ 1.0, 2.0, 4.0 ] );\n*\n* var out = isSameFloat64Array( x, y );\n* // returns false\n*/\nfunction isSameFloat64Array( v1, v2 ) {\n\tif ( isFloat64Array( v1 ) && isFloat64Array( v2 ) ) {\n\t\treturn hasSameValues( v1, v2 );\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSameFloat64Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2024 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if two arguments are both Float64Arrays and have the same values.\n*\n* @module @stdlib/assert/is-same-float64array\n*\n* @example\n* var Float64Array = require( '@stdlib/array/float64' );\n* var isSameFloat64Array = require( '@stdlib/assert/is-same-float64array' );\n*\n* var x = new Float64Array( [ 1.0, 2.0, 3.0 ] );\n* var y = new Float64Array( [ 1.0, 2.0, 3.0 ] );\n*\n* var out = isSameFloat64Array( x, y );\n* // returns true\n*\n* @example\n* var Float64Array = require( '@stdlib/array/float64' );\n* var isSameFloat64Array = require( '@stdlib/assert/is-same-float64array' );\n*\n* var x = new Float64Array( [ 1.0, 2.0, 3.0 ] );\n* var y = new Float64Array( [ 1.0, 2.0, 4.0 ] );\n*\n* var out = isSameFloat64Array( x, y );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar nativeClass = require( '@stdlib/utils/native-class' );\n\n\n// MAIN //\n\n/**\n* Tests if two arguments have the same native class.\n*\n* @param {*} a - first input value\n* @param {*} b - second input value\n* @returns {boolean} boolean indicating whether two arguments have the same native class\n*\n* @example\n* var bool = isSameNativeClass( 3.14, new Number( 3.14 ) );\n* // returns true\n*\n* @example\n* var bool = isSameNativeClass( 'beep', 'boop' );\n* // returns true\n*\n* @example\n* var bool = isSameNativeClass( [], {} );\n* // returns false\n*/\nfunction isSameNativeClass( a, b ) {\n\treturn ( nativeClass( a ) === nativeClass( b ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSameNativeClass;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if two arguments have the same native class.\n*\n* @module @stdlib/assert/is-same-native-class\n*\n* @example\n* var isSameNativeClass = require( '@stdlib/assert/is-same-native-class' );\n*\n* var bool = isSameNativeClass( 'beep', 'boop' );\n* // returns true\n*\n* bool = isSameNativeClass( [], {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\n/**\n* Tests if two arguments have the same type.\n*\n* ## Notes\n*\n* - The function uses the `typeof` operator to test for the same type.\n*\n* @param {*} a - first input value\n* @param {*} b - second input value\n* @returns {boolean} boolean indicating whether two arguments have the same type\n*\n* @example\n* var bool = isSameType( true, true );\n* // returns true\n*\n* @example\n* var bool = isSameType( 3.14, 3.14 );\n* // returns true\n*\n* @example\n* var bool = isSameType( {}, [] );\n* // returns true\n*\n* @example\n* var bool = isSameType( NaN, NaN );\n* // returns true\n*\n* @example\n* var bool = isSameType( 0.0, '0.0' );\n* // returns false\n*/\nfunction isSameType( a, b ) {\n\treturn ( typeof a ) === ( typeof b );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSameType;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if two arguments have the same type.\n*\n* @module @stdlib/assert/is-same-type\n*\n* @example\n* var isSameType = require( '@stdlib/assert/is-same-type' );\n*\n* var bool = isSameType( true, true );\n* // returns true\n*\n* bool = isSameType( 3.14, -3.14 );\n* // returns true\n*\n* bool = isSameType( {}, [] );\n* // returns true\n*\n* bool = isSameType( NaN, NaN );\n* // returns true\n*\n* bool = isSameType( '0.0', 0.0 );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isSameComplexValue = require( '@stdlib/complex/base/assert/is-same-value' );\nvar isComplexLike = require( './../../is-complex-like' );\n\n\n// MAIN //\n\n/**\n* Tests if two arguments are the same value.\n*\n* ## Notes\n*\n* - The function implements the [SameValue Algorithm][ecma-262-same-value-algorithm] (as specified in ECMAScript 5), with support for complex number objects.\n* - In contrast to the strict equality operator `===`, `-0` and `+0` are distinguishable and `NaNs` are the same.\n*\n* [ecma-262-same-value-algorithm]: http://ecma-international.org/ecma-262/5.1/#sec-9.12\n*\n* @param {*} a - first input value\n* @param {*} b - second input value\n* @returns {boolean} boolean indicating whether two arguments are the same value\n*\n* @example\n* var bool = isSameValue( true, true );\n* // returns true\n*\n* @example\n* var bool = isSameValue( 3.14, 3.14 );\n* // returns true\n*\n* @example\n* var bool = isSameValue( {}, {} );\n* // returns false\n*\n* @example\n* var bool = isSameValue( -0.0, -0.0 );\n* // returns true\n*\n* @example\n* var bool = isSameValue( -0.0, 0.0 );\n* // returns false\n*\n* @example\n* var bool = isSameValue( NaN, NaN );\n* // returns true\n*\n* @example\n* var bool = isSameValue( [], [] );\n* // returns false\n*/\nfunction isSameValue( a, b ) {\n\tif ( a === b ) {\n\t\tif ( a === 0.0 ) {\n\t\t\treturn 1.0 / a === 1.0 / b; // handles +-0\n\t\t}\n\t\treturn true;\n\t}\n\tif ( a !== a && b !== b ) { // handles NaNs\n\t\treturn true;\n\t}\n\tif ( isComplexLike( a ) && isComplexLike( b ) ) {\n\t\treturn isSameComplexValue( a, b );\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSameValue;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if two arguments are the same value.\n*\n* @module @stdlib/assert/is-same-value\n*\n* @example\n* var isSameValue = require( '@stdlib/assert/is-same-value' );\n*\n* var bool = isSameValue( true, true );\n* // returns true\n*\n* bool = isSameValue( 3.14, 3.14 );\n* // returns true\n*\n* bool = isSameValue( {}, {} );\n* // returns false\n*\n* bool = isSameValue( -0.0, -0.0 );\n* // returns true\n*\n* bool = isSameValue( -0.0, 0.0 );\n* // returns false\n*\n* bool = isSameValue( NaN, NaN );\n* // returns true\n*\n* bool = isSameValue( [], [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isSameComplexValueZero = require( '@stdlib/complex/base/assert/is-same-value-zero' );\nvar isComplexLike = require( './../../is-complex-like' );\n\n\n// MAIN //\n\n/**\n* Tests if two arguments are the same value.\n*\n* ## Notes\n*\n* - The function implements the SameValueZero Algorithm used by `TypedArray` and `ArrayBuffer` constructors, `Map` and `Set` operations, `String.prototype.includes`, and `Array.prototype.includes` since ES2016, and includes support for complex number objects.\n* - In contrast to the strict equality operator `===`, `NaNs` are considered the same value.\n*\n* @param {*} a - first input value\n* @param {*} b - second input value\n* @returns {boolean} boolean indicating whether two arguments are the same value\n*\n* @example\n* var bool = isSameValueZero( true, true );\n* // returns true\n*\n* @example\n* var bool = isSameValueZero( 3.14, 3.14 );\n* // returns true\n*\n* @example\n* var bool = isSameValueZero( {}, {} );\n* // returns false\n*\n* @example\n* var bool = isSameValueZero( -0.0, -0.0 );\n* // returns true\n*\n* @example\n* var bool = isSameValueZero( -0.0, 0.0 );\n* // returns true\n*\n* @example\n* var bool = isSameValueZero( NaN, NaN );\n* // returns true\n*\n* @example\n* var bool = isSameValueZero( [], [] );\n* // returns false\n*/\nfunction isSameValueZero( a, b ) {\n\tif ( ( a === b ) || ( a !== a && b !== b ) ) { // handles NaNs\n\t\treturn true;\n\t}\n\tif ( isComplexLike( a ) && isComplexLike( b ) ) {\n\t\treturn isSameComplexValueZero( a, b );\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSameValueZero;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if two arguments are the same value.\n*\n* @module @stdlib/assert/is-same-value-zero\n*\n* @example\n* var isSameValueZero = require( '@stdlib/assert/is-same-value-zero' );\n*\n* var bool = isSameValueZero( true, true );\n* // returns true\n*\n* bool = isSameValueZero( 3.14, 3.14 );\n* // returns true\n*\n* bool = isSameValueZero( {}, {} );\n* // returns false\n*\n* bool = isSameValueZero( -0.0, -0.0 );\n* // returns true\n*\n* bool = isSameValueZero( -0.0, 0.0 );\n* // returns true\n*\n* bool = isSameValueZero( NaN, NaN );\n* // returns true\n*\n* bool = isSameValueZero( [], [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2022 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\nvar RE_SEMVER = require( '@stdlib/regexp/semver' ).REGEXP;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a semantic version string.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a provided value is a semantic version string\n*\n* @example\n* var bool = isSemVer( '1.0.0' );\n* // returns true\n*\n* @example\n* var bool = isSemVer( '1.0.0-alpha.1' );\n* // returns true\n*\n* @example\n* var bool = isSemVer( '0.1' );\n* // returns false\n*\n* @example\n* var bool = isSemVer( null );\n* // returns false\n*/\nfunction isSemVer( value ) {\n\treturn ( isString( value ) && RE_SEMVER.test( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSemVer;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2022 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a semantic version string.\n*\n* @module @stdlib/assert/is-semver\n*\n* @example\n* var isSemVer = require( '@stdlib/assert/is-semver' );\n*\n* var bool = isSemVer( '0.0.2' );\n* // returns true\n*\n* bool = isSemVer( 'foo' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isSquareMatrix = require( './../../is-square-matrix' );\nvar floor = require( '@stdlib/math/base/special/floor' );\nvar isOdd = require( '@stdlib/math/base/assert/is-odd' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a skew-centrosymmetric matrix.\n*\n* ## Notes\n*\n* - The implementation must rely on manually checking that \\\\(M_{ij} = -M_{N-i-1,N-j-1}\\\\), and, while element access is deterministic, no way exists to prevent cache misses outside of reordering the underlying matrix elements, thus incurring a larger performance penalty than just \"jumping around\" in a single pass.\n* - Worst case scenario: O(N^2).\n*\n* @param {*} v - value to test\n* @returns {boolean} boolean indicating if a value is a skew-centrosymmetric matrix\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n*\n* var arr = ndarray( 'generic', [ 2, 1, -1, -2 ], [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n* var bool = isSkewCentrosymmetricMatrix( arr );\n* // returns true\n*\n* bool = isSkewCentrosymmetricMatrix( [] );\n* // returns false\n*/\nfunction isSkewCentrosymmetricMatrix( v ) { // eslint-disable-line id-length\n\tvar m1;\n\tvar M;\n\tvar N;\n\tvar n;\n\tvar i;\n\tvar j;\n\tif ( !isSquareMatrix( v ) ) {\n\t\treturn false;\n\t}\n\tM = v.shape[ 0 ];\n\tN = floor( M/2.0 ); // corresponds to a row index + 1\n\tm1 = M - 1;\n\tfor ( i = 0; i < N; i++ ) {\n\t\tn = m1 - i;\n\t\tfor ( j = 0; j < M; j++ ) {\n\t\t\tif ( v.get( i, j ) !== -v.get( n, m1-j ) ) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t}\n\tif ( isOdd( M ) ) {\n\t\t// Only need to examine the first half of the row (including the center element) due to symmetry...\n\t\tfor ( j = 0; j <= N; j++ ) {\n\t\t\tif ( v.get( i, j ) !== -v.get( N, m1-j ) ) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t}\n\treturn true;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSkewCentrosymmetricMatrix;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a skew-centrosymmetric matrix.\n*\n* @module @stdlib/assert/is-skew-centrosymmetric-matrix\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n* var isSkewCentrosymmetricMatrix = require( '@stdlib/assert/is-skew-centrosymmetric-matrix' );\n*\n* var arr = ndarray( 'generic', [ 2, 1, -1, -2 ], [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n* var bool = isSkewCentrosymmetricMatrix( arr );\n* // returns true\n*\n* bool = isSkewCentrosymmetricMatrix( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isSquareMatrix = require( './../../is-square-matrix' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a skew-persymmetric matrix.\n*\n* ## Notes\n*\n* - The implementation must rely on manually checking that \\\\(M_{ij} = -M_{N-j-1,N-i-1}\\\\), and, while element access is deterministic, no way exists to prevent cache misses outside of reordering the underlying matrix elements, thus incurring a larger performance penalty than just \"jumping around\" in a single pass.\n* - Worst case scenario: O(N^2).\n*\n* @param {*} v - value to test\n* @returns {boolean} boolean indicating if a value is a skew-persymmetric matrix\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n*\n* var arr = ndarray( 'generic', [ 1, 0, 0, -1 ], [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n* var bool = isSkewPersymmetricMatrix( arr );\n* // returns true\n*\n* bool = isSkewPersymmetricMatrix( [] );\n* // returns false\n*/\nfunction isSkewPersymmetricMatrix( v ) {\n\tvar M;\n\tvar n;\n\tvar i;\n\tvar j;\n\tif ( !isSquareMatrix( v ) ) {\n\t\treturn false;\n\t}\n\tM = v.shape[ 0 ] - 1;\n\tfor ( i = 0; i < M; i++ ) {\n\t\tn = M - i;\n\t\tfor ( j = 0; j <= n; j++ ) {\n\t\t\tif ( v.get( i, j ) !== -v.get( M-j, n ) ) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t}\n\treturn true;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSkewPersymmetricMatrix;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a skew-persymmetric matrix.\n*\n* @module @stdlib/assert/is-skew-persymmetric-matrix\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n* var isSkewPersymmetricMatrix = require( '@stdlib/assert/is-skew-persymmetric-matrix' );\n*\n* var arr = ndarray( 'generic', [ 1, 0, 0, -1 ], [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n* var bool = isSkewPersymmetricMatrix( arr );\n* // returns true\n*\n* bool = isSkewPersymmetricMatrix( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isSquareMatrix = require( './../../is-square-matrix' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a skew-symmetric matrix.\n*\n* ## Notes\n*\n* - The implementation must rely on manually checking that \\\\(M_{ij} = -M_{ji}\\\\), and, while element access is deterministic, no way exists to prevent cache misses outside of reordering the underlying matrix elements, thus incurring a larger performance penalty than just \"jumping around\" in a single pass.\n* - Worst case scenario: O(N^2).\n*\n* @param {*} v - value to test\n* @returns {boolean} boolean indicating if a value is a skew-symmetric matrix\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n*\n* var arr = ndarray( 'generic', [ 0, -1, 1, 0 ], [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n* var bool = isSkewSymmetricMatrix( arr );\n* // returns true\n*\n* bool = isSkewSymmetricMatrix( [] );\n* // returns false\n*/\nfunction isSkewSymmetricMatrix( v ) {\n\tvar M;\n\tvar i;\n\tvar j;\n\tif ( !isSquareMatrix( v ) ) {\n\t\treturn false;\n\t}\n\tM = v.shape[ 0 ];\n\tfor ( i = 0; i < M; i++ ) {\n\t\tfor ( j = 0; j <= i; j++ ) { // includes diagonal\n\t\t\tif ( v.get( i, j ) !== -v.get( j, i ) ) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t}\n\treturn true;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSkewSymmetricMatrix;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a skew-symmetric matrix.\n*\n* @module @stdlib/assert/is-skew-symmetric-matrix\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n* var isSkewSymmetricMatrix = require( '@stdlib/assert/is-skew-symmetric-matrix' );\n*\n* var arr = ndarray( 'generic', [ 0, -1, 1, 0 ], [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n* var bool = isSkewSymmetricMatrix( arr );\n* // returns true\n*\n* bool = isSkewSymmetricMatrix( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2023 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar Slice = require( '@stdlib/slice/ctor' );\nvar constructorName = require( '@stdlib/utils/constructor-name' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a Slice object.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a Slice object\n*\n* @example\n* var Slice = require( '@stdlib/slice/ctor' );\n*\n* var s = new Slice( 0, 10, 2 );\n*\n* var bool = isSlice( s );\n* // returns true\n*/\nfunction isSlice( value ) {\n\treturn (\n\t\tvalue instanceof Slice ||\n\t\tconstructorName( value ) === 'Slice'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSlice;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2023 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a Slice object.\n*\n* @module @stdlib/assert/is-slice\n*\n* @example\n* var Slice = require( '@stdlib/slice/ctor' );\n* var isSlice = require( '@stdlib/assert/is-slice' );\n*\n* var s = new Slice( 0, 10, 2 );\n*\n* var bool = isSlice( s );\n* // returns true\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2022 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\nvar snakecase = require( '@stdlib/string/base/snakecase' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a string in snake case.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is a string in snake case\n*\n* @example\n* var bool = isSnakecase( 'hello_world' );\n* // returns true\n*\n* @example\n* var bool = isSnakecase( 'Hello World' );\n* // returns false\n*\n* @example\n* var bool = isSnakecase( 'Hello_World' );\n* // returns false\n*\n* @example\n* var bool = isSnakecase( '' );\n* // returns true\n*\n* @example\n* var bool = isSnakecase( null );\n* // returns false\n*/\nfunction isSnakecase( value ) {\n\treturn ( isString( value ) && snakecase( value ) === value );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSnakecase;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2022 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a string in snake case.\n*\n* @module @stdlib/assert/is-snakecase\n*\n* @example\n* var isSnakecase = require( '@stdlib/assert/is-snakecase' );\n*\n* var bool = isSnakecase( 'hello_world' );\n* // returns true\n*\n* bool = isSnakecase( 'Hello World' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInteger = require( './../../is-integer' ).isPrimitive;\nvar sqrt = require( '@stdlib/math/base/special/sqrt' );\nvar floor = require( '@stdlib/math/base/special/floor' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number primitive having a value which is a square number.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number primitive having a value which is a square number\n*\n* @example\n* var bool = isSquareNumber( 4.0 );\n* // returns true\n*\n* @example\n* var bool = isSquareNumber( new Number( 4.0 ) );\n* // returns false\n*/\nfunction isSquareNumber( value ) {\n\tvar n;\n\tif ( !isInteger( value ) ) {\n\t\treturn false;\n\t}\n\tn = floor( sqrt( value ) + 0.5 );\n\treturn n*n === value;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSquareNumber;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInteger = require( './../../is-integer' ).isObject;\nvar sqrt = require( '@stdlib/math/base/special/sqrt' );\nvar floor = require( '@stdlib/math/base/special/floor' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number object having a value which is a square number.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number object having a value which is a square number\n*\n* @example\n* var bool = isSquareNumber( 4.0 );\n* // returns false\n*\n* @example\n* var bool = isSquareNumber( new Number( 4.0 ) );\n* // returns true\n*/\nfunction isSquareNumber( value ) {\n\tvar n;\n\tvar x;\n\tif ( !isInteger( value ) ) {\n\t\treturn false;\n\t}\n\tx = value.valueOf();\n\tn = floor( sqrt( x ) + 0.5 );\n\treturn n*n === x;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSquareNumber;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a square number.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a square number\n*\n* @example\n* var bool = isSquareNumber( 4.0 );\n* // returns true\n*\n* @example\n* var bool = isSquareNumber( new Number( 4.0 ) );\n* // returns true\n*\n* @example\n* var bool = isSquareNumber( 3.14 );\n* // returns false\n*\n* @example\n* var bool = isSquareNumber( -5.0 );\n* // returns false\n*\n* @example\n* var bool = isSquareNumber( null );\n* // returns false\n*/\nfunction isSquareNumber( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSquareNumber;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a square number.\n*\n* @module @stdlib/assert/is-square-number\n*\n* @example\n* var isSquareNumber = require( '@stdlib/assert/is-square-number' );\n*\n* var bool = isSquareNumber( 4.0 );\n* // returns true\n*\n* bool = isSquareNumber( new Number( 4.0 ) );\n* // returns true\n*\n* bool = isSquareNumber( 3.14 );\n* // returns false\n*\n* bool = isSquareNumber( -5.0 );\n* // returns false\n*\n* bool = isSquareNumber( null );\n* // returns false\n*\n* @example\n* var isSquareNumber = require( '@stdlib/assert/is-square-number' ).isPrimitive;\n*\n* var bool = isSquareNumber( 4.0 );\n* // returns true\n*\n* bool = isSquareNumber( new Number( 4.0 ) );\n* // returns false\n*\n* @example\n* var isSquareNumber = require( '@stdlib/assert/is-square-number' ).isObject;\n*\n* var bool = isSquareNumber( 4.0 );\n* // returns false\n*\n* bool = isSquareNumber( new Number( 4.0 ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInteger = require( './../../is-integer' ).isPrimitive;\nvar sqrt = require( '@stdlib/math/base/special/sqrt' );\nvar floor = require( '@stdlib/math/base/special/floor' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number primitive having a value which is a square triangular number.\n*\n* ## Notes\n*\n* - Return values are not reliable for numbers greater than `1125899906842624`.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number primitive having a value which is a square triangular number\n*\n* @example\n* var bool = isSquareTriangularNumber( 36.0 );\n* // returns true\n*\n* @example\n* var bool = isSquareTriangularNumber( new Number( 36.0 ) );\n* // returns false\n*/\nfunction isSquareTriangularNumber( value ) {\n\tvar n;\n\tvar x;\n\tif ( !isInteger( value ) ) {\n\t\treturn false;\n\t}\n\t// Test if a square number:\n\tn = floor( sqrt( value ) + 0.5 );\n\tif ( n*n !== value ) {\n\t\treturn false;\n\t}\n\t// Test if a triangular number:\n\tx = ( 8.0*value ) + 1.0;\n\tn = floor( sqrt( x ) + 0.5 );\n\treturn n*n === x;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSquareTriangularNumber;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInteger = require( './../../is-integer' ).isObject;\nvar sqrt = require( '@stdlib/math/base/special/sqrt' );\nvar floor = require( '@stdlib/math/base/special/floor' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number object having a value which is a square triangular number.\n*\n* ## Notes\n*\n* - Return values are not reliable for numbers greater than `1125899906842624`.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number object having a value which is a square triangular number\n*\n* @example\n* var bool = isSquareTriangularNumber( 36.0 );\n* // returns false\n*\n* @example\n* var bool = isSquareTriangularNumber( new Number( 36.0 ) );\n* // returns true\n*/\nfunction isSquareTriangularNumber( value ) {\n\tvar n;\n\tvar x;\n\tif ( !isInteger( value ) ) {\n\t\treturn false;\n\t}\n\t// Test if a square number:\n\tx = value.valueOf();\n\tn = floor( sqrt( x ) + 0.5 );\n\tif ( n*n !== x ) {\n\t\treturn false;\n\t}\n\t// Test if a triangular number:\n\tx = ( 8.0*x ) + 1.0;\n\tn = floor( sqrt( x ) + 0.5 );\n\treturn n*n === x;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSquareTriangularNumber;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a square triangular number.\n*\n* ## Notes\n*\n* - Return values are not reliable for numbers greater than `1125899906842624`.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a square triangular number\n*\n* @example\n* var bool = isSquareTriangularNumber( 36.0 );\n* // returns true\n*\n* @example\n* var bool = isSquareTriangularNumber( new Number( 36.0 ) );\n* // returns true\n*\n* @example\n* var bool = isSquareTriangularNumber( 3.14 );\n* // returns false\n*\n* @example\n* var bool = isSquareTriangularNumber( -5.0 );\n* // returns false\n*\n* @example\n* var bool = isSquareTriangularNumber( null );\n* // returns false\n*/\nfunction isSquareTriangularNumber( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSquareTriangularNumber;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a square triangular number.\n*\n* @module @stdlib/assert/is-square-triangular-number\n*\n* @example\n* var isSquareTriangularNumber = require( '@stdlib/assert/is-square-triangular-number' );\n*\n* var bool = isSquareTriangularNumber( 36.0 );\n* // returns true\n*\n* bool = isSquareTriangularNumber( new Number( 36.0 ) );\n* // returns true\n*\n* bool = isSquareTriangularNumber( 3.14 );\n* // returns false\n*\n* bool = isSquareTriangularNumber( -5.0 );\n* // returns false\n*\n* bool = isSquareTriangularNumber( null );\n* // returns false\n*\n* @example\n* var isSquareTriangularNumber = require( '@stdlib/assert/is-square-triangular-number' ).isPrimitive;\n*\n* var bool = isSquareTriangularNumber( 36.0 );\n* // returns true\n*\n* bool = isSquareTriangularNumber( new Number( 36.0 ) );\n* // returns false\n*\n* @example\n* var isSquareTriangularNumber = require( '@stdlib/assert/is-square-triangular-number' ).isObject;\n*\n* var bool = isSquareTriangularNumber( 36.0 );\n* // returns false\n*\n* bool = isSquareTriangularNumber( new Number( 36.0 ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2022 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\nvar startcase = require( '@stdlib/string/base/startcase' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a startcase string (i.e., the first character of each word is uppercase).\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a startcase string\n*\n* @example\n* var bool = isStartcase( 'Beep Boop' );\n* // returns true\n*\n* bool = isStartcase( 'beep boop' );\n* // returns false\n*\n* bool = isStartcase( 'beep and boop' );\n* // returns false\n*/\nfunction isStartcase( value ) {\n\treturn ( isString( value ) && startcase( value ) === value );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isStartcase;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2022 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a startcase string.\n*\n* @module @stdlib/assert/is-startcase\n*\n* @example\n* var isStartcase = require( '@stdlib/assert/is-startcase' );\n*\n* var bool = isStartcase( 'Beep Boop' );\n* // returns true\n*\n* bool = isStartcase( 'Beep and Boop' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\n/**\n* Tests if two arguments are strictly equal.\n*\n* ## Notes\n*\n* - In contrast to the strict equality operator `===`, `-0` and `+0` are distinguishable.\n*\n* @param {*} a - first input value\n* @param {*} b - second input value\n* @returns {boolean} boolean indicating whether two arguments are strictly equal\n*\n* @example\n* var bool = isStrictEqual( true, true );\n* // returns true\n*\n* @example\n* var bool = isStrictEqual( 3.14, 3.14 );\n* // returns true\n*\n* @example\n* var bool = isStrictEqual( {}, {} );\n* // returns false\n*\n* @example\n* var bool = isStrictEqual( -0.0, -0.0 );\n* // returns true\n*\n* @example\n* var bool = isStrictEqual( -0.0, 0.0 );\n* // returns false\n*\n* @example\n* var bool = isStrictEqual( NaN, NaN );\n* // returns false\n*\n* @example\n* var bool = isStrictEqual( [], [] );\n* // returns false\n*/\nfunction isStrictEqual( a, b ) {\n\tif ( a === b ) {\n\t\tif ( a === 0.0 ) {\n\t\t\treturn 1.0 / a === 1.0 / b; // handles +-0\n\t\t}\n\t\treturn true;\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isStrictEqual;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if two arguments are strictly equal.\n*\n* @module @stdlib/assert/is-strict-equal\n*\n* @example\n* var isStrictEqual = require( '@stdlib/assert/is-strict-equal' );\n*\n* var bool = isStrictEqual( true, true );\n* // returns true\n*\n* bool = isStrictEqual( 3.14, 3.14 );\n* // returns true\n*\n* bool = isStrictEqual( {}, {} );\n* // returns false\n*\n* bool = isStrictEqual( -0.0, -0.0 );\n* // returns true\n*\n* bool = isStrictEqual( -0.0, 0.0 );\n* // returns false\n*\n* bool = isStrictEqual( NaN, NaN );\n* // returns false\n*\n* bool = isStrictEqual( [], [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array of strings.\n*\n* @module @stdlib/assert/is-string-array\n*\n* @example\n* var isStringArray = require( '@stdlib/assert/is-string-array' );\n*\n* var bool = isStringArray( [ 'abc', 'def' ] );\n* // returns true\n*\n* bool = isStringArray( [ 'abc', 123 ] );\n* // returns false\n*\n* @example\n* var isStringArray = require( '@stdlib/assert/is-string-array' ).primitives;\n*\n* var bool = isStringArray( [ 'abc', 'def' ] );\n* // returns true\n*\n* bool = isStringArray( [ 'abc', new String( 'def' ) ] );\n* // returns false\n*\n* @example\n* var isStringArray = require( '@stdlib/assert/is-string-array' ).objects;\n*\n* var bool = isStringArray( [ new String( 'abc' ), new String( 'def' ) ] );\n* // returns true\n*\n* bool = isStringArray( [ new String( 'abc' ), 'def' ] );\n* // returns false\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar arrayfun = require( './../../tools/array-function' );\nvar isString = require( './../../is-string' );\n\n\n// VARIABLES //\n\nvar isPrimitiveArray = arrayfun( isString.isPrimitive );\nvar isObjectArray = arrayfun( isString.isObject );\n\n\n// MAIN //\n\nvar isStringArray = arrayfun( isString );\nsetReadOnly( isStringArray, 'primitives', isPrimitiveArray );\nsetReadOnly( isStringArray, 'objects', isObjectArray );\n\n\n// EXPORTS //\n\nmodule.exports = isStringArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array-like object containing only symbols.\n*\n* @module @stdlib/assert/is-symbol-array\n*\n* @example\n* var isSymbolArray = require( '@stdlib/assert/is-symbol-array' );\n*\n* var bool = isSymbolArray( [ Symbol( 'abc' ), Symbol( 'def' ) ] );\n* // returns true\n*\n* bool = isSymbolArray( [ Symbol( 'abc' ), 'def' ] );\n* // returns false\n*\n* @example\n* var isSymbolArray = require( '@stdlib/assert/is-symbol-array' ).primitives;\n*\n* var bool = isSymbolArray( [ Symbol( 'abc' ), Symbol( 'def' ) ] );\n* // returns true\n*\n* bool = isSymbolArray( [ Symbol( 'abc' ), Object( Symbol( 'def' ) ) ] );\n* // returns false\n*\n* @example\n* var isSymbolArray = require( '@stdlib/assert/is-symbol-array' ).objects;\n*\n* var bool = isSymbolArray( [ Object( Symbol( 'abc' ) ), Object( Symbol( 'def' ) ) ] );\n* // returns true\n*\n* bool = isSymbolArray( [ Symbol( 'abc' ), Symbol( 'def' ) ] );\n* // returns false\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar arrayfun = require( './../../tools/array-like-function' );\nvar isSymbol = require( './../../is-symbol' );\n\n\n// VARIABLES //\n\nvar isPrimitiveArray = arrayfun( isSymbol.isPrimitive );\nvar isObjectArray = arrayfun( isSymbol.isObject );\n\n\n// MAIN //\n\nvar isSymbolArray = arrayfun( isSymbol );\nsetReadOnly( isSymbolArray, 'primitives', isPrimitiveArray );\nsetReadOnly( isSymbolArray, 'objects', isObjectArray );\n\n\n// EXPORTS //\n\nmodule.exports = isSymbolArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isSquareMatrix = require( './../../is-square-matrix' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a symmetric matrix.\n*\n* ## Notes\n*\n* - The implementation must rely on manually checking that \\\\(M_{ij} = M_{ji}\\\\), and, while element access is deterministic, no way exists to prevent cache misses outside of reordering the underlying matrix elements, thus incurring a larger performance penalty than just \"jumping around\" in a single pass.\n* - Worst case scenario: O(N^2).\n*\n* @param {*} v - value to test\n* @returns {boolean} boolean indicating if a value is a symmetric matrix\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n*\n* var arr = ndarray( 'generic', [ 0, 1, 1, 2 ], [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n* var bool = isSymmetricMatrix( arr );\n* // returns true\n*\n* bool = isSymmetricMatrix( [] );\n* // returns false\n*/\nfunction isSymmetricMatrix( v ) {\n\tvar M;\n\tvar i;\n\tvar j;\n\tif ( !isSquareMatrix( v ) ) {\n\t\treturn false;\n\t}\n\tM = v.shape[ 0 ];\n\tfor ( i = 0; i < M; i++ ) {\n\t\tfor ( j = 0; j < i; j++ ) {\n\t\t\tif ( v.get( i, j ) !== v.get( j, i ) ) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t}\n\treturn true;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSymmetricMatrix;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a symmetric matrix.\n*\n* @module @stdlib/assert/is-symmetric-matrix\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n* var isSymmetricMatrix = require( '@stdlib/assert/is-symmetric-matrix' );\n*\n* var arr = ndarray( 'generic', [ 0, 1, 1, 2 ], [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n* var bool = isSymmetricMatrix( arr );\n* // returns true\n*\n* bool = isSymmetricMatrix( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar getPrototypeOf = require( '@stdlib/utils/get-prototype-of' );\nvar typeOf = require( '@stdlib/utils/type-of' );\nvar isError = require( './../../is-error' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a `SyntaxError` object.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is a `SyntaxError` object\n*\n* @example\n* var bool = isSyntaxError( new SyntaxError( 'beep' ) );\n* // returns true\n*\n* @example\n* var bool = isSyntaxError( {} );\n* // returns false\n*/\nfunction isSyntaxError( value ) {\n\tif ( typeof value !== 'object' || value === null ) {\n\t\treturn false;\n\t}\n\t// Check for `SyntaxError` objects from the same realm (same Node.js `vm` or same `Window` object)...\n\tif ( value instanceof SyntaxError ) {\n\t\treturn true;\n\t}\n\t// All `SyntaxError` objects are `Error` objects...\n\tif ( isError( value ) ) {\n\t\t// Walk the prototype tree until we find the desired constructor...\n\t\twhile ( value ) {\n\t\t\tif ( typeOf( value ) === 'syntaxerror' ) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\tvalue = getPrototypeOf( value );\n\t\t}\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSyntaxError;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a `SyntaxError` object.\n*\n* @module @stdlib/assert/is-syntax-error\n*\n* @example\n* var isSyntaxError = require( '@stdlib/assert/is-syntax-error' );\n*\n* var bool = isSyntaxError( new SyntaxError( 'beep' ) );\n* // returns true\n*\n* bool = isSyntaxError( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar constantFunction = require( '@stdlib/utils/constant-function' );\n\n\n// MAIN //\n\nvar isTouchDevice = constantFunction( false );\n\n\n// EXPORTS //\n\nmodule.exports = isTouchDevice;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Boolean indicating if the current environment is a touch device.\n*\n* @module @stdlib/assert/is-touch-device\n*\n* @example\n* var IS_TOUCH_DEVICE = require( '@stdlib/assert/is-touch-device' );\n*\n* var bool = IS_TOUCH_DEVICE;\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// MAIN //\n\nvar bool = main();\n\n\n// EXPORTS //\n\nmodule.exports = bool;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInteger = require( './../../is-integer' ).isPrimitive;\nvar sqrt = require( '@stdlib/math/base/special/sqrt' );\nvar floor = require( '@stdlib/math/base/special/floor' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number primitive having a value which is a triangular number.\n*\n* ## Notes\n*\n* - Return values are not reliable for numbers greater than `1125899906842624`.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number primitive having a value which is a triangular number\n*\n* @example\n* var bool = isTriangularNumber( 36.0 );\n* // returns true\n*\n* @example\n* var bool = isTriangularNumber( new Number( 36.0 ) );\n* // returns false\n*/\nfunction isTriangularNumber( value ) {\n\tvar n;\n\tvar x;\n\tif ( !isInteger( value ) ) {\n\t\treturn false;\n\t}\n\tx = ( 8.0*value ) + 1.0;\n\tn = floor( sqrt( x ) + 0.5 );\n\treturn n*n === x;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isTriangularNumber;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInteger = require( './../../is-integer' ).isObject;\nvar sqrt = require( '@stdlib/math/base/special/sqrt' );\nvar floor = require( '@stdlib/math/base/special/floor' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number object having a value which is a triangular number.\n*\n* ## Notes\n*\n* - Return values are not reliable for numbers greater than `1125899906842624`.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number object having a value which is a triangular number\n*\n* @example\n* var bool = isTriangularNumber( 36.0 );\n* // returns false\n*\n* @example\n* var bool = isTriangularNumber( new Number( 36.0 ) );\n* // returns true\n*/\nfunction isTriangularNumber( value ) {\n\tvar n;\n\tvar x;\n\tif ( !isInteger( value ) ) {\n\t\treturn false;\n\t}\n\tx = ( 8.0*value.valueOf() ) + 1.0;\n\tn = floor( sqrt( x ) + 0.5 );\n\treturn n*n === x;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isTriangularNumber;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a triangular number.\n*\n* ## Notes\n*\n* - Return values are not reliable for numbers greater than `1125899906842624`.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a triangular number\n*\n* @example\n* var bool = isTriangularNumber( 36.0 );\n* // returns true\n*\n* @example\n* var bool = isTriangularNumber( new Number( 36.0 ) );\n* // returns true\n*\n* @example\n* var bool = isTriangularNumber( 3.14 );\n* // returns false\n*\n* @example\n* var bool = isTriangularNumber( -5.0 );\n* // returns false\n*\n* @example\n* var bool = isTriangularNumber( null );\n* // returns false\n*/\nfunction isTriangularNumber( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isTriangularNumber;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a triangular number.\n*\n* @module @stdlib/assert/is-triangular-number\n*\n* @example\n* var isTriangularNumber = require( '@stdlib/assert/is-triangular-number' );\n*\n* var bool = isTriangularNumber( 36.0 );\n* // returns true\n*\n* bool = isTriangularNumber( new Number( 36.0 ) );\n* // returns true\n*\n* bool = isTriangularNumber( 3.14 );\n* // returns false\n*\n* bool = isTriangularNumber( -5.0 );\n* // returns false\n*\n* bool = isTriangularNumber( null );\n* // returns false\n*\n* @example\n* var isTriangularNumber = require( '@stdlib/assert/is-triangular-number' ).isPrimitive;\n*\n* var bool = isTriangularNumber( 36.0 );\n* // returns true\n*\n* bool = isTriangularNumber( new Number( 36.0 ) );\n* // returns false\n*\n* @example\n* var isTriangularNumber = require( '@stdlib/assert/is-triangular-number' ).isObject;\n*\n* var bool = isTriangularNumber( 36.0 );\n* // returns false\n*\n* bool = isTriangularNumber( new Number( 36.0 ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\n/**\n* Tests if a value is truthy.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is truthy\n*\n* @example\n* var bool = isTruthy( true );\n* // returns true\n*\n* @example\n* var bool = isTruthy( [] );\n* // returns true\n*\n* @example\n* var bool = isTruthy( false );\n* // returns false\n*\n* @example\n* var bool = isTruthy( null );\n* // returns false\n*\n* @example\n* var bool = isTruthy( '' );\n* // returns false\n*\n* @example\n* var bool = isTruthy( 0 );\n* // returns false\n*\n* @example\n* var bool = isTruthy( void 0 );\n* // returns false\n*\n* @example\n* var bool = isTruthy( NaN );\n* // returns false\n*/\nfunction isTruthy( value ) {\n\treturn ( value ) ? true : false; // eslint-disable-line no-unneeded-ternary\n}\n\n\n// EXPORTS //\n\nmodule.exports = isTruthy;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is truthy.\n*\n* @module @stdlib/assert/is-truthy\n*\n* @example\n* var isTruthy = require( '@stdlib/assert/is-truthy' );\n*\n* var bool = isTruthy( true );\n* // returns true\n*\n* bool = isTruthy( [] );\n* // returns true\n*\n* bool = isTruthy( false );\n* // returns false\n*\n* bool = isTruthy( null );\n* // returns false\n*\n* bool = isTruthy( '' );\n* // returns false\n*\n* bool = isTruthy( 0 );\n* // returns false\n*\n* bool = isTruthy( void 0 );\n* // returns false\n*\n* bool = isTruthy( NaN );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar arrayfun = require( './../../tools/array-like-function' );\nvar isTruthy = require( './../../is-truthy' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is an array-like object containing only truthy values.\n*\n* @name isTruthyArray\n* @type {Function}\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether an input value is an array-like object containing only truthy values\n*\n* @example\n* var bool = isTruthyArray( [ {}, [] ] );\n* // returns true\n*\n* bool = isTruthyArray( [ false, null, void 0, '', 0, NaN ] );\n* // returns false\n*\n* bool = isTruthyArray( [] );\n* // returns false\n*/\nvar isTruthyArray = arrayfun( isTruthy );\n\n\n// EXPORTS //\n\nmodule.exports = isTruthyArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array-like object containing only truthy values.\n*\n* @module @stdlib/assert/is-truthy-array\n*\n* @example\n* var isTruthyArray = require( '@stdlib/assert/is-truthy-array' );\n*\n* var bool = isTruthyArray( [ {}, [] ] );\n* // returns true\n*\n* bool = isTruthyArray( [ false, null, void 0, '', 0, NaN ] );\n* // returns false\n*\n* bool = isTruthyArray( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar getPrototypeOf = require( '@stdlib/utils/get-prototype-of' );\nvar typeOf = require( '@stdlib/utils/type-of' );\nvar isError = require( './../../is-error' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a `TypeError` object.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is a `TypeError` object\n*\n* @example\n* var bool = isTypeError( new TypeError( 'beep' ) );\n* // returns true\n*\n* @example\n* var bool = isTypeError( {} );\n* // returns false\n*/\nfunction isTypeError( value ) {\n\tif ( typeof value !== 'object' || value === null ) {\n\t\treturn false;\n\t}\n\t// Check for `TypeError` objects from the same realm (same Node.js `vm` or same `Window` object)...\n\tif ( value instanceof TypeError ) {\n\t\treturn true;\n\t}\n\t// All `TypeError` objects are `Error` objects...\n\tif ( isError( value ) ) {\n\t\t// Walk the prototype tree until we find the desired constructor...\n\t\twhile ( value ) {\n\t\t\tif ( typeOf( value ) === 'typeerror' ) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\tvalue = getPrototypeOf( value );\n\t\t}\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isTypeError;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a `TypeError` object.\n*\n* @module @stdlib/assert/is-type-error\n*\n* @example\n* var isTypeError = require( '@stdlib/assert/is-type-error' );\n*\n* var bool = isTypeError( new TypeError( 'beep' ) );\n* // returns true\n*\n* bool = isTypeError( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInteger = require( './../../is-integer' ).isPrimitive;\nvar MAX_LENGTH = require( '@stdlib/constants/array/max-typed-array-length' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a valid typed array length.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a valid typed array length\n*\n* @example\n* var bool = isTypedArrayLength( 3 );\n* // returns true\n*\n* @example\n* var bool = isTypedArrayLength( 3.14 );\n* // returns false\n*/\nfunction isTypedArrayLength( value ) {\n\treturn (\n\t\tisInteger( value ) &&\n\t\tvalue >= 0 &&\n\t\tvalue <= MAX_LENGTH\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isTypedArrayLength;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a valid typed array length.\n*\n* @module @stdlib/assert/is-typed-array-length\n*\n* @example\n* var isTypedArrayLength = require( '@stdlib/assert/is-typed-array-length' );\n*\n* var bool = isTypedArrayLength( 5 );\n* // returns true\n*\n* bool = isTypedArrayLength( 2.0e200 );\n* // returns false\n*\n* bool = isTypedArrayLength( -3.14 );\n* // returns false\n*\n* bool = isTypedArrayLength( null );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNonNegativeInteger = require( './../../is-nonnegative-integer' ).isPrimitive;\nvar MAX = require( '@stdlib/constants/array/max-typed-array-length' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is typed-array-like.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is typed-array-like\n*\n* @example\n* var arr = {\n*\t'BYTES_PER_ELEMENT': 8,\n*\t'length': 10,\n*\t'byteOffset': 0,\n*\t'byteLength': 10\n* };\n* var val = isTypedArrayLike( arr );\n* // returns true\n*\n* @example\n* var Int8Array = require( '@stdlib/array/int8' );\n*\n* var val = isTypedArrayLike( new Int8Array( 4 ) );\n* // returns true\n*\n* @example\n* var val = isTypedArrayLike( [] );\n* // returns false\n*\n* @example\n* var val = isTypedArrayLike( {} );\n* // returns false\n*\n* @example\n* var val = isTypedArrayLike( null );\n* // returns false\n*\n* @example\n* var val = isTypedArrayLike( 'beep' );\n* // returns false\n*/\nfunction isTypedArrayLike( value ) {\n\treturn (\n\t\tvalue !== null &&\n\t\ttypeof value === 'object' &&\n\t\tisNonNegativeInteger( value.length ) &&\n\t\tvalue.length <= MAX &&\n\t\ttypeof value.BYTES_PER_ELEMENT === 'number' &&\n\t\ttypeof value.byteOffset === 'number' &&\n\t\ttypeof value.byteLength === 'number'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isTypedArrayLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is typed-array-like.\n*\n* @module @stdlib/assert/is-typed-array-like\n*\n* @example\n* var Int16Array = require( '@stdlib/array/int16' );\n* var isTypedArrayLike = require( '@stdlib/assert/is-typed-array-like' );\n*\n* var bool = isTypedArrayLike( new Int16Array() );\n* // returns true\n*\n* bool = isTypedArrayLike({\n*\t'length': 10,\n*\t'byteOffset': 0,\n*\t'byteLength': 10,\n*\t'BYTES_PER_ELEMENT': 4\n* });\n* // returns true\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\nvar RE_UNC_PATH = require( '@stdlib/regexp/unc-path' ).REGEXP;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a UNC path.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a UNC path\n*\n* @example\n* var bool = isUNCPath( '\\\\\\\\server\\\\share\\\\foo\\\\bar\\\\baz' );\n* // returns true\n*\n* @example\n* var bool = isUNCPath( '/foo/bar/baz' );\n* // returns false\n*/\nfunction isUNCPath( value ) {\n\treturn (\n\t\tisString( value ) &&\n\t\tRE_UNC_PATH.test( value )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isUNCPath;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a UNC path.\n*\n* @module @stdlib/assert/is-unc-path\n*\n* @example\n* var isUNCPath = require( '@stdlib/assert/is-unc-path' );\n*\n* var bool = isUNCPath( '\\\\\\\\server\\\\share\\\\foo\\\\bar\\\\baz' );\n* // returns true\n*\n* bool = isUNCPath( '/foo/bar/baz' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Tests if a value is `undefined`.\n*\n* ## Notes\n*\n* - In older browsers, `undefined` is a global which can be overridden. `void`, however, is an operator which **cannot** be overridden. Consequently, better to use `void` to check for `undefined`. See [Stack Overflow][1].\n*\n* [1]: http://stackoverflow.com/a/19369078/2225624\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is undefined\n*\n* @example\n* var bool = isUndefined( undefined );\n* // returns true\n*\n* bool = isUndefined( null );\n* // returns false\n*/\nfunction isUndefined( value ) {\n\treturn value === void 0;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isUndefined;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is `undefined`.\n*\n* @module @stdlib/assert/is-undefined\n*\n* @example\n* var isUndefined = require( '@stdlib/assert/is-undefined' );\n*\n* var bool = isUndefined( void 0 );\n* // returns true\n*\n* bool = isUndefined( null );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Tests if a value is `undefined` or `null`.\n*\n* ## Notes\n*\n* - In older browsers, `undefined` is a global which can be overridden. `void`, however, is an operator which **cannot** be overridden. Consequently, better to use `void` to check for `undefined`. See [Stack Overflow][1].\n*\n* [1]: http://stackoverflow.com/a/19369078/2225624\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is undefined\n*\n* @example\n* var bool = isUndefinedOrNull( undefined );\n* // returns true\n*\n* bool = isUndefinedOrNull( null );\n* // returns true\n*\n* bool = isUndefinedOrNull( false );\n* // returns false\n*/\nfunction isUndefinedOrNull( value ) {\n\treturn ( value === void 0 || value === null );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isUndefinedOrNull;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is `undefined` or `null`.\n*\n* @module @stdlib/assert/is-undefined-or-null\n*\n* @example\n* var isUndefinedOrNull = require( '@stdlib/assert/is-undefined-or-null' );\n*\n* var bool = isUndefinedOrNull( void 0 );\n* // returns true\n*\n* bool = isUndefinedOrNull( null );\n* // returns true\n*\n* bool = isUndefinedOrNull( false );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isTypedArray = require( './../../is-typed-array' );\nvar isArray = require( './../../is-array' );\nvar isNumber = require( './../../is-number' ).isPrimitive;\nvar absdiff = require( '@stdlib/math/base/utils/absolute-difference' );\nvar FLOAT64_SQRT_EPS = require( '@stdlib/constants/float64/sqrt-eps' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is an array of probabilities that sum to one.\n*\n* @param {*} v - value to test\n* @returns {boolean} boolean indicating if a value is a probability array\n*\n* @example\n* var bool = isUnityProbabilityArray( [ 0.25, 0.5, 0.25 ] );\n* // returns true\n*\n* @example\n* var bool = isUnityProbabilityArray( new Uint8Array( [ 0, 1 ] ) );\n* // returns true\n*\n* @example\n* var bool = isUnityProbabilityArray( [ 0.4, 0.4, 0.4 ] );\n* // returns false\n*\n* @example\n* var bool = isUnityProbabilityArray( [ 3.14, 0.0 ] );\n* // returns false\n*/\nfunction isUnityProbabilityArray( v ) {\n\tvar sum;\n\tvar i;\n\tif ( isArray( v ) ) {\n\t\tsum = 0.0;\n\t\tfor ( i = 0; i < v.length; i++ ) {\n\t\t\tif (\n\t\t\t\t!isNumber( v[ i ] ) ||\n\t\t\t\tv[ i ] > 1.0 ||\n\t\t\t\tv[ i ] < 0.0\n\t\t\t) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\tsum += v[ i ];\n\t\t}\n\t\treturn ( absdiff( sum, 1.0 ) <= FLOAT64_SQRT_EPS );\n\t}\n\tif ( isTypedArray( v ) ) {\n\t\tsum = 0.0;\n\t\tfor ( i = 0; i < v.length; i++ ) {\n\t\t\tif (\n\t\t\t\tv[ i ] > 1.0 ||\n\t\t\t\tv[ i ] < 0.0\n\t\t\t) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\tsum += v[ i ];\n\t\t}\n\t\treturn ( absdiff( sum, 1.0 ) <= FLOAT64_SQRT_EPS );\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isUnityProbabilityArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array of probabilities that sum to one.\n*\n* @module @stdlib/assert/is-unity-probability-array\n*\n* @example\n* var isUnityProbabilityArray = require( '@stdlib/assert/is-unity-probability-array' );\n*\n* var bool = isUnityProbabilityArray( [ 0.25, 0.5, 0.25 ] );\n* // returns true\n*\n* bool = isUnityProbabilityArray( new Uint8Array( [ 0, 1 ] ) );\n* // returns true\n*\n* bool = isUnityProbabilityArray( [ 0.4, 0.4, 0.4 ] );\n* // returns false\n*\n* bool = isUnityProbabilityArray( [ 3.14, 0.0 ] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar lowercase = require( '@stdlib/string/lowercase' );\nvar uppercase = require( '@stdlib/string/uppercase' );\nvar isString = require( './../../is-string' ).isPrimitive;\n\n\n// MAIN //\n\n/**\n* Tests if a value is an uppercase string.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is an uppercase string\n*\n* @example\n* var bool = isUppercase( 'HELLO' );\n* // returns true\n*\n* @example\n* var bool = isUppercase( 'World' );\n* // returns false\n*\n* @example\n* var bool = isUppercase( '!' );\n* // returns false\n*\n* @example\n* var bool = isUppercase( 'salt and light' );\n* // returns false\n*/\nfunction isUppercase( value ) {\n\treturn (\n\t\tisString( value ) &&\n\t\tvalue === uppercase( value ) &&\n\t\tvalue !== lowercase( value )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isUppercase;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an uppercase string.\n*\n* @module @stdlib/assert/is-uppercase\n*\n* @example\n* var isUppercase = require( '@stdlib/assert/is-uppercase' );\n*\n* var bool = isUppercase( 'HELLO' );\n* // returns true\n*\n* bool = isUppercase( 'World' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar getPrototypeOf = require( '@stdlib/utils/get-prototype-of' );\nvar typeOf = require( '@stdlib/utils/type-of' );\nvar isError = require( './../../is-error' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a `URIError` object.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is a `URIError` object\n*\n* @example\n* var bool = isURIError( new URIError( 'beep' ) );\n* // returns true\n*\n* @example\n* var bool = isURIError( {} );\n* // returns false\n*/\nfunction isURIError( value ) {\n\tif ( typeof value !== 'object' || value === null ) {\n\t\treturn false;\n\t}\n\t// Check for `URIError` objects from the same realm (same Node.js `vm` or same `Window` object)...\n\tif ( value instanceof URIError ) {\n\t\treturn true;\n\t}\n\t// All `URIError` objects are `Error` objects...\n\tif ( isError( value ) ) {\n\t\t// Walk the prototype tree until we find the desired constructor...\n\t\twhile ( value ) {\n\t\t\tif ( typeOf( value ) === 'urierror' ) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\tvalue = getPrototypeOf( value );\n\t\t}\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isURIError;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a `URIError` object.\n*\n* @module @stdlib/assert/is-uri-error\n*\n* @example\n* var isURIError = require( '@stdlib/assert/is-uri-error' );\n*\n* var bool = isURIError( new URIError( 'beep' ) );\n* // returns true\n*\n* bool = isURIError( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// VARIABLES //\n\nvar scope;\n\n\n// FUNCTIONS //\n\n/**\n* Test if the global scope is bound to the \"self\" variable present in browser web worker environments. When creating a new function using the `Function(){}` constructor, the execution scope aliased by the `this` variable is the global scope.\n*\n* @private\n* @returns {boolean} boolean indicating if global scope is bound to \"self\" variable\n*/\nfunction globalScope() {\n\tvar fcn = '';\n\tfcn += 'try {';\n\tfcn += 'return this === self;';\n\tfcn += '} catch ( err ) {';\n\tfcn += 'return false;';\n\tfcn += '}';\n\treturn (new Function( fcn ))(); // eslint-disable-line stdlib/require-globals, no-new-func\n}\n\n\n// MAIN //\n\nscope = globalScope();\n\n\n// EXPORTS //\n\nmodule.exports = scope;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n/* global WorkerGlobalScope, WorkerNavigator, WorkerLocation, self, importScripts, navigator, location */\n\n'use strict';\n\n// MODULES //\n\nvar getGlobal = require( '@stdlib/utils/global' );\nvar IS_NODE = require( './../../is-node' );\nvar isObject = require( './../../is-plain-object' );\nvar globalScope = require( './global_scope.js' );\n\n\n// VARIABLES //\n\nvar Global = getGlobal();\n\n\n// MAIN //\n\n/**\n* Returns a boolean indicating if the runtime is a web worker.\n*\n* @returns {boolean} boolean indicating if runtime is a web worker\n*\n* @example\n* var bool = isWebWorker();\n* // returns \n*/\nfunction isWebWorker() {\n\treturn (\n\t\t// Check that we are not running in a Node.js runtime:\n\t\tIS_NODE === false &&\n\n\t\t// Check for presence of `WorkerGlobalScope` global variable:\n\t\ttypeof WorkerGlobalScope === 'object' &&\n\n\t\t// Check for presence of `WorkerNavigator` global variable:\n\t\tisObject( WorkerNavigator ) &&\n\n\t\t// Check that the `navigator` global object is an instance of `WorkerNavigator`:\n\t\tnavigator instanceof WorkerNavigator &&\n\n\t\t// Check for presence of `WorkerLocation` global variable:\n\t\tisObject( WorkerLocation ) &&\n\n\t\t// Check that the `location` global object is an instance of `WorkerLocation`:\n\t\tlocation instanceof WorkerLocation &&\n\n\t\t// Check for presence of `self` variable:\n\t\ttypeof self === 'object' &&\n\n\t\t// Check that the `self` variable matches the determined global variable:\n\t\tself === Global &&\n\n\t\t// Check that the `self` variable is equal to the global scope:\n\t\tglobalScope === true &&\n\n\t\t// Check for presence of `importScripts` function:\n\t\ttypeof importScripts === 'function'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isWebWorker;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Boolean indicating if the runtime is a web worker.\n*\n* @module @stdlib/assert/is-web-worker\n*\n* @example\n* var IS_WEB_WORKER = require( '@stdlib/assert/is-web-worker' );\n*\n* var bool = IS_WEB_WORKER;\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// MAIN //\n\nvar bool = main();\n\n\n// EXPORTS //\n\nmodule.exports = bool;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\nvar reWhitespace = require( '@stdlib/regexp/whitespace' );\n\n\n// VARIABLES //\n\nvar RE = new RegExp( '^'+reWhitespace.REGEXP.source+'+$' );\n\n\n// MAIN //\n\n/**\n* Tests whether a string contains only white space characters.\n*\n* @param {*} x - value to test\n* @returns {boolean} boolean indicating if a string contains only white space characters\n*\n* @example\n* var out = isWhitespace( ' ' );\n* // returns true\n*\n* @example\n* var out = isWhitespace( 'beep boop' );\n* // returns false\n*\n* @example\n* var out = isWhitespace( '' );\n* // returns false\n*\n* @example\n* var out = isWhitespace( 123 );\n* // returns false\n*/\nfunction isWhitespace( x ) {\n\tif ( !isString( x ) ) {\n\t\treturn false;\n\t}\n\treturn RE.test( x );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isWhitespace;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether a string contains only white space characters.\n*\n* @module @stdlib/assert/is-whitespace\n*\n* @example\n* var isWhitespace = require( '@stdlib/assert/is-whitespace' );\n*\n* var out = isWhitespace( ' ' );\n* // returns true\n*\n* out = isWhitespace( 'beep boop' );\n* // returns false\n*\n* out = isWhitespace( '' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar propertyDescriptor = require( '@stdlib/utils/property-descriptor' );\n\n\n// MAIN //\n\n/**\n* Tests if an object's own property is writable.\n*\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object property is writable\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': false,\n* 'writable': false,\n* 'value': 'beep'\n* });\n*\n* var bool = isWritableProperty( obj, 'boop' );\n* // returns true\n*\n* bool = isWritableProperty( obj, 'beep' );\n* // returns false\n*/\nfunction isWritableProperty( value, property ) {\n\tvar desc = propertyDescriptor( value, property );\n\treturn (\n\t\tdesc !== null &&\n\t\t(\n\t\t\tdesc.writable === true ||\n\t\t\ttypeof desc.set === 'function'\n\t\t)\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isWritableProperty;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object's own property is writable.\n*\n* @module @stdlib/assert/is-writable-property\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n* var isWritableProperty = require( '@stdlib/assert/is-writable-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': false,\n* 'writable': false,\n* 'value': 'beep'\n* });\n*\n* var bool = isWritableProperty( obj, 'boop' );\n* // returns true\n*\n* bool = isWritableProperty( obj, 'beep' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar propertyDescriptorIn = require( '@stdlib/utils/property-descriptor-in' );\n\n\n// MAIN //\n\n/**\n* Tests if an object's own or inherited property is writable.\n*\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object property is writable\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': false,\n* 'writable': false,\n* 'value': 'beep'\n* });\n*\n* var bool = isWritablePropertyIn( obj, 'boop' );\n* // returns true\n*\n* bool = isWritablePropertyIn( obj, 'beep' );\n* // returns false\n*/\nfunction isWritablePropertyIn( value, property ) {\n\tvar desc = propertyDescriptorIn( value, property );\n\treturn (\n\t\tdesc !== null &&\n\t\t(\n\t\t\tdesc.writable === true ||\n\t\t\ttypeof desc.set === 'function'\n\t\t)\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isWritablePropertyIn;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object's own or inherited property is writable.\n*\n* @module @stdlib/assert/is-writable-property-in\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n* var isWritablePropertyIn = require( '@stdlib/assert/is-writable-property-in' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': false,\n* 'writable': false,\n* 'value': 'beep'\n* });\n*\n* var bool = isWritablePropertyIn( obj, 'boop' );\n* // returns true\n*\n* bool = isWritablePropertyIn( obj, 'beep' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar propertyDescriptor = require( '@stdlib/utils/property-descriptor' );\n\n\n// MAIN //\n\n/**\n* Tests if an object's own property is write-only.\n*\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object property is write-only\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* function setter( v ) {\n* obj.boop = v;\n* }\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': true,\n* 'set': setter\n* });\n*\n* var bool = isWriteOnlyProperty( obj, 'boop' );\n* // returns false\n*\n* bool = isWriteOnlyProperty( obj, 'beep' );\n* // returns true\n*/\nfunction isWriteOnlyProperty( value, property ) {\n\tvar desc = propertyDescriptor( value, property );\n\treturn (\n\t\tdesc !== null &&\n\t\tdesc.configurable === false &&\n\t\t(\n\t\t\ttypeof desc.set === 'function' &&\n\t\t\tdesc.get === void 0\n\t\t)\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isWriteOnlyProperty;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object's own property is write-only.\n*\n* @module @stdlib/assert/is-write-only-property\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n* var isWriteOnlyProperty = require( '@stdlib/assert/is-write-only-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* function setter( v ) {\n* obj.boop = v;\n* }\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': true,\n* 'set': setter\n* });\n*\n* var bool = isWriteOnlyProperty( obj, 'boop' );\n* // returns false\n*\n* bool = isWriteOnlyProperty( obj, 'beep' );\n* // returns true\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar propertyDescriptorIn = require( '@stdlib/utils/property-descriptor-in' );\n\n\n// MAIN //\n\n/**\n* Tests if an object's own or inherited property is write-only.\n*\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object property is write-only\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* function setter( v ) {\n* obj.boop = v;\n* }\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': true,\n* 'set': setter\n* });\n*\n* var bool = isWriteOnlyPropertyIn( obj, 'boop' );\n* // returns false\n*\n* bool = isWriteOnlyPropertyIn( obj, 'beep' );\n* // returns true\n*/\nfunction isWriteOnlyPropertyIn( value, property ) {\n\tvar desc = propertyDescriptorIn( value, property );\n\treturn (\n\t\tdesc !== null &&\n\t\tdesc.configurable === false &&\n\t\t(\n\t\t\ttypeof desc.set === 'function' &&\n\t\t\tdesc.get === void 0\n\t\t)\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isWriteOnlyPropertyIn;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object's own or inherited property is write-only.\n*\n* @module @stdlib/assert/is-write-only-property-in\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n* var isWriteOnlyPropertyIn = require( '@stdlib/assert/is-write-only-property-in' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* function setter( v ) {\n* obj.boop = v;\n* }\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': true,\n* 'set': setter\n* });\n*\n* var bool = isWriteOnlyPropertyIn( obj, 'boop' );\n* // returns false\n*\n* bool = isWriteOnlyPropertyIn( obj, 'beep' );\n* // returns true\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isTypedArray = require( './../../../is-typed-array' );\nvar format = require( '@stdlib/string/format' );\n\n\n// MAIN //\n\n/**\n* Returns a function which tests if every element in a typed array passes a test condition.\n*\n* @param {Function} predicate - function to apply\n* @throws {TypeError} must provide a function\n* @returns {Function} a typed array function\n*\n* @example\n* var isOdd = require( '@stdlib/assert/is-odd' );\n*\n* var arr1 = new Int32Array( [ 1, 3, 5, 7 ] );\n* var arr2 = new Int32Array( [ 1, 3, 5, 8 ] );\n*\n* var validate = typedarrayfcn( isOdd );\n*\n* var bool = validate( arr1 );\n* // returns true\n*\n* bool = validate( arr2 );\n* // returns false\n*/\nfunction typedarrayfcn( predicate ) {\n\tif ( typeof predicate !== 'function' ) {\n\t\tthrow new TypeError( format( 'invalid argument. Must provide a function. Value: `%s`.', predicate ) );\n\t}\n\treturn every;\n\n\t/**\n\t* Tests if every element in a typed array passes a test condition.\n\t*\n\t* @private\n\t* @param {*} value - value to test\n\t* @returns {boolean} boolean indicating whether a value is a typed array for which all elements pass a test condition\n\t*/\n\tfunction every( value ) {\n\t\tvar len;\n\t\tvar i;\n\t\tif ( !isTypedArray( value ) ) {\n\t\t\treturn false;\n\t\t}\n\t\tlen = value.length;\n\t\tif ( len === 0 ) {\n\t\t\treturn false;\n\t\t}\n\t\tfor ( i = 0; i < len; i++ ) {\n\t\t\tif ( predicate( value[ i ] ) === false ) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t\treturn true;\n\t}\n}\n\n\n// EXPORTS //\n\nmodule.exports = typedarrayfcn;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Return a function which tests if every element in a typed array passes a test condition.\n*\n* @module @stdlib/assert/tools/typed-array-function\n*\n* @example\n* var isOdd = require( '@stdlib/math/base/assert/is-odd' );\n* var typedarrayfcn = require( '@stdlib/assert/tools/typed-array-function' );\n*\n* var arr1 = new Int32Array( [ 1, 3, 5, 7 ] );\n* var arr2 = new Int32Array( [ 3, 5, 6, 8 ] );\n*\n* var f = typedarrayfcn( isOdd );\n*\n* var bool = f( arr1 );\n* // returns true\n*\n* bool = f( arr2 );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/*\n* When adding modules to the namespace, ensure that they are added in alphabetical order according to module name.\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-read-only-property' );\n\n\n// MAIN //\n\n/**\n* Top-level namespace.\n*\n* @namespace ns\n*/\nvar ns = {};\n\n/**\n* @name arrayfcn\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/tools/array-function}\n*/\nsetReadOnly( ns, 'arrayfcn', require( './../../tools/array-function' ) );\n\n/**\n* @name arraylikefcn\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/tools/array-like-function}\n*/\nsetReadOnly( ns, 'arraylikefcn', require( './../../tools/array-like-function' ) );\n\n/**\n* @name typedarrayfcn\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/tools/typed-array-function}\n*/\nsetReadOnly( ns, 'typedarrayfcn', require( './../../tools/typed-array-function' ) );\n\n\n// EXPORTS //\n\nmodule.exports = ns;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/*\n* When adding modules to the namespace, ensure that they are added in alphabetical order according to module name.\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-read-only-property' );\n\n\n// MAIN //\n\n/**\n* Top-level namespace.\n*\n* @namespace ns\n*/\nvar ns = {};\n\n/**\n* @name contains\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/contains}\n*/\nsetReadOnly( ns, 'contains', require( './../contains' ) );\n\n/**\n* @name deepEqual\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/deep-equal}\n*/\nsetReadOnly( ns, 'deepEqual', require( './../deep-equal' ) );\n\n/**\n* @name deepHasOwnProp\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/deep-has-own-property}\n*/\nsetReadOnly( ns, 'deepHasOwnProp', require( './../deep-has-own-property' ) );\n\n/**\n* @name deepHasProp\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/deep-has-property}\n*/\nsetReadOnly( ns, 'deepHasProp', require( './../deep-has-property' ) );\n\n/**\n* @name hasArrayBufferSupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-arraybuffer-support}\n*/\nsetReadOnly( ns, 'hasArrayBufferSupport', require( './../has-arraybuffer-support' ) );\n\n/**\n* @name hasArrowFunctionSupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-arrow-function-support}\n*/\nsetReadOnly( ns, 'hasArrowFunctionSupport', require( './../has-arrow-function-support' ) );\n\n/**\n* @name hasAsyncAwaitSupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-async-await-support}\n*/\nsetReadOnly( ns, 'hasAsyncAwaitSupport', require( './../has-async-await-support' ) );\n\n/**\n* @name hasAsyncIteratorSymbolSupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-async-iterator-symbol-support}\n*/\nsetReadOnly( ns, 'hasAsyncIteratorSymbolSupport', require( './../has-async-iterator-symbol-support' ) );\n\n/**\n* @name hasBigIntSupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-bigint-support}\n*/\nsetReadOnly( ns, 'hasBigIntSupport', require( './../has-bigint-support' ) );\n\n/**\n* @name hasBigInt64ArraySupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-bigint64array-support}\n*/\nsetReadOnly( ns, 'hasBigInt64ArraySupport', require( './../has-bigint64array-support' ) );\n\n/**\n* @name hasBigUint64ArraySupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-biguint64array-support}\n*/\nsetReadOnly( ns, 'hasBigUint64ArraySupport', require( './../has-biguint64array-support' ) );\n\n/**\n* @name hasClassSupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-class-support}\n*/\nsetReadOnly( ns, 'hasClassSupport', require( './../has-class-support' ) );\n\n/**\n* @name hasDataViewSupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-dataview-support}\n*/\nsetReadOnly( ns, 'hasDataViewSupport', require( './../has-dataview-support' ) );\n\n/**\n* @name hasDefinePropertiesSupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-define-properties-support}\n*/\nsetReadOnly( ns, 'hasDefinePropertiesSupport', require( './../has-define-properties-support' ) );\n\n/**\n* @name hasDefinePropertySupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-define-property-support}\n*/\nsetReadOnly( ns, 'hasDefinePropertySupport', require( './../has-define-property-support' ) );\n\n/**\n* @name hasFloat32ArraySupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-float32array-support}\n*/\nsetReadOnly( ns, 'hasFloat32ArraySupport', require( './../has-float32array-support' ) );\n\n/**\n* @name hasFloat64ArraySupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-float64array-support}\n*/\nsetReadOnly( ns, 'hasFloat64ArraySupport', require( './../has-float64array-support' ) );\n\n/**\n* @name hasFunctionNameSupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-function-name-support}\n*/\nsetReadOnly( ns, 'hasFunctionNameSupport', require( './../has-function-name-support' ) );\n\n/**\n* @name hasGeneratorSupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-generator-support}\n*/\nsetReadOnly( ns, 'hasGeneratorSupport', require( './../has-generator-support' ) );\n\n/**\n* @name hasGlobalThisSupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-globalthis-support}\n*/\nsetReadOnly( ns, 'hasGlobalThisSupport', require( './../has-globalthis-support' ) );\n\n/**\n* @name hasInt8ArraySupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-int8array-support}\n*/\nsetReadOnly( ns, 'hasInt8ArraySupport', require( './../has-int8array-support' ) );\n\n/**\n* @name hasInt16ArraySupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-int16array-support}\n*/\nsetReadOnly( ns, 'hasInt16ArraySupport', require( './../has-int16array-support' ) );\n\n/**\n* @name hasInt32ArraySupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-int32array-support}\n*/\nsetReadOnly( ns, 'hasInt32ArraySupport', require( './../has-int32array-support' ) );\n\n/**\n* @name hasIteratorSymbolSupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-iterator-symbol-support}\n*/\nsetReadOnly( ns, 'hasIteratorSymbolSupport', require( './../has-iterator-symbol-support' ) );\n\n/**\n* @name hasMapSupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-map-support}\n*/\nsetReadOnly( ns, 'hasMapSupport', require( './../has-map-support' ) );\n\n/**\n* @name hasNodeBufferSupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-node-buffer-support}\n*/\nsetReadOnly( ns, 'hasNodeBufferSupport', require( './../has-node-buffer-support' ) );\n\n/**\n* @name hasOwnProp\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-own-property}\n*/\nsetReadOnly( ns, 'hasOwnProp', require( './../has-own-property' ) );\n\n/**\n* @name hasProp\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-property}\n*/\nsetReadOnly( ns, 'hasProp', require( './../has-property' ) );\n\n/**\n* @name hasProxySupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-proxy-support}\n*/\nsetReadOnly( ns, 'hasProxySupport', require( './../has-proxy-support' ) );\n\n/**\n* @name hasSetSupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-set-support}\n*/\nsetReadOnly( ns, 'hasSetSupport', require( './../has-set-support' ) );\n\n/**\n* @name hasSharedArrayBufferSupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-sharedarraybuffer-support}\n*/\nsetReadOnly( ns, 'hasSharedArrayBufferSupport', require( './../has-sharedarraybuffer-support' ) );\n\n/**\n* @name hasSymbolSupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-symbol-support}\n*/\nsetReadOnly( ns, 'hasSymbolSupport', require( './../has-symbol-support' ) );\n\n/**\n* @name hasToStringTagSupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-tostringtag-support}\n*/\nsetReadOnly( ns, 'hasToStringTagSupport', require( './../has-tostringtag-support' ) );\n\n/**\n* @name hasUint8ArraySupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-uint8array-support}\n*/\nsetReadOnly( ns, 'hasUint8ArraySupport', require( './../has-uint8array-support' ) );\n\n/**\n* @name hasUint8ClampedArraySupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-uint8clampedarray-support}\n*/\nsetReadOnly( ns, 'hasUint8ClampedArraySupport', require( './../has-uint8clampedarray-support' ) );\n\n/**\n* @name hasUint16ArraySupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-uint16array-support}\n*/\nsetReadOnly( ns, 'hasUint16ArraySupport', require( './../has-uint16array-support' ) );\n\n/**\n* @name hasUint32ArraySupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-uint32array-support}\n*/\nsetReadOnly( ns, 'hasUint32ArraySupport', require( './../has-uint32array-support' ) );\n\n/**\n* @name hasUTF16SurrogatePairAt\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-utf16-surrogate-pair-at}\n*/\nsetReadOnly( ns, 'hasUTF16SurrogatePairAt', require( './../has-utf16-surrogate-pair-at' ) );\n\n/**\n* @name hasWebAssemblySupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-wasm-support}\n*/\nsetReadOnly( ns, 'hasWebAssemblySupport', require( './../has-wasm-support' ) );\n\n/**\n* @name hasWeakMapSupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-weakmap-support}\n*/\nsetReadOnly( ns, 'hasWeakMapSupport', require( './../has-weakmap-support' ) );\n\n/**\n* @name hasWeakSetSupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-weakset-support}\n*/\nsetReadOnly( ns, 'hasWeakSetSupport', require( './../has-weakset-support' ) );\n\n/**\n* @name instanceOf\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/instance-of}\n*/\nsetReadOnly( ns, 'instanceOf', require( './../instance-of' ) );\n\n/**\n* @name isAbsoluteHttpURI\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-absolute-http-uri}\n*/\nsetReadOnly( ns, 'isAbsoluteHttpURI', require( './../is-absolute-http-uri' ) );\n\n/**\n* @name isAbsolutePath\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-absolute-path}\n*/\nsetReadOnly( ns, 'isAbsolutePath', require( './../is-absolute-path' ) );\n\n/**\n* @name isAbsoluteURI\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-absolute-uri}\n*/\nsetReadOnly( ns, 'isAbsoluteURI', require( './../is-absolute-uri' ) );\n\n/**\n* @name isAccessorArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-accessor-array}\n*/\nsetReadOnly( ns, 'isAccessorArray', require( './../is-accessor-array' ) );\n\n/**\n* @name isAccessorProperty\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-accessor-property}\n*/\nsetReadOnly( ns, 'isAccessorProperty', require( './../is-accessor-property' ) );\n\n/**\n* @name isAccessorPropertyIn\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-accessor-property-in}\n*/\nsetReadOnly( ns, 'isAccessorPropertyIn', require( './../is-accessor-property-in' ) );\n\n/**\n* @name isAlphagram\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-alphagram}\n*/\nsetReadOnly( ns, 'isAlphagram', require( './../is-alphagram' ) );\n\n/**\n* @name isAlphaNumeric\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-alphanumeric}\n*/\nsetReadOnly( ns, 'isAlphaNumeric', require( './../is-alphanumeric' ) );\n\n/**\n* @name isAnagram\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-anagram}\n*/\nsetReadOnly( ns, 'isAnagram', require( './../is-anagram' ) );\n\n/**\n* @name isArguments\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-arguments}\n*/\nsetReadOnly( ns, 'isArguments', require( './../is-arguments' ) );\n\n/**\n* @name isArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-array}\n*/\nsetReadOnly( ns, 'isArray', require( './../is-array' ) );\n\n/**\n* @name isArrayArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-array-array}\n*/\nsetReadOnly( ns, 'isArrayArray', require( './../is-array-array' ) );\n\n/**\n* @name isArrayLength\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-array-length}\n*/\nsetReadOnly( ns, 'isArrayLength', require( './../is-array-length' ) );\n\n/**\n* @name isArrayLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-array-like}\n*/\nsetReadOnly( ns, 'isArrayLike', require( './../is-array-like' ) );\n\n/**\n* @name isArrayLikeObject\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-array-like-object}\n*/\nsetReadOnly( ns, 'isArrayLikeObject', require( './../is-array-like-object' ) );\n\n/**\n* @name isArrayBuffer\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-arraybuffer}\n*/\nsetReadOnly( ns, 'isArrayBuffer', require( './../is-arraybuffer' ) );\n\n/**\n* @name isArrayBufferView\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-arraybuffer-view}\n*/\nsetReadOnly( ns, 'isArrayBufferView', require( './../is-arraybuffer-view' ) );\n\n/**\n* @name isArrowFunction\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-arrow-function}\n*/\nsetReadOnly( ns, 'isArrowFunction', require( './../is-arrow-function' ) );\n\n/**\n* @name isASCII\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-ascii}\n*/\nsetReadOnly( ns, 'isASCII', require( './../is-ascii' ) );\n\n/**\n* @name isBetween\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-between}\n*/\nsetReadOnly( ns, 'isBetween', require( './../is-between' ) );\n\n/**\n* @name isBetweenArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-between-array}\n*/\nsetReadOnly( ns, 'isBetweenArray', require( './../is-between-array' ) );\n\n/**\n* @name IS_BIG_ENDIAN\n* @memberof ns\n* @readonly\n* @type {boolean}\n* @see {@link module:@stdlib/assert/is-big-endian}\n*/\nsetReadOnly( ns, 'IS_BIG_ENDIAN', require( './../is-big-endian' ) );\n\n/**\n* @name isBigInt\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-bigint}\n*/\nsetReadOnly( ns, 'isBigInt', require( './../is-bigint' ) );\n\n/**\n* @name isBigInt64Array\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-bigint64array}\n*/\nsetReadOnly( ns, 'isBigInt64Array', require( './../is-bigint64array' ) );\n\n/**\n* @name isBigUint64Array\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-biguint64array}\n*/\nsetReadOnly( ns, 'isBigUint64Array', require( './../is-biguint64array' ) );\n\n/**\n* @name isBinaryString\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-binary-string}\n*/\nsetReadOnly( ns, 'isBinaryString', require( './../is-binary-string' ) );\n\n/**\n* @name isBlankString\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-blank-string}\n*/\nsetReadOnly( ns, 'isBlankString', require( './../is-blank-string' ) );\n\n/**\n* @name isBoolean\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-boolean}\n*/\nsetReadOnly( ns, 'isBoolean', require( './../is-boolean' ) );\n\n/**\n* @name isBooleanArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-boolean-array}\n*/\nsetReadOnly( ns, 'isBooleanArray', require( './../is-boolean-array' ) );\n\n/**\n* @name isBoxedPrimitive\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-boxed-primitive}\n*/\nsetReadOnly( ns, 'isBoxedPrimitive', require( './../is-boxed-primitive' ) );\n\n/**\n* @name IS_BROWSER\n* @memberof ns\n* @readonly\n* @type {boolean}\n* @see {@link module:@stdlib/assert/is-browser}\n*/\nsetReadOnly( ns, 'IS_BROWSER', require( './../is-browser' ) );\n\n/**\n* @name isBuffer\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-buffer}\n*/\nsetReadOnly( ns, 'isBuffer', require( './../is-buffer' ) );\n\n/**\n* @name isCamelcase\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-camelcase}\n*/\nsetReadOnly( ns, 'isCamelcase', require( './../is-camelcase' ) );\n\n/**\n* @name isCapitalized\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-capitalized}\n*/\nsetReadOnly( ns, 'isCapitalized', require( './../is-capitalized' ) );\n\n/**\n* @name isCentrosymmetricMatrix\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-centrosymmetric-matrix}\n*/\nsetReadOnly( ns, 'isCentrosymmetricMatrix', require( './../is-centrosymmetric-matrix' ) );\n\n/**\n* @name isCircular\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-circular}\n*/\nsetReadOnly( ns, 'isCircular', require( './../is-circular' ) );\n\n/**\n* @name isCircularArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-circular-array}\n*/\nsetReadOnly( ns, 'isCircularArray', require( './../is-circular-array' ) );\n\n/**\n* @name isCircularPlainObject\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-circular-plain-object}\n*/\nsetReadOnly( ns, 'isCircularPlainObject', require( './../is-circular-plain-object' ) );\n\n/**\n* @name isClass\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-class}\n*/\nsetReadOnly( ns, 'isClass', require( './../is-class' ) );\n\n/**\n* @name isCollection\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-collection}\n*/\nsetReadOnly( ns, 'isCollection', require( './../is-collection' ) );\n\n/**\n* @name isComplex\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-complex}\n*/\nsetReadOnly( ns, 'isComplex', require( './../is-complex' ) );\n\n/**\n* @name isComplexLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-complex-like}\n*/\nsetReadOnly( ns, 'isComplexLike', require( './../is-complex-like' ) );\n\n/**\n* @name isComplexTypedArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-complex-typed-array}\n*/\nsetReadOnly( ns, 'isComplexTypedArray', require( './../is-complex-typed-array' ) );\n\n/**\n* @name isComplexTypedArrayLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-complex-typed-array-like}\n*/\nsetReadOnly( ns, 'isComplexTypedArrayLike', require( './../is-complex-typed-array-like' ) );\n\n/**\n* @name isComplex64\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-complex64}\n*/\nsetReadOnly( ns, 'isComplex64', require( './../is-complex64' ) );\n\n/**\n* @name isComplex64Array\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-complex64array}\n*/\nsetReadOnly( ns, 'isComplex64Array', require( './../is-complex64array' ) );\n\n/**\n* @name isComplex64MatrixLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-complex64matrix-like}\n*/\nsetReadOnly( ns, 'isComplex64MatrixLike', require( './../is-complex64matrix-like' ) );\n\n/**\n* @name isComplex64ndarrayLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-complex64ndarray-like}\n*/\nsetReadOnly( ns, 'isComplex64ndarrayLike', require( './../is-complex64ndarray-like' ) );\n\n/**\n* @name isComplex64VectorLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-complex64vector-like}\n*/\nsetReadOnly( ns, 'isComplex64VectorLike', require( './../is-complex64vector-like' ) );\n\n/**\n* @name isComplex128\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-complex128}\n*/\nsetReadOnly( ns, 'isComplex128', require( './../is-complex128' ) );\n\n/**\n* @name isComplex128Array\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-complex128array}\n*/\nsetReadOnly( ns, 'isComplex128Array', require( './../is-complex128array' ) );\n\n/**\n* @name isComplex128MatrixLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-complex128matrix-like}\n*/\nsetReadOnly( ns, 'isComplex128MatrixLike', require( './../is-complex128matrix-like' ) );\n\n/**\n* @name isComplex128ndarrayLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-complex128ndarray-like}\n*/\nsetReadOnly( ns, 'isComplex128ndarrayLike', require( './../is-complex128ndarray-like' ) );\n\n/**\n* @name isComplex128VectorLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-complex128vector-like}\n*/\nsetReadOnly( ns, 'isComplex128VectorLike', require( './../is-complex128vector-like' ) );\n\n/**\n* @name isComposite\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-composite}\n*/\nsetReadOnly( ns, 'isComposite', require( './../is-composite' ) );\n\n/**\n* @name isConfigurableProperty\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-configurable-property}\n*/\nsetReadOnly( ns, 'isConfigurableProperty', require( './../is-configurable-property' ) );\n\n/**\n* @name isConfigurablePropertyIn\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-configurable-property-in}\n*/\nsetReadOnly( ns, 'isConfigurablePropertyIn', require( './../is-configurable-property-in' ) );\n\n/**\n* @name isConstantcase\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-constantcase}\n*/\nsetReadOnly( ns, 'isConstantcase', require( './../is-constantcase' ) );\n\n/**\n* @name isCubeNumber\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-cube-number}\n*/\nsetReadOnly( ns, 'isCubeNumber', require( './../is-cube-number' ) );\n\n/**\n* @name isCurrentYear\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-current-year}\n*/\nsetReadOnly( ns, 'isCurrentYear', require( './../is-current-year' ) );\n\n/**\n* @name IS_DARWIN\n* @memberof ns\n* @readonly\n* @type {boolean}\n* @see {@link module:@stdlib/assert/is-darwin}\n*/\nsetReadOnly( ns, 'IS_DARWIN', require( './../is-darwin' ) );\n\n/**\n* @name isDataProperty\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-data-property}\n*/\nsetReadOnly( ns, 'isDataProperty', require( './../is-data-property' ) );\n\n/**\n* @name isDataPropertyIn\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-data-property-in}\n*/\nsetReadOnly( ns, 'isDataPropertyIn', require( './../is-data-property-in' ) );\n\n/**\n* @name isDataView\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-dataview}\n*/\nsetReadOnly( ns, 'isDataView', require( './../is-dataview' ) );\n\n/**\n* @name isDateObject\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-date-object}\n*/\nsetReadOnly( ns, 'isDateObject', require( './../is-date-object' ) );\n\n/**\n* @name isDateObjectArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-date-object-array}\n*/\nsetReadOnly( ns, 'isDateObjectArray', require( './../is-date-object-array' ) );\n\n/**\n* @name isDigitString\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-digit-string}\n*/\nsetReadOnly( ns, 'isDigitString', require( './../is-digit-string' ) );\n\n/**\n* @name IS_DOCKER\n* @memberof ns\n* @readonly\n* @type {boolean}\n* @see {@link module:@stdlib/assert/is-docker}\n*/\nsetReadOnly( ns, 'IS_DOCKER', require( './../is-docker' ) );\n\n/**\n* @name isDomainName\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-domain-name}\n*/\nsetReadOnly( ns, 'isDomainName', require( './../is-domain-name' ) );\n\n/**\n* @name isDurationString\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-duration-string}\n*/\nsetReadOnly( ns, 'isDurationString', require( './../is-duration-string' ) );\n\n/**\n* @name IS_ELECTRON\n* @memberof ns\n* @readonly\n* @type {boolean}\n* @see {@link module:@stdlib/assert/is-electron}\n*/\nsetReadOnly( ns, 'IS_ELECTRON', require( './../is-electron' ) );\n\n/**\n* @name IS_ELECTRON_MAIN\n* @memberof ns\n* @readonly\n* @type {boolean}\n* @see {@link module:@stdlib/assert/is-electron-main}\n*/\nsetReadOnly( ns, 'IS_ELECTRON_MAIN', require( './../is-electron-main' ) );\n\n/**\n* @name IS_ELECTRON_RENDERER\n* @memberof ns\n* @readonly\n* @type {boolean}\n* @see {@link module:@stdlib/assert/is-electron-renderer}\n*/\nsetReadOnly( ns, 'IS_ELECTRON_RENDERER', require( './../is-electron-renderer' ) );\n\n/**\n* @name isEmailAddress\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-email-address}\n*/\nsetReadOnly( ns, 'isEmailAddress', require( './../is-email-address' ) );\n\n/**\n* @name isEmptyArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-empty-array}\n*/\nsetReadOnly( ns, 'isEmptyArray', require( './../is-empty-array' ) );\n\n/**\n* @name isEmptyArrayLikeObject\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-empty-array-like-object}\n*/\nsetReadOnly( ns, 'isEmptyArrayLikeObject', require( './../is-empty-array-like-object' ) );\n\n/**\n* @name isEmptyCollection\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-empty-collection}\n*/\nsetReadOnly( ns, 'isEmptyCollection', require( './../is-empty-collection' ) );\n\n/**\n* @name isEmptyObject\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-empty-object}\n*/\nsetReadOnly( ns, 'isEmptyObject', require( './../is-empty-object' ) );\n\n/**\n* @name isEmptyString\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-empty-string}\n*/\nsetReadOnly( ns, 'isEmptyString', require( './../is-empty-string' ) );\n\n/**\n* @name isEnumerableProperty\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-enumerable-property}\n*/\nsetReadOnly( ns, 'isEnumerableProperty', require( './../is-enumerable-property' ) );\n\n/**\n* @name isEnumerablePropertyIn\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-enumerable-property-in}\n*/\nsetReadOnly( ns, 'isEnumerablePropertyIn', require( './../is-enumerable-property-in' ) );\n\n/**\n* @name isError\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-error}\n*/\nsetReadOnly( ns, 'isError', require( './../is-error' ) );\n\n/**\n* @name isEvalError\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-eval-error}\n*/\nsetReadOnly( ns, 'isEvalError', require( './../is-eval-error' ) );\n\n/**\n* @name isEven\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-even}\n*/\nsetReadOnly( ns, 'isEven', require( './../is-even' ) );\n\n/**\n* @name isFalsy\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-falsy}\n*/\nsetReadOnly( ns, 'isFalsy', require( './../is-falsy' ) );\n\n/**\n* @name isFalsyArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-falsy-array}\n*/\nsetReadOnly( ns, 'isFalsyArray', require( './../is-falsy-array' ) );\n\n/**\n* @name isFinite\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-finite}\n*/\nsetReadOnly( ns, 'isFinite', require( './../is-finite' ) );\n\n/**\n* @name isFiniteArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-finite-array}\n*/\nsetReadOnly( ns, 'isFiniteArray', require( './../is-finite-array' ) );\n\n/**\n* @name isFloat32Array\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-float32array}\n*/\nsetReadOnly( ns, 'isFloat32Array', require( './../is-float32array' ) );\n\n/**\n* @name isFloat32MatrixLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-float32matrix-like}\n*/\nsetReadOnly( ns, 'isFloat32MatrixLike', require( './../is-float32matrix-like' ) );\n\n/**\n* @name isFloat32ndarrayLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-float32ndarray-like}\n*/\nsetReadOnly( ns, 'isFloat32ndarrayLike', require( './../is-float32ndarray-like' ) );\n\n/**\n* @name isFloat32VectorLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-float32vector-like}\n*/\nsetReadOnly( ns, 'isFloat32VectorLike', require( './../is-float32vector-like' ) );\n\n/**\n* @name isFloat64Array\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-float64array}\n*/\nsetReadOnly( ns, 'isFloat64Array', require( './../is-float64array' ) );\n\n/**\n* @name isFloat64MatrixLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-float64matrix-like}\n*/\nsetReadOnly( ns, 'isFloat64MatrixLike', require( './../is-float64matrix-like' ) );\n\n/**\n* @name isFloat64ndarrayLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-float64ndarray-like}\n*/\nsetReadOnly( ns, 'isFloat64ndarrayLike', require( './../is-float64ndarray-like' ) );\n\n/**\n* @name isFloat64VectorLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-float64vector-like}\n*/\nsetReadOnly( ns, 'isFloat64VectorLike', require( './../is-float64vector-like' ) );\n\n/**\n* @name isFunction\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-function}\n*/\nsetReadOnly( ns, 'isFunction', require( './../is-function' ) );\n\n/**\n* @name isFunctionArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-function-array}\n*/\nsetReadOnly( ns, 'isFunctionArray', require( './../is-function-array' ) );\n\n/**\n* @name isGeneratorObject\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-generator-object}\n*/\nsetReadOnly( ns, 'isGeneratorObject', require( './../is-generator-object' ) );\n\n/**\n* @name isGeneratorObjectLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-generator-object-like}\n*/\nsetReadOnly( ns, 'isGeneratorObjectLike', require( './../is-generator-object-like' ) );\n\n/**\n* @name isgzipBuffer\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-gzip-buffer}\n*/\nsetReadOnly( ns, 'isgzipBuffer', require( './../is-gzip-buffer' ) );\n\n/**\n* @name isHexString\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-hex-string}\n*/\nsetReadOnly( ns, 'isHexString', require( './../is-hex-string' ) );\n\n/**\n* @name isInfinite\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-infinite}\n*/\nsetReadOnly( ns, 'isInfinite', require( './../is-infinite' ) );\n\n/**\n* @name isInheritedProperty\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-inherited-property}\n*/\nsetReadOnly( ns, 'isInheritedProperty', require( './../is-inherited-property' ) );\n\n/**\n* @name isInt8Array\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-int8array}\n*/\nsetReadOnly( ns, 'isInt8Array', require( './../is-int8array' ) );\n\n/**\n* @name isInt16Array\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-int16array}\n*/\nsetReadOnly( ns, 'isInt16Array', require( './../is-int16array' ) );\n\n/**\n* @name isInt32Array\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-int32array}\n*/\nsetReadOnly( ns, 'isInt32Array', require( './../is-int32array' ) );\n\n/**\n* @name isInteger\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-integer}\n*/\nsetReadOnly( ns, 'isInteger', require( './../is-integer' ) );\n\n/**\n* @name isIntegerArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-integer-array}\n*/\nsetReadOnly( ns, 'isIntegerArray', require( './../is-integer-array' ) );\n\n/**\n* @name isIterableLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-iterable-like}\n*/\nsetReadOnly( ns, 'isIterableLike', require( './../is-iterable-like' ) );\n\n/**\n* @name isIteratorLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-iterator-like}\n*/\nsetReadOnly( ns, 'isIteratorLike', require( './../is-iterator-like' ) );\n\n/**\n* @name isJSON\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-json}\n*/\nsetReadOnly( ns, 'isJSON', require( './../is-json' ) );\n\n/**\n* @name isKebabcase\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-kebabcase}\n*/\nsetReadOnly( ns, 'isKebabcase', require( './../is-kebabcase' ) );\n\n/**\n* @name isLeapYear\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-leap-year}\n*/\nsetReadOnly( ns, 'isLeapYear', require( './../is-leap-year' ) );\n\n/**\n* @name IS_LITTLE_ENDIAN\n* @memberof ns\n* @readonly\n* @type {boolean}\n* @see {@link module:@stdlib/assert/is-little-endian}\n*/\nsetReadOnly( ns, 'IS_LITTLE_ENDIAN', require( './../is-little-endian' ) );\n\n/**\n* @name isLocalhost\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-localhost}\n*/\nsetReadOnly( ns, 'isLocalhost', require( './../is-localhost' ) );\n\n/**\n* @name isLowercase\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-lowercase}\n*/\nsetReadOnly( ns, 'isLowercase', require( './../is-lowercase' ) );\n\n/**\n* @name isMatrixLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-matrix-like}\n*/\nsetReadOnly( ns, 'isMatrixLike', require( './../is-matrix-like' ) );\n\n/**\n* @name isMethod\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-method}\n*/\nsetReadOnly( ns, 'isMethod', require( './../is-method' ) );\n\n/**\n* @name isMethodIn\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-method-in}\n*/\nsetReadOnly( ns, 'isMethodIn', require( './../is-method-in' ) );\n\n/**\n* @name IS_MOBILE\n* @memberof ns\n* @readonly\n* @type {boolean}\n* @see {@link module:@stdlib/assert/is-mobile}\n*/\nsetReadOnly( ns, 'IS_MOBILE', require( './../is-mobile' ) );\n\n/**\n* @name isMultiSlice\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-multi-slice}\n*/\nsetReadOnly( ns, 'isMultiSlice', require( './../is-multi-slice' ) );\n\n/**\n* @name isNamedTypedTupleLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-named-typed-tuple-like}\n*/\nsetReadOnly( ns, 'isNamedTypedTupleLike', require( './../is-named-typed-tuple-like' ) );\n\n/**\n* @name isnan\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-nan}\n*/\nsetReadOnly( ns, 'isnan', require( './../is-nan' ) );\n\n/**\n* @name isNaNArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-nan-array}\n*/\nsetReadOnly( ns, 'isNaNArray', require( './../is-nan-array' ) );\n\n/**\n* @name isNativeFunction\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-native-function}\n*/\nsetReadOnly( ns, 'isNativeFunction', require( './../is-native-function' ) );\n\n/**\n* @name isndarrayLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-ndarray-like}\n*/\nsetReadOnly( ns, 'isndarrayLike', require( './../is-ndarray-like' ) );\n\n/**\n* @name isNegativeInteger\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-negative-integer}\n*/\nsetReadOnly( ns, 'isNegativeInteger', require( './../is-negative-integer' ) );\n\n/**\n* @name isNegativeIntegerArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-negative-integer-array}\n*/\nsetReadOnly( ns, 'isNegativeIntegerArray', require( './../is-negative-integer-array' ) );\n\n/**\n* @name isNegativeNumber\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-negative-number}\n*/\nsetReadOnly( ns, 'isNegativeNumber', require( './../is-negative-number' ) );\n\n/**\n* @name isNegativeNumberArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-negative-number-array}\n*/\nsetReadOnly( ns, 'isNegativeNumberArray', require( './../is-negative-number-array' ) );\n\n/**\n* @name isNegativeZero\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-negative-zero}\n*/\nsetReadOnly( ns, 'isNegativeZero', require( './../is-negative-zero' ) );\n\n/**\n* @name IS_NODE\n* @memberof ns\n* @readonly\n* @type {boolean}\n* @see {@link module:@stdlib/assert/is-node}\n*/\nsetReadOnly( ns, 'IS_NODE', require( './../is-node' ) );\n\n/**\n* @name isNodeBuiltin\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-node-builtin}\n*/\nsetReadOnly( ns, 'isNodeBuiltin', require( './../is-node-builtin' ) );\n\n/**\n* @name isNodeDuplexStreamLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-node-duplex-stream-like}\n*/\nsetReadOnly( ns, 'isNodeDuplexStreamLike', require( './../is-node-duplex-stream-like' ) );\n\n/**\n* @name isNodeReadableStreamLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-node-readable-stream-like}\n*/\nsetReadOnly( ns, 'isNodeReadableStreamLike', require( './../is-node-readable-stream-like' ) );\n\n/**\n* @name isNodeREPL\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-node-repl}\n*/\nsetReadOnly( ns, 'isNodeREPL', require( './../is-node-repl' ) );\n\n/**\n* @name isNodeStreamLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-node-stream-like}\n*/\nsetReadOnly( ns, 'isNodeStreamLike', require( './../is-node-stream-like' ) );\n\n/**\n* @name isNodeTransformStreamLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-node-transform-stream-like}\n*/\nsetReadOnly( ns, 'isNodeTransformStreamLike', require( './../is-node-transform-stream-like' ) );\n\n/**\n* @name isNodeWritableStreamLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-node-writable-stream-like}\n*/\nsetReadOnly( ns, 'isNodeWritableStreamLike', require( './../is-node-writable-stream-like' ) );\n\n/**\n* @name isNonConfigurableProperty\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-nonconfigurable-property}\n*/\nsetReadOnly( ns, 'isNonConfigurableProperty', require( './../is-nonconfigurable-property' ) );\n\n/**\n* @name isNonConfigurablePropertyIn\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-nonconfigurable-property-in}\n*/\nsetReadOnly( ns, 'isNonConfigurablePropertyIn', require( './../is-nonconfigurable-property-in' ) );\n\n/**\n* @name isNonEnumerableProperty\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-nonenumerable-property}\n*/\nsetReadOnly( ns, 'isNonEnumerableProperty', require( './../is-nonenumerable-property' ) );\n\n/**\n* @name isNonEnumerablePropertyIn\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-nonenumerable-property-in}\n*/\nsetReadOnly( ns, 'isNonEnumerablePropertyIn', require( './../is-nonenumerable-property-in' ) );\n\n/**\n* @name isNonNegativeInteger\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-nonnegative-integer}\n*/\nsetReadOnly( ns, 'isNonNegativeInteger', require( './../is-nonnegative-integer' ) );\n\n/**\n* @name isNonNegativeIntegerArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-nonnegative-integer-array}\n*/\nsetReadOnly( ns, 'isNonNegativeIntegerArray', require( './../is-nonnegative-integer-array' ) );\n\n/**\n* @name isNonNegativeNumber\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-nonnegative-number}\n*/\nsetReadOnly( ns, 'isNonNegativeNumber', require( './../is-nonnegative-number' ) );\n\n/**\n* @name isNonNegativeNumberArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-nonnegative-number-array}\n*/\nsetReadOnly( ns, 'isNonNegativeNumberArray', require( './../is-nonnegative-number-array' ) );\n\n/**\n* @name isNonPositiveInteger\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-nonpositive-integer}\n*/\nsetReadOnly( ns, 'isNonPositiveInteger', require( './../is-nonpositive-integer' ) );\n\n/**\n* @name isNonPositiveIntegerArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-nonpositive-integer-array}\n*/\nsetReadOnly( ns, 'isNonPositiveIntegerArray', require( './../is-nonpositive-integer-array' ) );\n\n/**\n* @name isNonPositiveNumber\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-nonpositive-number}\n*/\nsetReadOnly( ns, 'isNonPositiveNumber', require( './../is-nonpositive-number' ) );\n\n/**\n* @name isNonPositiveNumberArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-nonpositive-number-array}\n*/\nsetReadOnly( ns, 'isNonPositiveNumberArray', require( './../is-nonpositive-number-array' ) );\n\n/**\n* @name isNonSymmetricMatrix\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-nonsymmetric-matrix}\n*/\nsetReadOnly( ns, 'isNonSymmetricMatrix', require( './../is-nonsymmetric-matrix' ) );\n\n/**\n* @name isNull\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-null}\n*/\nsetReadOnly( ns, 'isNull', require( './../is-null' ) );\n\n/**\n* @name isNullArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-null-array}\n*/\nsetReadOnly( ns, 'isNullArray', require( './../is-null-array' ) );\n\n/**\n* @name isNumber\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-number}\n*/\nsetReadOnly( ns, 'isNumber', require( './../is-number' ) );\n\n/**\n* @name isNumberArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-number-array}\n*/\nsetReadOnly( ns, 'isNumberArray', require( './../is-number-array' ) );\n\n/**\n* @name isNumericArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-numeric-array}\n*/\nsetReadOnly( ns, 'isNumericArray', require( './../is-numeric-array' ) );\n\n/**\n* @name isObject\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-object}\n*/\nsetReadOnly( ns, 'isObject', require( './../is-object' ) );\n\n/**\n* @name isObjectArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-object-array}\n*/\nsetReadOnly( ns, 'isObjectArray', require( './../is-object-array' ) );\n\n/**\n* @name isObjectLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-object-like}\n*/\nsetReadOnly( ns, 'isObjectLike', require( './../is-object-like' ) );\n\n/**\n* @name isOdd\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-odd}\n*/\nsetReadOnly( ns, 'isOdd', require( './../is-odd' ) );\n\n/**\n* @name isPascalcase\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-pascalcase}\n*/\nsetReadOnly( ns, 'isPascalcase', require( './../is-pascalcase' ) );\n\n/**\n* @name isPersymmetricMatrix\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-persymmetric-matrix}\n*/\nsetReadOnly( ns, 'isPersymmetricMatrix', require( './../is-persymmetric-matrix' ) );\n\n/**\n* @name isPlainObject\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-plain-object}\n*/\nsetReadOnly( ns, 'isPlainObject', require( './../is-plain-object' ) );\n\n/**\n* @name isPlainObjectArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-plain-object-array}\n*/\nsetReadOnly( ns, 'isPlainObjectArray', require( './../is-plain-object-array' ) );\n\n/**\n* @name isPositiveInteger\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-positive-integer}\n*/\nsetReadOnly( ns, 'isPositiveInteger', require( './../is-positive-integer' ) );\n\n/**\n* @name isPositiveIntegerArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-positive-integer-array}\n*/\nsetReadOnly( ns, 'isPositiveIntegerArray', require( './../is-positive-integer-array' ) );\n\n/**\n* @name isPositiveNumber\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-positive-number}\n*/\nsetReadOnly( ns, 'isPositiveNumber', require( './../is-positive-number' ) );\n\n/**\n* @name isPositiveNumberArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-positive-number-array}\n*/\nsetReadOnly( ns, 'isPositiveNumberArray', require( './../is-positive-number-array' ) );\n\n/**\n* @name isPositiveZero\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-positive-zero}\n*/\nsetReadOnly( ns, 'isPositiveZero', require( './../is-positive-zero' ) );\n\n/**\n* @name isPrime\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-prime}\n*/\nsetReadOnly( ns, 'isPrime', require( './../is-prime' ) );\n\n/**\n* @name isPrimitive\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-primitive}\n*/\nsetReadOnly( ns, 'isPrimitive', require( './../is-primitive' ) );\n\n/**\n* @name isPrimitiveArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-primitive-array}\n*/\nsetReadOnly( ns, 'isPrimitiveArray', require( './../is-primitive-array' ) );\n\n/**\n* @name isPRNGLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-prng-like}\n*/\nsetReadOnly( ns, 'isPRNGLike', require( './../is-prng-like' ) );\n\n/**\n* @name isProbability\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-probability}\n*/\nsetReadOnly( ns, 'isProbability', require( './../is-probability' ) );\n\n/**\n* @name isProbabilityArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-probability-array}\n*/\nsetReadOnly( ns, 'isProbabilityArray', require( './../is-probability-array' ) );\n\n/**\n* @name isPropertyKey\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-property-key}\n*/\nsetReadOnly( ns, 'isPropertyKey', require( './../is-property-key' ) );\n\n/**\n* @name isPrototypeOf\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-prototype-of}\n*/\nsetReadOnly( ns, 'isPrototypeOf', require( './../is-prototype-of' ) );\n\n/**\n* @name isRangeError\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-range-error}\n*/\nsetReadOnly( ns, 'isRangeError', require( './../is-range-error' ) );\n\n/**\n* @name isReadOnlyProperty\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-read-only-property}\n*/\nsetReadOnly( ns, 'isReadOnlyProperty', require( './../is-read-only-property' ) );\n\n/**\n* @name isReadOnlyPropertyIn\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-read-only-property-in}\n*/\nsetReadOnly( ns, 'isReadOnlyPropertyIn', require( './../is-read-only-property-in' ) );\n\n/**\n* @name isReadWriteProperty\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-read-write-property}\n*/\nsetReadOnly( ns, 'isReadWriteProperty', require( './../is-read-write-property' ) );\n\n/**\n* @name isReadWritePropertyIn\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-read-write-property-in}\n*/\nsetReadOnly( ns, 'isReadWritePropertyIn', require( './../is-read-write-property-in' ) );\n\n/**\n* @name isReadableProperty\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-readable-property}\n*/\nsetReadOnly( ns, 'isReadableProperty', require( './../is-readable-property' ) );\n\n/**\n* @name isReadablePropertyIn\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-readable-property-in}\n*/\nsetReadOnly( ns, 'isReadablePropertyIn', require( './../is-readable-property-in' ) );\n\n/**\n* @name isReferenceError\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-reference-error}\n*/\nsetReadOnly( ns, 'isReferenceError', require( './../is-reference-error' ) );\n\n/**\n* @name isRegExp\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-regexp}\n*/\nsetReadOnly( ns, 'isRegExp', require( './../is-regexp' ) );\n\n/**\n* @name isRegExpString\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-regexp-string}\n*/\nsetReadOnly( ns, 'isRegExpString', require( './../is-regexp-string' ) );\n\n/**\n* @name isRelativePath\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-relative-path}\n*/\nsetReadOnly( ns, 'isRelativePath', require( './../is-relative-path' ) );\n\n/**\n* @name isRelativeURI\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-relative-uri}\n*/\nsetReadOnly( ns, 'isRelativeURI', require( './../is-relative-uri' ) );\n\n/**\n* @name isSafeInteger\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-safe-integer}\n*/\nsetReadOnly( ns, 'isSafeInteger', require( './../is-safe-integer' ) );\n\n/**\n* @name isSafeIntegerArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-safe-integer-array}\n*/\nsetReadOnly( ns, 'isSafeIntegerArray', require( './../is-safe-integer-array' ) );\n\n/**\n* @name isSameComplex64Array\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-same-complex64array}\n*/\nsetReadOnly( ns, 'isSameComplex64Array', require( './../is-same-complex64array' ) );\n\n/**\n* @name isSameComplex128\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-same-complex128}\n*/\nsetReadOnly( ns, 'isSameComplex128', require( './../is-same-complex128' ) );\n\n/**\n* @name isSameComplex128Array\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-same-complex128array}\n*/\nsetReadOnly( ns, 'isSameComplex128Array', require( './../is-same-complex128array' ) );\n\n/**\n* @name isSameFloat32Array\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-same-float32array}\n*/\nsetReadOnly( ns, 'isSameFloat32Array', require( './../is-same-float32array' ) );\n\n/**\n* @name isSameFloat64Array\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-same-float64array}\n*/\nsetReadOnly( ns, 'isSameFloat64Array', require( './../is-same-float64array' ) );\n\n/**\n* @name isSameNativeClass\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-same-native-class}\n*/\nsetReadOnly( ns, 'isSameNativeClass', require( './../is-same-native-class' ) );\n\n/**\n* @name isSameType\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-same-type}\n*/\nsetReadOnly( ns, 'isSameType', require( './../is-same-type' ) );\n\n/**\n* @name isSameValue\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-same-value}\n*/\nsetReadOnly( ns, 'isSameValue', require( './../is-same-value' ) );\n\n/**\n* @name isSameValueZero\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-same-value-zero}\n*/\nsetReadOnly( ns, 'isSameValueZero', require( './../is-same-value-zero' ) );\n\n/**\n* @name isSemVer\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-semver}\n*/\nsetReadOnly( ns, 'isSemVer', require( './../is-semver' ) );\n\n/**\n* @name isSharedArrayBuffer\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-sharedarraybuffer}\n*/\nsetReadOnly( ns, 'isSharedArrayBuffer', require( './../is-sharedarraybuffer' ) );\n\n/**\n* @name isSkewCentrosymmetricMatrix\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-skew-centrosymmetric-matrix}\n*/\nsetReadOnly( ns, 'isSkewCentrosymmetricMatrix', require( './../is-skew-centrosymmetric-matrix' ) );\n\n/**\n* @name isSkewPersymmetricMatrix\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-skew-persymmetric-matrix}\n*/\nsetReadOnly( ns, 'isSkewPersymmetricMatrix', require( './../is-skew-persymmetric-matrix' ) );\n\n/**\n* @name isSkewSymmetricMatrix\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-skew-symmetric-matrix}\n*/\nsetReadOnly( ns, 'isSkewSymmetricMatrix', require( './../is-skew-symmetric-matrix' ) );\n\n/**\n* @name isSlice\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-slice}\n*/\nsetReadOnly( ns, 'isSlice', require( './../is-slice' ) );\n\n/**\n* @name isSnakecase\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-snakecase}\n*/\nsetReadOnly( ns, 'isSnakecase', require( './../is-snakecase' ) );\n\n/**\n* @name isSquareMatrix\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-square-matrix}\n*/\nsetReadOnly( ns, 'isSquareMatrix', require( './../is-square-matrix' ) );\n\n/**\n* @name isSquareNumber\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-square-number}\n*/\nsetReadOnly( ns, 'isSquareNumber', require( './../is-square-number' ) );\n\n/**\n* @name isSquareTriangularNumber\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-square-triangular-number}\n*/\nsetReadOnly( ns, 'isSquareTriangularNumber', require( './../is-square-triangular-number' ) );\n\n/**\n* @name isStartcase\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-startcase}\n*/\nsetReadOnly( ns, 'isStartcase', require( './../is-startcase' ) );\n\n/**\n* @name isStrictEqual\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-strict-equal}\n*/\nsetReadOnly( ns, 'isStrictEqual', require( './../is-strict-equal' ) );\n\n/**\n* @name isString\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-string}\n*/\nsetReadOnly( ns, 'isString', require( './../is-string' ) );\n\n/**\n* @name isStringArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-string-array}\n*/\nsetReadOnly( ns, 'isStringArray', require( './../is-string-array' ) );\n\n/**\n* @name isSymbol\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-symbol}\n*/\nsetReadOnly( ns, 'isSymbol', require( './../is-symbol' ) );\n\n/**\n* @name isSymbolArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-symbol-array}\n*/\nsetReadOnly( ns, 'isSymbolArray', require( './../is-symbol-array' ) );\n\n/**\n* @name isSymmetricMatrix\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-symmetric-matrix}\n*/\nsetReadOnly( ns, 'isSymmetricMatrix', require( './../is-symmetric-matrix' ) );\n\n/**\n* @name isSyntaxError\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-syntax-error}\n*/\nsetReadOnly( ns, 'isSyntaxError', require( './../is-syntax-error' ) );\n\n/**\n* @name IS_TOUCH_DEVICE\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-touch-device}\n*/\nsetReadOnly( ns, 'IS_TOUCH_DEVICE', require( './../is-touch-device' ) );\n\n/**\n* @name isTriangularNumber\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-triangular-number}\n*/\nsetReadOnly( ns, 'isTriangularNumber', require( './../is-triangular-number' ) );\n\n/**\n* @name isTruthy\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-truthy}\n*/\nsetReadOnly( ns, 'isTruthy', require( './../is-truthy' ) );\n\n/**\n* @name isTruthyArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-truthy-array}\n*/\nsetReadOnly( ns, 'isTruthyArray', require( './../is-truthy-array' ) );\n\n/**\n* @name isTypeError\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-type-error}\n*/\nsetReadOnly( ns, 'isTypeError', require( './../is-type-error' ) );\n\n/**\n* @name isTypedArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-typed-array}\n*/\nsetReadOnly( ns, 'isTypedArray', require( './../is-typed-array' ) );\n\n/**\n* @name isTypedArrayLength\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-typed-array-length}\n*/\nsetReadOnly( ns, 'isTypedArrayLength', require( './../is-typed-array-length' ) );\n\n/**\n* @name isTypedArrayLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-typed-array-like}\n*/\nsetReadOnly( ns, 'isTypedArrayLike', require( './../is-typed-array-like' ) );\n\n/**\n* @name isUint8Array\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-uint8array}\n*/\nsetReadOnly( ns, 'isUint8Array', require( './../is-uint8array' ) );\n\n/**\n* @name isUint8ClampedArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-uint8clampedarray}\n*/\nsetReadOnly( ns, 'isUint8ClampedArray', require( './../is-uint8clampedarray' ) );\n\n/**\n* @name isUint16Array\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-uint16array}\n*/\nsetReadOnly( ns, 'isUint16Array', require( './../is-uint16array' ) );\n\n/**\n* @name isUint32Array\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-uint32array}\n*/\nsetReadOnly( ns, 'isUint32Array', require( './../is-uint32array' ) );\n\n/**\n* @name isUNCPath\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-unc-path}\n*/\nsetReadOnly( ns, 'isUNCPath', require( './../is-unc-path' ) );\n\n/**\n* @name isUndefined\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-undefined}\n*/\nsetReadOnly( ns, 'isUndefined', require( './../is-undefined' ) );\n\n/**\n* @name isUndefinedOrNull\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-undefined-or-null}\n*/\nsetReadOnly( ns, 'isUndefinedOrNull', require( './../is-undefined-or-null' ) );\n\n/**\n* @name isUnityProbabilityArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-unity-probability-array}\n*/\nsetReadOnly( ns, 'isUnityProbabilityArray', require( './../is-unity-probability-array' ) );\n\n/**\n* @name isUppercase\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-uppercase}\n*/\nsetReadOnly( ns, 'isUppercase', require( './../is-uppercase' ) );\n\n/**\n* @name isURI\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-uri}\n*/\nsetReadOnly( ns, 'isURI', require( './../is-uri' ) );\n\n/**\n* @name isURIError\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-uri-error}\n*/\nsetReadOnly( ns, 'isURIError', require( './../is-uri-error' ) );\n\n/**\n* @name isVectorLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-vector-like}\n*/\nsetReadOnly( ns, 'isVectorLike', require( './../is-vector-like' ) );\n\n/**\n* @name IS_WEB_WORKER\n* @memberof ns\n* @readonly\n* @type {boolean}\n* @see {@link module:@stdlib/assert/is-web-worker}\n*/\nsetReadOnly( ns, 'IS_WEB_WORKER', require( './../is-web-worker' ) );\n\n/**\n* @name isWhitespace\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-whitespace}\n*/\nsetReadOnly( ns, 'isWhitespace', require( './../is-whitespace' ) );\n\n/**\n* @name IS_WINDOWS\n* @memberof ns\n* @readonly\n* @type {boolean}\n* @see {@link module:@stdlib/assert/is-windows}\n*/\nsetReadOnly( ns, 'IS_WINDOWS', require( './../is-windows' ) );\n\n/**\n* @name isWritableProperty\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-writable-property}\n*/\nsetReadOnly( ns, 'isWritableProperty', require( './../is-writable-property' ) );\n\n/**\n* @name isWritablePropertyIn\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-writable-property-in}\n*/\nsetReadOnly( ns, 'isWritablePropertyIn', require( './../is-writable-property-in' ) );\n\n/**\n* @name isWriteOnlyProperty\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-write-only-property}\n*/\nsetReadOnly( ns, 'isWriteOnlyProperty', require( './../is-write-only-property' ) );\n\n/**\n* @name isWriteOnlyPropertyIn\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-write-only-property-in}\n*/\nsetReadOnly( ns, 'isWriteOnlyPropertyIn', require( './../is-write-only-property-in' ) );\n\n/**\n* @name tools\n* @memberof ns\n* @readonly\n* @type {Namespace}\n* @see {@link module:@stdlib/assert/tools}\n*/\nsetReadOnly( ns, 'tools', require( './../tools' ) );\n\n\n// EXPORTS //\n\nmodule.exports = ns;\n"], - "mappings": "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", - "names": ["require_main", "__commonJSMin", "exports", "module", "isInteger", "MAX_LENGTH", "isCollection", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_primitive", "__commonJSMin", "exports", "module", "isNumber", "value", "require_main", "__commonJSMin", "exports", "module", "hasSymbolSupport", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "hasSymbols", "FLG", "hasToStringTagSupport", "require_lib", "__commonJSMin", "exports", "module", "main", "require_tostring", "__commonJSMin", "exports", "module", "Number", "toString", "require_try2serialize", "__commonJSMin", "exports", "module", "toString", "test", "value", "err", "require_object", "__commonJSMin", "exports", "module", "hasToStringTag", "nativeClass", "Number", "test", "FLG", "isNumber", "value", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isNumber", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_integer", "__commonJSMin", "exports", "module", "PINF", "NINF", "isInt", "isInteger", "value", "require_primitive", "__commonJSMin", "exports", "module", "isNumber", "isInt", "isInteger", "value", "require_object", "__commonJSMin", "exports", "module", "isNumber", "isInt", "isInteger", "value", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isInteger", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_primitive", "__commonJSMin", "exports", "module", "isString", "value", "require_valueof", "__commonJSMin", "exports", "module", "valueOf", "require_try2valueof", "__commonJSMin", "exports", "module", "valueOf", "test", "value", "err", "require_object", "__commonJSMin", "exports", "module", "hasToStringTag", "nativeClass", "test", "FLG", "isString", "value", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isString", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_primitive", "__commonJSMin", "exports", "module", "isNumber", "isNan", "isnan", "value", "require_object", "__commonJSMin", "exports", "module", "isNumber", "isNan", "isnan", "value", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isnan", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_main", "__commonJSMin", "exports", "module", "isCollection", "isInteger", "isString", "isnan", "format", "contains", "val", "searchValue", "position", "len", "pos", "i", "require_lib", "__commonJSMin", "exports", "module", "main", "require_getday", "__commonJSMin", "exports", "module", "getDay", "require_try2getday", "__commonJSMin", "exports", "module", "getDay", "test", "value", "err", "require_main", "__commonJSMin", "exports", "module", "hasToStringTag", "nativeClass", "test", "FLG", "isDateObject", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "getPrototypeOf", "nativeClass", "isError", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "nativeClass", "f", "isArray", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isArray", "format", "arrayfcn", "predicate", "every", "value", "len", "i", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isObjectLike", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "arrayfun", "main", "isObjectLikeArray", "require_main", "__commonJSMin", "exports", "module", "isObjectLike", "isBuffer", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_exec", "__commonJSMin", "exports", "module", "exec", "require_try2exec", "__commonJSMin", "exports", "module", "exec", "test", "value", "err", "require_main", "__commonJSMin", "exports", "module", "hasToStringTag", "nativeClass", "test", "FLG", "isRegExp", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "objectKeys", "getPrototypeOf", "isDate", "isError", "isBuffer", "isRegExp", "deepEqual", "a", "b", "aKeys", "bKeys", "typeA", "typeB", "key", "i", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isArray", "isObject", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "typeOf", "isFunction", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "has", "hasOwnProp", "value", "property", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isObject", "isFunction", "getPrototypeOf", "hasOwnProp", "nativeClass", "objectPrototype", "ownProps", "obj", "key", "isPlainObject", "value", "proto", "require_lib", "__commonJSMin", "exports", "module", "main", "require_validate", "__commonJSMin", "exports", "module", "isString", "isObject", "hasOwnProp", "format", "validate", "opts", "options", "require_defaults", "__commonJSMin", "exports", "module", "defaults", "require_has", "__commonJSMin", "exports", "module", "hasOwnProp", "deepHasOwnProp", "v", "props", "len", "i", "require_main", "__commonJSMin", "exports", "module", "isString", "isArray", "format", "validate", "defaults", "has", "deepHasOwnProp", "value", "path", "options", "isStr", "props", "opts", "err", "require_factory", "__commonJSMin", "exports", "module", "isString", "isArray", "format", "validate", "defaults", "has", "factory", "path", "options", "isStr", "props", "opts", "err", "deepHasOwnProp", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "factory", "require_validate", "__commonJSMin", "exports", "module", "isString", "isObject", "hasOwnProp", "format", "validate", "opts", "options", "require_defaults", "__commonJSMin", "exports", "module", "defaults", "require_main", "__commonJSMin", "exports", "module", "hasProp", "value", "property", "require_lib", "__commonJSMin", "exports", "module", "main", "require_has", "__commonJSMin", "exports", "module", "hasProp", "deepHasProp", "v", "props", "len", "i", "require_main", "__commonJSMin", "exports", "module", "isString", "isArray", "format", "validate", "defaults", "has", "deepHasProp", "value", "path", "options", "isStr", "props", "opts", "err", "require_factory", "__commonJSMin", "exports", "module", "isString", "isArray", "format", "validate", "defaults", "has", "factory", "path", "options", "isStr", "props", "opts", "err", "deepHasProp", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "factory", "require_main", "__commonJSMin", "exports", "module", "nativeClass", "hasArrayBuffer", "isArrayBuffer", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_arraybuffer", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isArrayBuffer", "Float64Array", "GlobalArrayBuffer", "hasArrayBufferSupport", "bool", "view", "buf", "err", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "evil", "hasArrowFunctionSupport", "bool", "err", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "evil", "hasAsyncAwaitSupport", "bool", "err", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "hasOwnProp", "hasAsyncIteratorSymbolSupport", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "getGlobal", "Global", "hasBigIntSupport", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "nativeClass", "hasBigInt64Array", "isBigInt64Array", "value", "require_lib", "__commonJSMin", "exports", "module", "isBigInt64Array", "require_primitive", "__commonJSMin", "exports", "module", "isBigInt", "value", "require_try2valueof", "__commonJSMin", "exports", "module", "test", "value", "err", "require_object", "__commonJSMin", "exports", "module", "nativeClass", "test", "BigInt", "value", "require_generic", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isBigInt", "value", "require_main", "__commonJSMin", "exports", "module", "setReadOnly", "isSymbol", "isPrimitive", "isObject", "require_polyfill", "__commonJSMin", "exports", "module", "setReadOnly", "constantFunction", "isBigInt", "isPrimitive", "isObject", "require_lib", "__commonJSMin", "exports", "module", "hasBigInts", "main", "polyfill", "isBigInt", "require_bigint64array", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isBigInt64Array", "isBigInt", "GlobalBigInt64Array", "MAX_FLOAT64_INTEGER", "MAX_FLOAT64_INTEGER_P2", "hasBigInt64ArraySupport", "arr", "err", "require_lib", "__commonJSMin", "exports", "module", "hasBigInt64ArraySupport", "require_main", "__commonJSMin", "exports", "module", "nativeClass", "hasBigUint64Array", "isBigUint64Array", "value", "require_lib", "__commonJSMin", "exports", "module", "isBigUint64Array", "require_biguint64array", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isBigUint64Array", "isBigInt", "GlobalBigUint64Array", "MAX_SIGNED_INT64", "MAX_SIGNED_INT64_P2", "hasBigUint64ArraySupport", "arr", "err", "require_lib", "__commonJSMin", "exports", "module", "hasBigUint64ArraySupport", "require_main", "__commonJSMin", "exports", "module", "evil", "hasClassSupport", "bool", "err", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "nativeClass", "hasDataView", "isDataView", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_dataview", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isDataView", "ArrayBuffer", "GlobalDataView", "hasDataViewSupport", "bool", "view", "buf", "err", "require_lib", "__commonJSMin", "exports", "module", "main", "require_define_properties", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "defineProperties", "hasDefinePropertiesSupport", "err", "require_lib", "__commonJSMin", "exports", "module", "main", "require_define_property", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "defineProperty", "hasDefinePropertySupport", "err", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "nativeClass", "hasFloat32Array", "isFloat32Array", "value", "require_lib", "__commonJSMin", "exports", "module", "isFloat32Array", "require_float32array", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isFloat32Array", "PINF", "GlobalFloat32Array", "hasFloat32ArraySupport", "bool", "arr", "err", "require_lib", "__commonJSMin", "exports", "module", "hasFloat32ArraySupport", "require_main", "__commonJSMin", "exports", "module", "nativeClass", "hasFloat64Array", "isFloat64Array", "value", "require_lib", "__commonJSMin", "exports", "module", "isFloat64Array", "require_float64array", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isFloat64Array", "GlobalFloat64Array", "hasFloat64ArraySupport", "bool", "arr", "err", "require_lib", "__commonJSMin", "exports", "module", "hasFloat64ArraySupport", "require_foo", "__commonJSMin", "exports", "module", "foo", "require_main", "__commonJSMin", "exports", "module", "foo", "hasFunctionNameSupport", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "evil", "hasGeneratorSupport", "bool", "err", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "hasGlobalThisSupport", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "nativeClass", "hasInt8Array", "isInt8Array", "value", "require_lib", "__commonJSMin", "exports", "module", "isInt8Array", "require_int8array", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isInt8Array", "INT8_MAX", "INT8_MIN", "GlobalInt8Array", "hasInt8ArraySupport", "bool", "arr", "err", "require_lib", "__commonJSMin", "exports", "module", "hasInt8ArraySupport", "require_main", "__commonJSMin", "exports", "module", "nativeClass", "hasInt16Array", "isInt16Array", "value", "require_lib", "__commonJSMin", "exports", "module", "isInt16Array", "require_int16array", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isInt16Array", "INT16_MAX", "INT16_MIN", "GlobalInt16Array", "hasInt16ArraySupport", "bool", "arr", "err", "require_lib", "__commonJSMin", "exports", "module", "hasInt16ArraySupport", "require_main", "__commonJSMin", "exports", "module", "nativeClass", "hasInt32Array", "isInt32Array", "value", "require_lib", "__commonJSMin", "exports", "module", "isInt32Array", "require_int32array", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isInt32Array", "INT32_MAX", "INT32_MIN", "GlobalInt32Array", "hasInt32ArraySupport", "bool", "arr", "err", "require_lib", "__commonJSMin", "exports", "module", "hasInt32ArraySupport", "require_main", "__commonJSMin", "exports", "module", "hasOwnProp", "Symbol", "hasIteratorSymbolSupport", "require_lib", "__commonJSMin", "exports", "module", "main", "require_map", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "GlobalMap", "hasMapSupport", "bool", "key", "map", "err", "require_lib", "__commonJSMin", "exports", "module", "main", "require_buffer", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isBuffer", "GlobalBuffer", "hasNodeBufferSupport", "bool", "b", "err", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "evil", "hasProxySupport", "bool", "err", "require_lib", "__commonJSMin", "exports", "module", "main", "require_set", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "GlobalSet", "hasSetSupport", "bool", "val", "set", "err", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "nativeClass", "hasSharedArrayBuffer", "isSharedArrayBuffer", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_sharedarraybuffer", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isSharedArrayBuffer", "GlobalSharedArrayBuffer", "hasSharedArrayBufferSupport", "bool", "b1", "b2", "err", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "nativeClass", "hasUint8Array", "isUint8Array", "value", "require_lib", "__commonJSMin", "exports", "module", "isUint8Array", "require_uint8array", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isUint8Array", "UINT8_MAX", "GlobalUint8Array", "hasUint8ArraySupport", "bool", "arr", "err", "require_lib", "__commonJSMin", "exports", "module", "hasUint8ArraySupport", "require_main", "__commonJSMin", "exports", "module", "nativeClass", "hasUint8ClampedArray", "isUint8ClampedArray", "value", "require_lib", "__commonJSMin", "exports", "module", "isUint8ClampedArray", "require_uint8clampedarray", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isUint8ClampedArray", "GlobalUint8ClampedArray", "hasUint8ClampedArraySupport", "bool", "arr", "err", "require_lib", "__commonJSMin", "exports", "module", "hasUint8ClampedArraySupport", "require_main", "__commonJSMin", "exports", "module", "nativeClass", "hasUint16Array", "isUint16Array", "value", "require_lib", "__commonJSMin", "exports", "module", "isUint16Array", "require_uint16array", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isUint16Array", "UINT16_MAX", "GlobalUint16Array", "hasUint16ArraySupport", "bool", "arr", "err", "require_lib", "__commonJSMin", "exports", "module", "hasUint16ArraySupport", "require_main", "__commonJSMin", "exports", "module", "nativeClass", "hasUint32Array", "isUint32Array", "value", "require_lib", "__commonJSMin", "exports", "module", "isUint32Array", "require_uint32array", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isUint32Array", "UINT32_MAX", "GlobalUint32Array", "hasUint32ArraySupport", "bool", "arr", "err", "require_lib", "__commonJSMin", "exports", "module", "hasUint32ArraySupport", "require_primitive", "__commonJSMin", "exports", "module", "isInteger", "isNonNegativeInteger", "value", "require_object", "__commonJSMin", "exports", "module", "isInteger", "isNonNegativeInteger", "value", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isNonNegativeInteger", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_main", "__commonJSMin", "exports", "module", "isString", "isNonNegativeInteger", "format", "OxD800", "OxDBFF", "OxDC00", "OxDFFF", "hasUTF16SurrogatePairAt", "str", "pos", "ch1", "ch2", "require_lib", "__commonJSMin", "exports", "module", "hasUTF16SurrogatePairAt", "require_main", "__commonJSMin", "exports", "module", "hasWebAssemblySupport", "require_lib", "__commonJSMin", "exports", "module", "main", "require_weakmap", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "GlobalWeakMap", "hasWeakMapSupport", "bool", "key", "wm", "err", "require_lib", "__commonJSMin", "exports", "module", "main", "require_weakset", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "GlobalWeakSet", "hasWeakSetSupport", "bool", "val", "ws", "err", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "format", "instanceOf", "value", "constructor", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isString", "RE_URI", "RE_ILLEGALS", "RE_HEX1", "RE_HEX2", "RE_PATH", "RE_SCHEME", "isURI", "value", "authority", "scheme", "parts", "path", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isURI", "RE_HTTPS", "isAbsoluteHttpURI", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_lib", "__commonJSMin", "exports", "module", "PLATFORM", "IS_WINDOWS", "require_posix", "__commonJSMin", "exports", "module", "isString", "isAbsolutePath", "value", "require_win32", "__commonJSMin", "exports", "module", "isString", "isAbsolutePath", "value", "code", "len", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "IS_WINDOWS", "isAbsolutePathPosix", "isAbsolutePathWin32", "isAbsolutePath", "require_main", "__commonJSMin", "exports", "module", "isURI", "isAbsoluteURI", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isCollection", "isFunction", "isAccessorArray", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "propertyDescriptor", "isAccessorProperty", "value", "property", "desc", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "propertyDescriptorIn", "isAccessorPropertyIn", "value", "property", "desc", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isString", "isAlphagram", "x", "len", "i", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isString", "ZERO", "NINE", "A", "Z", "a", "z", "isAlphaNumeric", "x", "len", "ch", "i", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "lowercase", "replace", "isString", "format", "RE_NON_ALPHANUMERIC", "ascending", "a", "b", "isAnagram", "str", "x", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "nativeClass", "isArguments", "value", "require_detect", "__commonJSMin", "exports", "module", "isArguments", "bool", "detect", "require_native", "__commonJSMin", "exports", "module", "isEnumerableProperty", "require_has_string_enumerability_bug", "__commonJSMin", "exports", "module", "isEnum", "bool", "detect", "require_main", "__commonJSMin", "exports", "module", "isString", "isnan", "isInteger", "isEnum", "hasStringEnumBug", "isEnumerableProperty", "value", "property", "bool", "require_lib", "__commonJSMin", "exports", "module", "main", "require_polyfill", "__commonJSMin", "exports", "module", "hasOwnProp", "isEnumerableProperty", "isArray", "isInteger", "MAX_LENGTH", "isArguments", "value", "require_lib", "__commonJSMin", "exports", "module", "hasArgumentsClass", "main", "polyfill", "isArguments", "require_main", "__commonJSMin", "exports", "module", "arrayfun", "isArray", "isArrayArray", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isInteger", "MAX_ARRAY_LENGTH", "isArrayLength", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isInteger", "MAX_LENGTH", "isArrayLike", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isInteger", "MAX_LENGTH", "isArrayLikeObject", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_no_arraybuffer", "__commonJSMin", "exports", "module", "constantFunction", "isArrayBufferView", "require_ctors", "__commonJSMin", "exports", "module", "Int8Array", "Uint8Array", "Uint8ClampedArray", "Int16Array", "Uint16Array", "Int32Array", "Uint32Array", "Float32Array", "Float64Array", "CTORS", "require_names", "__commonJSMin", "exports", "module", "require_main", "__commonJSMin", "exports", "module", "ctorName", "fcnName", "getPrototypeOf", "hasFloat64ArraySupport", "Float64Array", "CTORS", "NAMES", "TypedArray", "Dummy", "isTypedArray", "value", "v", "i", "require_lib", "__commonJSMin", "exports", "module", "main", "require_polyfill", "__commonJSMin", "exports", "module", "isTypedArray", "isDataView", "isArrayBufferView", "value", "require_main", "__commonJSMin", "exports", "module", "ArrayBuffer", "isArrayBufferView", "value", "require_lib", "__commonJSMin", "exports", "module", "hasArrayBufferSupport", "isFunction", "ArrayBuffer", "noArraybuffer", "polyfill", "main", "isArrayBufferView", "require_main", "__commonJSMin", "exports", "module", "isFunction", "function2string", "RE_ARROW_FUNCTION", "isArrowFunction", "value", "str", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isString", "MAX_ASCII", "isASCII", "x", "len", "i", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "format", "isBetween", "value", "a", "b", "left", "right", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isCollection", "format", "isBetweenArray", "value", "a", "b", "left", "right", "len", "i", "require_lib", "__commonJSMin", "exports", "module", "main", "require_ctors", "__commonJSMin", "exports", "module", "Uint8Array", "Uint16Array", "ctors", "require_main", "__commonJSMin", "exports", "module", "ctors", "bool", "isBigEndian", "uint16view", "uint8view", "require_lib", "__commonJSMin", "exports", "module", "IS_BIG_ENDIAN", "require_main", "__commonJSMin", "exports", "module", "isString", "isBinaryString", "str", "ch", "i", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isString", "RE", "isBlankString", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_primitive", "__commonJSMin", "exports", "module", "isBoolean", "value", "require_tostring", "__commonJSMin", "exports", "module", "toString", "require_try2serialize", "__commonJSMin", "exports", "module", "toString", "test", "value", "err", "require_object", "__commonJSMin", "exports", "module", "hasToStringTag", "nativeClass", "Boolean", "test", "FLG", "isBoolean", "value", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isBoolean", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_main", "__commonJSMin", "exports", "module", "isArrayLike", "format", "arraylikefcn", "predicate", "every", "value", "len", "i", "require_lib", "__commonJSMin", "exports", "module", "main", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "arrayfun", "isBoolean", "isPrimitiveArray", "isObjectArray", "isBooleanArray", "require_primitive", "__commonJSMin", "exports", "module", "isSymbol", "value", "require_tostring", "__commonJSMin", "exports", "module", "toStr", "value", "require_try2tostring", "__commonJSMin", "exports", "module", "toStr", "RE", "test", "value", "err", "require_object", "__commonJSMin", "exports", "module", "nativeClass", "test", "isSymbol", "value", "require_generic", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isSymbol", "value", "require_main", "__commonJSMin", "exports", "module", "setReadOnly", "isSymbol", "isPrimitive", "isObject", "require_polyfill", "__commonJSMin", "exports", "module", "setReadOnly", "constantFunction", "isSymbol", "isPrimitive", "isObject", "require_lib", "__commonJSMin", "exports", "module", "hasSymbols", "main", "polyfill", "isSymbol", "require_main", "__commonJSMin", "exports", "module", "isBoolean", "isNumber", "isString", "isSymbol", "isBoxedPrimitive", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_to_string", "__commonJSMin", "exports", "module", "toStr", "toString", "value", "require_global_scope", "__commonJSMin", "exports", "module", "Global", "globalScope", "fcn", "require_main", "__commonJSMin", "exports", "module", "proc", "getGlobal", "nativeClass", "isObject", "isString", "toStr", "globalScope", "Global", "RE", "isNode", "require_lib", "__commonJSMin", "exports", "module", "main", "bool", "require_global_scope", "__commonJSMin", "exports", "module", "scope", "globalScope", "fcn", "require_main", "__commonJSMin", "exports", "module", "getGlobal", "IS_NODE", "globalScope", "Global", "isBrowser", "require_lib", "__commonJSMin", "exports", "module", "main", "bool", "require_main", "__commonJSMin", "exports", "module", "isString", "camelcase", "isCamelcase", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "lowercase", "uppercase", "isString", "isCapitalized", "value", "ch", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "ndarray", "isndarrayLike", "v", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isndarrayLike", "isMatrixLike", "v", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isMatrixLike", "isSquareMatrix", "v", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isSquareMatrix", "floor", "isOdd", "isCentrosymmetricMatrix", "v", "m1", "M", "N", "i", "j", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "objectKeys", "isObject", "value", "type", "contains", "seen", "searchValue", "i", "isCircObj", "obj", "keys", "val", "isCircular", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isArray", "isCircular", "isCircularArray", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isPlainObject", "isCircular", "isCircularPlainObject", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isFunction", "function2string", "RE_CLASS", "isClass", "value", "str", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "Complex128", "Complex64", "constructorName", "isComplex", "value", "type", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "Complex128", "Complex64", "isComplexLike", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_ctors", "__commonJSMin", "exports", "module", "Complex64Array", "Complex128Array", "CTORS", "require_names", "__commonJSMin", "exports", "module", "require_main", "__commonJSMin", "exports", "module", "ctorName", "getPrototypeOf", "CTORS", "NAMES", "isComplexTypedArray", "value", "v", "i", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isNonNegativeInteger", "MAX", "MAX_LENGTH", "isComplexTypedArrayLike", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "Complex64", "constructorName", "isComplex64", "value", "require_lib", "__commonJSMin", "exports", "module", "isComplex64", "require_main", "__commonJSMin", "exports", "module", "Complex64Array", "constructorName", "isComplex64Array", "value", "require_lib", "__commonJSMin", "exports", "module", "isComplex64Array", "require_main", "__commonJSMin", "exports", "module", "isMatrixLike", "isComplex64MatrixLike", "v", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isndarrayLike", "isComplex64ndarrayLike", "v", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isndarrayLike", "isVectorLike", "v", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isVectorLike", "isComplex64VectorLike", "v", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "Complex128", "constructorName", "isComplex128", "value", "require_lib", "__commonJSMin", "exports", "module", "isComplex128", "require_main", "__commonJSMin", "exports", "module", "Complex128Array", "constructorName", "isComplex128Array", "value", "require_lib", "__commonJSMin", "exports", "module", "isComplex128Array", "require_main", "__commonJSMin", "exports", "module", "isMatrixLike", "isComplex128MatrixLike", "v", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isndarrayLike", "isComplex128ndarrayLike", "v", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isVectorLike", "isComplex128VectorLike", "v", "require_lib", "__commonJSMin", "exports", "module", "main", "require_primitive", "__commonJSMin", "exports", "module", "isNumber", "iscomposite", "isComposite", "value", "require_object", "__commonJSMin", "exports", "module", "isNumber", "iscomposite", "isComposite", "value", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isComposite", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_main", "__commonJSMin", "exports", "module", "propertyDescriptor", "isConfigurableProperty", "value", "property", "desc", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "propertyDescriptorIn", "isConfigurablePropertyIn", "value", "property", "desc", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isString", "constantcase", "isConstantcase", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_primitive", "__commonJSMin", "exports", "module", "isInteger", "cbrt", "floor", "isCubeNumber", "value", "n", "require_object", "__commonJSMin", "exports", "module", "isInteger", "cbrt", "floor", "isCubeNumber", "value", "n", "x", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isCubeNumber", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_main", "__commonJSMin", "exports", "module", "isDateObject", "currentYear", "isCurrentYear", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_lib", "__commonJSMin", "exports", "module", "PLATFORM", "IS_DARWIN", "require_main", "__commonJSMin", "exports", "module", "propertyDescriptor", "isDataProperty", "value", "property", "desc", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "propertyDescriptorIn", "isDataPropertyIn", "value", "property", "desc", "require_lib", "__commonJSMin", "exports", "module", "main", "require_lib", "__commonJSMin", "exports", "module", "arrayfun", "isDateObject", "isDateObjectArray", "require_main", "__commonJSMin", "exports", "module", "isString", "ZERO", "NINE", "isDigitString", "x", "len", "ch", "i", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "readFile", "contains", "exists", "OPTS", "isDocker", "file", "require_lib", "__commonJSMin", "exports", "module", "main", "bool", "require_main", "__commonJSMin", "exports", "module", "isString", "RE_DOMAIN_NAME", "isDomainName", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isString", "RE_DURATION_STRING", "isDurationString", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_process", "__commonJSMin", "exports", "module", "require_main", "__commonJSMin", "exports", "module", "nativeClass", "isObject", "isString", "proc", "isElectron", "require_lib", "__commonJSMin", "exports", "module", "main", "bool", "require_process", "__commonJSMin", "exports", "module", "require_main", "__commonJSMin", "exports", "module", "isElectron", "proc", "isElectronMain", "require_lib", "__commonJSMin", "exports", "module", "main", "bool", "require_process", "__commonJSMin", "exports", "module", "process", "require_main", "__commonJSMin", "exports", "module", "isElectron", "proc", "isElectronRenderer", "require_lib", "__commonJSMin", "exports", "module", "main", "bool", "require_main", "__commonJSMin", "exports", "module", "isString", "RE", "isEmail", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isArray", "isEmptyArray", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isEmptyArrayLikeObject", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isEmptyCollection", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "objectKeys", "isPlainObject", "hasSymbolSupport", "FLG", "isEmptyObject", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_primitive", "__commonJSMin", "exports", "module", "isEmptyString", "value", "require_object", "__commonJSMin", "exports", "module", "isString", "isEmptyString", "value", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isEmptyString", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_main", "__commonJSMin", "exports", "module", "propertyDescriptorIn", "isEnumerablePropertyIn", "value", "property", "desc", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "getPrototypeOf", "typeOf", "isError", "isEvalError", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_primitive", "__commonJSMin", "exports", "module", "isInteger", "isEven", "value", "require_object", "__commonJSMin", "exports", "module", "isInteger", "isEven", "value", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isEven", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_main", "__commonJSMin", "exports", "module", "isFalsy", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_lib", "__commonJSMin", "exports", "module", "arrayfun", "isFalsy", "isFalsyArray", "require_primitive", "__commonJSMin", "exports", "module", "isNumber", "isfinite", "isFinite", "value", "require_object", "__commonJSMin", "exports", "module", "isNumber", "isfinite", "isFinite", "value", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isFinite", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_lib", "__commonJSMin", "exports", "module", "isFinite", "setReadOnly", "arrayfun", "isPrimitiveArray", "isObjectArray", "isFiniteArray", "require_main", "__commonJSMin", "exports", "module", "isMatrixLike", "isFloat32MatrixLike", "v", "require_lib", "__commonJSMin", "exports", "module", "isFloat32MatrixLike", "require_main", "__commonJSMin", "exports", "module", "isndarrayLike", "isFloat32ndarrayLike", "v", "require_lib", "__commonJSMin", "exports", "module", "isFloat32ndarrayLike", "require_main", "__commonJSMin", "exports", "module", "isVectorLike", "isFloat32VectorLike", "v", "require_lib", "__commonJSMin", "exports", "module", "isFloat32VectorLike", "require_main", "__commonJSMin", "exports", "module", "isMatrixLike", "isFloat64MatrixLike", "v", "require_lib", "__commonJSMin", "exports", "module", "isFloat64MatrixLike", "require_main", "__commonJSMin", "exports", "module", "isndarrayLike", "isFloat64ndarrayLike", "v", "require_lib", "__commonJSMin", "exports", "module", "isFloat64ndarrayLike", "require_main", "__commonJSMin", "exports", "module", "isVectorLike", "isFloat64VectorLike", "v", "require_lib", "__commonJSMin", "exports", "module", "isFloat64VectorLike", "require_lib", "__commonJSMin", "exports", "module", "arrayfun", "isFunction", "isFunctionArray", "require_main", "__commonJSMin", "exports", "module", "hasGeneratorSupport", "nativeClass", "hasGenerators", "isGeneratorObject", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isGeneratorObjectLike", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isUint8Array", "isBuffer", "isgzipBuffer", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isString", "ZERO", "NINE", "A", "F", "a", "f", "isHexString", "x", "len", "ch", "i", "require_lib", "__commonJSMin", "exports", "module", "main", "require_primitive", "__commonJSMin", "exports", "module", "isNumber", "isinf", "isInfinite", "value", "require_object", "__commonJSMin", "exports", "module", "isNumber", "isinf", "isInfinite", "value", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isInfinite", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_main", "__commonJSMin", "exports", "module", "hasOwnProp", "isInheritedProperty", "value", "property", "require_lib", "__commonJSMin", "exports", "module", "main", "require_lib", "__commonJSMin", "exports", "module", "isInteger", "setReadOnly", "arrayfun", "isPrimitiveArray", "isObjectArray", "isIntegerArray", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "value", "type", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isFunction", "isIteratorLike", "value", "t", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isFunction", "ITERATOR", "isIteratorLike", "isIterableLike", "value", "f", "require_lib", "__commonJSMin", "exports", "module", "hasIteratorSymbolSupport", "constantFunction", "main", "isIterable", "require_main", "__commonJSMin", "exports", "module", "re", "isJSON", "value", "err", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isString", "kebabcase", "isKebabcase", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isDateObject", "isInteger", "currentYear", "isLeapYear", "value", "yr", "require_lib", "__commonJSMin", "exports", "module", "main", "require_ctors", "__commonJSMin", "exports", "module", "Uint8Array", "Uint16Array", "ctors", "require_main", "__commonJSMin", "exports", "module", "ctors", "bool", "isLittleEndian", "uint16view", "uint8view", "require_lib", "__commonJSMin", "exports", "module", "IS_LITTLE_ENDIAN", "require_main", "__commonJSMin", "exports", "module", "isString", "RE_LOCALHOST_IPV4", "isLocalhost", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "lowercase", "uppercase", "isString", "isLowercase", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "hasOwnProp", "isFunction", "isMethod", "value", "property", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isFunction", "Object", "isMethodIn", "value", "property", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "constantFunction", "isMobile", "require_lib", "__commonJSMin", "exports", "module", "main", "bool", "require_main", "__commonJSMin", "exports", "module", "MultiSlice", "constructorName", "isMultiSlice", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isTypedArray", "hasOwnProp", "isNamedTypedTupleLike", "v", "require_lib", "__commonJSMin", "exports", "module", "main", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "arrayfun", "isnan", "isPrimitiveArray", "isObjectArray", "isNaNArray", "require_main", "__commonJSMin", "exports", "module", "isFunction", "reNativeFunction", "function2string", "isNativeFunction", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_primitive", "__commonJSMin", "exports", "module", "isInteger", "isNegativeInteger", "value", "require_object", "__commonJSMin", "exports", "module", "isInteger", "isNegativeInteger", "value", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isNegativeInteger", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_lib", "__commonJSMin", "exports", "module", "isNegativeInteger", "setReadOnly", "arrayfun", "isPrimitiveArray", "isObjectArray", "isNegativeIntegerArray", "require_primitive", "__commonJSMin", "exports", "module", "isNumber", "isNegativeNumber", "value", "require_object", "__commonJSMin", "exports", "module", "isNumber", "isNegativeNumber", "value", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isNegativeNumber", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_lib", "__commonJSMin", "exports", "module", "isNegativeNumber", "setReadOnly", "arrayfun", "isPrimitiveArray", "isObjectArray", "isNegativeNumberArray", "require_primitive", "__commonJSMin", "exports", "module", "isNumber", "NINF", "isNegativeZero", "value", "require_object", "__commonJSMin", "exports", "module", "isNumber", "NINF", "isNegativeZero", "value", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isNegativeZero", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_builtins", "__commonJSMin", "exports", "module", "require_main", "__commonJSMin", "exports", "module", "mod", "contains", "isString", "BUILTINS", "LIST", "isNodeBuiltin", "x", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isNodeStreamLike", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isNodeStreamLike", "isNodeWritableStreamLike", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isNodeStreamLike", "isNodeReadableStreamLike", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isNodeWritableStreamLike", "isNodeReadableStreamLike", "isNodeDuplexStreamLike", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_parent", "__commonJSMin", "exports", "module", "parent", "require_stacktrace", "__commonJSMin", "exports", "module", "stacktrace", "err", "require_main", "__commonJSMin", "exports", "module", "IS_NODE", "p", "stacktrace", "RE_MODULE_ID", "RE_ERROR_STACK", "isNodeREPL", "stack", "m", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isNodeDuplexStreamLike", "isNodeTransformStreamLike", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "propertyDescriptor", "isNonConfigurableProperty", "value", "property", "desc", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "propertyDescriptorIn", "isNonConfigurablePropertyIn", "value", "property", "desc", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "hasOwnProp", "isEnumerableProperty", "isNonEnumerableProperty", "value", "property", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "propertyDescriptorIn", "isNonEnumerablePropertyIn", "value", "property", "desc", "require_lib", "__commonJSMin", "exports", "module", "main", "require_lib", "__commonJSMin", "exports", "module", "isNonNegativeInteger", "setReadOnly", "arrayfun", "isPrimitiveArray", "isObjectArray", "isNonNegativeIntegerArray", "require_primitive", "__commonJSMin", "exports", "module", "isNumber", "isNonNegativeNumber", "value", "require_object", "__commonJSMin", "exports", "module", "isNumber", "isNonNegativeNumber", "value", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isNonNegativeNumber", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_lib", "__commonJSMin", "exports", "module", "isNonNegativeNumber", "setReadOnly", "arrayfun", "isPrimitiveArray", "isObjectArray", "isNonNegativeNumberArray", "require_primitive", "__commonJSMin", "exports", "module", "isInteger", "isNonPositiveInteger", "value", "require_object", "__commonJSMin", "exports", "module", "isInteger", "isNonPositiveInteger", "value", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isNonPositiveInteger", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_lib", "__commonJSMin", "exports", "module", "isNonPositiveInteger", "setReadOnly", "arrayfun", "isPrimitiveArray", "isObjectArray", "isNonPositiveIntegerArray", "require_primitive", "__commonJSMin", "exports", "module", "isNumber", "isNonPositiveNumber", "value", "require_object", "__commonJSMin", "exports", "module", "isNumber", "isNonPositiveNumber", "value", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isNonPositiveNumber", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_lib", "__commonJSMin", "exports", "module", "isNonPositiveNumber", "setReadOnly", "arrayfun", "isPrimitiveArray", "isObjectArray", "isNonPositiveNumberArray", "require_main", "__commonJSMin", "exports", "module", "isMatrixLike", "isNonSymmetricMatrix", "v", "M", "i", "j", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isNull", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "arrayfun", "isNull", "isNullArray", "require_lib", "__commonJSMin", "exports", "module", "main", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "arrayfun", "isNumber", "isPrimitiveArray", "isObjectArray", "isNumberArray", "require_main", "__commonJSMin", "exports", "module", "isTypedArray", "isNumberArray", "isBuffer", "isNumericArray", "v", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "arrayfun", "isObject", "isObjectArray", "require_lib", "__commonJSMin", "exports", "module", "main", "require_primitive", "__commonJSMin", "exports", "module", "isInteger", "isEven", "isOdd", "value", "require_object", "__commonJSMin", "exports", "module", "isInteger", "isEven", "isOdd", "value", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isOdd", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_main", "__commonJSMin", "exports", "module", "isString", "pascalcase", "isPascalcase", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isSquareMatrix", "isPersymmetricMatrix", "v", "M", "n", "i", "j", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "arrayfun", "isPlainObject", "isPlainObjectArray", "require_lib", "__commonJSMin", "exports", "module", "main", "require_primitive", "__commonJSMin", "exports", "module", "isInteger", "isPositiveInteger", "value", "require_object", "__commonJSMin", "exports", "module", "isInteger", "isPositiveInteger", "value", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isPositiveInteger", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_lib", "__commonJSMin", "exports", "module", "isPositiveInteger", "setReadOnly", "arrayfun", "isPrimitiveArray", "isObjectArray", "isPositiveIntegerArray", "require_primitive", "__commonJSMin", "exports", "module", "isNumber", "isPositiveNumber", "value", "require_object", "__commonJSMin", "exports", "module", "isNumber", "isPositiveNumber", "value", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isPositiveNumber", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_lib", "__commonJSMin", "exports", "module", "isPositiveNumber", "setReadOnly", "arrayfun", "isPrimitiveArray", "isObjectArray", "isPositiveNumberArray", "require_primitive", "__commonJSMin", "exports", "module", "isNumber", "PINF", "isPositiveZero", "value", "require_object", "__commonJSMin", "exports", "module", "isNumber", "PINF", "isPositiveZero", "value", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isPositiveZero", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_primitive", "__commonJSMin", "exports", "module", "isNumber", "isprime", "isPrime", "value", "require_object", "__commonJSMin", "exports", "module", "isNumber", "isprime", "isPrime", "value", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isPrime", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_main", "__commonJSMin", "exports", "module", "arrayfun", "isPrimitive", "isPrimitiveArray", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isFunction", "hasOwnProp", "isPRNGLike", "v", "require_lib", "__commonJSMin", "exports", "module", "main", "require_primitive", "__commonJSMin", "exports", "module", "isNumber", "isProbability", "value", "require_object", "__commonJSMin", "exports", "module", "isNumber", "isProbability", "value", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isProbability", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_lib", "__commonJSMin", "exports", "module", "isProbability", "setReadOnly", "arrayfun", "isPrimitiveArray", "isObjectArray", "isProbabilityArray", "require_main", "__commonJSMin", "exports", "module", "isString", "isSymbol", "isNonNegativeInteger", "isPropertyKey", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isProtoOf", "format", "isPrototypeOf", "value", "proto", "type", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "getPrototypeOf", "typeOf", "isError", "isRangeError", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "propertyDescriptor", "isReadOnlyProperty", "value", "property", "desc", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "propertyDescriptorIn", "isReadOnlyPropertyIn", "value", "property", "desc", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "propertyDescriptor", "isReadWriteProperty", "value", "property", "desc", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "propertyDescriptorIn", "isReadWritePropertyIn", "value", "property", "desc", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "propertyDescriptor", "isReadableProperty", "value", "property", "desc", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "propertyDescriptorIn", "isReadablePropertyIn", "value", "property", "desc", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "getPrototypeOf", "typeOf", "isError", "isReferenceError", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isString", "RE", "isRegExpString", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_posix", "__commonJSMin", "exports", "module", "isString", "isAbsolutePath", "isRelativePath", "value", "require_win32", "__commonJSMin", "exports", "module", "isString", "isAbsolutePath", "isRelativePath", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "IS_WINDOWS", "isRelativePathPosix", "isRelativePathWin32", "isRelativePath", "require_main", "__commonJSMin", "exports", "module", "isString", "RE_URI", "RE_ILLEGALS", "RE_HEX1", "RE_HEX2", "RE_PATH", "RE_SCHEME", "isRelativeURI", "value", "authority", "scheme", "parts", "path", "require_lib", "__commonJSMin", "exports", "module", "main", "require_primitive", "__commonJSMin", "exports", "module", "isNumber", "isSafeInt", "isSafeInteger", "value", "require_object", "__commonJSMin", "exports", "module", "isNumber", "isSafeInt", "isSafeInteger", "value", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isSafeInteger", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "arrayfun", "isSafeInteger", "isPrimitiveArray", "isObjectArray", "isSafeIntegerArray", "require_main", "__commonJSMin", "exports", "module", "isComplex64Array", "hasSameValues", "isSameComplex64Array", "v1", "v2", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isComplex128", "isSameValue", "isSameComplex128", "v1", "v2", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isComplex128Array", "hasSameValues", "isSameComplex128Array", "v1", "v2", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isFloat32Array", "hasSameValues", "isSameFloat32Array", "v1", "v2", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isFloat64Array", "hasSameValues", "isSameFloat64Array", "v1", "v2", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "nativeClass", "isSameNativeClass", "a", "b", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isSameType", "a", "b", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isSameComplexValue", "isComplexLike", "isSameValue", "a", "b", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isSameComplexValueZero", "isComplexLike", "isSameValueZero", "a", "b", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isString", "RE_SEMVER", "isSemVer", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isSquareMatrix", "floor", "isOdd", "isSkewCentrosymmetricMatrix", "v", "m1", "M", "N", "i", "j", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isSquareMatrix", "isSkewPersymmetricMatrix", "v", "M", "n", "i", "j", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isSquareMatrix", "isSkewSymmetricMatrix", "v", "M", "i", "j", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "Slice", "constructorName", "isSlice", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isString", "snakecase", "isSnakecase", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_primitive", "__commonJSMin", "exports", "module", "isInteger", "sqrt", "floor", "isSquareNumber", "value", "n", "require_object", "__commonJSMin", "exports", "module", "isInteger", "sqrt", "floor", "isSquareNumber", "value", "n", "x", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isSquareNumber", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_primitive", "__commonJSMin", "exports", "module", "isInteger", "sqrt", "floor", "isSquareTriangularNumber", "value", "n", "x", "require_object", "__commonJSMin", "exports", "module", "isInteger", "sqrt", "floor", "isSquareTriangularNumber", "value", "n", "x", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isSquareTriangularNumber", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_main", "__commonJSMin", "exports", "module", "isString", "startcase", "isStartcase", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isStrictEqual", "a", "b", "require_lib", "__commonJSMin", "exports", "module", "main", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "arrayfun", "isString", "isPrimitiveArray", "isObjectArray", "isStringArray", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "arrayfun", "isSymbol", "isPrimitiveArray", "isObjectArray", "isSymbolArray", "require_main", "__commonJSMin", "exports", "module", "isSquareMatrix", "isSymmetricMatrix", "v", "M", "i", "j", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "getPrototypeOf", "typeOf", "isError", "isSyntaxError", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "constantFunction", "isTouchDevice", "require_lib", "__commonJSMin", "exports", "module", "main", "bool", "require_primitive", "__commonJSMin", "exports", "module", "isInteger", "sqrt", "floor", "isTriangularNumber", "value", "n", "x", "require_object", "__commonJSMin", "exports", "module", "isInteger", "sqrt", "floor", "isTriangularNumber", "value", "n", "x", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isTriangularNumber", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_main", "__commonJSMin", "exports", "module", "isTruthy", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "arrayfun", "isTruthy", "isTruthyArray", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "getPrototypeOf", "typeOf", "isError", "isTypeError", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isInteger", "MAX_LENGTH", "isTypedArrayLength", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isNonNegativeInteger", "MAX", "isTypedArrayLike", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isString", "RE_UNC_PATH", "isUNCPath", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isUndefined", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isUndefinedOrNull", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isTypedArray", "isArray", "isNumber", "absdiff", "FLOAT64_SQRT_EPS", "isUnityProbabilityArray", "v", "sum", "i", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "lowercase", "uppercase", "isString", "isUppercase", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "getPrototypeOf", "typeOf", "isError", "isURIError", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_global_scope", "__commonJSMin", "exports", "module", "scope", "globalScope", "fcn", "require_main", "__commonJSMin", "exports", "module", "getGlobal", "IS_NODE", "isObject", "globalScope", "Global", "isWebWorker", "require_lib", "__commonJSMin", "exports", "module", "main", "bool", "require_main", "__commonJSMin", "exports", "module", "isString", "reWhitespace", "RE", "isWhitespace", "x", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "propertyDescriptor", "isWritableProperty", "value", "property", "desc", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "propertyDescriptorIn", "isWritablePropertyIn", "value", "property", "desc", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "propertyDescriptor", "isWriteOnlyProperty", "value", "property", "desc", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "propertyDescriptorIn", "isWriteOnlyPropertyIn", "value", "property", "desc", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isTypedArray", "format", "typedarrayfcn", "predicate", "every", "value", "len", "i", "require_lib", "__commonJSMin", "exports", "module", "main", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "ns", "setReadOnly", "ns"] + "sources": ["../is-collection/lib/main.js", "../is-collection/lib/index.js", "../is-number/lib/primitive.js", "../has-symbol-support/lib/main.js", "../has-symbol-support/lib/index.js", "../has-tostringtag-support/lib/main.js", "../has-tostringtag-support/lib/index.js", "../is-number/lib/tostring.js", "../is-number/lib/try2serialize.js", "../is-number/lib/object.js", "../is-number/lib/main.js", "../is-number/lib/index.js", "../is-integer/lib/integer.js", "../is-integer/lib/primitive.js", "../is-integer/lib/object.js", "../is-integer/lib/main.js", "../is-integer/lib/index.js", "../is-string/lib/primitive.js", "../is-string/lib/valueof.js", "../is-string/lib/try2valueof.js", "../is-string/lib/object.js", "../is-string/lib/main.js", "../is-string/lib/index.js", "../is-nan/lib/primitive.js", "../is-nan/lib/object.js", "../is-nan/lib/main.js", "../is-nan/lib/index.js", "../contains/lib/main.js", "../contains/lib/index.js", "../is-date-object/lib/getday.js", "../is-date-object/lib/try2getday.js", "../is-date-object/lib/main.js", "../is-date-object/lib/index.js", "../is-error/lib/main.js", "../is-error/lib/index.js", "../is-array/lib/main.js", "../is-array/lib/index.js", "../tools/array-function/lib/main.js", "../tools/array-function/lib/index.js", "../is-object-like/lib/main.js", "../is-object-like/lib/index.js", "../is-buffer/lib/main.js", "../is-buffer/lib/index.js", "../is-regexp/lib/exec.js", "../is-regexp/lib/try2exec.js", "../is-regexp/lib/main.js", "../is-regexp/lib/index.js", "../deep-equal/lib/main.js", "../deep-equal/lib/index.js", "../is-object/lib/main.js", "../is-object/lib/index.js", "../is-function/lib/main.js", "../is-function/lib/index.js", "../has-own-property/lib/main.js", "../has-own-property/lib/index.js", "../is-plain-object/lib/main.js", "../is-plain-object/lib/index.js", "../deep-has-own-property/lib/validate.js", "../deep-has-own-property/lib/defaults.js", "../deep-has-own-property/lib/has.js", "../deep-has-own-property/lib/main.js", "../deep-has-own-property/lib/factory.js", "../deep-has-own-property/lib/index.js", "../deep-has-property/lib/validate.js", "../deep-has-property/lib/defaults.js", "../has-property/lib/main.js", "../has-property/lib/index.js", "../deep-has-property/lib/has.js", "../deep-has-property/lib/main.js", "../deep-has-property/lib/factory.js", "../deep-has-property/lib/index.js", "../is-arraybuffer/lib/main.js", "../is-arraybuffer/lib/index.js", "../has-arraybuffer-support/lib/arraybuffer.js", "../has-arraybuffer-support/lib/main.js", "../has-arraybuffer-support/lib/index.js", "../has-arrow-function-support/lib/main.js", "../has-arrow-function-support/lib/index.js", "../has-async-await-support/lib/main.js", "../has-async-await-support/lib/index.js", "../has-async-iterator-symbol-support/lib/main.js", "../has-async-iterator-symbol-support/lib/index.js", "../has-bigint-support/lib/main.js", "../has-bigint-support/lib/index.js", "../is-bigint64array/lib/main.js", "../is-bigint64array/lib/index.js", "../is-bigint/lib/primitive.js", "../is-bigint/lib/try2valueof.js", "../is-bigint/lib/object.js", "../is-bigint/lib/generic.js", "../is-bigint/lib/main.js", "../is-bigint/lib/polyfill.js", "../is-bigint/lib/index.js", "../has-bigint64array-support/lib/bigint64array.js", "../has-bigint64array-support/lib/main.js", "../has-bigint64array-support/lib/index.js", "../is-biguint64array/lib/main.js", "../is-biguint64array/lib/index.js", "../has-biguint64array-support/lib/biguint64array.js", "../has-biguint64array-support/lib/main.js", "../has-biguint64array-support/lib/index.js", "../has-class-support/lib/main.js", "../has-class-support/lib/index.js", "../is-dataview/lib/main.js", "../is-dataview/lib/index.js", "../has-dataview-support/lib/dataview.js", "../has-dataview-support/lib/main.js", "../has-dataview-support/lib/index.js", "../has-define-properties-support/lib/define_properties.js", "../has-define-properties-support/lib/main.js", "../has-define-properties-support/lib/index.js", "../has-define-property-support/lib/define_property.js", "../has-define-property-support/lib/main.js", "../has-define-property-support/lib/index.js", "../is-float32array/lib/main.js", "../is-float32array/lib/index.js", "../has-float32array-support/lib/float32array.js", "../has-float32array-support/lib/main.js", "../has-float32array-support/lib/index.js", "../is-float64array/lib/main.js", "../is-float64array/lib/index.js", "../has-float64array-support/lib/float64array.js", "../has-float64array-support/lib/main.js", "../has-float64array-support/lib/index.js", "../has-function-name-support/lib/foo.js", "../has-function-name-support/lib/main.js", "../has-function-name-support/lib/index.js", "../has-generator-support/lib/main.js", "../has-generator-support/lib/index.js", "../has-globalthis-support/lib/main.js", "../has-globalthis-support/lib/index.js", "../is-int8array/lib/main.js", "../is-int8array/lib/index.js", "../has-int8array-support/lib/int8array.js", "../has-int8array-support/lib/main.js", "../has-int8array-support/lib/index.js", "../is-int16array/lib/main.js", "../is-int16array/lib/index.js", "../has-int16array-support/lib/int16array.js", "../has-int16array-support/lib/main.js", "../has-int16array-support/lib/index.js", "../is-int32array/lib/main.js", "../is-int32array/lib/index.js", "../has-int32array-support/lib/int32array.js", "../has-int32array-support/lib/main.js", "../has-int32array-support/lib/index.js", "../has-iterator-symbol-support/lib/main.js", "../has-iterator-symbol-support/lib/index.js", "../has-map-support/lib/map.js", "../has-map-support/lib/main.js", "../has-map-support/lib/index.js", "../has-node-buffer-support/lib/buffer.js", "../has-node-buffer-support/lib/main.js", "../has-node-buffer-support/lib/index.js", "../has-proxy-support/lib/main.js", "../has-proxy-support/lib/index.js", "../has-set-support/lib/set.js", "../has-set-support/lib/main.js", "../has-set-support/lib/index.js", "../is-sharedarraybuffer/lib/main.js", "../is-sharedarraybuffer/lib/index.js", "../has-sharedarraybuffer-support/lib/sharedarraybuffer.js", "../has-sharedarraybuffer-support/lib/main.js", "../has-sharedarraybuffer-support/lib/index.js", "../is-uint8array/lib/main.js", "../is-uint8array/lib/index.js", "../has-uint8array-support/lib/uint8array.js", "../has-uint8array-support/lib/main.js", "../has-uint8array-support/lib/index.js", "../is-uint8clampedarray/lib/main.js", "../is-uint8clampedarray/lib/index.js", "../has-uint8clampedarray-support/lib/uint8clampedarray.js", "../has-uint8clampedarray-support/lib/main.js", "../has-uint8clampedarray-support/lib/index.js", "../is-uint16array/lib/main.js", "../is-uint16array/lib/index.js", "../has-uint16array-support/lib/uint16array.js", "../has-uint16array-support/lib/main.js", "../has-uint16array-support/lib/index.js", "../is-uint32array/lib/main.js", "../is-uint32array/lib/index.js", "../has-uint32array-support/lib/uint32array.js", "../has-uint32array-support/lib/main.js", "../has-uint32array-support/lib/index.js", "../is-nonnegative-integer/lib/primitive.js", "../is-nonnegative-integer/lib/object.js", "../is-nonnegative-integer/lib/main.js", "../is-nonnegative-integer/lib/index.js", "../has-utf16-surrogate-pair-at/lib/main.js", "../has-utf16-surrogate-pair-at/lib/index.js", "../has-wasm-support/lib/main.js", "../has-wasm-support/lib/index.js", "../has-weakmap-support/lib/weakmap.js", "../has-weakmap-support/lib/main.js", "../has-weakmap-support/lib/index.js", "../has-weakset-support/lib/weakset.js", "../has-weakset-support/lib/main.js", "../has-weakset-support/lib/index.js", "../instance-of/lib/main.js", "../instance-of/lib/index.js", "../is-uri/lib/main.js", "../is-uri/lib/index.js", "../is-absolute-http-uri/lib/main.js", "../is-absolute-http-uri/lib/index.js", "../is-windows/lib/index.js", "../is-absolute-path/lib/posix.js", "../is-absolute-path/lib/win32.js", "../is-absolute-path/lib/index.js", "../is-absolute-uri/lib/main.js", "../is-absolute-uri/lib/index.js", "../is-accessor-array/lib/main.js", "../is-accessor-array/lib/index.js", "../is-accessor-property/lib/main.js", "../is-accessor-property/lib/index.js", "../is-accessor-property-in/lib/main.js", "../is-accessor-property-in/lib/index.js", "../is-alphagram/lib/main.js", "../is-alphagram/lib/index.js", "../is-alphanumeric/lib/main.js", "../is-alphanumeric/lib/index.js", "../is-anagram/lib/main.js", "../is-anagram/lib/index.js", "../is-arguments/lib/main.js", "../is-arguments/lib/detect.js", "../is-enumerable-property/lib/native.js", "../is-enumerable-property/lib/has_string_enumerability_bug.js", "../is-enumerable-property/lib/main.js", "../is-enumerable-property/lib/index.js", "../is-arguments/lib/polyfill.js", "../is-arguments/lib/index.js", "../is-array-array/lib/main.js", "../is-array-array/lib/index.js", "../is-array-length/lib/main.js", "../is-array-length/lib/index.js", "../is-array-like/lib/main.js", "../is-array-like/lib/index.js", "../is-array-like-object/lib/main.js", "../is-array-like-object/lib/index.js", "../is-arraybuffer-view/lib/no_arraybuffer.js", "../is-typed-array/lib/ctors.js", "../is-typed-array/lib/names.json", "../is-typed-array/lib/main.js", "../is-typed-array/lib/index.js", "../is-arraybuffer-view/lib/polyfill.js", "../is-arraybuffer-view/lib/main.js", "../is-arraybuffer-view/lib/index.js", "../is-arrow-function/lib/main.js", "../is-arrow-function/lib/index.js", "../is-ascii/lib/main.js", "../is-ascii/lib/index.js", "../is-between/lib/main.js", "../is-between/lib/index.js", "../is-between-array/lib/main.js", "../is-between-array/lib/index.js", "../is-big-endian/lib/ctors.js", "../is-big-endian/lib/main.js", "../is-big-endian/lib/index.js", "../is-binary-string/lib/main.js", "../is-binary-string/lib/index.js", "../is-blank-string/lib/main.js", "../is-blank-string/lib/index.js", "../is-boolean/lib/primitive.js", "../is-boolean/lib/tostring.js", "../is-boolean/lib/try2serialize.js", "../is-boolean/lib/object.js", "../is-boolean/lib/main.js", "../is-boolean/lib/index.js", "../tools/array-like-function/lib/main.js", "../tools/array-like-function/lib/index.js", "../is-boolean-array/lib/index.js", "../is-symbol/lib/primitive.js", "../is-symbol/lib/tostring.js", "../is-symbol/lib/try2tostring.js", "../is-symbol/lib/object.js", "../is-symbol/lib/generic.js", "../is-symbol/lib/main.js", "../is-symbol/lib/polyfill.js", "../is-symbol/lib/index.js", "../is-boxed-primitive/lib/main.js", "../is-boxed-primitive/lib/index.js", "../is-node/lib/to_string.js", "../is-node/lib/global_scope.js", "../is-node/lib/main.js", "../is-node/lib/index.js", "../is-browser/lib/global_scope.js", "../is-browser/lib/main.js", "../is-browser/lib/index.js", "../is-camelcase/lib/main.js", "../is-camelcase/lib/index.js", "../is-capitalized/lib/main.js", "../is-capitalized/lib/index.js", "../is-ndarray-like/lib/main.js", "../is-ndarray-like/lib/index.js", "../is-matrix-like/lib/main.js", "../is-matrix-like/lib/index.js", "../is-square-matrix/lib/main.js", "../is-square-matrix/lib/index.js", "../is-centrosymmetric-matrix/lib/main.js", "../is-centrosymmetric-matrix/lib/index.js", "../is-circular/lib/main.js", "../is-circular/lib/index.js", "../is-circular-array/lib/main.js", "../is-circular-array/lib/index.js", "../is-circular-plain-object/lib/main.js", "../is-circular-plain-object/lib/index.js", "../is-class/lib/main.js", "../is-class/lib/index.js", "../is-complex/lib/main.js", "../is-complex/lib/index.js", "../is-complex-like/lib/main.js", "../is-complex-like/lib/index.js", "../is-complex-typed-array/lib/ctors.js", "../is-complex-typed-array/lib/names.json", "../is-complex-typed-array/lib/main.js", "../is-complex-typed-array/lib/index.js", "../is-complex-typed-array-like/lib/main.js", "../is-complex-typed-array-like/lib/index.js", "../is-complex64/lib/main.js", "../is-complex64/lib/index.js", "../is-complex64array/lib/main.js", "../is-complex64array/lib/index.js", "../is-complex64matrix-like/lib/main.js", "../is-complex64matrix-like/lib/index.js", "../is-complex64ndarray-like/lib/main.js", "../is-complex64ndarray-like/lib/index.js", "../is-vector-like/lib/main.js", "../is-vector-like/lib/index.js", "../is-complex64vector-like/lib/main.js", "../is-complex64vector-like/lib/index.js", "../is-complex128/lib/main.js", "../is-complex128/lib/index.js", "../is-complex128array/lib/main.js", "../is-complex128array/lib/index.js", "../is-complex128matrix-like/lib/main.js", "../is-complex128matrix-like/lib/index.js", "../is-complex128ndarray-like/lib/main.js", "../is-complex128ndarray-like/lib/index.js", "../is-complex128vector-like/lib/main.js", "../is-complex128vector-like/lib/index.js", "../is-composite/lib/primitive.js", "../is-composite/lib/object.js", "../is-composite/lib/main.js", "../is-composite/lib/index.js", "../is-configurable-property/lib/main.js", "../is-configurable-property/lib/index.js", "../is-configurable-property-in/lib/main.js", "../is-configurable-property-in/lib/index.js", "../is-constantcase/lib/main.js", "../is-constantcase/lib/index.js", "../is-cube-number/lib/primitive.js", "../is-cube-number/lib/object.js", "../is-cube-number/lib/main.js", "../is-cube-number/lib/index.js", "../is-current-year/lib/main.js", "../is-current-year/lib/index.js", "../is-darwin/lib/index.js", "../is-data-property/lib/main.js", "../is-data-property/lib/index.js", "../is-data-property-in/lib/main.js", "../is-data-property-in/lib/index.js", "../is-date-object-array/lib/index.js", "../is-digit-string/lib/main.js", "../is-digit-string/lib/index.js", "../is-docker/lib/main.js", "../is-docker/lib/index.js", "../is-domain-name/lib/main.js", "../is-domain-name/lib/index.js", "../is-duration-string/lib/main.js", "../is-duration-string/lib/index.js", "../is-electron/lib/process.js", "../is-electron/lib/main.js", "../is-electron/lib/index.js", "../is-electron-main/lib/process.js", "../is-electron-main/lib/main.js", "../is-electron-main/lib/index.js", "../is-electron-renderer/lib/process.js", "../is-electron-renderer/lib/main.js", "../is-electron-renderer/lib/index.js", "../is-email-address/lib/main.js", "../is-email-address/lib/index.js", "../is-empty-array/lib/main.js", "../is-empty-array/lib/index.js", "../is-empty-array-like-object/lib/main.js", "../is-empty-array-like-object/lib/index.js", "../is-empty-collection/lib/main.js", "../is-empty-collection/lib/index.js", "../is-empty-object/lib/main.js", "../is-empty-object/lib/index.js", "../is-empty-string/lib/primitive.js", "../is-empty-string/lib/object.js", "../is-empty-string/lib/main.js", "../is-empty-string/lib/index.js", "../is-enumerable-property-in/lib/main.js", "../is-enumerable-property-in/lib/index.js", "../is-eval-error/lib/main.js", "../is-eval-error/lib/index.js", "../is-even/lib/primitive.js", "../is-even/lib/object.js", "../is-even/lib/main.js", "../is-even/lib/index.js", "../is-falsy/lib/main.js", "../is-falsy/lib/index.js", "../is-falsy-array/lib/index.js", "../is-finite/lib/primitive.js", "../is-finite/lib/object.js", "../is-finite/lib/main.js", "../is-finite/lib/index.js", "../is-finite-array/lib/index.js", "../is-float32matrix-like/lib/main.js", "../is-float32matrix-like/lib/index.js", "../is-float32ndarray-like/lib/main.js", "../is-float32ndarray-like/lib/index.js", "../is-float32vector-like/lib/main.js", "../is-float32vector-like/lib/index.js", "../is-float64matrix-like/lib/main.js", "../is-float64matrix-like/lib/index.js", "../is-float64ndarray-like/lib/main.js", "../is-float64ndarray-like/lib/index.js", "../is-float64vector-like/lib/main.js", "../is-float64vector-like/lib/index.js", "../is-function-array/lib/index.js", "../is-generator-object/lib/main.js", "../is-generator-object/lib/index.js", "../is-generator-object-like/lib/main.js", "../is-generator-object-like/lib/index.js", "../is-gzip-buffer/lib/main.js", "../is-gzip-buffer/lib/index.js", "../is-hex-string/lib/main.js", "../is-hex-string/lib/index.js", "../is-infinite/lib/primitive.js", "../is-infinite/lib/object.js", "../is-infinite/lib/main.js", "../is-infinite/lib/index.js", "../is-inherited-property/lib/main.js", "../is-inherited-property/lib/index.js", "../is-integer-array/lib/index.js", "../is-primitive/lib/main.js", "../is-primitive/lib/index.js", "../is-iterator-like/lib/main.js", "../is-iterator-like/lib/index.js", "../is-iterable-like/lib/main.js", "../is-iterable-like/lib/index.js", "../is-json/lib/main.js", "../is-json/lib/index.js", "../is-kebabcase/lib/main.js", "../is-kebabcase/lib/index.js", "../is-leap-year/lib/main.js", "../is-leap-year/lib/index.js", "../is-little-endian/lib/ctors.js", "../is-little-endian/lib/main.js", "../is-little-endian/lib/index.js", "../is-localhost/lib/main.js", "../is-localhost/lib/index.js", "../is-lowercase/lib/main.js", "../is-lowercase/lib/index.js", "../is-method/lib/main.js", "../is-method/lib/index.js", "../is-method-in/lib/main.js", "../is-method-in/lib/index.js", "../is-mobile/lib/main.js", "../is-mobile/lib/index.js", "../is-multi-slice/lib/main.js", "../is-multi-slice/lib/index.js", "../is-named-typed-tuple-like/lib/main.js", "../is-named-typed-tuple-like/lib/index.js", "../is-nan-array/lib/index.js", "../is-native-function/lib/main.js", "../is-native-function/lib/index.js", "../is-negative-integer/lib/primitive.js", "../is-negative-integer/lib/object.js", "../is-negative-integer/lib/main.js", "../is-negative-integer/lib/index.js", "../is-negative-integer-array/lib/index.js", "../is-negative-number/lib/primitive.js", "../is-negative-number/lib/object.js", "../is-negative-number/lib/main.js", "../is-negative-number/lib/index.js", "../is-negative-number-array/lib/index.js", "../is-negative-zero/lib/primitive.js", "../is-negative-zero/lib/object.js", "../is-negative-zero/lib/main.js", "../is-negative-zero/lib/index.js", "../is-node-builtin/lib/builtins.json", "../is-node-builtin/lib/main.js", "../is-node-builtin/lib/index.js", "../is-node-stream-like/lib/main.js", "../is-node-stream-like/lib/index.js", "../is-node-writable-stream-like/lib/main.js", "../is-node-writable-stream-like/lib/index.js", "../is-node-readable-stream-like/lib/main.js", "../is-node-readable-stream-like/lib/index.js", "../is-node-duplex-stream-like/lib/main.js", "../is-node-duplex-stream-like/lib/index.js", "../is-node-repl/lib/parent.js", "../is-node-repl/lib/stacktrace.js", "../is-node-repl/lib/main.js", "../is-node-repl/lib/index.js", "../is-node-transform-stream-like/lib/main.js", "../is-node-transform-stream-like/lib/index.js", "../is-nonconfigurable-property/lib/main.js", "../is-nonconfigurable-property/lib/index.js", "../is-nonconfigurable-property-in/lib/main.js", "../is-nonconfigurable-property-in/lib/index.js", "../is-nonenumerable-property/lib/main.js", "../is-nonenumerable-property/lib/index.js", "../is-nonenumerable-property-in/lib/main.js", "../is-nonenumerable-property-in/lib/index.js", "../is-nonnegative-integer-array/lib/index.js", "../is-nonnegative-number/lib/primitive.js", "../is-nonnegative-number/lib/object.js", "../is-nonnegative-number/lib/main.js", "../is-nonnegative-number/lib/index.js", "../is-nonnegative-number-array/lib/index.js", "../is-nonpositive-integer/lib/primitive.js", "../is-nonpositive-integer/lib/object.js", "../is-nonpositive-integer/lib/main.js", "../is-nonpositive-integer/lib/index.js", "../is-nonpositive-integer-array/lib/index.js", "../is-nonpositive-number/lib/primitive.js", "../is-nonpositive-number/lib/object.js", "../is-nonpositive-number/lib/main.js", "../is-nonpositive-number/lib/index.js", "../is-nonpositive-number-array/lib/index.js", "../is-nonsymmetric-matrix/lib/main.js", "../is-nonsymmetric-matrix/lib/index.js", "../is-null/lib/main.js", "../is-null/lib/index.js", "../is-null-array/lib/main.js", "../is-null-array/lib/index.js", "../is-number-array/lib/index.js", "../is-numeric-array/lib/main.js", "../is-numeric-array/lib/index.js", "../is-object-array/lib/main.js", "../is-object-array/lib/index.js", "../is-odd/lib/primitive.js", "../is-odd/lib/object.js", "../is-odd/lib/main.js", "../is-odd/lib/index.js", "../is-pascalcase/lib/main.js", "../is-pascalcase/lib/index.js", "../is-persymmetric-matrix/lib/main.js", "../is-persymmetric-matrix/lib/index.js", "../is-plain-object-array/lib/main.js", "../is-plain-object-array/lib/index.js", "../is-positive-integer/lib/primitive.js", "../is-positive-integer/lib/object.js", "../is-positive-integer/lib/main.js", "../is-positive-integer/lib/index.js", "../is-positive-integer-array/lib/index.js", "../is-positive-number/lib/primitive.js", "../is-positive-number/lib/object.js", "../is-positive-number/lib/main.js", "../is-positive-number/lib/index.js", "../is-positive-number-array/lib/index.js", "../is-positive-zero/lib/primitive.js", "../is-positive-zero/lib/object.js", "../is-positive-zero/lib/main.js", "../is-positive-zero/lib/index.js", "../is-prime/lib/primitive.js", "../is-prime/lib/object.js", "../is-prime/lib/main.js", "../is-prime/lib/index.js", "../is-primitive-array/lib/main.js", "../is-primitive-array/lib/index.js", "../is-prng-like/lib/main.js", "../is-prng-like/lib/index.js", "../is-probability/lib/primitive.js", "../is-probability/lib/object.js", "../is-probability/lib/main.js", "../is-probability/lib/index.js", "../is-probability-array/lib/index.js", "../is-property-key/lib/main.js", "../is-property-key/lib/index.js", "../is-prototype-of/lib/main.js", "../is-prototype-of/lib/index.js", "../is-range-error/lib/main.js", "../is-range-error/lib/index.js", "../is-read-only-property/lib/main.js", "../is-read-only-property/lib/index.js", "../is-read-only-property-in/lib/main.js", "../is-read-only-property-in/lib/index.js", "../is-read-write-property/lib/main.js", "../is-read-write-property/lib/index.js", "../is-read-write-property-in/lib/main.js", "../is-read-write-property-in/lib/index.js", "../is-readable-property/lib/main.js", "../is-readable-property/lib/index.js", "../is-readable-property-in/lib/main.js", "../is-readable-property-in/lib/index.js", "../is-reference-error/lib/main.js", "../is-reference-error/lib/index.js", "../is-regexp-string/lib/main.js", "../is-regexp-string/lib/index.js", "../is-relative-path/lib/posix.js", "../is-relative-path/lib/win32.js", "../is-relative-path/lib/index.js", "../is-relative-uri/lib/main.js", "../is-relative-uri/lib/index.js", "../is-safe-integer/lib/primitive.js", "../is-safe-integer/lib/object.js", "../is-safe-integer/lib/main.js", "../is-safe-integer/lib/index.js", "../is-safe-integer-array/lib/index.js", "../is-same-complex64/lib/main.js", "../is-same-complex64/lib/index.js", "../is-same-complex64array/lib/main.js", "../is-same-complex64array/lib/index.js", "../is-same-complex128/lib/main.js", "../is-same-complex128/lib/index.js", "../is-same-complex128array/lib/main.js", "../is-same-complex128array/lib/index.js", "../is-same-float32array/lib/main.js", "../is-same-float32array/lib/index.js", "../is-same-float64array/lib/main.js", "../is-same-float64array/lib/index.js", "../is-same-native-class/lib/main.js", "../is-same-native-class/lib/index.js", "../is-same-type/lib/main.js", "../is-same-type/lib/index.js", "../is-same-value/lib/main.js", "../is-same-value/lib/index.js", "../is-same-value-zero/lib/main.js", "../is-same-value-zero/lib/index.js", "../is-semver/lib/main.js", "../is-semver/lib/index.js", "../is-skew-centrosymmetric-matrix/lib/main.js", "../is-skew-centrosymmetric-matrix/lib/index.js", "../is-skew-persymmetric-matrix/lib/main.js", "../is-skew-persymmetric-matrix/lib/index.js", "../is-skew-symmetric-matrix/lib/main.js", "../is-skew-symmetric-matrix/lib/index.js", "../is-slice/lib/main.js", "../is-slice/lib/index.js", "../is-snakecase/lib/main.js", "../is-snakecase/lib/index.js", "../is-square-number/lib/primitive.js", "../is-square-number/lib/object.js", "../is-square-number/lib/main.js", "../is-square-number/lib/index.js", "../is-square-triangular-number/lib/primitive.js", "../is-square-triangular-number/lib/object.js", "../is-square-triangular-number/lib/main.js", "../is-square-triangular-number/lib/index.js", "../is-startcase/lib/main.js", "../is-startcase/lib/index.js", "../is-strict-equal/lib/main.js", "../is-strict-equal/lib/index.js", "../is-string-array/lib/index.js", "../is-symbol-array/lib/index.js", "../is-symmetric-matrix/lib/main.js", "../is-symmetric-matrix/lib/index.js", "../is-syntax-error/lib/main.js", "../is-syntax-error/lib/index.js", "../is-touch-device/lib/main.js", "../is-touch-device/lib/index.js", "../is-triangular-number/lib/primitive.js", "../is-triangular-number/lib/object.js", "../is-triangular-number/lib/main.js", "../is-triangular-number/lib/index.js", "../is-truthy/lib/main.js", "../is-truthy/lib/index.js", "../is-truthy-array/lib/main.js", "../is-truthy-array/lib/index.js", "../is-type-error/lib/main.js", "../is-type-error/lib/index.js", "../is-typed-array-length/lib/main.js", "../is-typed-array-length/lib/index.js", "../is-typed-array-like/lib/main.js", "../is-typed-array-like/lib/index.js", "../is-unc-path/lib/main.js", "../is-unc-path/lib/index.js", "../is-undefined/lib/main.js", "../is-undefined/lib/index.js", "../is-undefined-or-null/lib/main.js", "../is-undefined-or-null/lib/index.js", "../is-unity-probability-array/lib/main.js", "../is-unity-probability-array/lib/index.js", "../is-uppercase/lib/main.js", "../is-uppercase/lib/index.js", "../is-uri-error/lib/main.js", "../is-uri-error/lib/index.js", "../is-web-worker/lib/global_scope.js", "../is-web-worker/lib/main.js", "../is-web-worker/lib/index.js", "../is-whitespace/lib/main.js", "../is-whitespace/lib/index.js", "../is-writable-property/lib/main.js", "../is-writable-property/lib/index.js", "../is-writable-property-in/lib/main.js", "../is-writable-property-in/lib/index.js", "../is-write-only-property/lib/main.js", "../is-write-only-property/lib/index.js", "../is-write-only-property-in/lib/main.js", "../is-write-only-property-in/lib/index.js", "../tools/typed-array-function/lib/main.js", "../tools/typed-array-function/lib/index.js", "../tools/lib/index.js", "../lib/index.js"], + "sourcesContent": ["/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInteger = require( '@stdlib/math/base/assert/is-integer' );\nvar MAX_LENGTH = require( '@stdlib/constants/array/max-typed-array-length' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a collection.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is a collection\n*\n* @example\n* var bool = isCollection( [] );\n* // returns true\n*\n* @example\n* var bool = isCollection( {} );\n* // returns false\n*/\nfunction isCollection( value ) {\n\treturn (\n\t\ttypeof value === 'object' &&\n\t\tvalue !== null &&\n\t\ttypeof value.length === 'number' &&\n\t\tisInteger( value.length ) &&\n\t\tvalue.length >= 0 &&\n\t\tvalue.length <= MAX_LENGTH\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isCollection;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a collection.\n*\n* @module @stdlib/assert/is-collection\n*\n* @example\n* var isCollection = require( '@stdlib/assert/is-collection' );\n*\n* var bool = isCollection( [] );\n* // returns true\n*\n* bool = isCollection( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Tests if a value is a number primitive.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number primitive\n*\n* @example\n* var bool = isNumber( 3.14 );\n* // returns true\n*\n* @example\n* var bool = isNumber( NaN );\n* // returns true\n*\n* @example\n* var bool = isNumber( new Number( 3.14 ) );\n* // returns false\n*/\nfunction isNumber( value ) {\n\treturn ( typeof value === 'number' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNumber;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\n/**\n* Tests for native `Symbol` support.\n*\n* @returns {boolean} boolean indicating if an environment has `Symbol` support\n*\n* @example\n* var bool = hasSymbolSupport();\n* // returns \n*/\nfunction hasSymbolSupport() {\n\treturn (\n\t\ttypeof Symbol === 'function' &&\n\t\ttypeof Symbol( 'foo' ) === 'symbol'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasSymbolSupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `Symbol` support.\n*\n* @module @stdlib/assert/has-symbol-support\n*\n* @example\n* var hasSymbolSupport = require( '@stdlib/assert/has-symbol-support' );\n*\n* var bool = hasSymbolSupport();\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar hasSymbols = require( './../../has-symbol-support' );\n\n\n// VARIABLES //\n\nvar FLG = hasSymbols();\n\n\n// MAIN //\n\n/**\n* Tests for native `toStringTag` support.\n*\n* @returns {boolean} boolean indicating if an environment has `toStringTag` support\n*\n* @example\n* var bool = hasToStringTagSupport();\n* // returns \n*/\nfunction hasToStringTagSupport() {\n\treturn ( FLG && typeof Symbol.toStringTag === 'symbol' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasToStringTagSupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `toStringTag` support.\n*\n* @module @stdlib/assert/has-tostringtag-support\n*\n* @example\n* var hasToStringTagSupport = require( '@stdlib/assert/has-tostringtag-support' );\n*\n* var bool = hasToStringTagSupport();\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar Number = require( '@stdlib/number/ctor' );\n\n\n// MAIN //\n\n// eslint-disable-next-line stdlib/no-redeclare\nvar toString = Number.prototype.toString; // non-generic\n\n\n// EXPORTS //\n\nmodule.exports = toString;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar toString = require( './tostring.js' ); // eslint-disable-line stdlib/no-redeclare\n\n\n// MAIN //\n\n/**\n* Attempts to serialize a value to a string.\n*\n* @private\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value can be serialized\n*/\nfunction test( value ) {\n\ttry {\n\t\ttoString.call( value );\n\t\treturn true;\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\treturn false;\n\t}\n}\n\n\n// EXPORTS //\n\nmodule.exports = test;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar hasToStringTag = require( './../../has-tostringtag-support' );\nvar nativeClass = require( '@stdlib/utils/native-class' );\nvar Number = require( '@stdlib/number/ctor' );\nvar test = require( './try2serialize.js' );\n\n\n// VARIABLES //\n\nvar FLG = hasToStringTag();\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number object.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number object\n*\n* @example\n* var bool = isNumber( 3.14 );\n* // returns false\n*\n* @example\n* var bool = isNumber( new Number( 3.14 ) );\n* // returns true\n*/\nfunction isNumber( value ) {\n\tif ( typeof value === 'object' ) {\n\t\tif ( value instanceof Number ) {\n\t\t\treturn true;\n\t\t}\n\t\tif ( FLG ) {\n\t\t\treturn test( value );\n\t\t}\n\t\treturn ( nativeClass( value ) === '[object Number]' );\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNumber;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a number\n*\n* @example\n* var bool = isNumber( 3.14 );\n* // returns true\n*\n* @example\n* var bool = isNumber( new Number( 3.14 ) );\n* // returns true\n*\n* @example\n* var bool = isNumber( NaN );\n* // returns true\n*\n* @example\n* var bool = isNumber( null );\n* // returns false\n*/\nfunction isNumber( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNumber;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a number.\n*\n* @module @stdlib/assert/is-number\n*\n* @example\n* var isNumber = require( '@stdlib/assert/is-number' );\n*\n* var bool = isNumber( 3.14 );\n* // returns true\n*\n* bool = isNumber( new Number( 3.14 ) );\n* // returns true\n*\n* bool = isNumber( NaN );\n* // returns true\n*\n* bool = isNumber( null );\n* // returns false\n*\n* @example\n* var isNumber = require( '@stdlib/assert/is-number' ).isPrimitive;\n*\n* var bool = isNumber( 3.14 );\n* // returns true\n*\n* bool = isNumber( NaN );\n* // returns true\n*\n* bool = isNumber( new Number( 3.14 ) );\n* // returns false\n*\n* @example\n* var isNumber = require( '@stdlib/assert/is-number' ).isObject;\n*\n* var bool = isNumber( 3.14 );\n* // returns false\n*\n* bool = isNumber( new Number( 3.14 ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar PINF = require( '@stdlib/constants/float64/pinf' );\nvar NINF = require( '@stdlib/constants/float64/ninf' );\nvar isInt = require( '@stdlib/math/base/assert/is-integer' );\n\n\n// MAIN //\n\n/**\n* Tests if a number primitive is an integer value.\n*\n* @private\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a number primitive is an integer value\n*/\nfunction isInteger( value ) {\n\treturn (\n\t\tvalue < PINF &&\n\t\tvalue > NINF &&\n\t\tisInt( value )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isInteger;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isPrimitive;\nvar isInt = require( './integer.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number primitive having an integer value.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number primitive having an integer value\n*\n* @example\n* var bool = isInteger( -3.0 );\n* // returns true\n*\n* @example\n* var bool = isInteger( new Number( -3.0 ) );\n* // returns false\n*/\nfunction isInteger( value ) {\n\treturn (\n\t\tisNumber( value ) &&\n\t\tisInt( value )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isInteger;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isObject;\nvar isInt = require( './integer.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number object having an integer value.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number object having an integer value\n*\n* @example\n* var bool = isInteger( 3.0 );\n* // returns false\n*\n* @example\n* var bool = isInteger( new Number( 3.0 ) );\n* // returns true\n*/\nfunction isInteger( value ) {\n\treturn (\n\t\tisNumber( value ) &&\n\t\tisInt( value.valueOf() )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isInteger;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is an integer.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is an integer\n*\n* @example\n* var bool = isInteger( 5.0 );\n* // returns true\n*\n* @example\n* var bool = isInteger( new Number( 5.0 ) );\n* // returns true\n*\n* @example\n* var bool = isInteger( -3.14 );\n* // returns false\n*\n* @example\n* var bool = isInteger( null );\n* // returns false\n*/\nfunction isInteger( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isInteger;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an integer.\n*\n* @module @stdlib/assert/is-integer\n*\n* @example\n* var isInteger = require( '@stdlib/assert/is-integer' );\n*\n* var bool = isInteger( 5.0 );\n* // returns true\n*\n* bool = isInteger( new Number( 5.0 ) );\n* // returns true\n*\n* bool = isInteger( -3.14 );\n* // returns false\n*\n* bool = isInteger( null );\n* // returns false\n*\n* @example\n* // Use interface to check for integer primitives...\n* var isInteger = require( '@stdlib/assert/is-integer' ).isPrimitive;\n*\n* var bool = isInteger( -3.0 );\n* // returns true\n*\n* bool = isInteger( new Number( -3.0 ) );\n* // returns false\n*\n* @example\n* // Use interface to check for integer objects...\n* var isInteger = require( '@stdlib/assert/is-integer' ).isObject;\n*\n* var bool = isInteger( 3.0 );\n* // returns false\n*\n* bool = isInteger( new Number( 3.0 ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Tests if a value is a string primitive.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a string primitive\n*\n* @example\n* var bool = isString( 'beep' );\n* // returns true\n*\n* @example\n* var bool = isString( new String( 'beep' ) );\n* // returns false\n*/\nfunction isString( value ) {\n\treturn ( typeof value === 'string' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isString;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// eslint-disable-next-line stdlib/no-redeclare\nvar valueOf = String.prototype.valueOf; // non-generic\n\n\n// EXPORTS //\n\nmodule.exports = valueOf;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar valueOf = require( './valueof.js' ); // eslint-disable-line stdlib/no-redeclare\n\n\n// MAIN //\n\n/**\n* Attempts to extract a string value.\n*\n* @private\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a string can be extracted\n*/\nfunction test( value ) {\n\ttry {\n\t\tvalueOf.call( value );\n\t\treturn true;\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\treturn false;\n\t}\n}\n\n\n// EXPORTS //\n\nmodule.exports = test;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar hasToStringTag = require( './../../has-tostringtag-support' );\nvar nativeClass = require( '@stdlib/utils/native-class' );\nvar test = require( './try2valueof.js' );\n\n\n// VARIABLES //\n\nvar FLG = hasToStringTag();\n\n\n// MAIN //\n\n/**\n* Tests if a value is a string object.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a string object\n*\n* @example\n* var bool = isString( new String( 'beep' ) );\n* // returns true\n*\n* @example\n* var bool = isString( 'beep' );\n* // returns false\n*/\nfunction isString( value ) {\n\tif ( typeof value === 'object' ) {\n\t\tif ( value instanceof String ) {\n\t\t\treturn true;\n\t\t}\n\t\tif ( FLG ) {\n\t\t\treturn test( value );\n\t\t}\n\t\treturn ( nativeClass( value ) === '[object String]' );\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isString;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a string.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a string\n*\n* @example\n* var bool = isString( new String( 'beep' ) );\n* // returns true\n*\n* @example\n* var bool = isString( 'beep' );\n* // returns true\n*/\nfunction isString( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isString;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a string.\n*\n* @module @stdlib/assert/is-string\n*\n* @example\n* var isString = require( '@stdlib/assert/is-string' );\n*\n* var bool = isString( 'beep' );\n* // returns true\n*\n* bool = isString( new String( 'beep' ) );\n* // returns true\n*\n* bool = isString( 5 );\n* // returns false\n*\n* @example\n* var isString = require( '@stdlib/assert/is-string' ).isObject;\n*\n* var bool = isString( new String( 'beep' ) );\n* // returns true\n*\n* bool = isString( 'beep' );\n* // returns false\n*\n* @example\n* var isString = require( '@stdlib/assert/is-string' ).isPrimitive;\n*\n* var bool = isString( 'beep' );\n* // returns true\n*\n* bool = isString( new String( 'beep' ) );\n* // returns false\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isPrimitive;\nvar isNan = require( '@stdlib/math/base/assert/is-nan' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a `NaN` number primitive.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a `NaN` number primitive\n*\n* @example\n* var bool = isnan( NaN );\n* // returns true\n*\n* @example\n* var bool = isnan( 3.14 );\n* // returns false\n*\n* @example\n* var bool = isnan( new Number( NaN ) );\n* // returns false\n*/\nfunction isnan( value ) {\n\treturn (\n\t\tisNumber( value ) &&\n\t\tisNan( value )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isnan;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isObject;\nvar isNan = require( '@stdlib/math/base/assert/is-nan' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number object having a value of `NaN`.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number object having a value of `NaN`\n*\n* @example\n* var bool = isnan( NaN );\n* // returns false\n*\n* @example\n* var bool = isnan( new Number( NaN ) );\n* // returns true\n*/\nfunction isnan( value ) {\n\treturn (\n\t\tisNumber( value ) &&\n\t\tisNan( value.valueOf() )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isnan;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is `NaN`.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is `NaN`\n*\n* @example\n* var bool = isnan( NaN );\n* // returns true\n*\n* @example\n* var bool = isnan( new Number( NaN ) );\n* // returns true\n*\n* @example\n* var bool = isnan( 3.14 );\n* // returns false\n*\n* @example\n* var bool = isnan( null );\n* // returns false\n*/\nfunction isnan( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isnan;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is `NaN`.\n*\n* @module @stdlib/assert/is-nan\n*\n* @example\n* var isnan = require( '@stdlib/assert/is-nan' );\n*\n* var bool = isnan( NaN );\n* // returns true\n*\n* bool = isnan( new Number( NaN ) );\n* // returns true\n*\n* bool = isnan( 3.14 );\n* // returns false\n*\n* bool = isnan( null );\n* // returns false\n*\n* @example\n* var isnan = require( '@stdlib/assert/is-nan' ).isPrimitive;\n*\n* var bool = isnan( NaN );\n* // returns true\n*\n* bool = isnan( 3.14 );\n* // returns false\n*\n* bool = isnan( new Number( NaN ) );\n* // returns false\n*\n* @example\n* var isnan = require( '@stdlib/assert/is-nan' ).isObject;\n*\n* var bool = isnan( NaN );\n* // returns false\n*\n* bool = isnan( new Number( NaN ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isCollection = require( './../../is-collection' );\nvar isInteger = require( './../../is-integer' ).isPrimitive;\nvar isString = require( './../../is-string' ).isPrimitive;\nvar isnan = require( './../../is-nan' ).isPrimitive;\nvar format = require( '@stdlib/string/format' );\n\n\n// MAIN //\n\n/**\n* Tests if an array-like value contains a search value.\n*\n* @param {(Collection|string)} val - input value\n* @param {*} searchValue - search value\n* @param {integer} [position=0] - position at which to start searching for `searchValue`\n* @throws {TypeError} first argument must be array-like\n* @throws {Error} must provide a search value\n* @throws {TypeError} second argument must be a string when the first argument is a string\n* @throws {TypeError} third argument must be an integer\n* @returns {boolean} boolean indicating whether one value contains another\n*\n* @example\n* var bool = contains( 'last man standing', 'stand' );\n* // returns true\n*\n* @example\n* var bool = contains( [ 1, 2, 3, 4 ], 2 );\n* // returns true\n*\n* @example\n* var bool = contains( 'presidential election', 'president' );\n* // returns true\n*\n* @example\n* var bool = contains( [ NaN, 2, 3, 4 ], NaN );\n* // returns true\n*\n* @example\n* var bool = contains( 'javaScript', 'js' );\n* // returns false\n*\n* @example\n* var bool = contains( [ 1, 2, 3, {} ], {} );\n* // returns false\n*\n* @example\n* var bool = contains( 'Hidden Treasures', '' );\n* // returns true\n*/\nfunction contains( val, searchValue, position ) {\n\tvar len;\n\tvar pos;\n\tvar i;\n\tif ( !isCollection( val ) && !isString( val ) ) {\n\t\tthrow new TypeError( format( 'invalid argument. First argument must be array-like. Value: `%s`.', val ) );\n\t}\n\tif ( arguments.length < 2 ) {\n\t\tthrow new Error( 'insufficient arguments. Must provide a search value.' );\n\t}\n\tif ( arguments.length > 2 ) {\n\t\tif ( !isInteger( position ) ) {\n\t\t\tthrow new TypeError( format( 'invalid argument. Third argument must be an integer. Value: `%s`.', position ) );\n\t\t}\n\t\tpos = position;\n\t\tif ( pos < 0 ) {\n\t\t\tpos = 0;\n\t\t}\n\t} else {\n\t\tpos = 0;\n\t}\n\tif ( isString( val ) ) {\n\t\tif ( !isString( searchValue ) ) {\n\t\t\tthrow new TypeError( format( 'invalid argument. Second argument must be a string. Value: `%s`.', searchValue ) );\n\t\t}\n\t\treturn val.indexOf( searchValue, pos ) !== -1;\n\t}\n\tlen = val.length;\n\tif ( isnan( searchValue ) ) {\n\t\tfor ( i = pos; i < len; i++ ) {\n\t\t\tif ( isnan( val[ i ] ) ) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t\treturn false;\n\t}\n\tfor ( i = pos; i < len; i++ ) {\n\t\tif ( val[ i ] === searchValue ) {\n\t\t\treturn true;\n\t\t}\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = contains;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if an array-like value contains another value.\n*\n* @module @stdlib/assert/contains\n*\n* @example\n* var contains = require( '@stdlib/assert/contains' );\n*\n* var bool = contains( 'Hello World', 'World' );\n* // returns true\n*\n* bool = contains( 'Hello World', 'world' );\n* // returns false\n*\n* bool = contains( [ 1, 2, 3, 4 ], 2 );\n* // returns true\n*\n* bool = contains( [ NaN, 2, 3, 4 ], NaN );\n* // returns true\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\nvar getDay = Date.prototype.getDay; // non-generic\n\n\n// EXPORTS //\n\nmodule.exports = getDay;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar getDay = require( './getday.js' );\n\n\n// MAIN //\n\n/**\n* Attempts to call a `Date` method.\n*\n* @private\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if able to call a `Date` method\n*/\nfunction test( value ) {\n\ttry {\n\t\tgetDay.call( value );\n\t\treturn true;\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\treturn false;\n\t}\n}\n\n\n// EXPORTS //\n\nmodule.exports = test;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar hasToStringTag = require( './../../has-tostringtag-support' );\nvar nativeClass = require( '@stdlib/utils/native-class' );\nvar test = require( './try2getday.js' );\n\n\n// VARIABLES //\n\nvar FLG = hasToStringTag();\n\n\n// MAIN //\n\n/**\n* Tests if a value is a `Date` object.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a `Date` object\n*\n* @example\n* var bool = isDateObject( new Date() );\n* // returns true\n*\n* @example\n* var bool = isDateObject( '2017-01-01' );\n* // returns false\n*/\nfunction isDateObject( value ) {\n\tif ( typeof value === 'object' ) {\n\t\tif ( value instanceof Date ) {\n\t\t\treturn true;\n\t\t}\n\t\tif ( FLG ) {\n\t\t\treturn test( value );\n\t\t}\n\t\treturn ( nativeClass( value ) === '[object Date]' );\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isDateObject;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a `Date` object.\n*\n* @module @stdlib/assert/is-date-object\n*\n* @example\n* var isDateObject = require( '@stdlib/assert/is-date-object' );\n*\n* var bool = isDateObject( new Date() );\n* // returns true\n*\n* bool = isDateObject( '2017-01-01' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar getPrototypeOf = require( '@stdlib/utils/get-prototype-of' );\nvar nativeClass = require( '@stdlib/utils/native-class' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is an `Error` object.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is an `Error` object\n*\n* @example\n* var bool = isError( new Error( 'beep' ) );\n* // returns true\n*\n* @example\n* var bool = isError( {} );\n* // returns false\n*/\nfunction isError( value ) {\n\tif ( typeof value !== 'object' || value === null ) {\n\t\treturn false;\n\t}\n\t// Check for `Error` objects from the same realm (same Node.js `vm` or same `Window` object)...\n\tif ( value instanceof Error ) {\n\t\treturn true;\n\t}\n\t// Walk the prototype tree until we find an object having the desired native class...\n\twhile ( value ) {\n\t\tif ( nativeClass( value ) === '[object Error]' ) {\n\t\t\treturn true;\n\t\t}\n\t\tvalue = getPrototypeOf( value );\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isError;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an `Error` object.\n*\n* @module @stdlib/assert/is-error\n*\n* @example\n* var isError = require( '@stdlib/assert/is-error' );\n*\n* var bool = isError( new Error( 'beep' ) );\n* // returns true\n*\n* bool = isError( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar nativeClass = require( '@stdlib/utils/native-class' );\n\n\n// VARIABLES //\n\nvar f;\n\n\n// FUNCTIONS //\n\n/**\n* Tests if a value is an array.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is an array\n*\n* @example\n* var bool = isArray( [] );\n* // returns true\n*\n* @example\n* var bool = isArray( {} );\n* // returns false\n*/\nfunction isArray( value ) {\n\treturn ( nativeClass( value ) === '[object Array]' );\n}\n\n\n// MAIN //\n\nif ( Array.isArray ) {\n\tf = Array.isArray;\n} else {\n\tf = isArray;\n}\n\n\n// EXPORTS //\n\nmodule.exports = f;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array.\n*\n* @module @stdlib/assert/is-array\n*\n* @example\n* var isArray = require( '@stdlib/assert/is-array' );\n*\n* var bool = isArray( [] );\n* // returns true\n*\n* bool = isArray( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isArray = require( './../../../is-array' );\nvar format = require( '@stdlib/string/format' );\n\n\n// MAIN //\n\n/**\n* Returns a function which tests if every element in an array passes a test condition.\n*\n* @param {Function} predicate - function to apply\n* @throws {TypeError} must provide a function\n* @returns {Function} an array function\n*\n* @example\n* var isOdd = require( '@stdlib/assert/is-odd' );\n*\n* var arr1 = [ 1, 3, 5, 7 ];\n* var arr2 = [ 3, 5, 8 ];\n*\n* var validate = arrayfcn( isOdd );\n*\n* var bool = validate( arr1 );\n* // returns true\n*\n* bool = validate( arr2 );\n* // returns false\n*/\nfunction arrayfcn( predicate ) {\n\tif ( typeof predicate !== 'function' ) {\n\t\tthrow new TypeError( format( 'invalid argument. Must provide a function. Value: `%s`.', predicate ) );\n\t}\n\treturn every;\n\n\t/**\n\t* Tests if every element in an array passes a test condition.\n\t*\n\t* @private\n\t* @param {*} value - value to test\n\t* @returns {boolean} boolean indicating whether a value is an array for which all elements pass a test condition\n\t*/\n\tfunction every( value ) {\n\t\tvar len;\n\t\tvar i;\n\t\tif ( !isArray( value ) ) {\n\t\t\treturn false;\n\t\t}\n\t\tlen = value.length;\n\t\tif ( len === 0 ) {\n\t\t\treturn false;\n\t\t}\n\t\tfor ( i = 0; i < len; i++ ) {\n\t\t\tif ( predicate( value[ i ] ) === false ) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t\treturn true;\n\t}\n}\n\n\n// EXPORTS //\n\nmodule.exports = arrayfcn;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Return a function which tests if every element in an array passes a test condition.\n*\n* @module @stdlib/assert/tools/array-function\n*\n* @example\n* var isOdd = require( '@stdlib/assert/is-odd' );\n* var arrayfcn = require( '@stdlib/assert/tools/array-function' );\n*\n* var arr1 = [ 1, 3, 5, 7 ];\n* var arr2 = [ 3, 5, 8 ];\n*\n* var validate = arrayfcn( isOdd );\n*\n* var bool = validate( arr1 );\n* // returns true\n*\n* bool = validate( arr2 );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Tests if a value is object-like.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is object-like\n*\n* @example\n* var bool = isObjectLike( {} );\n* // returns true\n*\n* @example\n* var bool = isObjectLike( [] );\n* // returns true\n*\n* @example\n* var bool = isObjectLike( null );\n* // returns false\n*/\nfunction isObjectLike( value ) {\n\treturn (\n\t\tvalue !== null &&\n\t\ttypeof value === 'object'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isObjectLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is object-like.\n*\n* @module @stdlib/assert/is-object-like\n*\n* @example\n* var isObjectLike = require( '@stdlib/assert/is-object-like' );\n*\n* var bool = isObjectLike( {} );\n* // returns true\n*\n* bool = isObjectLike( [] );\n* // returns true\n*\n* bool = isObjectLike( null );\n* // returns false\n*\n* @example\n* var isObjectLike = require( '@stdlib/assert/is-object-like' ).isObjectLikeArray;\n*\n* var bool = isObjectLike( [ {}, [] ] );\n* // returns true\n*\n* bool = isObjectLike( [ {}, '3.0' ] );\n* // returns false\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar arrayfun = require( './../../tools/array-function' );\nvar main = require( './main.js' );\n\n\n// VARIABLES //\n\nvar isObjectLikeArray = arrayfun( main );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isObjectLikeArray', isObjectLikeArray );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isObjectLike = require( './../../is-object-like' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a Buffer instance.\n*\n* @param {*} value - value to validate\n* @returns {boolean} boolean indicating if a value is a Buffer instance\n*\n* @example\n* var v = isBuffer( new Buffer( 'beep' ) );\n* // returns true\n*\n* @example\n* var v = isBuffer( new Buffer( [1,2,3,4] ) );\n* // returns true\n*\n* @example\n* var v = isBuffer( {} );\n* // returns false\n*\n* @example\n* var v = isBuffer( [] );\n* // returns false\n*/\nfunction isBuffer( value ) {\n\treturn (\n\t\tisObjectLike( value ) &&\n\t\t(\n\t\t\t// eslint-disable-next-line no-underscore-dangle\n\t\t\tvalue._isBuffer || // for envs missing Object.prototype.constructor (e.g., Safari 5-7)\n\t\t\t(\n\t\t\t\tvalue.constructor &&\n\n\t\t\t\t// WARNING: `typeof` is not a foolproof check, as certain envs consider RegExp and NodeList instances to be functions\n\t\t\t\ttypeof value.constructor.isBuffer === 'function' &&\n\t\t\t\tvalue.constructor.isBuffer( value )\n\t\t\t)\n\t\t)\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isBuffer;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a Buffer instance.\n*\n* @module @stdlib/assert/is-buffer\n*\n* @example\n* var isBuffer = require( '@stdlib/assert/is-buffer' );\n*\n* var v = isBuffer( new Buffer( 'beep' ) );\n* // returns true\n*\n* v = isBuffer( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\nvar exec = RegExp.prototype.exec; // non-generic\n\n\n// EXPORTS //\n\nmodule.exports = exec;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar exec = require( './exec.js' );\n\n\n// MAIN //\n\n/**\n* Attempts to call a `RegExp` method.\n*\n* @private\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if able to call a `RegExp` method\n*/\nfunction test( value ) {\n\ttry {\n\t\texec.call( value );\n\t\treturn true;\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\treturn false;\n\t}\n}\n\n\n// EXPORTS //\n\nmodule.exports = test;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar hasToStringTag = require( './../../has-tostringtag-support' );\nvar nativeClass = require( '@stdlib/utils/native-class' );\nvar test = require( './try2exec.js' );\n\n\n// VARIABLES //\n\nvar FLG = hasToStringTag();\n\n\n// MAIN //\n\n/**\n* Tests if a value is a regular expression.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a regular expression\n*\n* @example\n* var bool = isRegExp( /\\.+/ );\n* // returns true\n*\n* @example\n* var bool = isRegExp( {} );\n* // returns false\n*/\nfunction isRegExp( value ) {\n\tif ( typeof value === 'object' ) {\n\t\tif ( value instanceof RegExp ) {\n\t\t\treturn true;\n\t\t}\n\t\tif ( FLG ) {\n\t\t\treturn test( value );\n\t\t}\n\t\treturn ( nativeClass( value ) === '[object RegExp]' );\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isRegExp;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a regular expression.\n*\n* @module @stdlib/assert/is-regexp\n*\n* @example\n* var isRegExp = require( '@stdlib/assert/is-regexp' );\n*\n* var bool = isRegExp( /\\.+/ );\n* // returns true\n*\n* bool = isRegExp( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar objectKeys = require( '@stdlib/utils/keys' );\nvar getPrototypeOf = require( '@stdlib/utils/get-prototype-of' );\nvar isDate = require( './../../is-date-object' );\nvar isError = require( './../../is-error' );\nvar isBuffer = require( './../../is-buffer' );\nvar isRegExp = require( './../../is-regexp' );\n\n\n// MAIN //\n\n/**\n* Tests for deep equality between two values.\n*\n* @param {*} a - first comparison value\n* @param {*} b - second comparison value\n* @returns {boolean} boolean indicating if `a` is deep equal to `b`\n*\n* @example\n* var bool = deepEqual( [ 1, 2, 3 ], [ 1, 2, 3 ] );\n* // returns true\n*\n* @example\n* var bool = deepEqual( [ 1, 2, 3 ], [ 1, 2, '3' ] );\n* // returns false\n*\n* @example\n* var bool = deepEqual( { 'a': 2 }, { 'a': [ 2 ] } );\n* // returns false\n*\n* @example\n* var bool = deepEqual( [], {} );\n* // returns false\n*\n* @example\n* var bool = deepEqual( null, null );\n* // returns true\n*/\nfunction deepEqual( a, b ) {\n\tvar aKeys;\n\tvar bKeys;\n\tvar typeA;\n\tvar typeB;\n\tvar key;\n\tvar i;\n\n\ttypeA = typeof a;\n\ttypeB = typeof b;\n\tif ( a === null || typeA !== 'object' ) {\n\t\tif ( b === null || typeB !== 'object' ) {\n\t\t\treturn a === b;\n\t\t}\n\t\treturn false;\n\t}\n\t// Case: `a` is of type 'object'\n\tif ( typeB !== 'object' ) {\n\t\treturn false;\n\t}\n\tif ( getPrototypeOf( a ) !== getPrototypeOf( b ) ) {\n\t\treturn false;\n\t}\n\tif ( isDate( a ) ) {\n\t\treturn a.getTime() === b.getTime();\n\t}\n\tif ( isRegExp( a ) ) {\n\t\treturn a.source === b.source && a.flags === b.flags;\n\t}\n\tif ( isError( a ) ) {\n\t\tif ( a.message !== b.message || a.name !== b.name ) {\n\t\t\treturn false;\n\t\t}\n\t}\n\tif ( isBuffer( a ) ) {\n\t\tif ( a.length !== b.length ) {\n\t\t\treturn false;\n\t\t}\n\t\tfor ( i = 0; i < a.length; i++ ) {\n\t\t\tif ( a[ i ] !== b[ i ] ) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t\treturn true;\n\t}\n\taKeys = objectKeys( a );\n\tbKeys = objectKeys( b );\n\tif ( aKeys.length !== bKeys.length ) {\n\t\treturn false;\n\t}\n\taKeys.sort();\n\tbKeys.sort();\n\n\t// Cheap key test:\n\tfor ( i = 0; i < aKeys.length; i++ ) {\n\t\tif ( aKeys[ i ] !== bKeys[ i ] ) {\n\t\t\treturn false;\n\t\t}\n\t}\n\t// Possibly expensive deep equality test for each corresponding key:\n\tfor ( i = 0; i < aKeys.length; i++ ) {\n\t\tkey = aKeys[ i ];\n\t\tif ( !deepEqual( a[ key ], b[ key ] ) ) {\n\t\t\treturn false;\n\t\t}\n\t}\n\treturn typeA === typeB;\n}\n\n\n// EXPORTS //\n\nmodule.exports = deepEqual;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for deep equality between two values.\n*\n* @module @stdlib/assert/deep-equal\n*\n* @example\n* var deepEqual = require( '@stdlib/assert/deep-equal' );\n*\n* var bool = deepEqual( [ 1, 2, 3 ], [ 1, 2, 3 ] );\n* // returns true\n*\n* bool = deepEqual( [ 1, 2, 3 ], [ 1, 2, '3' ] );\n* // returns false\n*\n* bool = deepEqual( { 'a': 2 }, { 'a': [ 2 ] } );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isArray = require( './../../is-array' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is an object; e.g., `{}`.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is an object\n*\n* @example\n* var bool = isObject( {} );\n* // returns true\n*\n* @example\n* var bool = isObject( null );\n* // returns false\n*/\nfunction isObject( value ) {\n\treturn (\n\t\ttypeof value === 'object' &&\n\t\tvalue !== null &&\n\t\t!isArray( value )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isObject;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an object.\n*\n* @module @stdlib/assert/is-object\n*\n* @example\n* var isObject = require( '@stdlib/assert/is-object' );\n*\n* var bool = isObject( {} );\n* // returns true\n*\n* bool = isObject( true );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar typeOf = require( '@stdlib/utils/type-of' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a function.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a function\n*\n* @example\n* function beep() {\n* return 'beep';\n* }\n*\n* var bool = isFunction( beep );\n* // returns true\n*/\nfunction isFunction( value ) {\n\t// Note: cannot use `typeof` directly, as various browser engines incorrectly return `'function'` when operating on non-function objects, such as regular expressions and NodeLists.\n\treturn ( typeOf( value ) === 'function' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isFunction;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a function.\n*\n* @module @stdlib/assert/is-function\n*\n* @example\n* var isFunction = require( '@stdlib/assert/is-function' );\n*\n* function beep() {\n* return 'beep';\n* }\n*\n* var bool = isFunction( beep );\n* // returns true\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// FUNCTIONS //\n\nvar has = Object.prototype.hasOwnProperty;\n\n\n// MAIN //\n\n/**\n* Tests if an object has a specified property.\n*\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object has a specified property\n*\n* @example\n* var beep = {\n* 'boop': true\n* };\n*\n* var bool = hasOwnProp( beep, 'boop' );\n* // returns true\n*\n* @example\n* var beep = {\n* 'boop': true\n* };\n*\n* var bool = hasOwnProp( beep, 'bap' );\n* // returns false\n*/\nfunction hasOwnProp( value, property ) {\n\tif (\n\t\tvalue === void 0 ||\n\t\tvalue === null\n\t) {\n\t\treturn false;\n\t}\n\treturn has.call( value, property );\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasOwnProp;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object has a specified property.\n*\n* @module @stdlib/assert/has-own-property\n*\n* @example\n* var hasOwnProp = require( '@stdlib/assert/has-own-property' );\n*\n* var beep = {\n* 'boop': true\n* };\n*\n* var bool = hasOwnProp( beep, 'boop' );\n* // returns true\n*\n* bool = hasOwnProp( beep, 'bop' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isObject = require( './../../is-object' );\nvar isFunction = require( './../../is-function' );\nvar getPrototypeOf = require( '@stdlib/utils/get-prototype-of' );\nvar hasOwnProp = require( './../../has-own-property' );\nvar nativeClass = require( '@stdlib/utils/native-class' );\n\n\n// VARIABLES //\n\nvar objectPrototype = Object.prototype;\n\n\n// FUNCTIONS //\n\n/**\n* Tests that an object only has own properties.\n*\n* @private\n* @param {Object} obj - value to test\n* @returns {boolean} boolean indicating if an object only has own properties\n*/\nfunction ownProps( obj ) {\n\tvar key;\n\n\t// NOTE: possibility of perf boost if key enumeration order is known (see http://stackoverflow.com/questions/18531624/isplainobject-thing).\n\tfor ( key in obj ) {\n\t\tif ( !hasOwnProp( obj, key ) ) {\n\t\t\treturn false;\n\t\t}\n\t}\n\treturn true;\n}\n\n\n// MAIN //\n\n/**\n* Tests if a value is a plain object.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a plain object\n*\n* @example\n* var bool = isPlainObject( {} );\n* // returns true\n*\n* @example\n* var bool = isPlainObject( null );\n* // returns false\n*/\nfunction isPlainObject( value ) {\n\tvar proto;\n\n\t// Screen for obvious non-objects...\n\tif ( !isObject( value ) ) {\n\t\treturn false;\n\t}\n\t// Objects with no prototype (e.g., `Object.create( null )`) are plain...\n\tproto = getPrototypeOf( value );\n\tif ( !proto ) {\n\t\treturn true;\n\t}\n\t// Objects having a prototype are plain if and only if they are constructed with a global `Object` function and the prototype points to the prototype of a plain object...\n\treturn (\n\t\t// Cannot have own `constructor` property:\n\t\t!hasOwnProp( value, 'constructor' ) &&\n\n\t\t// Prototype `constructor` property must be a function (see also https://bugs.jquery.com/ticket/9897 and http://stackoverflow.com/questions/18531624/isplainobject-thing):\n\t\thasOwnProp( proto, 'constructor' ) &&\n\t\tisFunction( proto.constructor ) &&\n\t\tnativeClass( proto.constructor ) === '[object Function]' &&\n\n\t\t// Test for object-specific method:\n\t\thasOwnProp( proto, 'isPrototypeOf' ) &&\n\t\tisFunction( proto.isPrototypeOf ) &&\n\n\t\t(\n\t\t\t// Test if the prototype matches the global `Object` prototype (same realm):\n\t\t\tproto === objectPrototype ||\n\n\t\t\t// Test that all properties are own properties (cross-realm; *most* likely a plain object):\n\t\t\townProps( value )\n\t\t)\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isPlainObject;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a plain object.\n*\n* @module @stdlib/assert/is-plain-object\n*\n* @example\n* var isPlainObject = require( '@stdlib/assert/is-plain-object' );\n*\n* var bool = isPlainObject( {} );\n* // returns true\n*\n* bool = isPlainObject( null );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\nvar isObject = require( './../../is-plain-object' );\nvar hasOwnProp = require( './../../has-own-property' );\nvar format = require( '@stdlib/string/format' );\n\n\n// MAIN //\n\n/**\n* Validates function options.\n*\n* @private\n* @param {Object} opts - destination for function options\n* @param {Options} options - function options\n* @param {string} [options.sep] - key path separator\n* @returns {(Error|null)} error or null\n*\n* @example\n* var opts = {};\n* var options = {\n* 'sep': '/'\n* };\n* var err = validate( opts, options );\n* if ( err ) {\n* throw err;\n* }\n*/\nfunction validate( opts, options ) {\n\tif ( !isObject( options ) ) {\n\t\treturn new TypeError( format( 'invalid argument. Options argument must be an object. Value: `%s`.', options ) );\n\t}\n\tif ( hasOwnProp( options, 'sep' ) ) {\n\t\topts.sep = options.sep;\n\t\tif ( !isString( opts.sep ) ) {\n\t\t\treturn new TypeError( format( 'invalid option. `%s` option must be a string. Option: `%s`.', 'sep', opts.sep ) );\n\t\t}\n\t}\n\treturn null;\n}\n\n\n// EXPORTS //\n\nmodule.exports = validate;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2023 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\n/**\n* Returns default options.\n*\n* @private\n* @returns {Object} default options\n*/\nfunction defaults() {\n\treturn {\n\t\t'sep': '.'\n\t};\n}\n\n\n// EXPORTS //\n\nmodule.exports = defaults;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar hasOwnProp = require( './../../has-own-property' );\n\n\n// MAIN //\n\n/**\n* Returns a boolean indicating whether an object has a nested property.\n*\n* @private\n* @param {*} v - value to test\n* @param {Array} props - list of properties defining a key path\n* @returns {boolean} boolean indicating whether an object has a nested property\n*/\nfunction deepHasOwnProp( v, props ) {\n\tvar len = props.length;\n\tvar i;\n\tif ( len === 0 ) {\n\t\treturn false;\n\t}\n\tfor ( i = 0; i < len; i++ ) {\n\t\tif ( hasOwnProp( v, props[ i ] ) ) {\n\t\t\tv = v[ props[ i ] ];\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t}\n\treturn true;\n}\n\n\n// EXPORTS //\n\nmodule.exports = deepHasOwnProp;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\nvar isArray = require( './../../is-array' );\nvar format = require( '@stdlib/string/format' );\nvar validate = require( './validate.js' );\nvar defaults = require( './defaults.js' );\nvar has = require( './has.js' );\n\n\n// MAIN //\n\n/**\n* Tests whether an object contains a nested key path.\n*\n* @param {*} value - value to test\n* @param {(string|Array)} path - key path\n* @param {Options} [options] - function options\n* @param {string} [options.sep='.'] - key path separator\n* @throws {TypeError} second argument must be a string or key array\n* @throws {TypeError} options argument must be an object\n* @throws {TypeError} must provide valid options\n* @returns {boolean} boolean indicating whether an object has a nested property\n*\n* @example\n* var obj = { 'a': { 'b': { 'c': 'd' } } };\n* var bool = deepHasOwnProp( obj, 'a.b.c' );\n* // returns true\n*\n* @example\n* var arr = [\n* {\n* 'a': [\n* {\n* 'b': [\n* { 'c': 'd' },\n* { 'e': 'f' }\n* ]\n* }\n* ]\n* }\n* ];\n* var bool = deepHasOwnProp( arr, '0.a.0.b.0.c' );\n* // returns true\n*\n* @example\n* var obj = { 'a': { 'b': { 'c': 'd' } } };\n* var bool = deepHasOwnProp( obj, [ 'a', 'b', 'c' ] );\n* // returns true\n*\n* @example\n* var obj = { 'a': { 'b': { 'c': 'd' } } };\n* var bool = deepHasOwnProp( obj, 'a/b/c', {\n* 'sep': '/'\n* });\n* // returns true\n*/\nfunction deepHasOwnProp( value, path, options ) {\n\tvar isStr;\n\tvar props;\n\tvar opts;\n\tvar err;\n\n\tisStr = isString( path );\n\tif ( !isStr && !isArray( path ) ) {\n\t\tthrow new TypeError( format( 'invalid argument. Key path must be a string or a key array. Value: `%s`.', path ) );\n\t}\n\topts = defaults();\n\tif ( arguments.length > 2 ) {\n\t\terr = validate( opts, options );\n\t\tif ( err ) {\n\t\t\tthrow err;\n\t\t}\n\t}\n\tif ( value === void 0 || value === null ) {\n\t\treturn false;\n\t}\n\tif ( isStr ) {\n\t\tprops = path.split( opts.sep );\n\t} else {\n\t\tprops = path;\n\t}\n\treturn has( value, props );\n}\n\n\n// EXPORTS //\n\nmodule.exports = deepHasOwnProp;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\nvar isArray = require( './../../is-array' );\nvar format = require( '@stdlib/string/format' );\nvar validate = require( './validate.js' );\nvar defaults = require( './defaults.js' );\nvar has = require( './has.js' );\n\n\n// MAIN //\n\n/**\n* Returns a function which tests whether an object has a nested key path.\n*\n* @param {(string|Array)} path - key path\n* @param {Options} [options] - function options\n* @param {string} [options.sep='.'] - key path separator\n* @throws {TypeError} first argument must be a string or key array\n* @throws {TypeError} options argument must be an object\n* @throws {TypeError} must provide valid options\n* @returns {Function} function which tests whether an object has a nested key path\n*\n* @example\n* var has = factory( 'a/b/c', {\n* 'sep': '/'\n* });\n*/\nfunction factory( path, options ) {\n\tvar isStr;\n\tvar props;\n\tvar opts;\n\tvar err;\n\tisStr = isString( path );\n\tif ( !isStr && !isArray( path ) ) {\n\t\tthrow new TypeError( format( 'invalid argument. Key path must be a string or a key array. Value: `%s`.', path ) );\n\t}\n\topts = defaults();\n\tif ( arguments.length > 1 ) {\n\t\terr = validate( opts, options );\n\t\tif ( err ) {\n\t\t\tthrow err;\n\t\t}\n\t}\n\tif ( isStr ) {\n\t\tprops = path.split( opts.sep );\n\t} else {\n\t\tprops = path;\n\t}\n\treturn deepHasOwnProp;\n\n\t/**\n\t* Returns a boolean indicating whether an object has a nested key path.\n\t*\n\t* @private\n\t* @param {*} value - value to test\n\t* @returns {boolean} boolean indicating whether an object has a nested property\n\t*\n\t* @example\n\t* var obj = { 'a': { 'b': { 'c': 'd' } } };\n\t* var bool = deepHasOwnProp( obj );\n\t*/\n\tfunction deepHasOwnProp( value ) {\n\t\tif ( value === void 0 || value === null ) {\n\t\t\treturn false;\n\t\t}\n\t\treturn has( value, props );\n\t}\n}\n\n\n// EXPORTS //\n\nmodule.exports = factory;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object contains a nested key path.\n*\n* @module @stdlib/assert/deep-has-own-property\n*\n* @example\n* var deepHasOwnProp = require( '@stdlib/assert/deep-has-own-property' );\n*\n* var obj = {\n* 'a': {\n* 'b': {\n* 'c': 'd'\n* }\n* }\n* };\n*\n* var bool = deepHasOwnProp( obj, 'a.b.c' );\n* // returns true\n*\n* bool = deepHasOwnProp( obj, [ 'a', 'b', 'c' ] );\n* // returns true\n*\n* @example\n* var factory = require( '@stdlib/assert/deep-has-own-property' ).factory;\n*\n* var has = factory( 'a/b/c', {\n* 'sep': '/'\n* });\n*\n* var obj = {\n* 'a': {\n* 'b': {\n* 'c': 'd'\n* }\n* }\n* };\n*\n* var bool = has( obj );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar factory = require( './factory.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'factory', factory );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\nvar isObject = require( './../../is-plain-object' );\nvar hasOwnProp = require( './../../has-own-property' );\nvar format = require( '@stdlib/string/format' );\n\n\n// MAIN //\n\n/**\n* Validates function options.\n*\n* @private\n* @param {Object} opts - destination for function options\n* @param {Options} options - function options\n* @param {string} [options.sep] - key path separator\n* @returns {(Error|null)} error or null\n*\n* @example\n* var opts = {};\n* var options = {\n* 'sep': '/'\n* };\n* var err = validate( opts, options );\n* if ( err ) {\n* throw err;\n* }\n*/\nfunction validate( opts, options ) {\n\tif ( !isObject( options ) ) {\n\t\treturn new TypeError( format( 'invalid argument. Options argument must be an object. Value: `%s`.', options ) );\n\t}\n\tif ( hasOwnProp( options, 'sep' ) ) {\n\t\topts.sep = options.sep;\n\t\tif ( !isString( opts.sep ) ) {\n\t\t\treturn new TypeError( format( 'invalid option. `%s` option must be a string. Option: `%s`.', 'sep', opts.sep ) );\n\t\t}\n\t}\n\treturn null;\n}\n\n\n// EXPORTS //\n\nmodule.exports = validate;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2023 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\n/**\n* Returns default options.\n*\n* @private\n* @returns {Object} default options\n*/\nfunction defaults() {\n\treturn {\n\t\t'sep': '.'\n\t};\n}\n\n\n// EXPORTS //\n\nmodule.exports = defaults;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\n/**\n* Tests if an object has a specified property, either own or inherited.\n*\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object has a specified property\n*\n* @example\n* var beep = {\n* 'boop': true\n* };\n*\n* var bool = hasProp( beep, 'boop' );\n* // returns true\n*\n* @example\n* var beep = {\n* 'boop': true\n* };\n*\n* var bool = hasProp( beep, 'bap' );\n* // returns false\n*/\nfunction hasProp( value, property ) {\n\tif ( value === void 0 || value === null ) {\n\t\treturn false;\n\t}\n\tif ( typeof property === 'symbol' ) {\n\t\treturn property in Object( value );\n\t}\n\treturn ( String( property ) in Object( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasProp;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object has a specified property, either own or inherited.\n*\n* @module @stdlib/assert/has-property\n*\n* @example\n* var hasProp = require( '@stdlib/assert/has-property' );\n*\n* var beep = {\n* 'boop': true\n* };\n*\n* var bool = hasProp( beep, 'boop' );\n* // returns true\n*\n* bool = hasProp( beep, 'bop' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar hasProp = require( './../../has-property' );\n\n\n// MAIN //\n\n/**\n* Returns a boolean indicating whether an object has a nested property.\n*\n* @private\n* @param {*} v - value to test\n* @param {Array} props - list of properties defining a key path\n* @returns {boolean} boolean indicating whether an object has a nested property\n*/\nfunction deepHasProp( v, props ) {\n\tvar len = props.length;\n\tvar i;\n\tif ( len === 0 ) {\n\t\treturn false;\n\t}\n\tfor ( i = 0; i < len; i++ ) {\n\t\tif ( hasProp( v, props[i] ) ) {\n\t\t\tv = v[ props[ i ] ];\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t}\n\treturn true;\n}\n\n\n// EXPORTS //\n\nmodule.exports = deepHasProp;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\nvar isArray = require( './../../is-array' );\nvar format = require( '@stdlib/string/format' );\nvar validate = require( './validate.js' );\nvar defaults = require( './defaults.js' );\nvar has = require( './has.js' );\n\n\n// MAIN //\n\n/**\n* Tests whether an object contains a nested key path, either own or inherited.\n*\n* @param {*} value - value to test\n* @param {(string|Array)} path - key path\n* @param {Options} [options] - function options\n* @param {string} [options.sep='.'] - key path separator\n* @throws {TypeError} second argument must be a string or key array\n* @throws {TypeError} options argument must be an object\n* @throws {TypeError} must provide valid options\n* @returns {boolean} boolean indicating whether an object has a nested property\n*\n* @example\n* function Foo() {\n* return this;\n* }\n* Foo.prototype.b = {\n* 'c': 'd'\n* };\n*\n* var obj = {\n* 'a': new Foo()\n* };\n*\n* var bool = deepHasProp( obj, 'a.b.c' );\n* // returns true\n*\n* @example\n* var arr = [\n* {\n* 'a': [\n* {\n* 'b': [\n* { 'c': 'd' },\n* { 'e': 'f' }\n* ]\n* }\n* ]\n* }\n* ];\n* var bool = deepHasProp( arr, '0.a.0.b.0.c' );\n* // returns true\n*\n* @example\n* var obj = { 'a': { 'b': { 'c': 'd' } } };\n* var bool = deepHasProp( obj, [ 'a', 'b', 'c' ] );\n* // returns true\n*\n* @example\n* var obj = { 'a': { 'b': { 'c': 'd' } } };\n* var bool = deepHasProp( obj, 'a/b/c', {\n* 'sep': '/'\n* });\n* // returns true\n*/\nfunction deepHasProp( value, path, options ) {\n\tvar isStr;\n\tvar props;\n\tvar opts;\n\tvar err;\n\n\tisStr = isString( path );\n\tif ( !isStr && !isArray( path ) ) {\n\t\tthrow new TypeError( format( 'invalid argument. Key path must be a string or a key array. Value: `%s`.', path ) );\n\t}\n\topts = defaults();\n\tif ( arguments.length > 2 ) {\n\t\terr = validate( opts, options );\n\t\tif ( err ) {\n\t\t\tthrow err;\n\t\t}\n\t}\n\tif ( value === void 0 || value === null ) {\n\t\treturn false;\n\t}\n\tif ( isStr ) {\n\t\tprops = path.split( opts.sep );\n\t} else {\n\t\tprops = path;\n\t}\n\treturn has( value, props );\n}\n\n\n// EXPORTS //\n\nmodule.exports = deepHasProp;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\nvar isArray = require( './../../is-array' );\nvar format = require( '@stdlib/string/format' );\nvar validate = require( './validate.js' );\nvar defaults = require( './defaults.js' );\nvar has = require( './has.js' );\n\n\n// MAIN //\n\n/**\n* Returns a function which tests whether an object has a nested key path, either own or inherited.\n*\n* @param {(string|Array)} path - key path\n* @param {Options} [options] - function options\n* @param {string} [options.sep='.'] - key path separator\n* @throws {TypeError} first argument must be a string or key array\n* @throws {TypeError} options argument must be an object\n* @throws {TypeError} must provide valid options\n* @returns {Function} function which tests whether an object has a nested key path\n*\n* @example\n* var has = factory( 'a/b/c', {\n* 'sep': '/'\n* });\n*/\nfunction factory( path, options ) {\n\tvar isStr;\n\tvar props;\n\tvar opts;\n\tvar err;\n\tisStr = isString( path );\n\tif ( !isStr && !isArray( path ) ) {\n\t\tthrow new TypeError( format( 'invalid argument. Key path must be a string or a key array. Value: `%s`.', path ) );\n\t}\n\topts = defaults();\n\tif ( arguments.length > 1 ) {\n\t\terr = validate( opts, options );\n\t\tif ( err ) {\n\t\t\tthrow err;\n\t\t}\n\t}\n\tif ( isStr ) {\n\t\tprops = path.split( opts.sep );\n\t} else {\n\t\tprops = path;\n\t}\n\treturn deepHasProp;\n\n\t/**\n\t* Returns a boolean indicating whether an object has a nested key path, either own or inherited.\n\t*\n\t* @private\n\t* @param {*} value - value to test\n\t* @returns {boolean} boolean indicating whether an object has a nested property\n\t*\n\t* @example\n\t* var obj = { 'a': { 'b': { 'c': 'd' } } };\n\t* var bool = deepHasProp( obj );\n\t*/\n\tfunction deepHasProp( value ) {\n\t\tif ( value === void 0 || value === null ) {\n\t\t\treturn false;\n\t\t}\n\t\treturn has( value, props );\n\t}\n}\n\n\n// EXPORTS //\n\nmodule.exports = factory;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object contains a nested key path, either own or inherited.\n*\n* @module @stdlib/assert/deep-has-property\n*\n* @example\n* var deepHasProp = require( '@stdlib/assert/deep-has-property' );\n*\n* function Foo() {\n* return this;\n* }\n* Foo.prototype.b = {\n* 'c': 'd'\n* };\n*\n* var obj = {\n* 'a': new Foo()\n* };\n*\n* var bool = deepHasProp( obj, 'a.b.c' );\n* // returns true\n*\n* bool = deepHasProp( obj, [ 'a', 'b', 'c' ] );\n* // returns true\n*\n* @example\n* var factory = require( '@stdlib/assert/deep-has-property' ).factory;\n*\n* var has = factory( 'a/b/c', {\n* 'sep': '/'\n* });\n*\n* function Foo() {\n* return this;\n* }\n* Foo.prototype.b = {\n* 'c': 'd'\n* };\n*\n* var obj = {\n* 'a': new Foo()\n* };\n*\n* var bool = has( obj );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar factory = require( './factory.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'factory', factory );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar nativeClass = require( '@stdlib/utils/native-class' );\n\n\n// VARIABLES //\n\nvar hasArrayBuffer = ( typeof ArrayBuffer === 'function' ); // eslint-disable-line stdlib/require-globals\n\n\n// MAIN //\n\n/**\n* Tests if a value is an ArrayBuffer.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is an ArrayBuffer\n*\n* @example\n* var ArrayBuffer = require( '@stdlib/array/buffer' );\n*\n* var bool = isArrayBuffer( new ArrayBuffer( 10 ) );\n* // returns true\n*\n* @example\n* var bool = isArrayBuffer( [] );\n* // returns false\n*/\nfunction isArrayBuffer( value ) {\n\treturn (\n\t\t( hasArrayBuffer && value instanceof ArrayBuffer ) || // eslint-disable-line stdlib/require-globals\n\t\tnativeClass( value ) === '[object ArrayBuffer]'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isArrayBuffer;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an ArrayBuffer.\n*\n* @module @stdlib/assert/is-arraybuffer\n*\n* @example\n* var ArrayBuffer = require( '@stdlib/array/buffer' );\n* var isArrayBuffer = require( '@stdlib/assert/is-arraybuffer' );\n*\n* var bool = isArrayBuffer( new ArrayBuffer( 10 ) );\n* // returns true\n*\n* bool = isArrayBuffer( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\nvar main = ( typeof ArrayBuffer === 'function' ) ? ArrayBuffer : null; // eslint-disable-line stdlib/require-globals\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isArrayBuffer = require( './../../is-arraybuffer' );\nvar Float64Array = require( '@stdlib/array/float64' );\nvar GlobalArrayBuffer = require( './arraybuffer.js' );\n\n\n// MAIN //\n\n/**\n* Tests for native `ArrayBuffer` support.\n*\n* @returns {boolean} boolean indicating if an environment has `ArrayBuffer` support\n*\n* @example\n* var bool = hasArrayBufferSupport();\n* // returns \n*/\nfunction hasArrayBufferSupport() {\n\tvar bool;\n\tvar view;\n\tvar buf;\n\n\tif ( typeof GlobalArrayBuffer !== 'function' ) {\n\t\treturn false;\n\t}\n\t// Test basic support...\n\ttry {\n\t\tbuf = new GlobalArrayBuffer( 16 );\n\t\tbool = ( isArrayBuffer( buf ) && typeof GlobalArrayBuffer.isView === 'function' );\n\t\tif ( bool ) {\n\t\t\tview = new Float64Array( buf );\n\t\t\tview[ 0 ] = -3.14;\n\t\t\tview[ 1 ] = NaN;\n\t\t\tbool = (\n\t\t\t\tbool &&\n\t\t\t\tGlobalArrayBuffer.isView( view ) &&\n\t\t\t\tbuf.byteLength === 16 &&\n\t\t\t\tview[ 0 ] === -3.14 &&\n\t\t\t\tview[ 1 ] !== view[ 1 ]\n\t\t\t);\n\t\t}\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\tbool = false;\n\t}\n\treturn bool;\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasArrayBufferSupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `ArrayBuffer` support.\n*\n* @module @stdlib/assert/has-arraybuffer-support\n*\n* @example\n* var hasArrayBufferSupport = require( '@stdlib/assert/has-arraybuffer-support' );\n*\n* var bool = hasArrayBufferSupport();\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar evil = require( '@stdlib/utils/eval' );\n\n\n// MAIN //\n\n/**\n* Tests for native arrow function support.\n*\n* @returns {boolean} boolean indicating if an environment has native arrow function support\n*\n* @example\n* var bool = hasArrowFunctionSupport();\n* // returns \n*/\nfunction hasArrowFunctionSupport() {\n\tvar bool;\n\ttry {\n\t\tevil( '\"use strict\"; (() => {})' );\n\t\tbool = true;\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\tbool = false;\n\t}\n\treturn bool;\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasArrowFunctionSupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native arrow function support.\n*\n* @module @stdlib/assert/has-arrow-function-support\n*\n* @example\n* var hasArrowFunctionSupport = require( '@stdlib/assert/has-arrow-function-support' );\n*\n* var bool = hasArrowFunctionSupport();\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar evil = require( '@stdlib/utils/eval' );\n\n\n// MAIN //\n\n/**\n* Tests for native `async/await` support.\n*\n* @returns {boolean} boolean indicating if an environment has native `async`/`await` support\n*\n* @example\n* var bool = hasAsyncAwaitSupport();\n* if ( bool ) {\n* console.log( 'Environment has native async/await support.' );\n* } else {\n* console.log( 'Environment lacks native async/await support.' );\n* }\n*/\nfunction hasAsyncAwaitSupport() {\n\tvar bool;\n\ttry {\n\t\tevil( '\"use strict\"; async () => {}' );\n\t\tbool = true;\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\tbool = false;\n\t}\n\treturn bool;\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasAsyncAwaitSupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `async`/`await` support.\n*\n* @module @stdlib/assert/has-async-await-support\n*\n* @example\n* var hasAsyncAwaitSupport = require( '@stdlib/assert/has-async-await-support' );\n*\n* var bool = hasAsyncAwaitSupport();\n* if ( bool ) {\n* console.log( 'Environment has native async/await support.' );\n* } else {\n* console.log( 'Environment lacks native async/await support.' );\n* }\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n/* eslint-disable stdlib/require-globals */\n\n'use strict';\n\n// MODULES //\n\nvar hasOwnProp = require( './../../has-own-property' );\n\n\n// MAIN //\n\n/**\n* Tests for native `Symbol.asyncIterator` support.\n*\n* @returns {boolean} boolean indicating if an environment has `Symbol.asyncIterator` support\n*\n* @example\n* var bool = hasAsyncIteratorSymbolSupport();\n* // returns \n*/\nfunction hasAsyncIteratorSymbolSupport() { // eslint-disable-line id-length\n\treturn (\n\t\ttypeof Symbol === 'function' &&\n\t\ttypeof Symbol( 'foo' ) === 'symbol' &&\n\t\thasOwnProp( Symbol, 'asyncIterator' ) &&\n\t\ttypeof Symbol.asyncIterator === 'symbol'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasAsyncIteratorSymbolSupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `Symbol.asyncIterator` support.\n*\n* @module @stdlib/assert/has-async-iterator-symbol-support\n*\n* @example\n* var hasAsyncIteratorSymbolSupport = require( '@stdlib/assert/has-async-iterator-symbol-support' );\n*\n* var bool = hasAsyncIteratorSymbolSupport();\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar getGlobal = require( '@stdlib/utils/global' );\n\n\n// VARIABLES //\n\nvar Global = getGlobal();\n\n\n// MAIN //\n\n/**\n* Tests for native `BigInt` support.\n*\n* @returns {boolean} boolean indicating if an environment has `BigInt` support\n*\n* @example\n* var bool = hasBigIntSupport();\n* // returns \n*/\nfunction hasBigIntSupport() {\n\treturn (\n\t\ttypeof Global.BigInt === 'function' &&\n\t\ttypeof BigInt === 'function' && // eslint-disable-line stdlib/require-globals\n\t\ttypeof Global.BigInt( '1' ) === 'bigint' &&\n\t\ttypeof BigInt( '1' ) === 'bigint' // eslint-disable-line stdlib/require-globals, no-undef\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasBigIntSupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `BigInt` support.\n*\n* @module @stdlib/assert/has-bigint-support\n*\n* @example\n* var hasBigIntSupport = require( '@stdlib/assert/has-bigint-support' );\n*\n* var bool = hasBigIntSupport();\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar nativeClass = require( '@stdlib/utils/native-class' );\n\n\n// VARIABLES //\n\nvar hasBigInt64Array = ( typeof BigInt64Array === 'function' ); // eslint-disable-line stdlib/require-globals\n\n\n// MAIN //\n\n/**\n* Tests if a value is a BigInt64Array.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether the value is a BigInt64Array\n*\n* @example\n* var bool = isBigInt64Array( new BigInt64Array( 2 ) );\n* // returns true\n*\n* @example\n* var bool = isBigInt64Array( [] );\n* // returns false\n*\n* @example\n* var bool = isBigInt64Array( 123 );\n* // returns false\n*/\nfunction isBigInt64Array( value ) {\n\treturn (\n\t\t( hasBigInt64Array && value instanceof BigInt64Array ) || // eslint-disable-line stdlib/require-globals, no-undef\n\t\tnativeClass( value ) === '[object BigInt64Array]'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isBigInt64Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a BigInt64Array.\n*\n* @module @stdlib/assert/is-bigint64array\n*\n* @example\n* var isBigInt64Array = require( '@stdlib/assert/is-bigint64array' );\n*\n* var value = new BigInt64Array( 2 );\n* var bool = isBigInt64Array( value );\n* // returns true\n*\n* bool = isBigInt64Array( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isBigInt64Array = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = isBigInt64Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Tests if a value is a BigInt primitive.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a BigInt primitive\n*/\nfunction isBigInt( value ) {\n\treturn ( typeof value === 'bigint' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isBigInt;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\n/**\n* Attempts to call a `BigInt` method.\n*\n* @private\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if able to call a `BigInt` method\n*/\nfunction test( value ) {\n\ttry {\n\t\treturn (\n\t\t\t// Objects created via `Object.create( null )` have no `valueOf()` method:\n\t\t\ttypeof value.valueOf() === 'bigint'\n\t\t);\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\treturn false;\n\t}\n}\n\n\n// EXPORTS //\n\nmodule.exports = test;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar nativeClass = require( '@stdlib/utils/native-class' );\nvar test = require( './try2valueof.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a BigInt object.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a BigInt object\n*/\nfunction BigInt( value ) {\n\treturn (\n\t\ttypeof value === 'object' &&\n\t\tnativeClass( value ) === '[object BigInt]' &&\n\t\ttest( value )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = BigInt;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a BigInt.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a BigInt\n*/\nfunction isBigInt( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isBigInt;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar isSymbol = require( './generic.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( isSymbol, 'isPrimitive', isPrimitive );\nsetReadOnly( isSymbol, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = isSymbol;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar constantFunction = require( '@stdlib/utils/constant-function' );\n\n\n// MAIN //\n\nvar isBigInt = constantFunction( false );\nvar isPrimitive = constantFunction( false );\nvar isObject = constantFunction( false );\n\nsetReadOnly( isBigInt, 'isPrimitive', isPrimitive );\nsetReadOnly( isBigInt, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = isBigInt;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a BigInt.\n*\n* @module @stdlib/assert/is-bigint\n*\n* @example\n* var BigInt = require( '@stdlib/bigint/ctor' );\n* var isBigInt = require( '@stdlib/assert/is-bigint' );\n*\n* var bool = isBigInt( BigInt( '1' ) );\n* // returns true\n*\n* bool = isBigInt( Object( BigInt( '1' ) ) );\n* // returns true\n*\n* bool = isBigInt( {} );\n* // returns false\n*\n* @example\n* var isBigInt = require( '@stdlib/assert/is-bigint' ).isPrimitive;\n*\n* var bool = isBigInt( BigInt( '1' ) );\n* // returns true\n*\n* bool = isBigInt( Object( BigInt( '1' ) ) );\n* // returns false\n*\n* bool = isBigInt( {} );\n* // returns false\n*\n* @example\n* var isBigIntObject = require( '@stdlib/assert/is-bigint' ).isObject;\n*\n* var bool = isBigIntObject( BigInt( '1' ) );\n* // returns false\n*\n* bool = isBigIntObject( Object( BigInt( '1' ) ) );\n* // returns true\n*\n* bool = isBigIntObject( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar hasBigInts = require( './../../has-bigint-support' );\nvar main = require( './main.js' );\nvar polyfill = require( './polyfill.js' );\n\n\n// MAIN //\n\nvar isBigInt;\nif ( hasBigInts() ) {\n\tisBigInt = main;\n} else {\n\tisBigInt = polyfill;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isBigInt;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\nvar main = ( typeof BigInt64Array === 'function' ) ? BigInt64Array : null; // eslint-disable-line stdlib/require-globals, no-undef\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isBigInt64Array = require( './../../is-bigint64array' );\nvar isBigInt = require( './../../is-bigint' );\nvar GlobalBigInt64Array = require( './bigint64array.js' );\n\n\n// VARIABLES //\n\nvar MAX_FLOAT64_INTEGER = '9007199254740991'; // 2^53-1\nvar MAX_FLOAT64_INTEGER_P2 = '9007199254740993';\n\n\n// MAIN //\n\n/**\n* Tests for native `BigInt64Array` support.\n*\n* @returns {boolean} boolean indicating if an environment has `BigInt64Array` support\n*\n* @example\n* var bool = hasBigInt64ArraySupport();\n* // returns \n*/\nfunction hasBigInt64ArraySupport() {\n\tvar arr;\n\tif ( typeof GlobalBigInt64Array !== 'function' ) {\n\t\treturn false;\n\t}\n\t// Test basic support...\n\ttry {\n\t\tarr = new GlobalBigInt64Array([\n\t\t\tMAX_FLOAT64_INTEGER,\n\t\t\tMAX_FLOAT64_INTEGER_P2\n\t\t]);\n\t\treturn (\n\t\t\tisBigInt64Array( arr ) &&\n\t\t\tisBigInt( arr[ 0 ] ) &&\n\t\t\tarr[ 0 ].toString() === MAX_FLOAT64_INTEGER &&\n\t\t\tisBigInt( arr[ 1 ] ) &&\n\t\t\tarr[ 1 ].toString() === MAX_FLOAT64_INTEGER_P2\n\t\t);\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\treturn false;\n\t}\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasBigInt64ArraySupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `BigInt64Array` support.\n*\n* @module @stdlib/assert/has-bigint64array-support\n*\n* @example\n* var hasBigInt64ArraySupport = require( '@stdlib/assert/has-bigint64array-support' );\n*\n* var bool = hasBigInt64ArraySupport();\n* // returns \n*/\n\n// MODULES //\n\nvar hasBigInt64ArraySupport = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = hasBigInt64ArraySupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar nativeClass = require( '@stdlib/utils/native-class' );\n\n\n// VARIABLES //\n\nvar hasBigUint64Array = ( typeof BigUint64Array === 'function' ); // eslint-disable-line stdlib/require-globals\n\n\n// MAIN //\n\n/**\n* Tests if a value is a BigUint64Array.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether the value is a BigUint64Array\n*\n* @example\n* var value = new BigUint64Array( 2 );\n* var bool = isBigUint64Array( value );\n* // returns true\n*\n* @example\n* var bool = isBigUint64Array( [] );\n* // returns false\n*\n* @example\n* var bool = isBigUint64Array( 123 );\n* // returns false\n*/\nfunction isBigUint64Array( value ) {\n\treturn (\n\t\t( hasBigUint64Array && value instanceof BigUint64Array ) || // eslint-disable-line stdlib/require-globals, no-undef\n\t\tnativeClass( value ) === '[object BigUint64Array]'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isBigUint64Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a BigUint64Array.\n*\n* @module @stdlib/assert/is-biguint64array\n*\n* @example\n* var isBigUint64Array = require( '@stdlib/assert/is-biguint64array' );\n*\n* var value = new BigUint64Array( 2 );\n* var bool = isBigUint64Array( value );\n* // returns true\n*\n* bool = isBigUint64Array( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isBigUint64Array = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = isBigUint64Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\nvar main = ( typeof BigUint64Array === 'function' ) ? BigUint64Array : null; // eslint-disable-line stdlib/require-globals, no-undef\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isBigUint64Array = require( './../../is-biguint64array' );\nvar isBigInt = require( './../../is-bigint' );\nvar GlobalBigUint64Array = require( './biguint64array.js' );\n\n\n// VARIABLES //\n\nvar MAX_SIGNED_INT64 = '9223372036854775807'; // 2**63 - 1\nvar MAX_SIGNED_INT64_P2 = '9223372036854775809';\n\n\n// MAIN //\n\n/**\n* Tests for native `BigUint64Array` support.\n*\n* @returns {boolean} boolean indicating if an environment has `BigUint64Array` support\n*\n* @example\n* var bool = hasBigUint64ArraySupport();\n* // returns \n*/\nfunction hasBigUint64ArraySupport() {\n\tvar arr;\n\tif ( typeof GlobalBigUint64Array !== 'function' ) {\n\t\treturn false;\n\t}\n\t// Test basic support...\n\ttry {\n\t\tarr = new GlobalBigUint64Array([\n\t\t\tMAX_SIGNED_INT64,\n\t\t\tMAX_SIGNED_INT64_P2\n\t\t]);\n\t\treturn (\n\t\t\tisBigUint64Array( arr ) &&\n\t\t\tisBigInt( arr[ 0 ] ) &&\n\t\t\tarr[ 0 ].toString() === MAX_SIGNED_INT64 &&\n\t\t\tisBigInt( arr[ 1 ] ) &&\n\t\t\tarr[ 1 ].toString() === MAX_SIGNED_INT64_P2\n\t\t);\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\treturn false;\n\t}\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasBigUint64ArraySupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `BigUint64Array` support.\n*\n* @module @stdlib/assert/has-biguint64array-support\n*\n* @example\n* var hasBigUint64ArraySupport = require( '@stdlib/assert/has-biguint64array-support' );\n*\n* var bool = hasBigUint64ArraySupport();\n* // returns \n*/\n\n// MODULES //\n\nvar hasBigUint64ArraySupport = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = hasBigUint64ArraySupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar evil = require( '@stdlib/utils/eval' );\n\n\n// MAIN //\n\n/**\n* Tests for native `class` support.\n*\n* @returns {boolean} boolean indicating if an environment has native `class` support\n*\n* @example\n* var bool = hasClassSupport();\n* if ( bool ) {\n* console.log( 'Environment has native class support.' );\n* } else {\n* console.log( 'Environment lacks native class support.' );\n* }\n*/\nfunction hasClassSupport() {\n\tvar bool;\n\ttry {\n\t\tevil( '\"use strict\"; class A{};' );\n\t\tbool = true;\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\tbool = false;\n\t}\n\treturn bool;\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasClassSupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `class` support.\n*\n* @module @stdlib/assert/has-class-support\n*\n* @example\n* var hasClassSupport = require( '@stdlib/assert/has-class-support' );\n*\n* var bool = hasClassSupport();\n* if ( bool ) {\n* console.log( 'Environment has native class support.' );\n* } else {\n* console.log( 'Environment lacks native class support.' );\n* }\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar nativeClass = require( '@stdlib/utils/native-class' );\n\n\n// VARIABLES //\n\nvar hasDataView = ( typeof DataView === 'function' ); // eslint-disable-line stdlib/require-globals\n\n\n// MAIN //\n\n/**\n* Tests if a value is a `DataView`.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a DataView\n*\n* @example\n* var ArrayBuffer = require( '@stdlib/array/buffer' );\n* var DataView = require( '@stdlib/array/dataview' );\n*\n* var bool = isDataView( new DataView( new ArrayBuffer( 10 ) ) );\n* // returns true\n*\n* @example\n* var bool = isDataView( [] );\n* // returns false\n*/\nfunction isDataView( value ) {\n\treturn (\n\t\t( hasDataView && value instanceof DataView ) || // eslint-disable-line stdlib/require-globals\n\t\tnativeClass( value ) === '[object DataView]'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isDataView;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a `DataView`.\n*\n* @module @stdlib/assert/is-dataview\n*\n* @example\n* var ArrayBuffer = require( '@stdlib/array/buffer' );\n* var DataView = require( '@stdlib/array/dataview' );\n* var isDataView = require( '@stdlib/assert/is-dataview' );\n*\n* var bool = isDataView( new DataView( new ArrayBuffer( 10 ) ) );\n* // returns true\n*\n* bool = isDataView( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\nvar main = ( typeof DataView === 'function' ) ? DataView : null; // eslint-disable-line stdlib/require-globals\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isDataView = require( './../../is-dataview' );\nvar ArrayBuffer = require( '@stdlib/array/buffer' );\nvar GlobalDataView = require( './dataview.js' );\n\n\n// MAIN //\n\n/**\n* Tests for native `DataView` support.\n*\n* @returns {boolean} boolean indicating if an environment has `DataView` support\n*\n* @example\n* var bool = hasDataViewSupport();\n* // returns \n*/\nfunction hasDataViewSupport() {\n\tvar bool;\n\tvar view;\n\tvar buf;\n\n\tif ( typeof GlobalDataView !== 'function' ) {\n\t\treturn false;\n\t}\n\t// Test basic support...\n\ttry {\n\t\tbuf = new ArrayBuffer( 24 );\n\t\tview = new GlobalDataView( buf, 8 );\n\t\tbool = ( isDataView( view ) && typeof view.getFloat64 === 'function' && typeof view.setFloat64 === 'function' );\n\t\tif ( bool ) {\n\t\t\tview.setFloat64( 0, -3.14 );\n\t\t\tview.setFloat64( 8, NaN );\n\t\t\tbool = (\n\t\t\t\tbool &&\n\t\t\t\tview.buffer === buf &&\n\t\t\t\tview.byteLength === 16 &&\n\t\t\t\tview.byteOffset === 8 &&\n\t\t\t\tview.getFloat64( 0 ) === -3.14 &&\n\t\t\t\tview.getFloat64( 8 ) !== view.getFloat64( 8 )\n\t\t\t);\n\t\t}\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\tbool = false;\n\t}\n\treturn bool;\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasDataViewSupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `DataView` support.\n*\n* @module @stdlib/assert/has-dataview-support\n*\n* @example\n* var hasDataViewSupport = require( '@stdlib/assert/has-dataview-support' );\n*\n* var bool = hasDataViewSupport();\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\nvar main = ( typeof Object.defineProperties === 'function' ) ? Object.defineProperties : null;\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar defineProperties = require( './define_properties.js' );\n\n\n// MAIN //\n\n/**\n* Tests for `Object.defineProperties` support.\n*\n* @returns {boolean} boolean indicating if an environment has `Object.defineProperties` support\n*\n* @example\n* var bool = hasDefinePropertiesSupport();\n* // returns \n*/\nfunction hasDefinePropertiesSupport() {\n\t// Test basic support...\n\ttry {\n\t\tdefineProperties( {}, {\n\t\t\t'x': {}\n\t\t});\n\t\treturn true;\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\treturn false;\n\t}\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasDefinePropertiesSupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for `Object.defineProperties` support.\n*\n* @module @stdlib/assert/has-define-properties-support\n*\n* @example\n* var hasDefinePropertiesSupport = require( '@stdlib/assert/has-define-properties-support' );\n*\n* var bool = hasDefinePropertiesSupport();\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\nvar main = ( typeof Object.defineProperty === 'function' ) ? Object.defineProperty : null;\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar defineProperty = require( './define_property.js' );\n\n\n// MAIN //\n\n/**\n* Tests for `Object.defineProperty` support.\n*\n* @returns {boolean} boolean indicating if an environment has `Object.defineProperty` support\n*\n* @example\n* var bool = hasDefinePropertySupport();\n* // returns \n*/\nfunction hasDefinePropertySupport() {\n\t// Test basic support...\n\ttry {\n\t\tdefineProperty( {}, 'x', {} );\n\t\treturn true;\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\treturn false;\n\t}\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasDefinePropertySupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for `Object.defineProperty` support.\n*\n* @module @stdlib/assert/has-define-property-support\n*\n* @example\n* var hasDefinePropertySupport = require( '@stdlib/assert/has-define-property-support' );\n*\n* var bool = hasDefinePropertySupport();\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar nativeClass = require( '@stdlib/utils/native-class' );\n\n\n// VARIABLES //\n\nvar hasFloat32Array = ( typeof Float32Array === 'function' ); // eslint-disable-line stdlib/require-globals\n\n\n// MAIN //\n\n/**\n* Tests if a value is a Float32Array.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a Float32Array\n*\n* @example\n* var bool = isFloat32Array( new Float32Array( 10 ) );\n* // returns true\n*\n* @example\n* var bool = isFloat32Array( [] );\n* // returns false\n*/\nfunction isFloat32Array( value ) {\n\treturn (\n\t\t( hasFloat32Array && value instanceof Float32Array ) || // eslint-disable-line stdlib/require-globals\n\t\tnativeClass( value ) === '[object Float32Array]'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isFloat32Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a Float32Array.\n*\n* @module @stdlib/assert/is-float32array\n*\n* @example\n* var isFloat32Array = require( '@stdlib/assert/is-float32array' );\n*\n* var bool = isFloat32Array( new Float32Array( 10 ) );\n* // returns true\n*\n* bool = isFloat32Array( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isFloat32Array = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = isFloat32Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\nvar main = ( typeof Float32Array === 'function' ) ? Float32Array : null; // eslint-disable-line stdlib/require-globals\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isFloat32Array = require( './../../is-float32array' );\nvar PINF = require( '@stdlib/constants/float64/pinf' );\nvar GlobalFloat32Array = require( './float32array.js' );\n\n\n// MAIN //\n\n/**\n* Tests for native `Float32Array` support.\n*\n* @returns {boolean} boolean indicating if an environment has `Float32Array` support\n*\n* @example\n* var bool = hasFloat32ArraySupport();\n* // returns \n*/\nfunction hasFloat32ArraySupport() {\n\tvar bool;\n\tvar arr;\n\n\tif ( typeof GlobalFloat32Array !== 'function' ) {\n\t\treturn false;\n\t}\n\t// Test basic support...\n\ttry {\n\t\tarr = new GlobalFloat32Array( [ 1.0, 3.14, -3.14, 5.0e40 ] );\n\t\tbool = (\n\t\t\tisFloat32Array( arr ) &&\n\t\t\tarr[ 0 ] === 1.0 &&\n\t\t\tarr[ 1 ] === 3.140000104904175 &&\n\t\t\tarr[ 2 ] === -3.140000104904175 &&\n\t\t\tarr[ 3 ] === PINF\n\t\t);\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\tbool = false;\n\t}\n\treturn bool;\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasFloat32ArraySupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `Float32Array` support.\n*\n* @module @stdlib/assert/has-float32array-support\n*\n* @example\n* var hasFloat32ArraySupport = require( '@stdlib/assert/has-float32array-support' );\n*\n* var bool = hasFloat32ArraySupport();\n* // returns \n*/\n\n// MODULES //\n\nvar hasFloat32ArraySupport = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = hasFloat32ArraySupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar nativeClass = require( '@stdlib/utils/native-class' );\n\n\n// VARIABLES //\n\nvar hasFloat64Array = ( typeof Float64Array === 'function' ); // eslint-disable-line stdlib/require-globals\n\n\n// MAIN //\n\n/**\n* Tests if a value is a Float64Array.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a Float64Array\n*\n* @example\n* var bool = isFloat64Array( new Float64Array( 10 ) );\n* // returns true\n*\n* @example\n* var bool = isFloat64Array( [] );\n* // returns false\n*/\nfunction isFloat64Array( value ) {\n\treturn (\n\t\t( hasFloat64Array && value instanceof Float64Array ) || // eslint-disable-line stdlib/require-globals\n\t\tnativeClass( value ) === '[object Float64Array]'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isFloat64Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a Float64Array.\n*\n* @module @stdlib/assert/is-float64array\n*\n* @example\n* var isFloat64Array = require( '@stdlib/assert/is-float64array' );\n*\n* var bool = isFloat64Array( new Float64Array( 10 ) );\n* // returns true\n*\n* bool = isFloat64Array( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isFloat64Array = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = isFloat64Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\nvar main = ( typeof Float64Array === 'function' ) ? Float64Array : null; // eslint-disable-line stdlib/require-globals\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isFloat64Array = require( './../../is-float64array' );\nvar GlobalFloat64Array = require( './float64array.js' );\n\n\n// MAIN //\n\n/**\n* Tests for native `Float64Array` support.\n*\n* @returns {boolean} boolean indicating if an environment has `Float64Array` support\n*\n* @example\n* var bool = hasFloat64ArraySupport();\n* // returns \n*/\nfunction hasFloat64ArraySupport() {\n\tvar bool;\n\tvar arr;\n\n\tif ( typeof GlobalFloat64Array !== 'function' ) {\n\t\treturn false;\n\t}\n\t// Test basic support...\n\ttry {\n\t\tarr = new GlobalFloat64Array( [ 1.0, 3.14, -3.14, NaN ] );\n\t\tbool = (\n\t\t\tisFloat64Array( arr ) &&\n\t\t\tarr[ 0 ] === 1.0 &&\n\t\t\tarr[ 1 ] === 3.14 &&\n\t\t\tarr[ 2 ] === -3.14 &&\n\t\t\tarr[ 3 ] !== arr[ 3 ]\n\t\t);\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\tbool = false;\n\t}\n\treturn bool;\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasFloat64ArraySupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `Float64Array` support.\n*\n* @module @stdlib/assert/has-float64array-support\n*\n* @example\n* var hasFloat64ArraySupport = require( '@stdlib/assert/has-float64array-support' );\n*\n* var bool = hasFloat64ArraySupport();\n* // returns \n*/\n\n// MODULES //\n\nvar hasFloat64ArraySupport = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = hasFloat64ArraySupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Dummy function.\n*\n* @private\n*/\nfunction foo() {\n\t// No-op...\n}\n\n\n// EXPORTS //\n\nmodule.exports = foo;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar foo = require( './foo.js' );\n\n\n// MAIN //\n\n/**\n* Tests for native function `name` support.\n*\n* @returns {boolean} boolean indicating if an environment has function `name` support\n*\n* @example\n* var bool = hasFunctionNameSupport();\n* // returns \n*/\nfunction hasFunctionNameSupport() {\n\treturn ( foo.name === 'foo' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasFunctionNameSupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native function `name` support.\n*\n* @module @stdlib/assert/has-function-name-support\n*\n* @example\n* var hasFunctionNameSupport = require( '@stdlib/assert/has-function-name-support' );\n*\n* var bool = hasFunctionNameSupport();\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar evil = require( '@stdlib/utils/eval' );\n\n\n// MAIN //\n\n/**\n* Tests for native `function*()` support.\n*\n* @returns {boolean} boolean indicating if an environment has native `function*()` support\n*\n* @example\n* var bool = hasGeneratorSupport();\n* // returns \n*/\nfunction hasGeneratorSupport() {\n\tvar bool;\n\ttry {\n\t\tevil( '\"use strict\"; (function* () {})' );\n\t\tbool = true;\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\tbool = false;\n\t}\n\treturn bool;\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasGeneratorSupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `function*()` support.\n*\n* @module @stdlib/assert/has-generator-support\n*\n* @example\n* var hasGeneratorSupport = require( '@stdlib/assert/has-generator-support' );\n*\n* var bool = hasGeneratorSupport();\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2019 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\n/**\n* Tests for `globalThis` support.\n*\n* @returns {boolean} boolean indicating if an environment has `globalThis` support\n*\n* @example\n* var bool = hasGlobalThisSupport();\n* // returns \n*/\nfunction hasGlobalThisSupport() {\n\treturn (\n\t\ttypeof globalThis === 'object' &&\n\t\ttypeof globalThis.setTimeout === 'function' // eslint-disable-line no-undef\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasGlobalThisSupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2019 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for `globalThis` support.\n*\n* @module @stdlib/assert/has-globalthis-support\n*\n* @example\n* var hasGlobalThisSupport = require( '@stdlib/assert/has-globalthis-support' );\n*\n* var bool = hasGlobalThisSupport();\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar nativeClass = require( '@stdlib/utils/native-class' );\n\n\n// VARIABLES //\n\nvar hasInt8Array = ( typeof Int8Array === 'function' ); // eslint-disable-line stdlib/require-globals\n\n\n// MAIN //\n\n/**\n* Tests if a value is an Int8Array.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is an Int8Array\n*\n* @example\n* var bool = isInt8Array( new Int8Array( 10 ) );\n* // returns true\n*\n* @example\n* var bool = isInt8Array( [] );\n* // returns false\n*/\nfunction isInt8Array( value ) {\n\treturn (\n\t\t( hasInt8Array && value instanceof Int8Array ) || // eslint-disable-line stdlib/require-globals\n\t\tnativeClass( value ) === '[object Int8Array]'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isInt8Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an Int8Array.\n*\n* @module @stdlib/assert/is-int8array\n*\n* @example\n* var isInt8Array = require( '@stdlib/assert/is-int8array' );\n*\n* var bool = isInt8Array( new Int8Array( 10 ) );\n* // returns true\n*\n* bool = isInt8Array( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isInt8Array = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = isInt8Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\nvar main = ( typeof Int8Array === 'function' ) ? Int8Array : null; // eslint-disable-line stdlib/require-globals\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInt8Array = require( './../../is-int8array' );\nvar INT8_MAX = require( '@stdlib/constants/int8/max' );\nvar INT8_MIN = require( '@stdlib/constants/int8/min' );\nvar GlobalInt8Array = require( './int8array.js' );\n\n\n// MAIN //\n\n/**\n* Tests for native `Int8Array` support.\n*\n* @returns {boolean} boolean indicating if an environment has `Int8Array` support\n*\n* @example\n* var bool = hasInt8ArraySupport();\n* // returns \n*/\nfunction hasInt8ArraySupport() {\n\tvar bool;\n\tvar arr;\n\n\tif ( typeof GlobalInt8Array !== 'function' ) {\n\t\treturn false;\n\t}\n\t// Test basic support...\n\ttry {\n\t\tarr = new GlobalInt8Array( [ 1, 3.14, -3.14, INT8_MAX+1 ] );\n\t\tbool = (\n\t\t\tisInt8Array( arr ) &&\n\t\t\tarr[ 0 ] === 1 &&\n\t\t\tarr[ 1 ] === 3 && // truncation\n\t\t\tarr[ 2 ] === -3 && // truncation\n\t\t\tarr[ 3 ] === INT8_MIN // wrap around\n\t\t);\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\tbool = false;\n\t}\n\treturn bool;\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasInt8ArraySupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `Int8Array` support.\n*\n* @module @stdlib/assert/has-int8array-support\n*\n* @example\n* var hasInt8ArraySupport = require( '@stdlib/assert/has-int8array-support' );\n*\n* var bool = hasInt8ArraySupport();\n* // returns \n*/\n\n// MODULES //\n\nvar hasInt8ArraySupport = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = hasInt8ArraySupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar nativeClass = require( '@stdlib/utils/native-class' );\n\n\n// VARIABLES //\n\nvar hasInt16Array = ( typeof Int16Array === 'function' ); // eslint-disable-line stdlib/require-globals\n\n\n// MAIN //\n\n/**\n* Tests if a value is an Int16Array.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is an Int16Array\n*\n* @example\n* var bool = isInt16Array( new Int16Array( 10 ) );\n* // returns true\n*\n* @example\n* var bool = isInt16Array( [] );\n* // returns false\n*/\nfunction isInt16Array( value ) {\n\treturn (\n\t\t( hasInt16Array && value instanceof Int16Array ) || // eslint-disable-line stdlib/require-globals\n\t\tnativeClass( value ) === '[object Int16Array]'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isInt16Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an Int16Array.\n*\n* @module @stdlib/assert/is-int16array\n*\n* @example\n* var isInt16Array = require( '@stdlib/assert/is-int16array' );\n*\n* var bool = isInt16Array( new Int16Array( 10 ) );\n* // returns true\n*\n* bool = isInt16Array( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isInt16Array = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = isInt16Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\nvar main = ( typeof Int16Array === 'function' ) ? Int16Array : null; // eslint-disable-line stdlib/require-globals\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInt16Array = require( './../../is-int16array' );\nvar INT16_MAX = require( '@stdlib/constants/int16/max' );\nvar INT16_MIN = require( '@stdlib/constants/int16/min' );\nvar GlobalInt16Array = require( './int16array.js' );\n\n\n// MAIN //\n\n/**\n* Tests for native `Int16Array` support.\n*\n* @returns {boolean} boolean indicating if an environment has `Int16Array` support\n*\n* @example\n* var bool = hasInt16ArraySupport();\n* // returns \n*/\nfunction hasInt16ArraySupport() {\n\tvar bool;\n\tvar arr;\n\n\tif ( typeof GlobalInt16Array !== 'function' ) {\n\t\treturn false;\n\t}\n\t// Test basic support...\n\ttry {\n\t\tarr = new GlobalInt16Array( [ 1, 3.14, -3.14, INT16_MAX+1 ] );\n\t\tbool = (\n\t\t\tisInt16Array( arr ) &&\n\t\t\tarr[ 0 ] === 1 &&\n\t\t\tarr[ 1 ] === 3 && // truncation\n\t\t\tarr[ 2 ] === -3 && // truncation\n\t\t\tarr[ 3 ] === INT16_MIN // wrap around\n\t\t);\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\tbool = false;\n\t}\n\treturn bool;\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasInt16ArraySupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `Int16Array` support.\n*\n* @module @stdlib/assert/has-int16array-support\n*\n* @example\n* var hasInt16ArraySupport = require( '@stdlib/assert/has-int16array-support' );\n*\n* var bool = hasInt16ArraySupport();\n* // returns \n*/\n\n// MODULES //\n\nvar hasInt16ArraySupport = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = hasInt16ArraySupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar nativeClass = require( '@stdlib/utils/native-class' );\n\n\n// VARIABLES //\n\nvar hasInt32Array = ( typeof Int32Array === 'function' ); // eslint-disable-line stdlib/require-globals\n\n\n// MAIN //\n\n/**\n* Tests if a value is an Int32Array.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is an Int32Array\n*\n* @example\n* var bool = isInt32Array( new Int32Array( 10 ) );\n* // returns true\n*\n* @example\n* var bool = isInt32Array( [] );\n* // returns false\n*/\nfunction isInt32Array( value ) {\n\treturn (\n\t\t( hasInt32Array && value instanceof Int32Array ) || // eslint-disable-line stdlib/require-globals\n\t\tnativeClass( value ) === '[object Int32Array]'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isInt32Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an Int32Array.\n*\n* @module @stdlib/assert/is-int32array\n*\n* @example\n* var isInt32Array = require( '@stdlib/assert/is-int32array' );\n*\n* var bool = isInt32Array( new Int32Array( 10 ) );\n* // returns true\n*\n* bool = isInt32Array( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isInt32Array = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = isInt32Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\nvar main = ( typeof Int32Array === 'function' ) ? Int32Array : null; // eslint-disable-line stdlib/require-globals\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInt32Array = require( './../../is-int32array' );\nvar INT32_MAX = require( '@stdlib/constants/int32/max' );\nvar INT32_MIN = require( '@stdlib/constants/int32/min' );\nvar GlobalInt32Array = require( './int32array.js' );\n\n\n// MAIN //\n\n/**\n* Tests for native `Int32Array` support.\n*\n* @returns {boolean} boolean indicating if an environment has `Int32Array` support\n*\n* @example\n* var bool = hasInt32ArraySupport();\n* // returns \n*/\nfunction hasInt32ArraySupport() {\n\tvar bool;\n\tvar arr;\n\n\tif ( typeof GlobalInt32Array !== 'function' ) {\n\t\treturn false;\n\t}\n\t// Test basic support...\n\ttry {\n\t\tarr = new GlobalInt32Array( [ 1, 3.14, -3.14, INT32_MAX+1 ] );\n\t\tbool = (\n\t\t\tisInt32Array( arr ) &&\n\t\t\tarr[ 0 ] === 1 &&\n\t\t\tarr[ 1 ] === 3 && // truncation\n\t\t\tarr[ 2 ] === -3 && // truncation\n\t\t\tarr[ 3 ] === INT32_MIN // wrap around\n\t\t);\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\tbool = false;\n\t}\n\treturn bool;\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasInt32ArraySupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `Int32Array` support.\n*\n* @module @stdlib/assert/has-int32array-support\n*\n* @example\n* var hasInt32ArraySupport = require( '@stdlib/assert/has-int32array-support' );\n*\n* var bool = hasInt32ArraySupport();\n* // returns \n*/\n\n// MODULES //\n\nvar hasInt32ArraySupport = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = hasInt32ArraySupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar hasOwnProp = require( './../../has-own-property' );\nvar Symbol = require( '@stdlib/symbol/ctor' );\n\n\n// MAIN //\n\n/**\n* Tests for native `Symbol.iterator` support.\n*\n* @returns {boolean} boolean indicating if an environment has `Symbol.iterator` support\n*\n* @example\n* var bool = hasIteratorSymbolSupport();\n* // returns \n*/\nfunction hasIteratorSymbolSupport() {\n\treturn (\n\t\ttypeof Symbol === 'function' &&\n\t\ttypeof Symbol( 'foo' ) === 'symbol' &&\n\t\thasOwnProp( Symbol, 'iterator' ) &&\n\t\ttypeof Symbol.iterator === 'symbol'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasIteratorSymbolSupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `Symbol.iterator` support.\n*\n* @module @stdlib/assert/has-iterator-symbol-support\n*\n* @example\n* var hasIteratorSymbolSupport = require( '@stdlib/assert/has-iterator-symbol-support' );\n*\n* var bool = hasIteratorSymbolSupport();\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\nvar main = ( typeof Map === 'function' ) ? Map : null;\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar GlobalMap = require( './map.js' );\n\n\n// MAIN //\n\n/**\n* Tests for native `Map` support.\n*\n* @returns {boolean} boolean indicating if an environment has `Map` support\n*\n* @example\n* var bool = hasMapSupport();\n* // returns \n*/\nfunction hasMapSupport() {\n\tvar bool;\n\tvar key;\n\tvar map;\n\n\tif ( typeof GlobalMap !== 'function' ) {\n\t\treturn false;\n\t}\n\t// Test basic support...\n\ttry {\n\t\tkey = {};\n\t\tmap = new GlobalMap();\n\t\tmap.set( key, 'beep' );\n\t\tbool = (\n\t\t\tmap.has( key ) &&\n\t\t\tmap.get( key ) === 'beep'\n\t\t);\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\tbool = false;\n\t}\n\treturn bool;\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasMapSupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `Map` support.\n*\n* @module @stdlib/assert/has-map-support\n*\n* @example\n* var hasMapSupport = require( '@stdlib/assert/has-map-support' );\n*\n* var bool = hasMapSupport();\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\nvar main = ( typeof Buffer === 'function' ) ? Buffer : null; // eslint-disable-line stdlib/require-globals\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isBuffer = require( './../../is-buffer' );\nvar GlobalBuffer = require( './buffer.js' );\n\n\n// MAIN //\n\n/**\n* Tests for native `Buffer` support.\n*\n* @returns {boolean} boolean indicating if an environment has `Buffer` support\n*\n* @example\n* var bool = hasNodeBufferSupport();\n* // returns \n*/\nfunction hasNodeBufferSupport() {\n\tvar bool;\n\tvar b;\n\n\tif ( typeof GlobalBuffer !== 'function' ) {\n\t\treturn false;\n\t}\n\t// Test basic support...\n\ttry {\n\t\tif ( typeof GlobalBuffer.from === 'function' ) {\n\t\t\tb = GlobalBuffer.from( [ 1, 2, 3, 4 ] );\n\t\t} else {\n\t\t\tb = new GlobalBuffer( [ 1, 2, 3, 4 ] ); // Note: this is deprecated behavior starting in Node v6 (see https://nodejs.org/api/buffer.html#buffer_new_buffer_array)\n\t\t}\n\t\tbool = (\n\t\t\tisBuffer( b ) &&\n\t\t\tb[ 0 ] === 1 &&\n\t\t\tb[ 1 ] === 2 &&\n\t\t\tb[ 2 ] === 3 &&\n\t\t\tb[ 3 ] === 4\n\t\t);\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\tbool = false;\n\t}\n\treturn bool;\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasNodeBufferSupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `Buffer` support.\n*\n* @module @stdlib/assert/has-node-buffer-support\n*\n* @example\n* var hasNodeBufferSupport = require( '@stdlib/assert/has-node-buffer-support' );\n*\n* var bool = hasNodeBufferSupport();\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar evil = require( '@stdlib/utils/eval' );\n\n\n// MAIN //\n\n/**\n* Tests for native `Proxy` support.\n*\n* @returns {boolean} boolean indicating if an environment has native `Proxy` support\n*\n* @example\n* var bool = hasProxySupport();\n* // returns \n*/\nfunction hasProxySupport() {\n\tvar bool;\n\ttry {\n\t\tevil( '\"use strict\"; var handler = { \"get\": function get( t, n ) { return t[ n ] * 100; } }; var target = { \"beep\": 3.14 }; var p = new Proxy( target, handler ); var x = p.beep; if ( x !== 314 ) { throw new Error( \"native Proxy is not supported.\" ); }' );\n\t\tbool = true;\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\tbool = false;\n\t}\n\treturn bool;\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasProxySupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `Proxy` support.\n*\n* @module @stdlib/assert/has-proxy-support\n*\n* @example\n* var hasProxySupport = require( '@stdlib/assert/has-proxy-support' );\n*\n* var bool = hasProxySupport();\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\nvar main = ( typeof Set === 'function' ) ? Set : null;\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar GlobalSet = require( './set.js' );\n\n\n// MAIN //\n\n/**\n* Tests for native `Set` support.\n*\n* @returns {boolean} boolean indicating if an environment has `Set` support\n*\n* @example\n* var bool = hasSetSupport();\n* // returns \n*/\nfunction hasSetSupport() {\n\tvar bool;\n\tvar val;\n\tvar set;\n\n\tif ( typeof GlobalSet !== 'function' ) {\n\t\treturn false;\n\t}\n\t// Test basic support...\n\ttry {\n\t\tval = {};\n\t\tset = new GlobalSet();\n\t\tset.add( val );\n\t\tset.add( val );\n\t\tbool = set.has( val );\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\tbool = false;\n\t}\n\treturn bool;\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasSetSupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `Set` support.\n*\n* @module @stdlib/assert/has-set-support\n*\n* @example\n* var hasSetSupport = require( '@stdlib/assert/has-set-support' );\n*\n* var bool = hasSetSupport();\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar nativeClass = require( '@stdlib/utils/native-class' );\n\n\n// VARIABLES //\n\nvar hasSharedArrayBuffer = ( typeof SharedArrayBuffer === 'function' ); // eslint-disable-line stdlib/require-globals\n\n\n// MAIN //\n\n/**\n* Tests if a value is a `SharedArrayBuffer`.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a `SharedArrayBuffer`\n*\n* @example\n* var SharedArrayBuffer = require( '@stdlib/array/shared-buffer' );\n*\n* try {\n* var bool = isSharedArrayBuffer( new SharedArrayBuffer( 10 ) );\n* // returns true\n* } catch ( err ) {\n* console.log( 'Environment does not support SharedArrayBuffers.' );\n* }\n*\n* @example\n* var bool = isSharedArrayBuffer( [] );\n* // returns false\n*/\nfunction isSharedArrayBuffer( value ) {\n\treturn (\n\t\t( hasSharedArrayBuffer && value instanceof SharedArrayBuffer ) || // eslint-disable-line stdlib/require-globals, no-undef\n\t\tnativeClass( value ) === '[object SharedArrayBuffer]'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSharedArrayBuffer;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a `SharedArrayBuffer`.\n*\n* @module @stdlib/assert/is-sharedarraybuffer\n*\n* @example\n* var SharedArrayBuffer = require( '@stdlib/array/shared-buffer' );\n* var isSharedArrayBuffer = require( '@stdlib/assert/is-sharedarraybuffer' );\n*\n* var bool;\n* try {\n* bool = isSharedArrayBuffer( new SharedArrayBuffer( 10 ) );\n* // returns true\n* } catch ( err ) {\n* console.log( 'Environment does not support SharedArrayBuffers.' );\n* }\n* bool = isSharedArrayBuffer( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\nvar main = ( typeof SharedArrayBuffer === 'function' ) ? SharedArrayBuffer : null; // eslint-disable-line no-undef, stdlib/require-globals\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isSharedArrayBuffer = require( './../../is-sharedarraybuffer' );\nvar GlobalSharedArrayBuffer = require( './sharedarraybuffer.js' );\n\n\n// MAIN //\n\n/**\n* Tests for native `SharedArrayBuffer` support.\n*\n* @returns {boolean} boolean indicating if an environment has `SharedArrayBuffer` support\n*\n* @example\n* var bool = hasSharedArrayBufferSupport();\n* // returns \n*/\nfunction hasSharedArrayBufferSupport() { // eslint-disable-line id-length\n\tvar bool;\n\tvar b1;\n\tvar b2;\n\n\tif ( typeof GlobalSharedArrayBuffer !== 'function' ) {\n\t\treturn false;\n\t}\n\t// Test basic support...\n\ttry {\n\t\tb1 = new GlobalSharedArrayBuffer( 16 );\n\t\tb2 = b1.slice( 4, 8 );\n\t\tbool = (\n\t\t\tisSharedArrayBuffer( b1 ) &&\n\t\t\tisSharedArrayBuffer( b2 ) &&\n\t\t\tb1.byteLength === 16 &&\n\t\t\tb2.byteLength === 4\n\t\t);\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\tbool = false;\n\t}\n\treturn bool;\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasSharedArrayBufferSupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `SharedArrayBuffer` support.\n*\n* @module @stdlib/assert/has-sharedarraybuffer-support\n*\n* @example\n* var hasSharedArrayBufferSupport = require( '@stdlib/assert/has-sharedarraybuffer-support' );\n*\n* var bool = hasSharedArrayBufferSupport();\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar nativeClass = require( '@stdlib/utils/native-class' );\n\n\n// VARIABLES //\n\nvar hasUint8Array = ( typeof Uint8Array === 'function' ); // eslint-disable-line stdlib/require-globals\n\n\n// MAIN //\n\n/**\n* Tests if a value is a Uint8Array.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a Uint8Array\n*\n* @example\n* var bool = isUint8Array( new Uint8Array( 10 ) );\n* // returns true\n*\n* @example\n* var bool = isUint8Array( [] );\n* // returns false\n*/\nfunction isUint8Array( value ) {\n\treturn (\n\t\t( hasUint8Array && value instanceof Uint8Array ) || // eslint-disable-line stdlib/require-globals\n\t\tnativeClass( value ) === '[object Uint8Array]'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isUint8Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a Uint8Array.\n*\n* @module @stdlib/assert/is-uint8array\n*\n* @example\n* var isUint8Array = require( '@stdlib/assert/is-uint8array' );\n*\n* var bool = isUint8Array( new Uint8Array( 10 ) );\n* // returns true\n*\n* bool = isUint8Array( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isUint8Array = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = isUint8Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\nvar main = ( typeof Uint8Array === 'function' ) ? Uint8Array : null; // eslint-disable-line stdlib/require-globals\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isUint8Array = require( './../../is-uint8array' );\nvar UINT8_MAX = require( '@stdlib/constants/uint8/max' );\nvar GlobalUint8Array = require( './uint8array.js' );\n\n\n// MAIN //\n\n/**\n* Tests for native `Uint8Array` support.\n*\n* @returns {boolean} boolean indicating if an environment has `Uint8Array` support\n*\n* @example\n* var bool = hasUint8ArraySupport();\n* // returns \n*/\nfunction hasUint8ArraySupport() {\n\tvar bool;\n\tvar arr;\n\n\tif ( typeof GlobalUint8Array !== 'function' ) {\n\t\treturn false;\n\t}\n\t// Test basic support...\n\ttry {\n\t\tarr = [ 1, 3.14, -3.14, UINT8_MAX+1, UINT8_MAX+2 ];\n\t\tarr = new GlobalUint8Array( arr );\n\t\tbool = (\n\t\t\tisUint8Array( arr ) &&\n\t\t\tarr[ 0 ] === 1 &&\n\t\t\tarr[ 1 ] === 3 && // truncation\n\t\t\tarr[ 2 ] === UINT8_MAX-2 && // truncation and wrap around\n\t\t\tarr[ 3 ] === 0 && // wrap around\n\t\t\tarr[ 4 ] === 1 // wrap around\n\t\t);\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\tbool = false;\n\t}\n\treturn bool;\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasUint8ArraySupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `Uint8Array` support.\n*\n* @module @stdlib/assert/has-uint8array-support\n*\n* @example\n* var hasUint8ArraySupport = require( '@stdlib/assert/has-uint8array-support' );\n*\n* var bool = hasUint8ArraySupport();\n* // returns \n*/\n\n// MODULES //\n\nvar hasUint8ArraySupport = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = hasUint8ArraySupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar nativeClass = require( '@stdlib/utils/native-class' );\n\n\n// VARIABLES //\n\nvar hasUint8ClampedArray = ( typeof Uint8ClampedArray === 'function' ); // eslint-disable-line stdlib/require-globals\n\n\n// MAIN //\n\n/**\n* Tests if a value is a Uint8ClampedArray.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a Uint8ClampedArray\n*\n* @example\n* var bool = isUint8ClampedArray( new Uint8ClampedArray( 10 ) );\n* // returns true\n*\n* @example\n* var bool = isUint8ClampedArray( [] );\n* // returns false\n*/\nfunction isUint8ClampedArray( value ) {\n\treturn (\n\t\t( hasUint8ClampedArray && value instanceof Uint8ClampedArray ) || // eslint-disable-line stdlib/require-globals\n\t\tnativeClass( value ) === '[object Uint8ClampedArray]'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isUint8ClampedArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a Uint8ClampedArray.\n*\n* @module @stdlib/assert/is-uint8clampedarray\n*\n* @example\n* var isUint8ClampedArray = require( '@stdlib/assert/is-uint8clampedarray' );\n*\n* var bool = isUint8ClampedArray( new Uint8ClampedArray( 10 ) );\n* // returns true\n*\n* bool = isUint8ClampedArray( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isUint8ClampedArray = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = isUint8ClampedArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\nvar main = ( typeof Uint8ClampedArray === 'function' ) ? Uint8ClampedArray : null; // eslint-disable-line stdlib/require-globals\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isUint8ClampedArray = require( './../../is-uint8clampedarray' );\nvar GlobalUint8ClampedArray = require( './uint8clampedarray.js' );\n\n\n// MAIN //\n\n/**\n* Tests for native `Uint8ClampedArray` support.\n*\n* @returns {boolean} boolean indicating if an environment has `Uint8ClampedArray` support\n*\n* @example\n* var bool = hasUint8ClampedArraySupport();\n* // returns \n*/\nfunction hasUint8ClampedArraySupport() { // eslint-disable-line id-length\n\tvar bool;\n\tvar arr;\n\n\tif ( typeof GlobalUint8ClampedArray !== 'function' ) {\n\t\treturn false;\n\t}\n\t// Test basic support...\n\ttry {\n\t\tarr = new GlobalUint8ClampedArray( [ -1, 0, 1, 3.14, 4.99, 255, 256 ] );\n\t\tbool = (\n\t\t\tisUint8ClampedArray( arr ) &&\n\t\t\tarr[ 0 ] === 0 && // clamped\n\t\t\tarr[ 1 ] === 0 &&\n\t\t\tarr[ 2 ] === 1 &&\n\t\t\tarr[ 3 ] === 3 && // round to nearest\n\t\t\tarr[ 4 ] === 5 && // round to nearest\n\t\t\tarr[ 5 ] === 255 &&\n\t\t\tarr[ 6 ] === 255 // clamped\n\t\t);\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\tbool = false;\n\t}\n\treturn bool;\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasUint8ClampedArraySupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `Uint8ClampedArray` support.\n*\n* @module @stdlib/assert/has-uint8clampedarray-support\n*\n* @example\n* var hasUint8ClampedArraySupport = require( '@stdlib/assert/has-uint8clampedarray-support' );\n*\n* var bool = hasUint8ClampedArraySupport();\n* // returns \n*/\n\n// MODULES //\n\nvar hasUint8ClampedArraySupport = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = hasUint8ClampedArraySupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar nativeClass = require( '@stdlib/utils/native-class' );\n\n\n// VARIABLES //\n\nvar hasUint16Array = ( typeof Uint16Array === 'function' ); // eslint-disable-line stdlib/require-globals\n\n\n// MAIN //\n\n/**\n* Tests if a value is a Uint16Array.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a Uint16Array\n*\n* @example\n* var bool = isUint16Array( new Uint16Array( 10 ) );\n* // returns true\n*\n* @example\n* var bool = isUint16Array( [] );\n* // returns false\n*/\nfunction isUint16Array( value ) {\n\treturn (\n\t\t( hasUint16Array && value instanceof Uint16Array ) || // eslint-disable-line stdlib/require-globals\n\t\tnativeClass( value ) === '[object Uint16Array]'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isUint16Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a Uint16Array.\n*\n* @module @stdlib/assert/is-uint16array\n*\n* @example\n* var isUint16Array = require( '@stdlib/assert/is-uint16array' );\n*\n* var bool = isUint16Array( new Uint16Array( 10 ) );\n* // returns true\n*\n* bool = isUint16Array( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isUint16Array = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = isUint16Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\nvar main = ( typeof Uint16Array === 'function' ) ? Uint16Array : null; // eslint-disable-line stdlib/require-globals\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isUint16Array = require( './../../is-uint16array' );\nvar UINT16_MAX = require( '@stdlib/constants/uint16/max' );\nvar GlobalUint16Array = require( './uint16array.js' );\n\n\n// MAIN //\n\n/**\n* Tests for native `Uint16Array` support.\n*\n* @returns {boolean} boolean indicating if an environment has `Uint16Array` support\n*\n* @example\n* var bool = hasUint16ArraySupport();\n* // returns \n*/\nfunction hasUint16ArraySupport() {\n\tvar bool;\n\tvar arr;\n\n\tif ( typeof GlobalUint16Array !== 'function' ) {\n\t\treturn false;\n\t}\n\t// Test basic support...\n\ttry {\n\t\tarr = [ 1, 3.14, -3.14, UINT16_MAX+1, UINT16_MAX+2 ];\n\t\tarr = new GlobalUint16Array( arr );\n\t\tbool = (\n\t\t\tisUint16Array( arr ) &&\n\t\t\tarr[ 0 ] === 1 &&\n\t\t\tarr[ 1 ] === 3 && // truncation\n\t\t\tarr[ 2 ] === UINT16_MAX-2 && // truncation and wrap around\n\t\t\tarr[ 3 ] === 0 && // wrap around\n\t\t\tarr[ 4 ] === 1 // wrap around\n\t\t);\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\tbool = false;\n\t}\n\treturn bool;\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasUint16ArraySupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `Uint16Array` support.\n*\n* @module @stdlib/assert/has-uint16array-support\n*\n* @example\n* var hasUint16ArraySupport = require( '@stdlib/assert/has-uint16array-support' );\n*\n* var bool = hasUint16ArraySupport();\n* // returns \n*/\n\n// MODULES //\n\nvar hasUint16ArraySupport = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = hasUint16ArraySupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar nativeClass = require( '@stdlib/utils/native-class' );\n\n\n// VARIABLES //\n\nvar hasUint32Array = ( typeof Uint32Array === 'function' ); // eslint-disable-line stdlib/require-globals\n\n\n// MAIN //\n\n/**\n* Tests if a value is a Uint32Array.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a Uint32Array\n*\n* @example\n* var bool = isUint32Array( new Uint32Array( 10 ) );\n* // returns true\n*\n* @example\n* var bool = isUint32Array( [] );\n* // returns false\n*/\nfunction isUint32Array( value ) {\n\treturn (\n\t\t( hasUint32Array && value instanceof Uint32Array ) || // eslint-disable-line stdlib/require-globals\n\t\tnativeClass( value ) === '[object Uint32Array]'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isUint32Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a Uint32Array.\n*\n* @module @stdlib/assert/is-uint32array\n*\n* @example\n* var isUint32Array = require( '@stdlib/assert/is-uint32array' );\n*\n* var bool = isUint32Array( new Uint32Array( 10 ) );\n* // returns true\n*\n* bool = isUint32Array( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isUint32Array = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = isUint32Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\nvar main = ( typeof Uint32Array === 'function' ) ? Uint32Array : null; // eslint-disable-line stdlib/require-globals\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isUint32Array = require( './../../is-uint32array' );\nvar UINT32_MAX = require( '@stdlib/constants/uint32/max' );\nvar GlobalUint32Array = require( './uint32array.js' );\n\n\n// MAIN //\n\n/**\n* Tests for native `Uint32Array` support.\n*\n* @returns {boolean} boolean indicating if an environment has `Uint32Array` support\n*\n* @example\n* var bool = hasUint32ArraySupport();\n* // returns \n*/\nfunction hasUint32ArraySupport() {\n\tvar bool;\n\tvar arr;\n\n\tif ( typeof GlobalUint32Array !== 'function' ) {\n\t\treturn false;\n\t}\n\t// Test basic support...\n\ttry {\n\t\tarr = [ 1, 3.14, -3.14, UINT32_MAX+1, UINT32_MAX+2 ];\n\t\tarr = new GlobalUint32Array( arr );\n\t\tbool = (\n\t\t\tisUint32Array( arr ) &&\n\t\t\tarr[ 0 ] === 1 &&\n\t\t\tarr[ 1 ] === 3 && // truncation\n\t\t\tarr[ 2 ] === UINT32_MAX-2 && // truncation and wrap around\n\t\t\tarr[ 3 ] === 0 && // wrap around\n\t\t\tarr[ 4 ] === 1 // wrap around\n\t\t);\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\tbool = false;\n\t}\n\treturn bool;\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasUint32ArraySupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `Uint32Array` support.\n*\n* @module @stdlib/assert/has-uint32array-support\n*\n* @example\n* var hasUint32ArraySupport = require( '@stdlib/assert/has-uint32array-support' );\n*\n* var bool = hasUint32ArraySupport();\n* // returns \n*/\n\n// MODULES //\n\nvar hasUint32ArraySupport = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = hasUint32ArraySupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInteger = require( './../../is-integer' ).isPrimitive;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number primitive having a nonnegative integer value.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number primitive having a nonnegative integer value\n*\n* @example\n* var bool = isNonNegativeInteger( 3.0 );\n* // returns true\n*\n* @example\n* var bool = isNonNegativeInteger( new Number( 3.0 ) );\n* // returns false\n*/\nfunction isNonNegativeInteger( value ) {\n\treturn (\n\t\tisInteger( value ) &&\n\t\tvalue >= 0\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNonNegativeInteger;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInteger = require( './../../is-integer' ).isObject;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number object having a nonnegative integer value.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number object having a nonnegative integer value\n*\n* @example\n* var bool = isNonNegativeInteger( 3.0 );\n* // returns false\n*\n* @example\n* var bool = isNonNegativeInteger( new Number( 3.0 ) );\n* // returns true\n*/\nfunction isNonNegativeInteger( value ) {\n\treturn (\n\t\tisInteger( value ) &&\n\t\tvalue.valueOf() >= 0\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNonNegativeInteger;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a nonnegative integer.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a nonnegative integer\n*\n* @example\n* var bool = isNonNegativeInteger( 5.0 );\n* // returns true\n*\n* @example\n* var bool = isNonNegativeInteger( new Number( 5.0 ) );\n* // returns true\n*\n* @example\n* var bool = isNonNegativeInteger( -5.0 );\n* // returns false\n*\n* @example\n* var bool = isNonNegativeInteger( 3.14 );\n* // returns false\n*\n* @example\n* var bool = isNonNegativeInteger( null );\n* // returns false\n*/\nfunction isNonNegativeInteger( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNonNegativeInteger;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a nonnegative integer.\n*\n* @module @stdlib/assert/is-nonnegative-integer\n*\n* @example\n* var isNonNegativeInteger = require( '@stdlib/assert/is-nonnegative-integer' );\n*\n* var bool = isNonNegativeInteger( 5.0 );\n* // returns true\n*\n* bool = isNonNegativeInteger( new Number( 5.0 ) );\n* // returns true\n*\n* bool = isNonNegativeInteger( -5.0 );\n* // returns false\n*\n* bool = isNonNegativeInteger( 3.14 );\n* // returns false\n*\n* bool = isNonNegativeInteger( null );\n* // returns false\n*\n* @example\n* var isNonNegativeInteger = require( '@stdlib/assert/is-nonnegative-integer' ).isPrimitive;\n*\n* var bool = isNonNegativeInteger( 3.0 );\n* // returns true\n*\n* bool = isNonNegativeInteger( new Number( 3.0 ) );\n* // returns false\n*\n* @example\n* var isNonNegativeInteger = require( '@stdlib/assert/is-nonnegative-integer' ).isObject;\n*\n* var bool = isNonNegativeInteger( 3.0 );\n* // returns false\n*\n* bool = isNonNegativeInteger( new Number( 3.0 ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\nvar isNonNegativeInteger = require( './../../is-nonnegative-integer' ).isPrimitive;\nvar format = require( '@stdlib/string/format' );\n\n\n// VARIABLES //\n\n// Range for a high surrogate\nvar OxD800 = 0xD800|0; // 55296\nvar OxDBFF = 0xDBFF|0; // 56319\n\n// Range for a low surrogate\nvar OxDC00 = 0xDC00|0; // 56320\nvar OxDFFF = 0xDFFF|0; // 57343\n\n\n// MAIN //\n\n/**\n* Tests if a position in a string marks the start of a UTF-16 surrogate pair.\n*\n* @private\n* @param {string} str - input string\n* @param {NonNegativeInteger} pos - position in string\n* @throws {TypeError} first argument must be a string\n* @throws {TypeError} second argument must be a nonnegative integer\n* @throws {RangeError} position must be a valid index in string\n* @returns {boolean} boolean indicating whether the string has a surrogate pair at a position\n*\n* @example\n* var out = hasUTF16SurrogatePairAt( '\uD83C\uDF37', 0 );\n* // returns true\n*\n* @example\n* var out = hasUTF16SurrogatePairAt( '\uD83C\uDF37', 1 );\n* // returns false\n*/\nfunction hasUTF16SurrogatePairAt( str, pos ) {\n\tvar ch1;\n\tvar ch2;\n\tif ( !isString( str ) ) {\n\t\tthrow new TypeError( format( 'invalid argument. Must provide a string. Value: `%s`.', str ) );\n\t}\n\tif ( !isNonNegativeInteger( pos ) ) {\n\t\tthrow new TypeError( format( 'invalid argument. Must provide a valid position (i.e., a nonnegative integer). Value: `%s`.', pos ) );\n\t}\n\tif ( pos >= str.length ) {\n\t\tthrow new RangeError( format( 'invalid argument. Must provide a valid position (i.e., within string bounds). Value: `%u`.', pos ) );\n\t}\n\tch1 = str.charCodeAt( pos );\n\tch2 = str.charCodeAt( pos + 1 );\n\treturn ch1 >= OxD800 && ch1 <= OxDBFF && ch2 >= OxDC00 && ch2 <= OxDFFF;\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasUTF16SurrogatePairAt;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a position in a string marks the start of a UTF-16 surrogate pair.\n*\n* @module @stdlib/assert/has-utf16-surrogate-pair-at\n*\n* @example\n* var hasUTF16SurrogatePairAt = require( '@stdlib/assert/has-utf16-surrogate-pair-at' );\n*\n* var bool = hasUTF16SurrogatePairAt( '\uD83C\uDF37', 0 );\n* // returns true\n*\n* bool = hasUTF16SurrogatePairAt( '\uD83C\uDF37', 1 );\n* // returns false\n*/\n\n// MODULES //\n\nvar hasUTF16SurrogatePairAt = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = hasUTF16SurrogatePairAt;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\n/**\n* Tests for native WebAssembly support.\n*\n* @returns {boolean} boolean indicating if an environment has native WebAssembly support\n*\n* @example\n* var bool = hasWebAssemblySupport();\n* // returns \n*/\nfunction hasWebAssemblySupport() {\n\treturn ( typeof WebAssembly === 'object' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasWebAssemblySupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native WebAssembly support.\n*\n* @module @stdlib/assert/has-wasm-support\n*\n* @example\n* var hasWebAssemblySupport = require( '@stdlib/assert/has-wasm-support' );\n*\n* var bool = hasWebAssemblySupport();\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\nvar main = ( typeof WeakMap === 'function' ) ? WeakMap : null;\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar GlobalWeakMap = require( './weakmap.js' );\n\n\n// MAIN //\n\n/**\n* Tests for native `WeakMap` support.\n*\n* @returns {boolean} boolean indicating if an environment has `WeakMap` support\n*\n* @example\n* var bool = hasWeakMapSupport();\n* // returns \n*/\nfunction hasWeakMapSupport() {\n\tvar bool;\n\tvar key;\n\tvar wm;\n\n\tif ( typeof GlobalWeakMap !== 'function' ) {\n\t\treturn false;\n\t}\n\t// Test basic support...\n\ttry {\n\t\tkey = {};\n\t\twm = new GlobalWeakMap();\n\t\twm.set( key, 'beep' );\n\t\tbool = (\n\t\t\twm.has( key ) &&\n\t\t\twm.get( key ) === 'beep'\n\t\t);\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\tbool = false;\n\t}\n\treturn bool;\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasWeakMapSupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `WeakMap` support.\n*\n* @module @stdlib/assert/has-weakmap-support\n*\n* @example\n* var hasWeakMapSupport = require( '@stdlib/assert/has-weakmap-support' );\n*\n* var bool = hasWeakMapSupport();\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\nvar main = ( typeof WeakSet === 'function' ) ? WeakSet : null;\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar GlobalWeakSet = require( './weakset.js' );\n\n\n// MAIN //\n\n/**\n* Tests for native `WeakSet` support.\n*\n* @returns {boolean} boolean indicating if an environment has `WeakSet` support\n*\n* @example\n* var bool = hasWeakSetSupport();\n* // returns \n*/\nfunction hasWeakSetSupport() {\n\tvar bool;\n\tvar val;\n\tvar ws;\n\n\tif ( typeof GlobalWeakSet !== 'function' ) {\n\t\treturn false;\n\t}\n\t// Test basic support...\n\ttry {\n\t\tval = {};\n\t\tws = new GlobalWeakSet();\n\t\tws.add( val );\n\t\tws.add( val );\n\t\tbool = ws.has( val );\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\tbool = false;\n\t}\n\treturn bool;\n}\n\n\n// EXPORTS //\n\nmodule.exports = hasWeakSetSupport;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test for native `WeakSet` support.\n*\n* @module @stdlib/assert/has-weakset-support\n*\n* @example\n* var hasWeakSetSupport = require( '@stdlib/assert/has-weakset-support' );\n*\n* var bool = hasWeakSetSupport();\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar format = require( '@stdlib/string/format' );\n\n\n// MAIN //\n\n/**\n* Tests whether a value has in its prototype chain a specified constructor as a prototype property.\n*\n* @param {*} value - value to test\n* @param {Function} constructor - constructor to test against\n* @throws {TypeError} constructor must be callable\n* @returns {boolean} boolean indicating whether a value is an instance of a provided constructor\n*\n* @example\n* var bool = instanceOf( [], Array );\n* // returns true\n*\n* @example\n* var bool = instanceOf( {}, Object ); // exception\n* // returns true\n*\n* @example\n* var bool = instanceOf( 'beep', String );\n* // returns false\n*\n* @example\n* var bool = instanceOf( null, Object );\n* // returns false\n*\n* @example\n* var bool = instanceOf( 5, Object );\n* // returns false\n*/\nfunction instanceOf( value, constructor ) {\n\t// TODO: replace with `isCallable` check\n\tif ( typeof constructor !== 'function' ) {\n\t\tthrow new TypeError( format( 'invalid argument. Second argument must be callable. Value: `%s`.', constructor ) );\n\t}\n\treturn ( value instanceof constructor );\n}\n\n\n// EXPORTS //\n\nmodule.exports = instanceOf;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether a value has in its prototype chain a specified constructor as a prototype property.\n*\n* @module @stdlib/assert/instance-of\n*\n* @example\n* var instanceOf = require( '@stdlib/assert/instance-of' );\n*\n* var bool = instanceOf( [], Array );\n* // returns true\n*\n* bool = instanceOf( {}, Object ); // exception\n* // returns true\n*\n* bool = instanceOf( 'beep', String );\n* // returns false\n*\n* bool = instanceOf( null, Object );\n* // returns false\n*\n* bool = instanceOf( 5, Object );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\n\n\n// VARIABLES //\n\n/**\n* Matches parts of a URI according to RFC 3986.\n*\n* ```text\n* : [ ? ] [ # ]\n* ```\n*\n* Regular expression: `/(?:([^:\\/?#]+):)?(?:\\/\\/([^\\/?#]*))?([^?#]*)(?:\\?[^#]*)?(?:#.*)?/`\n*\n* - `(?:([^:\\/?#]+):)`\n*\n* - match the scheme, including the `:`, but only capture the scheme name\n*\n* - `?`\n*\n* - match the scheme zero or one times\n*\n* - `(?:\\/\\/([^\\/?#]*))`\n*\n* - match the hierarchical part which is everything which is not a `/`, `#`, or `?`, but only capture whatever comes after the `//`\n*\n* - `?`\n*\n* - match the hierarchical part zero or one times\n*\n* - `([^?#]*)`\n*\n* - capture everything (the path) until meeting a `?` or `#`\n*\n* - `(?:\\?[^#]*)`\n*\n* - match, but don't capture, a query\n*\n* - `?`\n*\n* - match the query zero or one times\n*\n* - `(?:#.*)`\n*\n* - match, but don't capture, a fragment\n*\n* - `?`\n*\n* - match the fragment zero or one times\n*\n* @private\n* @constant\n* @type {RegExp}\n* @default /(?:([^:\\/?#]+):)?(?:\\/\\/([^\\/?#]*))?([^?#]*)(?:\\?[^#]*)?(?:#.*)?/\n*/\nvar RE_URI = /(?:([^:\\/?#]+):)?(?:\\/\\/([^\\/?#]*))?([^?#]*)(?:\\?[^#]*)?(?:#.*)?/; // eslint-disable-line no-useless-escape\n\n// Illegal characters (anything which is not in between the square brackets):\nvar RE_ILLEGALS = /[^a-z0-9:\\/?#\\[\\]@!$&'()*+,;=.\\-_~%]/i; // eslint-disable-line no-useless-escape\n\n// Incomplete HEX escapes:\nvar RE_HEX1 = /%[^0-9a-f]/i;\nvar RE_HEX2 = /%[0-9a-f](:?[^0-9a-f]|$)/i;\n\n// If authority is not present, path must not begin with '//'\nvar RE_PATH = /^\\/\\//;\n\n// Scheme must begin with a letter, then consist of letters, digits, '+', '.', or '-' => e.g., 'http', 'https', 'ftp'\nvar RE_SCHEME = /^[a-z][a-z0-9+\\-.]*$/;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a URI.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a URI\n*\n* @example\n* var bool = isURI( 'http://google.com' );\n* // returns true\n*\n* @example\n* var bool = isURI( 'http://localhost/' );\n* // returns true\n*\n* @example\n* var bool = isURI( 'http://example.w3.org/path%20with%20spaces.html' );\n* // returns true\n*\n* @example\n* var bool = isURI( 'http://example.w3.org/%20' );\n* // returns true\n*\n* @example\n* var bool = isURI( 'ftp://ftp.is.co.za/rfc/rfc1808.txt' );\n* // returns true\n*\n* @example\n* var bool = isURI( 'ftp://ftp.is.co.za/../../../rfc/rfc1808.txt' );\n* // returns true\n*\n* @example\n* var bool = isURI( 'http://www.ietf.org/rfc/rfc2396.txt' );\n* // returns true\n*\n* @example\n* var bool = isURI( 'ldap://[2001:db8::7]/c=GB?objectClass?one' );\n* // returns true\n*\n* @example\n* var bool = isURI( 'mailto:John.Doe@example.com' );\n* // returns true\n*\n* @example\n* var bool = isURI( 'news:comp.infosystems.www.servers.unix' );\n* // returns true\n*\n* @example\n* var bool = isURI( 'tel:+1-816-555-1212' );\n* // returns true\n*\n* @example\n* var bool = isURI( 'telnet://192.0.2.16:80/' );\n* // returns true\n*\n* @example\n* var bool = isURI( 'urn:oasis:names:specification:docbook:dtd:xml:4.1.2' );\n* // returns true\n*\n* @example\n* // No scheme:\n* var bool = isURI( '' );\n* // returns false\n*\n* @example\n* // No scheme:\n* var bool = isURI( 'foo' );\n* // returns false\n*\n* @example\n* // No scheme:\n* var bool = isURI( 'foo@bar' );\n* // returns false\n*\n* @example\n* // No scheme:\n* var bool = isURI( '://foo/' );\n* // returns false\n*\n* @example\n* // Illegal characters:\n* var bool = isURI( 'http://' );\n* // returns false\n*\n* @example\n* // Invalid path:\n* var bool = isURI( 'http:////foo.html' );\n* // returns false\n*\n* @example\n* // Incomplete hex escapes...\n* var bool = isURI( 'http://example.w3.org/%a' );\n* // returns false\n*\n* @example\n* var bool = isURI( 'http://example.w3.org/%a/foo' );\n* // returns false\n*\n* @example\n* var bool = isURI( 'http://example.w3.org/%at' );\n* // returns false\n*/\nfunction isURI( value ) {\n\tvar authority;\n\tvar scheme;\n\tvar parts;\n\tvar path;\n\n\tif ( !isString( value ) ) {\n\t\treturn false;\n\t}\n\t// Check for illegal characters:\n\tif ( RE_ILLEGALS.test( value ) ) {\n\t\treturn false;\n\t}\n\t// Check for incomplete HEX escapes:\n\tif (\n\t\tRE_HEX1.test( value ) ||\n\t\tRE_HEX2.test( value )\n\t) {\n\t\treturn false;\n\t}\n\t// Split the string into various URI components:\n\tparts = value.match( RE_URI );\n\tscheme = parts[ 1 ];\n\tauthority = parts[ 2 ];\n\tpath = parts[ 3 ];\n\n\t// Scheme is required and must be valid:\n\tif (\n\t\t!scheme ||\n\t\t!scheme.length ||\n\t\t!RE_SCHEME.test( scheme.toLowerCase() )\n\t) {\n\t\treturn false;\n\t}\n\t// If authority is not present, path must not begin with `//`:\n\tif (\n\t\t!authority &&\n\t\tRE_PATH.test( path )\n\t) {\n\t\treturn false;\n\t}\n\treturn true;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isURI;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a URI.\n*\n* @module @stdlib/assert/is-uri\n*\n* @example\n* var isURI = require( '@stdlib/assert/is-uri' );\n*\n* var bool = isURI( 'http://google.com' );\n* // returns true\n*\n* bool = isURI( 'http://localhost/' );\n* // returns true\n*\n* bool = isURI( 'http://example.w3.org/path%20with%20spaces.html' );\n* // returns true\n*\n* bool = isURI( 'http://example.w3.org/%20' );\n* // returns true\n*\n* bool = isURI( 'ftp://ftp.is.co.za/rfc/rfc1808.txt' );\n* // returns true\n*\n* bool = isURI( 'ftp://ftp.is.co.za/../../../rfc/rfc1808.txt' );\n* // returns true\n*\n* bool = isURI( 'http://www.ietf.org/rfc/rfc2396.txt' );\n* // returns true\n*\n* bool = isURI( 'ldap://[2001:db8::7]/c=GB?objectClass?one' );\n* // returns true\n*\n* bool = isURI( 'mailto:John.Doe@example.com' );\n* // returns true\n*\n* bool = isURI( 'news:comp.infosystems.www.servers.unix' );\n* // returns true\n*\n* bool = isURI( 'tel:+1-816-555-1212' );\n* // returns true\n*\n* bool = isURI( 'telnet://192.0.2.16:80/' );\n* // returns true\n*\n* bool = isURI( 'urn:oasis:names:specification:docbook:dtd:xml:4.1.2' );\n* // returns true\n*\n* // No scheme:\n* bool = isURI( '' );\n* // returns false\n*\n* // No scheme:\n* bool = isURI( 'foo' );\n* // returns false\n*\n* // No scheme:\n* bool = isURI( 'foo@bar' );\n* // returns false\n*\n* // No scheme:\n* bool = isURI( '://foo/' );\n* // returns false\n*\n* // Illegal characters:\n* bool = isURI( 'http://' );\n* // returns false\n*\n* // Invalid path:\n* bool = isURI( 'http:////foo.html' );\n* // returns false\n*\n* // Incomplete hex escapes...\n* bool = isURI( 'http://example.w3.org/%a' );\n* // returns false\n*\n* bool = isURI( 'http://example.w3.org/%a/foo' );\n* // returns false\n*\n* bool = isURI( 'http://example.w3.org/%at' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isURI = require( './../../is-uri' );\n\n\n// VARIABLES //\n\nvar RE_HTTPS = /^https?:\\/\\//;\n\n\n// MAIN //\n\n/**\n* Tests whether a value is an absolute HTTP(S) URI.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is an absolute URI\n*\n* @example\n* var bool = isAbsoluteHttpURI( 'https://example.com' );\n* // returns true\n*\n* @example\n* var bool = isAbsoluteHttpURI( 'https://example.com/docs#heading' );\n* // returns true\n*\n* @example\n* var bool = isAbsoluteHttpURI( 'ftp://example.com' );\n* // returns false\n*\n* @example\n* var bool = isAbsoluteHttpURI( '/dashboard' );\n* // returns false\n*\n* @example\n* var bool = isAbsoluteHttpURI( './png.json' );\n* // returns false\n*\n* @example\n* var bool = isAbsoluteHttpURI( null );\n* // returns false\n*/\nfunction isAbsoluteHttpURI( value ) {\n\treturn isURI( value ) && RE_HTTPS.test( value );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isAbsoluteHttpURI;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether a value is an absolute HTTP(S) URI.\n*\n* @module @stdlib/assert/is-absolute-http-uri\n*\n* @example\n* var isAbsoluteHttpURI = require( '@stdlib/assert/is-absolute-http-uri' );\n*\n* var bool = isAbsoluteHttpURI( 'http://example.com' );\n* // returns true\n*\n* bool = isAbsoluteHttpURI( './beep/boop' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Boolean indicating if the current process is running on Windows.\n*\n* @module @stdlib/assert/is-windows\n* @type {boolean}\n*\n* @example\n* var PLATFORM = require( '@stdlib/os/platform' );\n* var IS_WINDOWS = require( '@stdlib/assert/is-windows' );\n*\n* if ( IS_WINDOWS ) {\n* console.log( 'Running on Windows...' );\n* } else {\n* console.log( 'Running on %s...', PLATFORM );\n* }\n*/\n\n// MODULES //\n\nvar PLATFORM = require( '@stdlib/os/platform' );\n\n\n// MAIN //\n\n/**\n* Boolean indicating if the current process is running on Windows.\n*\n* @constant\n* @type {boolean}\n*/\nvar IS_WINDOWS = ( PLATFORM === 'win32' );\n\n\n// EXPORTS //\n\nmodule.exports = IS_WINDOWS;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a POSIX absolute path.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a POSIX absolute path\n*\n* @example\n* var bool = isAbsolutePath( '/foo/bar/baz' );\n* // returns true\n*\n* @example\n* var bool = isAbsolutePath( 'foo/bar/baz' );\n* // returns false\n*/\nfunction isAbsolutePath( value ) {\n\t// Must be string longer than `0` characters and start with a forward slash '/':\n\treturn (\n\t\tisString( value ) &&\n\t\tvalue.length > 0 &&\n\t\tvalue.charCodeAt( 0 ) === 47\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isAbsolutePath;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a Windows absolute path.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a Windows absolute path\n*\n* @example\n* var bool = isAbsolutePath( 'C:\\\\foo\\\\bar\\\\baz' );\n* // returns true\n*\n* @example\n* var bool = isAbsolutePath( 'foo\\\\bar\\\\baz' );\n* // returns false\n*/\nfunction isAbsolutePath( value ) {\n\tvar code;\n\tvar len;\n\tif ( !isString( value ) ) {\n\t\treturn false;\n\t}\n\tlen = value.length;\n\tif ( len === 0 ) {\n\t\treturn false;\n\t}\n\tcode = value.charCodeAt( 0 );\n\n\t// Check if the string begins with either a forward '/' or backward slash '\\\\':\n\tif ( code === 47 || code === 92 ) {\n\t\treturn true;\n\t}\n\t// Check for a device root (e.g., C:\\\\)...\n\tif (\n\t\t(code >= 65 && code <= 90) || // A-Z\n\t\t(code >= 97 && code <= 122) // a-z\n\t) {\n\t\t// Check if the string has a colon ':' character:\n\t\tif ( len > 2 && value.charCodeAt( 1 ) === 58 ) {\n\t\t\tcode = value.charCodeAt( 2 );\n\n\t\t\t// Check for either a forward or backward slash:\n\t\t\tif ( code === 47 || code === 92 ) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isAbsolutePath;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an absolute path.\n*\n* @module @stdlib/assert/is-absolute-path\n*\n* @example\n* var IS_WINDOWS = require( '@stdlib/assert/is-windows' );\n* var isAbsolutePath = require( '@stdlib/assert/is-absolute-path' );\n*\n* var bool;\n* if ( IS_WINDOWS ) {\n* bool = isAbsolutePath( 'C:\\\\foo\\\\bar\\\\baz' );\n* // returns true\n* } else {\n* bool = isAbsolutePath( '/foo/bar/baz' );\n* // returns true\n* }\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar IS_WINDOWS = require( './../../is-windows' );\nvar isAbsolutePathPosix = require( './posix.js' );\nvar isAbsolutePathWin32 = require( './win32.js' );\n\n\n// MAIN //\n\nvar isAbsolutePath;\nif ( IS_WINDOWS ) {\n\tisAbsolutePath = isAbsolutePathWin32;\n} else {\n\tisAbsolutePath = isAbsolutePathPosix;\n}\nsetReadOnly( isAbsolutePath, 'posix', isAbsolutePathPosix );\nsetReadOnly( isAbsolutePath, 'win32', isAbsolutePathWin32 );\n\n\n// EXPORTS //\n\nmodule.exports = isAbsolutePath;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isURI = require( './../../is-uri' );\n\n\n// MAIN //\n\n/**\n* Tests whether a value is an absolute URI.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is an absolute URI\n*\n* @example\n* var bool = isAbsoluteURI( 'https://example.com' );\n* // returns true\n*\n* @example\n* var bool = isAbsoluteURI( 'https://example.com/docs#heading' );\n* // returns true\n*\n* @example\n* var bool = isAbsoluteURI( '/dashboard' );\n* // returns false\n*\n* @example\n* var bool = isAbsoluteURI( './png.json' );\n* // returns false\n*\n* @example\n* var bool = isAbsoluteURI( null );\n* // returns false\n*/\nfunction isAbsoluteURI( value ) {\n\treturn isURI( value );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isAbsoluteURI;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether a value is an absolute URI.\n*\n* @module @stdlib/assert/is-absolute-uri\n*\n* @example\n* var isAbsoluteURI = require( '@stdlib/assert/is-absolute-uri' );\n*\n* var bool = isAbsoluteURI( 'http://example.com' );\n* // returns true\n*\n* bool = isAbsoluteURI( './beep/boop' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2022 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isCollection = require( './../../is-collection' );\nvar isFunction = require( './../../is-function' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is an array-like object supporting the accessor (get/set) protocol.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is an accessor array\n*\n* @example\n* var Complex128Array = require( '@stdlib/array/complex128' );\n*\n* var bool = isAccessorArray( new Complex128Array( 10 ) );\n* // returns true\n*\n* @example\n* var bool = isAccessorArray( [] );\n* // returns false\n*\n* @example\n* var bool = isAccessorArray( {} );\n* // returns false\n*/\nfunction isAccessorArray( value ) {\n\treturn (\n\t\tisCollection( value ) &&\n\t\tisFunction( value.get ) &&\n\t\tisFunction( value.set )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isAccessorArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2022 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array-like object supporting the accessor (get/set) protocol.\n*\n* @module @stdlib/assert/is-accessor-array\n*\n* @example\n* var Complex128Array = require( '@stdlib/array/complex128array' );\n* var isAccessorArray = require( '@stdlib/assert/is-accessor-array' );\n*\n* var bool = isAccessorArray( new Complex128Array( 10 ) );\n* // returns true\n*\n* bool = isAccessorArray( [] );\n* // returns false\n*\n* bool = isAccessorArray( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar propertyDescriptor = require( '@stdlib/utils/property-descriptor' );\n\n\n// MAIN //\n\n/**\n* Tests if an object's own property has an accessor descriptor.\n*\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object property has an accessor descriptor\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* function getter() {\n* return 'beep';\n* }\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': false,\n* 'get': getter\n* });\n*\n* var bool = isAccessorProperty( obj, 'boop' );\n* // returns false\n*\n* bool = isAccessorProperty( obj, 'beep' );\n* // returns true\n*/\nfunction isAccessorProperty( value, property ) {\n\tvar desc = propertyDescriptor( value, property );\n\treturn (\n\t\tdesc !== null &&\n\t\t(\n\t\t\ttypeof desc.get === 'function' ||\n\t\t\ttypeof desc.set === 'function'\n\t\t)\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isAccessorProperty;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object's own property has an accessor descriptor.\n*\n* @module @stdlib/assert/is-accessor-property\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n* var isAccessorProperty = require( '@stdlib/assert/is-accessor-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* function getter() {\n* return 'beep';\n* }\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': false,\n* 'get': getter\n* });\n*\n* var bool = isAccessorProperty( obj, 'boop' );\n* // returns false\n*\n* bool = isAccessorProperty( obj, 'beep' );\n* // returns true\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar propertyDescriptorIn = require( '@stdlib/utils/property-descriptor-in' );\n\n\n// MAIN //\n\n/**\n* Tests if an object's own or inherited property has an accessor descriptor.\n*\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object property has an accessor descriptor\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* function getter() {\n* return 'beep';\n* }\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': false,\n* 'get': getter\n* });\n*\n* var bool = isAccessorPropertyIn( obj, 'boop' );\n* // returns false\n*\n* bool = isAccessorPropertyIn( obj, 'beep' );\n* // returns true\n*/\nfunction isAccessorPropertyIn( value, property ) {\n\tvar desc = propertyDescriptorIn( value, property );\n\treturn (\n\t\tdesc !== null &&\n\t\t(\n\t\t\ttypeof desc.get === 'function' ||\n\t\t\ttypeof desc.set === 'function'\n\t\t)\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isAccessorPropertyIn;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object's own or inherited property has an accessor descriptor.\n*\n* @module @stdlib/assert/is-accessor-property-in\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n* var isAccessorPropertyIn = require( '@stdlib/assert/is-accessor-property-in' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* function getter() {\n* return 'beep';\n* }\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': false,\n* 'get': getter\n* });\n*\n* var bool = isAccessorPropertyIn( obj, 'boop' );\n* // returns false\n*\n* bool = isAccessorPropertyIn( obj, 'beep' );\n* // returns true\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is an alphagram.\n*\n* @param {*} x - value to test\n* @returns {boolean} boolean indicating if a value is an alphagram\n*\n* @example\n* var out = isAlphagram( 'beep' );\n* // returns true\n*\n* @example\n* var out = isAlphagram( new String( 'beep' ) );\n* // returns true\n*\n* @example\n* var out = isAlphagram( 'zba' );\n* // returns false\n*\n* @example\n* var out = isAlphagram( '' );\n* // returns false\n*\n* @example\n* var out = isAlphagram( 123 );\n* // returns false\n*/\nfunction isAlphagram( x ) {\n\tvar len;\n\tvar i;\n\n\tif ( !isString( x ) ) {\n\t\treturn false;\n\t}\n\tlen = x.length;\n\tif ( !len ) {\n\t\treturn false;\n\t}\n\tfor ( i = 1; i < len; i++ ) {\n\t\tif ( x[ i-1 ] > x[ i ] ) {\n\t\t\treturn false;\n\t\t}\n\t}\n\treturn true;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isAlphagram;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an alphagram.\n*\n* @module @stdlib/assert/is-alphagram\n*\n* @example\n* var isAlphagram = require( '@stdlib/assert/is-alphagram' );\n*\n* var out = isAlphagram( 'beep' );\n* // returns true\n*\n* out = isAlphagram( 'zba' );\n* // returns false\n*\n* out = isAlphagram( '' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\n\n\n// VARIABLES //\n\n// Character codes:\nvar ZERO = 48;\nvar NINE = 57;\nvar A = 65;\nvar Z = 90;\nvar a = 97;\nvar z = 122;\n\n\n// MAIN //\n\n/**\n* Tests whether a string contains only alphanumeric characters.\n*\n* @param {*} x - value to test\n* @returns {boolean} boolean indicating if a string contains only alphanumeric characters\n*\n* @example\n* var out = isAlphaNumeric( 'abc123def456' );\n* // returns true\n*\n* @example\n* var out = isAlphaNumeric( '0xffffff' );\n* // returns true\n*\n* @example\n* var out = isAlphaNumeric( '123' );\n* // returns true\n*\n* @example\n* var out = isAlphaNumeric( '' );\n* // returns false\n*\n* @example\n* var out = isAlphaNumeric( 123 );\n* // returns false\n*/\nfunction isAlphaNumeric( x ) {\n\tvar len;\n\tvar ch;\n\tvar i;\n\tif ( !isString( x ) ) {\n\t\treturn false;\n\t}\n\tlen = x.length;\n\tif ( len === 0 ) {\n\t\treturn false;\n\t}\n\tfor ( i = 0; i < len; i++ ) {\n\t\tch = x.charCodeAt( i );\n\t\tif (\n\t\t\t(ch < ZERO || ch > NINE) &&\n\t\t\t(ch < a || ch > z) &&\n\t\t\t(ch < A || ch > Z)\n\t\t) {\n\t\t\treturn false;\n\t\t}\n\t}\n\treturn true;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isAlphaNumeric;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether a string contains only alphanumeric characters.\n*\n* @module @stdlib/assert/is-alphanumeric\n*\n* @example\n* var isAlphaNumeric = require( '@stdlib/assert/is-alphanumeric' );\n*\n* var out = isAlphaNumeric( 'abc123a' );\n* // returns true\n*\n* out = isAlphaNumeric( '0xffffff' );\n* // returns true\n*\n* out = isAlphaNumeric( '' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar lowercase = require( '@stdlib/string/base/lowercase' );\nvar replace = require( '@stdlib/string/base/replace' );\nvar isString = require( './../../is-string' ).isPrimitive;\nvar format = require( '@stdlib/string/format' );\n\n\n// VARIABLES //\n\nvar RE_NON_ALPHANUMERIC = /[^a-z0-9]/g;\n\n\n// FUNCTIONS //\n\n/**\n* Comparator function for sorting characters in ascending order.\n*\n* @private\n* @param {string} a - character\n* @param {string} b - character\n* @returns {number} comparison value\n*/\nfunction ascending( a, b ) {\n\tif ( a < b ) {\n\t\treturn -1;\n\t}\n\tif ( a === b ) {\n\t\treturn 0;\n\t}\n\treturn 1;\n}\n\n\n// MAIN //\n\n/**\n* Tests if a value is an anagram.\n*\n* @param {string} str - comparison string\n* @param {*} x - value to test\n* @throws {TypeError} first argument must be a string\n* @returns {boolean} boolean indicating if a value is an anagram\n*\n* @example\n* var bool = isAnagram( 'I am a weakish speller', 'William Shakespeare' );\n* // returns true\n*\n* @example\n* var bool = isAnagram( 'bat', 'tabba' );\n* // returns false\n*/\nfunction isAnagram( str, x ) {\n\tif ( !isString( str ) ) {\n\t\tthrow new TypeError( format( 'invalid argument. First argument must be a string. Value: `%s`.', str ) );\n\t}\n\tif ( !isString( x ) ) {\n\t\treturn false;\n\t}\n\tstr = replace( lowercase( str ), RE_NON_ALPHANUMERIC, '' );\n\tx = replace( lowercase( x ), RE_NON_ALPHANUMERIC, '' );\n\tif ( str.length !== x.length ) {\n\t\treturn false;\n\t}\n\tstr = str.split( '' ).sort( ascending ).join( '' );\n\tx = x.split( '' ).sort( ascending ).join( '' );\n\treturn ( str === x );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isAnagram;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an anagram.\n*\n* @module @stdlib/assert/is-anagram\n*\n* @example\n* var isAnagram = require( '@stdlib/assert/is-anagram' );\n*\n* var bool = isAnagram( 'I am a weakish speller', 'William Shakespeare' );\n* // returns true\n*\n* bool = isAnagram( 'bat', 'tabba' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar nativeClass = require( '@stdlib/utils/native-class' );\n\n\n// MAIN //\n\n/**\n* Tests whether a value is an `arguments` object.\n*\n* @private\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is an `arguments` object\n*\n* @example\n* function foo() {\n* return arguments;\n* }\n*\n* var bool = isArguments( foo() );\n* // returns true\n*\n* @example\n* var bool = isArguments( [] );\n* // returns false\n*/\nfunction isArguments( value ) {\n\treturn ( nativeClass( value ) === '[object Arguments]' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isArguments;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isArguments = require( './main.js' );\n\n\n// VARIABLES //\n\nvar bool;\n\n\n// FUNCTIONS //\n\n/**\n* Detects whether an environment returns the expected internal class of the `arguments` object.\n*\n* @private\n* @returns {boolean} boolean indicating whether an environment behaves as expected\n*\n* @example\n* var bool = detect();\n* // returns \n*/\nfunction detect() {\n\treturn isArguments( arguments );\n}\n\n\n// MAIN //\n\nbool = detect();\n\n\n// EXPORTS //\n\nmodule.exports = bool;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\n/**\n* Tests if an object's own property is enumerable.\n*\n* @private\n* @name isEnumerableProperty\n* @type {Function}\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object property is enumerable\n*\n* @example\n* var beep = {\n* 'boop': true\n* };\n*\n* var bool = isEnumerableProperty( beep, 'boop' );\n* // returns true\n*\n* @example\n* var beep = {\n* 'boop': true\n* };\n*\n* var bool = isEnumerableProperty( beep, 'hasOwnProperty' );\n* // returns false\n*/\nvar isEnumerableProperty = Object.prototype.propertyIsEnumerable;\n\n\n// EXPORTS //\n\nmodule.exports = isEnumerableProperty;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isEnum = require( './native.js' );\n\n\n// VARIABLES //\n\nvar bool;\n\n\n// FUNCTIONS //\n\n/**\n* Detects whether an environment has a bug where String indices are not detected as \"enumerable\" properties. Observed in Node v0.10.\n*\n* @private\n* @returns {boolean} boolean indicating whether an environment has the bug\n*/\nfunction detect() {\n\treturn !isEnum.call( 'beep', '0' );\n}\n\n\n// MAIN //\n\nbool = detect();\n\n\n// EXPORTS //\n\nmodule.exports = bool;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' );\nvar isnan = require( './../../is-nan' ).isPrimitive;\nvar isInteger = require( './../../is-integer' ).isPrimitive;\nvar isEnum = require( './native.js' );\nvar hasStringEnumBug = require( './has_string_enumerability_bug.js' );\n\n\n// MAIN //\n\n/**\n* Tests if an object's own property is enumerable.\n*\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object property is enumerable\n*\n* @example\n* var beep = {\n* 'boop': true\n* };\n*\n* var bool = isEnumerableProperty( beep, 'boop' );\n* // returns true\n*\n* @example\n* var beep = {\n* 'boop': true\n* };\n*\n* var bool = isEnumerableProperty( beep, 'hasOwnProperty' );\n* // returns false\n*/\nfunction isEnumerableProperty( value, property ) {\n\tvar bool;\n\tif (\n\t\tvalue === void 0 ||\n\t\tvalue === null\n\t) {\n\t\treturn false;\n\t}\n\tbool = isEnum.call( value, property );\n\tif ( !bool && hasStringEnumBug && isString( value ) ) {\n\t\t// Note: we only check for indices, as properties attached to a `String` object are properly detected as enumerable above.\n\t\tproperty = +property;\n\t\treturn (\n\t\t\t!isnan( property ) &&\n\t\t\tisInteger( property ) &&\n\t\t\tproperty >= 0 &&\n\t\t\tproperty < value.length\n\t\t);\n\t}\n\treturn bool;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isEnumerableProperty;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object's own property is enumerable.\n*\n* @module @stdlib/assert/is-enumerable-property\n*\n* @example\n* var isEnumerableProperty = require( '@stdlib/assert/is-enumerable-property' );\n*\n* var beep = {\n* 'boop': true\n* };\n*\n* var bool = isEnumerableProperty( beep, 'boop' );\n* // returns true\n*\n* bool = isEnumerableProperty( beep, 'hasOwnProperty' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar hasOwnProp = require( './../../has-own-property' );\nvar isEnumerableProperty = require( './../../is-enumerable-property' );\nvar isArray = require( './../../is-array' );\nvar isInteger = require( '@stdlib/math/base/assert/is-integer' );\nvar MAX_LENGTH = require( '@stdlib/constants/uint32/max' );\n\n\n// MAIN //\n\n/**\n* Tests whether a value is an `arguments` object.\n*\n* @private\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is an `arguments` object\n*\n* @example\n* function foo() {\n* return arguments;\n* }\n*\n* var bool = isArguments( foo() );\n* // returns true\n*\n* @example\n* var bool = isArguments( [] );\n* // returns false\n*/\nfunction isArguments( value ) {\n\treturn (\n\t\tvalue !== null &&\n\t\ttypeof value === 'object' &&\n\t\t!isArray( value ) &&\n\t\ttypeof value.length === 'number' &&\n\t\tisInteger( value.length ) &&\n\t\tvalue.length >= 0 &&\n\t\tvalue.length <= MAX_LENGTH &&\n\t\thasOwnProp( value, 'callee' ) &&\n\t\t!isEnumerableProperty( value, 'callee' )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isArguments;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an `arguments` object.\n*\n* @module @stdlib/assert/is-arguments\n*\n* @example\n* var isArguments = require( '@stdlib/assert/is-arguments' );\n*\n* function foo() {\n* return arguments;\n* }\n*\n* var bool = isArguments( foo() );\n* // returns true\n*\n* bool = isArguments( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar hasArgumentsClass = require( './detect.js' );\nvar main = require( './main.js' );\nvar polyfill = require( './polyfill.js' );\n\n\n// MAIN //\n\nvar isArguments;\nif ( hasArgumentsClass ) {\n\tisArguments = main;\n} else {\n\tisArguments = polyfill;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isArguments;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar arrayfun = require( './../../tools/array-function' );\nvar isArray = require( './../../is-array' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is an array of arrays.\n*\n* @name isArrayArray\n* @type {Function}\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is an array of arrays\n*\n* @example\n* var bool = isArrayArray( [ [], [] ] );\n* // returns true\n*\n* bool = isArrayArray( [ {}, {} ] );\n* // returns false\n*\n* bool = isArrayArray( [] );\n* // returns false\n*/\nvar isArrayArray = arrayfun( isArray );\n\n\n// EXPORTS //\n\nmodule.exports = isArrayArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array of arrays.\n*\n* @module @stdlib/assert/is-array-array\n*\n* @example\n* var isArrayArray = require( '@stdlib/assert/is-array-array' );\n*\n* var bool = isArrayArray( [ [], [] ] );\n* // returns true\n*\n* bool = isArrayArray( [ {}, {} ] );\n* // returns false\n*\n* bool = isArrayArray( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInteger = require( './../../is-integer' ).isPrimitive;\nvar MAX_ARRAY_LENGTH = require( '@stdlib/constants/array/max-array-length' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a valid array length.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a valid array length\n*\n* @example\n* var bool = isArrayLength( 3 );\n* // returns true\n*\n* @example\n* var bool = isArrayLength( 3.14 );\n* // returns false\n*/\nfunction isArrayLength( value ) {\n\treturn (\n\t\tisInteger( value ) &&\n\t\tvalue >= 0 &&\n\t\tvalue <= MAX_ARRAY_LENGTH\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isArrayLength;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a valid array length.\n*\n* @module @stdlib/assert/is-array-length\n*\n* @example\n* var isArrayLength = require( '@stdlib/assert/is-array-length' );\n*\n* var bool = isArrayLength( 5 );\n* // returns true\n*\n* bool = isArrayLength( 2.0e200 );\n* // returns false\n*\n* bool = isArrayLength( -3.14 );\n* // returns false\n*\n* bool = isArrayLength( null );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInteger = require( '@stdlib/math/base/assert/is-integer' );\nvar MAX_LENGTH = require( '@stdlib/constants/array/max-array-length' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is array-like.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is array-like\n*\n* @example\n* var bool = isArrayLike( [] );\n* // returns true\n*\n* @example\n* var bool = isArrayLike( {'length':10} );\n* // returns true\n*/\nfunction isArrayLike( value ) {\n\treturn (\n\t\tvalue !== void 0 &&\n\t\tvalue !== null &&\n\t\ttypeof value !== 'function' &&\n\t\ttypeof value.length === 'number' &&\n\t\tisInteger( value.length ) &&\n\t\tvalue.length >= 0 &&\n\t\tvalue.length <= MAX_LENGTH\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isArrayLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is array-like.\n*\n* @module @stdlib/assert/is-array-like\n*\n* @example\n* var isArrayLike = require( '@stdlib/assert/is-array-like' );\n*\n* var bool = isArrayLike( [] );\n* // returns true\n*\n* bool = isArrayLike( { 'length': 10 } );\n* // returns true\n*\n* bool = isArrayLike( 'beep' );\n* // returns true\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInteger = require( '@stdlib/math/base/assert/is-integer' );\nvar MAX_LENGTH = require( '@stdlib/constants/array/max-array-length' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is an array-like object.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is an array-like object\n*\n* @example\n* var bool = isArrayLikeObject( [] );\n* // returns true\n*\n* @example\n* var bool = isArrayLikeObject( { 'length':10 } );\n* // returns true\n*\n* @example\n* var bool = isArrayLikeObject( 'beep' );\n* // returns false\n*/\nfunction isArrayLikeObject( value ) {\n\treturn (\n\t\ttypeof value === 'object' &&\n\t\tvalue !== null &&\n\t\ttypeof value.length === 'number' &&\n\t\tisInteger( value.length ) &&\n\t\tvalue.length >= 0 &&\n\t\tvalue.length <= MAX_LENGTH\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isArrayLikeObject;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array-like object.\n*\n* @module @stdlib/assert/is-array-like-object\n*\n* @example\n* var isArrayLikeObject = require( '@stdlib/assert/is-array-like-object' );\n*\n* var bool = isArrayLikeObject( [] );\n* // returns true\n*\n* bool = isArrayLikeObject( { 'length':10 } );\n* // returns true\n*\n* bool = isArrayLikeObject( 'beep' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar constantFunction = require( '@stdlib/utils/constant-function' );\n\n\n// MAIN //\n\nvar isArrayBufferView = constantFunction( false );\n\n\n// EXPORTS //\n\nmodule.exports = isArrayBufferView;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar Int8Array = require( '@stdlib/array/int8' );\nvar Uint8Array = require( '@stdlib/array/uint8' );\nvar Uint8ClampedArray = require( '@stdlib/array/uint8c' );\nvar Int16Array = require( '@stdlib/array/int16' );\nvar Uint16Array = require( '@stdlib/array/uint16' );\nvar Int32Array = require( '@stdlib/array/int32' );\nvar Uint32Array = require( '@stdlib/array/uint32' );\nvar Float32Array = require( '@stdlib/array/float32' );\nvar Float64Array = require( '@stdlib/array/float64' );\n\n\n// MAIN //\n\nvar CTORS = [\n\tFloat64Array,\n\tFloat32Array,\n\tInt32Array,\n\tUint32Array,\n\tInt16Array,\n\tUint16Array,\n\tInt8Array,\n\tUint8Array,\n\tUint8ClampedArray\n];\n\n\n// EXPORTS //\n\nmodule.exports = CTORS;\n", "[\n\t\"Int8Array\",\n\t\"Uint8Array\",\n\t\"Uint8ClampedArray\",\n\t\"Int16Array\",\n\t\"Uint16Array\",\n\t\"Int32Array\",\n\t\"Uint32Array\",\n\t\"Float32Array\",\n\t\"Float64Array\"\n]\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar ctorName = require( '@stdlib/utils/constructor-name' );\nvar fcnName = require( '@stdlib/utils/function-name' );\nvar getPrototypeOf = require( '@stdlib/utils/get-prototype-of' );\nvar hasFloat64ArraySupport = require( './../../has-float64array-support' );\nvar Float64Array = require( '@stdlib/array/float64' );\nvar CTORS = require( './ctors.js' );\nvar NAMES = require( './names.json' );\n\n\n// VARIABLES //\n\n// Abstract `TypedArray` class:\nvar TypedArray = ( hasFloat64ArraySupport() ) ? getPrototypeOf( Float64Array ) : Dummy; // eslint-disable-line max-len\n\n// Ensure abstract typed array class has expected name:\nTypedArray = ( fcnName( TypedArray ) === 'TypedArray' ) ? TypedArray : Dummy;\n\n\n// FUNCTIONS //\n\n/**\n* Dummy constructor.\n*\n* @private\n*/\nfunction Dummy() {} // eslint-disable-line no-empty-function\n\n\n// MAIN //\n\n/**\n* Tests if a value is a typed array.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a typed array\n*\n* @example\n* var Int8Array = require( '@stdlib/array/int8' );\n*\n* var bool = isTypedArray( new Int8Array( 10 ) );\n* // returns true\n*/\nfunction isTypedArray( value ) {\n\tvar v;\n\tvar i;\n\n\tif ( typeof value !== 'object' || value === null ) {\n\t\treturn false;\n\t}\n\t// Check for the abstract class...\n\tif ( value instanceof TypedArray ) {\n\t\treturn true;\n\t}\n\t// Check for typed array objects from the same realm (same Node.js `vm` or same `Window` object)...\n\tfor ( i = 0; i < CTORS.length; i++ ) {\n\t\tif ( value instanceof CTORS[ i ] ) {\n\t\t\treturn true;\n\t\t}\n\t}\n\t// Walk the prototype tree until we find an object having a desired class...\n\twhile ( value ) {\n\t\tv = ctorName( value );\n\t\tfor ( i = 0; i < NAMES.length; i++ ) {\n\t\t\tif ( NAMES[ i ] === v ) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t\tvalue = getPrototypeOf( value );\n\t}\n\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isTypedArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a typed array.\n*\n* @module @stdlib/assert/is-typed-array\n*\n* @example\n* var Int8Array = require( '@stdlib/array/int8' );\n* var isTypedArray = require( '@stdlib/assert/is-typed-array' );\n*\n* var bool = isTypedArray( new Int8Array( 10 ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isTypedArray = require( './../../is-typed-array' );\nvar isDataView = require( './../../is-dataview' );\n\n\n// MAIN //\n\n/**\n* Polyfill for determining whether an object is an array buffer view.\n*\n* ## Notes\n*\n* - This polyfill should only be used in environments which do not provide native `ArrayBuffer.isView` support.\n* - The implementation checks whether a value is a data view or typed array.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is an array buffer view\n*\n* @example\n* var Int8Array = require( '@stdlib/array/int8' );\n* var bool = isArrayBufferView( new Int8Array( 10 ) );\n* // returns true\n*\n* @example\n* var bool = isArrayBufferView( [] );\n* // returns false\n*/\nfunction isArrayBufferView( value ) {\n\treturn isTypedArray( value ) || isDataView( value );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isArrayBufferView;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar ArrayBuffer = require( '@stdlib/array/buffer' );\n\n\n// MAIN //\n\n/**\n* Determines whether an object is an array buffer view.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is an array buffer view\n*\n* @example\n* var Int8Array = require( '@stdlib/array/int8' );\n* var bool = isArrayBufferView( new Int8Array( 10 ) );\n* // returns true\n*\n* @example\n* var bool = isArrayBufferView( [] );\n* // returns false\n*/\nfunction isArrayBufferView( value ) {\n\treturn ArrayBuffer.isView( value );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isArrayBufferView;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an `ArrayBuffer` view.\n*\n* @module @stdlib/assert/is-arraybuffer-view\n*\n* @example\n* var isArrayBufferView = require( '@stdlib/assert/is-arraybuffer-view' );\n* var Int32Array = require( '@stdlib/array/int32' );\n*\n* var bool = isArrayBufferView( new Int32Array( 10 ) );\n* // returns true\n*\n* bool = isArrayBufferView( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar hasArrayBufferSupport = require( './../../has-arraybuffer-support' );\nvar isFunction = require( './../../is-function' );\nvar ArrayBuffer = require( '@stdlib/array/buffer' );\nvar noArraybuffer = require( './no_arraybuffer.js' );\nvar polyfill = require( './polyfill.js' );\nvar main = require( './main.js' );\n\n\n// MAIN //\n\nvar isArrayBufferView;\nif ( hasArrayBufferSupport() ) {\n\tif ( isFunction( ArrayBuffer.isView ) ) {\n\t\tisArrayBufferView = main;\n\t} else {\n\t\tisArrayBufferView = polyfill;\n\t}\n} else {\n\tisArrayBufferView = noArraybuffer;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isArrayBufferView;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isFunction = require( './../../is-function' );\nvar function2string = require( '@stdlib/function/to-string' );\n\n\n// VARIABLES //\n\nvar RE_ARROW_FUNCTION = /^(?:\\([^)]*\\) *|[^=]*)=>/;\n\n\n// MAIN //\n\n/**\n* Tests whether a value is an arrow function.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is an arrow function\n*\n* @example\n* var arrow = () => {};\n* var bool = isArrowFunction( arrow );\n* // returns true\n*\n* @example\n* function beep() {\n* return 'beep';\n* }\n*\n* var bool = isArrowFunction( beep );\n* // returns false\n*/\nfunction isArrowFunction( value ) {\n\tvar str;\n\tif ( !isFunction( value ) ) {\n\t\treturn false;\n\t}\n\tstr = function2string( value );\n\treturn RE_ARROW_FUNCTION.test( str );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isArrowFunction;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an arrow function.\n*\n* @module @stdlib/assert/is-arrow-function\n*\n* @example\n* var isArrowFunction = require( '@stdlib/assert/is-arrow-function' );\n*\n* var beep = () => 'beep';\n*\n* var bool = isArrowFunction( beep );\n* // returns true\n\n* function boop() {\n* return 'boop';\n* }\n*\n* bool = isArrowFunction( boop );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\n\n\n// VARIABLES //\n\nvar MAX_ASCII = 127;\n\n\n// MAIN //\n\n/**\n* Tests whether a character belongs to the ASCII character set and whether this is true for all characters in a provided string.\n*\n* @param {*} x - value to test\n* @returns {boolean} boolean indicating if a string has all ASCII characters\n*\n* @example\n* var out = isASCII( 'beep' );\n* // returns true\n*\n* @example\n* var out = isASCII( '\u00C8' );\n* // returns false\n*\n* @example\n* var out = isASCII( '' );\n* // returns false\n*\n* @example\n* var out = isASCII( 123 );\n* // returns false\n*/\nfunction isASCII( x ) {\n\tvar len;\n\tvar i;\n\tif ( !isString( x ) ) {\n\t\treturn false;\n\t}\n\tlen = x.length;\n\tif ( !len ) {\n\t\treturn false;\n\t}\n\tfor ( i = 0; i < len; i++ ) {\n\t\tif ( x.charCodeAt( i ) > MAX_ASCII ) {\n\t\t\treturn false;\n\t\t}\n\t}\n\treturn true;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isASCII;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether a character belongs to the ASCII character set and whether this is true for all characters in a provided string.\n*\n* @module @stdlib/assert/is-ascii\n*\n* @example\n* var isASCII = require( '@stdlib/assert/is-ascii' );\n*\n* var out = isASCII( 'beep' );\n* // returns true\n*\n* out = isASCII( '\u00C8' );\n* // returns false\n*\n* out = isASCII( '' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar format = require( '@stdlib/string/format' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is between two values.\n*\n* @param {*} value - value to test\n* @param {*} a - left comparison value\n* @param {*} b - right comparison value\n* @param {string} [left=\"closed\"] - indicates whether the left comparison value is inclusive\n* @param {string} [right=\"closed\"] - indicates whether the right comparison value is inclusive\n* @throws {TypeError} `left` must be a recognized string\n* @throws {TypeError} `right` must be a recognized string\n* @returns {boolean} boolean indicating whether a value is between two values\n*\n* @example\n* var bool = isBetween( 3.14, 3.0, 4.0 );\n* // returns true\n*\n* @example\n* var bool = isBetween( 4.5, 3.0, 4.0 );\n* // returns false\n*\n* @example\n* var bool = isBetween( 3.14, 3.14, 4.0 );\n* // returns true\n*\n* @example\n* var bool = isBetween( 3.14, 3.14, 4.0, 'open', 'closed' );\n* // returns false\n*\n* @example\n* var bool = isBetween( 3.14, 3.0, 3.14 );\n* // returns true\n*\n* @example\n* var bool = isBetween( 3.14, 3.0, 3.14, 'closed', 'open' );\n* // returns false\n*/\nfunction isBetween( value, a, b, left, right ) {\n\tif ( arguments.length > 3 ) {\n\t\tif ( left !== 'closed' && left !== 'open' ) {\n\t\t\tthrow new TypeError( format( 'invalid argument. Fourth argument must be one of the following: \"%s\". Value: `%s`.', [ 'closed', 'open' ].join( '\", \"' ), left ) );\n\t\t}\n\t\tif ( right !== 'closed' && right !== 'open' ) {\n\t\t\tthrow new TypeError( format( 'invalid argument. Fifth argument must be one of the following: \"%s\". Value: `%s`.', [ 'closed', 'open' ].join( '\", \"' ), right ) );\n\t\t}\n\t}\n\tif ( left === 'closed' || left === void 0 ) {\n\t\tif ( right === 'closed' || right === void 0 ) {\n\t\t\treturn ( value >= a && value <= b );\n\t\t}\n\t\treturn ( value >= a && value < b );\n\t}\n\tif ( right === 'closed' || right === void 0 ) {\n\t\treturn ( value > a && value <= b );\n\t}\n\treturn ( value > a && value < b );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isBetween;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is between two values.\n*\n* @module @stdlib/assert/is-between\n*\n* @example\n* var isBetween = require( '@stdlib/assert/is-between' );\n*\n* var bool = isBetween( 3.14, 3.0, 4.0 );\n* // returns true\n*\n* bool = isBetween( 4.5, 3.0, 4.0 );\n* // returns false\n*\n* bool = isBetween( 3.14, 3.14, 4.0 );\n* // returns true\n*\n* bool = isBetween( 3.14, 3.14, 4.0, 'open', 'closed' );\n* // returns false\n*\n* bool = isBetween( 3.14, 3.0, 3.14 );\n* // returns true\n*\n* bool = isBetween( 3.14, 3.0, 3.14, 'closed', 'open' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isCollection = require( './../../is-collection' );\nvar format = require( '@stdlib/string/format' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is an array-like object where every element is between two values.\n*\n* @param {*} value - value to test\n* @param {*} a - left comparison value\n* @param {*} b - right comparison value\n* @param {string} [left=\"closed\"] - indicates whether the left comparison value is inclusive\n* @param {string} [right=\"closed\"] - indicates whether the right comparison value is inclusive\n* @throws {TypeError} `left` must be a recognized string\n* @throws {TypeError} `right` must be a recognized string\n* @returns {boolean} boolean indicating whether a value is an array-like object where every element is between two values\n*\n* @example\n* var arr = [ 3.0, 3.14, 4.0 ];\n* var bool = isBetweenArray( arr, 3.0, 4.0 );\n* // returns true\n*\n* @example\n* var arr = [ 3.0, 3.14, 4.0 ];\n* var bool = isBetweenArray( arr, 3.14, 4.0 );\n* // returns false\n*\n* @example\n* var arr = [ 3.0, 3.14, 4.0 ];\n* var bool = isBetweenArray( arr, 3.0, 3.14 );\n* // returns false\n*\n* @example\n* var arr = [ 3.0, 3.14, 4.0 ];\n* var bool = isBetweenArray( arr, 3.0, 4.0, 'open', 'closed' );\n* // returns false\n*\n* @example\n* var arr = [ 3.0, 3.14, 4.0 ];\n* var bool = isBetweenArray( arr, 3.0, 4.0, 'closed', 'open' );\n* // returns false\n*/\nfunction isBetweenArray( value, a, b, left, right ) {\n\tvar len;\n\tvar i;\n\tif ( arguments.length > 3 ) {\n\t\tif ( left !== 'closed' && left !== 'open' ) {\n\t\t\tthrow new TypeError( format( 'invalid argument. Fourth argument must be one of the following: \"%s\". Value: `%s`.', [ 'closed', 'open' ].join( '\", \"' ), left ) );\n\t\t}\n\t\tif ( right !== 'closed' && right !== 'open' ) {\n\t\t\tthrow new TypeError( format( 'invalid argument. Fifth argument must be one of the following: \"%s\". Value: `%s`.', [ 'closed', 'open' ].join( '\", \"' ), right ) );\n\t\t}\n\t}\n\tif ( !isCollection( value ) ) {\n\t\treturn false;\n\t}\n\tlen = value.length;\n\tif ( len === 0 ) {\n\t\treturn false;\n\t}\n\tif ( left === 'closed' || left === void 0 ) {\n\t\tif ( right === 'closed' || right === void 0 ) {\n\t\t\tfor ( i = 0; i < len; i++ ) {\n\t\t\t\tif ( value[ i ] < a || value[ i ] > b ) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn true;\n\t\t}\n\t\tfor ( i = 0; i < len; i++ ) {\n\t\t\tif ( value[ i ] < a || value[ i ] >= b ) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t\treturn true;\n\t}\n\tif ( right === 'closed' || right === void 0 ) {\n\t\tfor ( i = 0; i < len; i++ ) {\n\t\t\tif ( value[ i ] <= a || value[ i ] > b ) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t\treturn true;\n\t}\n\tfor ( i = 0; i < len; i++ ) {\n\t\tif ( value[ i ] <= a || value[ i ] >= b ) {\n\t\t\treturn false;\n\t\t}\n\t}\n\treturn true;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isBetweenArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array-like object where every element is between two values.\n*\n* @module @stdlib/assert/is-between-array\n*\n* @example\n* var isBetweenArray = require( '@stdlib/assert/is-between-array' );\n*\n* var arr = [ 3.0, 3.14, 4.0 ];\n*\n* var bool = isBetweenArray( arr, 3.0, 4.0 );\n* // returns true\n*\n* bool = isBetweenArray( arr, 3.14, 4.0 );\n* // returns false\n*\n* bool = isBetweenArray( arr, 3.0, 3.14 );\n* // returns false\n*\n* bool = isBetweenArray( arr, 3.0, 4.0, 'open', 'closed' );\n* // returns false\n*\n* bool = isBetweenArray( arr, 3.0, 4.0, 'closed', 'open' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar Uint8Array = require( '@stdlib/array/uint8' );\nvar Uint16Array = require( '@stdlib/array/uint16' );\n\n\n// MAIN //\n\nvar ctors = {\n\t'uint16': Uint16Array,\n\t'uint8': Uint8Array\n};\n\n\n// EXPORTS //\n\nmodule.exports = ctors;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar ctors = require( './ctors.js' );\n\n\n// VARIABLES //\n\nvar bool;\n\n\n// FUNCTIONS //\n\n/**\n* Returns a boolean indicating if an environment is big endian.\n*\n* @private\n* @returns {boolean} boolean indicating if an environment is big endian\n*\n* @example\n* var bool = isBigEndian();\n* // returns \n*/\nfunction isBigEndian() {\n\tvar uint16view;\n\tvar uint8view;\n\n\tuint16view = new ctors[ 'uint16' ]( 1 );\n\n\t/*\n\t* Set the uint16 view to a value having distinguishable lower and higher order words.\n\t*\n\t* 4660 => 0x1234 => 0x12 0x34 => '00010010 00110100' => (0x12,0x34) == (18,52)\n\t*/\n\tuint16view[ 0 ] = 0x1234;\n\n\t// Create a uint8 view on top of the uint16 buffer:\n\tuint8view = new ctors[ 'uint8' ]( uint16view.buffer );\n\n\t// If big endian, the least significant byte will be last...\n\treturn ( uint8view[ 1 ] === 0x34 );\n}\n\n\n// MAIN //\n\nbool = isBigEndian();\n\n\n// EXPORTS //\n\nmodule.exports = bool;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Boolean indicating if an environment is big endian.\n*\n* @module @stdlib/assert/is-big-endian\n*\n* @example\n* var IS_BIG_ENDIAN = require( '@stdlib/assert/is-big-endian' );\n*\n* var bool = IS_BIG_ENDIAN;\n* // returns \n*/\n\n// MODULES //\n\nvar IS_BIG_ENDIAN = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = IS_BIG_ENDIAN;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a binary string.\n*\n* @param {*} str - value to test\n* @returns {boolean} boolean indicating if an input value is a binary string\n*\n* @example\n* var bool = isBinaryString( '1000101' );\n* // returns true\n*\n* @example\n* var bool = isBinaryString( 'beep' );\n* // returns false\n*\n* @example\n* var bool = isBinaryString( '' );\n* // returns false\n*/\nfunction isBinaryString( str ) {\n\tvar ch;\n\tvar i;\n\tif ( !isString( str ) ) {\n\t\treturn false;\n\t}\n\tif ( str.length === 0 ) {\n\t\treturn false;\n\t}\n\tfor ( i = 0; i < str.length; i++ ) {\n\t\tch = str[ i ];\n\t\tif ( ch !== '1' && ch !== '0' ) {\n\t\t\treturn false;\n\t\t}\n\t}\n\treturn true;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isBinaryString;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a binary string.\n*\n* @module @stdlib/assert/is-binary-string\n*\n* @example\n* var isBinaryString = require( '@stdlib/assert/is-binary-string' );\n*\n* var bool = isBinaryString( '1000101' );\n* // returns true\n*\n* bool = isBinaryString( 'beep' );\n* // returns false\n*\n* bool = isBinaryString( '' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2022 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\n\n\n// VARIABLES //\n\nvar RE = /^[\\u0009\\u000A\\u000B\\u000C\\u000D\\u0020\\u0085\\u00A0\\u1680\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200A\\u2028\\u2029\\u202F\\u205F\\u3000\\uFEFF]*$/;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a blank string (i.e., an empty string or a string consisting only of whitespace characters).\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if an input value is a blank string\n*\n* @example\n* var bool = isBlankString( ' ' );\n* // returns true\n*\n* @example\n* var bool = isBlankString( '' );\n* // returns true\n*\n* @example\n* var bool = isBlankString( '\\t\\t\\t' );\n* // returns true\n*\n* @example\n* var bool = isBlankString( '\\r\\n\\r\\n' );\n* // returns true\n*\n* @example\n* var bool = isBlankString( 'beep' );\n* // returns false\n*/\nfunction isBlankString( value ) {\n\tif ( !isString( value ) ) {\n\t\treturn false;\n\t}\n\treturn RE.test( value );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isBlankString;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2022 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a blank string (i.e., an empty string or a string consisting only of whitespace characters).\n*\n* @module @stdlib/assert/is-blank-string\n*\n* @example\n* var isBlankString = require( '@stdlib/assert/is-blank-string' );\n*\n* var bool = isBlankString( ' ' );\n* // returns true\n*\n* bool = isBlankString( '' );\n* // returns true\n*\n* bool = isBlankString( 'beep' );\n* // returns false\n*\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Tests if a value is a boolean primitive.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a boolean primitive\n*\n* @example\n* var bool = isBoolean( true );\n* // returns true\n*\n* @example\n* var bool = isBoolean( false );\n* // returns true\n*\n* @example\n* var Boolean = require( '@stdlib/boolean/ctor' );\n*\n* var bool = isBoolean( new Boolean( true ) );\n* // returns false\n*/\nfunction isBoolean( value ) {\n\treturn ( typeof value === 'boolean' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isBoolean;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// eslint-disable-next-line stdlib/no-redeclare\nvar toString = Boolean.prototype.toString; // non-generic\n\n\n// EXPORTS //\n\nmodule.exports = toString;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar toString = require( './tostring.js' ); // eslint-disable-line stdlib/no-redeclare\n\n\n// MAIN //\n\n/**\n* Attempts to serialize a value to a string.\n*\n* @private\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value can be serialized\n*/\nfunction test( value ) {\n\ttry {\n\t\ttoString.call( value );\n\t\treturn true;\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\treturn false;\n\t}\n}\n\n\n// EXPORTS //\n\nmodule.exports = test;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar hasToStringTag = require( './../../has-tostringtag-support' );\nvar nativeClass = require( '@stdlib/utils/native-class' );\nvar Boolean = require( '@stdlib/boolean/ctor' );\nvar test = require( './try2serialize.js' );\n\n\n// VARIABLES //\n\nvar FLG = hasToStringTag();\n\n\n// MAIN //\n\n/**\n* Tests if a value is a boolean object.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a boolean object\n*\n* @example\n* var bool = isBoolean( true );\n* // returns false\n*\n* @example\n* var Boolean = require( '@stdlib/boolean/ctor' );\n*\n* var bool = isBoolean( new Boolean( false ) );\n* // returns true\n*/\nfunction isBoolean( value ) {\n\tif ( typeof value === 'object' ) {\n\t\tif ( value instanceof Boolean ) {\n\t\t\treturn true;\n\t\t}\n\t\tif ( FLG ) {\n\t\t\treturn test( value );\n\t\t}\n\t\treturn ( nativeClass( value ) === '[object Boolean]' );\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isBoolean;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a boolean.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a boolean\n*\n* @example\n* var bool = isBoolean( false );\n* // returns true\n*\n* @example\n* var bool = isBoolean( true );\n* // returns true\n*\n* @example\n* var Boolean = require( '@stdlib/boolean/ctor' );\n*\n* var bool = isBoolean( new Boolean( false ) );\n* // returns true\n*\n* @example\n* var Boolean = require( '@stdlib/boolean/ctor' );\n*\n* var bool = isBoolean( new Boolean( true ) );\n* // returns true\n*/\nfunction isBoolean( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isBoolean;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a boolean.\n*\n* @module @stdlib/assert/is-boolean\n*\n* @example\n* var Boolean = require( '@stdlib/boolean/ctor' );\n* var isBoolean = require( '@stdlib/assert/is-boolean' );\n*\n* var bool = isBoolean( false );\n* // returns true\n*\n* bool = isBoolean( new Boolean( false ) );\n* // returns true\n*\n* @example\n* var Boolean = require( '@stdlib/boolean/ctor' );\n* var isBoolean = require( '@stdlib/assert/is-boolean' ).isPrimitive;\n*\n* var bool = isBoolean( false );\n* // returns true\n*\n* bool = isBoolean( new Boolean( true ) );\n* // returns false\n*\n* @example\n* var Boolean = require( '@stdlib/boolean/ctor' );\n* var isBoolean = require( '@stdlib/assert/is-boolean' ).isObject;\n*\n* var bool = isBoolean( true );\n* // returns false\n*\n* bool = isBoolean( new Boolean( false ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isArrayLike = require( './../../../is-array-like' );\nvar format = require( '@stdlib/string/format' );\n\n\n// MAIN //\n\n/**\n* Returns a function which tests if every element in an array-like object passes a test condition.\n*\n* @param {Function} predicate - function to apply\n* @throws {TypeError} must provide a function\n* @returns {Function} an array-like object function\n*\n* @example\n* var isOdd = require( '@stdlib/assert/is-odd' );\n*\n* var arr1 = [ 1, 3, 5, 7 ];\n* var arr2 = [ 3, 5, 8 ];\n*\n* var validate = arraylikefcn( isOdd );\n*\n* var bool = validate( arr1 );\n* // returns true\n*\n* bool = validate( arr2 );\n* // returns false\n*/\nfunction arraylikefcn( predicate ) {\n\tif ( typeof predicate !== 'function' ) {\n\t\tthrow new TypeError( format( 'invalid argument. Must provide a function. Value: `%s`.', predicate ) );\n\t}\n\treturn every;\n\n\t/**\n\t* Tests if every element in an array-like object passes a test condition.\n\t*\n\t* @private\n\t* @param {*} value - value to test\n\t* @returns {boolean} boolean indicating whether a value is an array-like object for which all elements pass a test condition\n\t*/\n\tfunction every( value ) {\n\t\tvar len;\n\t\tvar i;\n\t\tif ( !isArrayLike( value ) ) {\n\t\t\treturn false;\n\t\t}\n\t\tlen = value.length;\n\t\tif ( len === 0 ) {\n\t\t\treturn false;\n\t\t}\n\t\tfor ( i = 0; i < len; i++ ) {\n\t\t\tif ( predicate( value[ i ] ) === false ) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t\treturn true;\n\t}\n}\n\n\n// EXPORTS //\n\nmodule.exports = arraylikefcn;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Return a function which tests if every element in an array-like object passes a test condition.\n*\n* @module @stdlib/assert/tools/array-like-function\n*\n* @example\n* var isOdd = require( '@stdlib/assert/is-odd' );\n* var arraylikefcn = require( '@stdlib/assert/tools/array-like-function' );\n*\n* var arr1 = [ 1, 3, 5, 7 ];\n* var arr2 = [ 3, 5, 8 ];\n*\n* var validate = arraylikefcn( isOdd );\n*\n* var bool = validate( arr1 );\n* // returns true\n*\n* bool = validate( arr2 );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array-like object of booleans.\n*\n* @module @stdlib/assert/is-boolean-array\n*\n* @example\n* var isBooleanArray = require( '@stdlib/assert/is-boolean-array' );\n*\n* var bool = isBooleanArray( [ true, false, true ] );\n* // returns true\n*\n* bool = isBooleanArray( [ true, 'abc', false ] );\n* // returns false\n*\n* @example\n* var Boolean = require( '@stdlib/boolean/ctor' );\n* var isBooleanArray = require( '@stdlib/assert/is-boolean-array' ).primitives;\n*\n* var bool = isBooleanArray( [ true, false ] );\n* // returns true\n*\n* bool = isBooleanArray( [ false, new Boolean( true ) ] );\n* // returns false\n*\n* @example\n* var Boolean = require( '@stdlib/boolean/ctor' );\n* var isBooleanArray = require( '@stdlib/assert/is-boolean-array' ).objects;\n*\n* var bool = isBooleanArray( [ new Boolean( false ), new Boolean( true ) ] );\n* // returns true\n*\n* bool = isBooleanArray( [ new Boolean( false ), true ] );\n* // returns false\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar arrayfun = require( './../../tools/array-like-function' );\nvar isBoolean = require( './../../is-boolean' );\n\n\n// VARIABLES //\n\nvar isPrimitiveArray = arrayfun( isBoolean.isPrimitive );\nvar isObjectArray = arrayfun( isBoolean.isObject );\n\n\n// MAIN //\n\nvar isBooleanArray = arrayfun( isBoolean );\nsetReadOnly( isBooleanArray, 'primitives', isPrimitiveArray );\nsetReadOnly( isBooleanArray, 'objects', isObjectArray );\n\n\n// EXPORTS //\n\nmodule.exports = isBooleanArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Tests if a value is a symbol primitive.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a symbol primitive\n*/\nfunction isSymbol( value ) {\n\treturn ( typeof value === 'symbol' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSymbol;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/*\n* Note: we wrap `toString` to allow loading this file in non-ES2015 environments.\n*/\n\n// MAIN //\n\n/**\n* Attempts to serialize a value as a symbol.\n*\n* @private\n* @param {*} value - value to serialize\n* @returns {string} serialized value\n*/\nfunction toStr( value ) {\n\t// Non-generic:\n\treturn Symbol.prototype.toString.call( value );\n}\n\n\n// EXPORTS //\n\nmodule.exports = toStr;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar toStr = require( './tostring.js' );\n\n\n// VARIABLES //\n\nvar RE = /^Symbol\\(.*\\)$/;\n\n\n// MAIN //\n\n/**\n* Attempts to call a `Symbol` method.\n*\n* @private\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if able to call a `Symbol` method\n*/\nfunction test( value ) {\n\ttry {\n\t\treturn (\n\t\t\t// Objects created via `Object.create( null )` have no `valueOf()` method:\n\t\t\ttypeof value.valueOf() === 'symbol' &&\n\n\t\t\t// Test output of a non-generic method:\n\t\t\tRE.test( toStr( value ) )\n\t\t);\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\treturn false;\n\t}\n}\n\n\n// EXPORTS //\n\nmodule.exports = test;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar nativeClass = require( '@stdlib/utils/native-class' );\nvar test = require( './try2tostring.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a symbol object.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a symbol object\n*/\nfunction isSymbol( value ) {\n\treturn (\n\t\ttypeof value === 'object' &&\n\t\tnativeClass( value ) === '[object Symbol]' &&\n\t\ttest( value )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSymbol;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a symbol.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a symbol\n*/\nfunction isSymbol( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSymbol;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar isSymbol = require( './generic.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( isSymbol, 'isPrimitive', isPrimitive );\nsetReadOnly( isSymbol, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = isSymbol;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar constantFunction = require( '@stdlib/utils/constant-function' );\n\n\n// MAIN //\n\nvar isSymbol = constantFunction( false );\nvar isPrimitive = constantFunction( false );\nvar isObject = constantFunction( false );\n\nsetReadOnly( isSymbol, 'isPrimitive', isPrimitive );\nsetReadOnly( isSymbol, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = isSymbol;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a symbol.\n*\n* @module @stdlib/assert/is-symbol\n*\n* @example\n* var Symbol = require( '@stdlib/symbol/ctor' );\n* var isSymbol = require( '@stdlib/assert/is-symbol' );\n*\n* var bool = isSymbol( Symbol( 'beep' ) );\n* // returns true\n*\n* bool = isSymbol( Object( Symbol( 'beep' ) ) );\n* // returns true\n*\n* bool = isSymbol( {} );\n* // returns false\n*\n* @example\n* var Symbol = require( '@stdlib/symbol/ctor' );\n* var isSymbol = require( '@stdlib/assert/is-symbol' ).isPrimitive;\n*\n* var bool = isSymbol( Symbol( 'beep' ) );\n* // returns true\n*\n* bool = isSymbol( Object( Symbol( 'beep' ) ) );\n* // returns false\n*\n* bool = isSymbol( {} );\n* // returns false\n*\n* @example\n* var Symbol = require( '@stdlib/symbol/ctor' );\n* var isSymbolObject = require( '@stdlib/assert/is-symbol' ).isObject;\n*\n* var bool = isSymbolObject( Symbol( 'beep' ) );\n* // returns false\n*\n* bool = isSymbolObject( Object( Symbol( 'beep' ) ) );\n* // returns true\n*\n* bool = isSymbolObject( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar hasSymbols = require( './../../has-symbol-support' );\nvar main = require( './main.js' );\nvar polyfill = require( './polyfill.js' );\n\n\n// MAIN //\n\nvar isSymbol;\nif ( hasSymbols() ) {\n\tisSymbol = main;\n} else {\n\tisSymbol = polyfill;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSymbol;\n\n// exports: { \"isPrimitive\": \"isSymbol.isPrimitive\", \"isObject\": \"isSymbol.isObject\" }\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isBoolean = require( './../../is-boolean' ).isObject;\nvar isNumber = require( './../../is-number' ).isObject;\nvar isString = require( './../../is-string' ).isObject;\nvar isSymbol = require( './../../is-symbol' ).isObject;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a JavaScript boxed primitive.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a JavaScript boxed primitive\n*\n* @example\n* var bool = isBoxedPrimitive( new String( 'beep' ) );\n* // returns true\n*\n* @example\n* var bool = isBoxedPrimitive( new Number( 3.21 ) );\n* // returns true\n*\n* @example\n* var Symbol = require( '@stdlib/symbol/ctor' );\n* var bool = isBoxedPrimitive( Object( Symbol( 'beep' ) ) );\n* // returns true\n*\n* @example\n* var bool = isBoxedPrimitive( true );\n* // returns false\n*\n* @example\n* var bool = isBoxedPrimitive( {} );\n* // returns false\n*\n* @example\n* var Symbol = require( '@stdlib/symbol/ctor' );\n* var bool = isBoxedPrimitive( Symbol( 'beep' ) );\n* // returns false\n*/\nfunction isBoxedPrimitive( value ) {\n\tif ( typeof value !== 'object' ) {\n\t\treturn false;\n\t}\n\treturn (\n\t\tisBoolean( value ) ||\n\t\tisNumber( value ) ||\n\t\tisString( value ) ||\n\t\tisSymbol( value )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isBoxedPrimitive;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a JavaScript boxed primitive.\n*\n* @module @stdlib/assert/is-boxed-primitive\n*\n* @example\n* var Boolean = require( '@stdlib/boolean/ctor' );\n* var isBoxedPrimitive = require( '@stdlib/assert/is-boxed-primitive' );\n*\n* var bool = isBoxedPrimitive( new Boolean( true ) );\n* // returns true\n*\n* bool = isBoxedPrimitive( true );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// VARIABLES //\n\nvar toStr = Object.prototype.toString;\n\n\n// MAIN //\n\n/**\n* Returns the internal class of a provided value.\n*\n* @private\n* @param {*} value - input value\n* @returns {string} internal class\n*/\nfunction toString( value ) { // eslint-disable-line stdlib/no-redeclare\n\treturn toStr.call( value );\n}\n\n\n// EXPORTS //\n\nmodule.exports = toString;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// VARIABLES //\n\nvar Global;\n\n\n// FUNCTIONS //\n\n/**\n* Test if the global scope is bound to the \"global\" variable present in Node.js environments. When creating a new function using the `Function(){}` constructor, the execution scope aliased by the `this` variable is the global scope.\n*\n* @private\n* @returns {boolean} boolean indicating if global scope is bound to \"global\" variable\n*/\nfunction globalScope() {\n\tvar fcn = '';\n\tfcn += 'try {';\n\tfcn += 'return this === global;';\n\tfcn += '} catch ( err ) {';\n\tfcn += 'return false;';\n\tfcn += '}';\n\treturn (new Function( fcn ))(); // eslint-disable-line no-new-func, stdlib/require-globals\n}\n\n\n// MAIN //\n\nGlobal = globalScope();\n\n\n// EXPORTS //\n\nmodule.exports = Global;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar proc = require( 'process' );\nvar getGlobal = require( '@stdlib/utils/global' );\nvar nativeClass = require( '@stdlib/utils/native-class' );\nvar isObject = require( './../../is-plain-object' );\nvar isString = require( './../../is-string' ).isPrimitive;\nvar toStr = require( './to_string.js' );\nvar globalScope = require( './global_scope.js' );\n\n\n// VARIABLES //\n\nvar Global = getGlobal();\nvar RE = /node|io\\.js/;\n\n\n// MAIN //\n\n/**\n* Returns a boolean indicating if the runtime is Node.js.\n*\n* @returns {boolean} boolean indicating if runtime is Node.js\n*\n* @example\n* var bool = isNode();\n* // returns \n*/\nfunction isNode() {\n\treturn (\n\t\t// Check for presence of `global` variable:\n\t\ttypeof global === 'object' &&\n\n\t\t// Check that the `global` variable matches the determined global variable:\n\t\tglobal === Global &&\n\n\t\t// Check for a circular reference to the global variable:\n\t\tGlobal === Global.global &&\n\n\t\t// Check that the global variable has the expected internal class:\n\t\t(\n\t\t\t// Node < v7\n\t\t\tnativeClass( Global ) === '[object global]' ||\n\n\t\t\t// Node >= v7 (https://github.com/nodejs/node/issues/9274)\n\t\t\tnativeClass( Global ) === '[object Object]'\n\t\t) &&\n\n\t\t// Check that the `global` variable is equal to the global scope:\n\t\tglobalScope === true &&\n\n\t\t// Check for a `require` global variable:\n\t\ttypeof require === 'function' &&\n\n\t\t// Check for a `process` global variable:\n\t\ttypeof proc === 'object' &&\n\n\t\t// Check that the `process` global variable has the expected internal class (NOTE: we use `toStr`, rather than `nativecClass` to address changes introduced in Node >= v14.6.0; see https://github.com/stdlib-js/stdlib/issues/375):\n\t\ttoStr( proc ) === '[object process]' &&\n\n\t\t// Check for a `versions` property:\n\t\tisObject( proc.versions ) &&\n\n\t\t// Check for a `node` property:\n\t\tisString( proc.versions.node ) &&\n\n\t\t/* eslint-disable node/no-unsupported-features/es-builtins */\n\t\t(\n\t\t\t// `process.release` was added in Node v3.0.0 via io.js:\n\t\t\ttypeof proc.release === 'undefined' ||\n\n\t\t\t(\n\t\t\t\t// Check for a `release` property:\n\t\t\t\tisObject( proc.release ) &&\n\n\t\t\t\t// Check for a `name` property:\n\t\t\t\tisString( proc.release.name ) &&\n\n\t\t\t\t// Check that the release name contains either `node` or `io.js` (in Node.js/io.js, the release name is read-only):\n\t\t\t\tRE.test( proc.release.name )\n\t\t\t)\n\t\t)\n\t\t/* eslint-enable node/no-unsupported-features/es-builtins */\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNode;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Boolean indicating if the runtime is Node.js.\n*\n* @module @stdlib/assert/is-node\n*\n* @example\n* var IS_NODE = require( '@stdlib/assert/is-node' );\n*\n* var bool = IS_NODE;\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// MAIN //\n\nvar bool = main();\n\n\n// EXPORTS //\n\nmodule.exports = bool;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// VARIABLES //\n\nvar scope;\n\n\n// FUNCTIONS //\n\n/**\n* Test if the global scope is bound to the \"window\" variable present in browser environments. When creating a new function using the `Function(){}` constructor, the execution scope aliased by the `this` variable is the global scope.\n*\n* @private\n* @returns {boolean} boolean indicating if global scope is bound to \"window\" variable\n*/\nfunction globalScope() {\n\tvar fcn = '';\n\tfcn += 'try {';\n\tfcn += 'return this === window;';\n\tfcn += '} catch ( err ) {';\n\tfcn += 'return false;';\n\tfcn += '}';\n\treturn (new Function( fcn ))(); // eslint-disable-line stdlib/require-globals, no-new-func\n}\n\n\n// MAIN //\n\nscope = globalScope();\n\n\n// EXPORTS //\n\nmodule.exports = scope;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n/* global window */\n\n'use strict';\n\n// MODULES //\n\nvar getGlobal = require( '@stdlib/utils/global' );\nvar IS_NODE = require( './../../is-node' );\nvar globalScope = require( './global_scope.js' );\n\n\n// VARIABLES //\n\nvar Global = getGlobal();\n\n\n// MAIN //\n\n/**\n* Returns a boolean indicating if the runtime is a web browser.\n*\n* @returns {boolean} boolean indicating if runtime is a web browser\n*\n* @example\n* var bool = isBrowser();\n* // returns \n*/\nfunction isBrowser() {\n\treturn (\n\t\t// Check that we are not running in a Node.js runtime:\n\t\tIS_NODE === false &&\n\n\t\t// Check for presence of `window` variable:\n\t\ttypeof window === 'object' &&\n\n\t\t// Check that the `window` variable matches the determined global variable:\n\t\twindow === Global &&\n\n\t\t// Check that the `window` variable is equal to the global scope:\n\t\tglobalScope === true\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isBrowser;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Boolean indicating if the runtime is a web browser.\n*\n* @module @stdlib/assert/is-browser\n*\n* @example\n* var IS_BROWSER = require( '@stdlib/assert/is-browser' );\n*\n* var bool = IS_BROWSER;\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// MAIN //\n\nvar bool = main();\n\n\n// EXPORTS //\n\nmodule.exports = bool;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2022 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\nvar camelcase = require( '@stdlib/string/base/camelcase' );\n\n\n// MAIN //\n\n/**\n* Tests if a string is in camelcase.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a string is in camelcase\n*\n* @example\n* var bool = isCamelcase( 'beepBoop' );\n* // returns true\n*\n* @example\n* var bool = isCamelcase( 'beepBoop123' );\n* // returns true\n*\n* @example\n* var bool = isCamelcase( 'beep Boop' );\n* // returns false\n*\n* @example\n* var bool = isCamelcase( 'beep' );\n* // returns true\n*/\nfunction isCamelcase( value ) {\n\treturn (\n\t\tisString( value ) &&\n\t\tvalue === camelcase( value )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isCamelcase;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2022 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a camelcase string.\n*\n* @module @stdlib/assert/is-camelcase\n*\n* @example\n* var isCamelcase = require( '@stdlib/assert/is-camelcase' );\n*\n* var bool = isCamelcase( 'beepBoop' );\n* // returns true\n*\n* bool = isCamelcase( 'beep Boop' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar lowercase = require( '@stdlib/string/lowercase' );\nvar uppercase = require( '@stdlib/string/uppercase' );\nvar isString = require( './../../is-string' ).isPrimitive;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a string having an uppercase first character.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is a string with an uppercase first character\n*\n* @example\n* var bool = isCapitalized( 'Hello' );\n* // returns true\n*\n* @example\n* var bool = isCapitalized( 'WORLD' );\n* // returns true\n*\n* @example\n* var bool = isCapitalized( '!' );\n* // returns false\n*\n* @example\n* var bool = isCapitalized( 'salt and light' );\n* // returns false\n*/\nfunction isCapitalized( value ) {\n\tvar ch;\n\tif ( isString( value ) && value !== '' ) {\n\t\tch = value[ 0 ];\n\t\treturn ( ch === uppercase( ch ) && ch !== lowercase( ch ) );\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isCapitalized;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a string having an uppercase first character.\n*\n* @module @stdlib/assert/is-capitalized\n*\n* @example\n* var isCapitalized = require( '@stdlib/assert/is-capitalized' );\n*\n* var bool = isCapitalized( 'Hello' );\n* // returns true\n*\n* bool = isCapitalized( 'world' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar ndarray = require( '@stdlib/ndarray/base/ctor' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is ndarray-like.\n*\n* @param {*} v - value to test\n* @returns {boolean} boolean indicating if a value is ndarray-like\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n*\n* var arr = ndarray( 'generic', [ 0, 0, 0, 0 ], [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n*\n* var bool = isndarrayLike( arr );\n* // returns true\n*\n* bool = isndarrayLike( [] );\n* // returns false\n*/\nfunction isndarrayLike( v ) {\n\treturn (\n\t\tv instanceof ndarray ||\n\t\t(\n\t\t\tv !== null &&\n\t\t\ttypeof v === 'object' &&\n\t\t\ttypeof v.data === 'object' &&\n\t\t\ttypeof v.shape === 'object' &&\n\t\t\ttypeof v.strides === 'object' &&\n\t\t\ttypeof v.offset === 'number' &&\n\t\t\ttypeof v.order === 'string' &&\n\t\t\ttypeof v.ndims === 'number' &&\n\t\t\ttypeof v.dtype === 'string' &&\n\t\t\ttypeof v.length === 'number' &&\n\t\t\ttypeof v.flags === 'object' &&\n\t\t\ttypeof v.get === 'function' &&\n\t\t\ttypeof v.set === 'function'\n\t\t)\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isndarrayLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is ndarray-like.\n*\n* @module @stdlib/assert/is-ndarray-like\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n* var isndarrayLike = require( '@stdlib/assert/is-ndarray-like' );\n*\n* var arr = ndarray( 'generic', [ 0, 0, 0, 0 ], [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n* var bool = isndarrayLike( arr );\n* // returns true\n*\n* bool = isndarrayLike( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isndarrayLike = require( './../../is-ndarray-like' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a 2-dimensional ndarray-like object.\n*\n* @param {*} v - value to test\n* @returns {boolean} boolean indicating if a value is a 2-dimensional ndarray-like object\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n*\n* var arr = ndarray( 'generic', [ 0, 0, 0, 0 ], [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n*\n* var bool = isMatrixLike( arr );\n* // returns true\n*\n* bool = isMatrixLike( [] );\n* // returns false\n*/\nfunction isMatrixLike( v ) {\n\treturn (\n\t\tisndarrayLike( v ) &&\n\t\tv.ndims === 2 &&\n\t\tv.shape.length === 2 &&\n\t\tv.strides.length === 2\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isMatrixLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a 2-dimensional ndarray-like object.\n*\n* @module @stdlib/assert/is-matrix-like\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n* var isMatrixLike = require( '@stdlib/assert/is-matrix-like' );\n*\n* var arr = ndarray( 'float64', [ 0, 0, 0, 0 ], [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n*\n* var bool = isMatrixLike( arr );\n* // returns true\n*\n* bool = isMatrixLike( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isMatrixLike = require( './../../is-matrix-like' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a 2-dimensional ndarray-like object having equal dimensions.\n*\n* @param {*} v - value to test\n* @returns {boolean} boolean indicating if a value is a 2-dimensional ndarray-like object having equal dimensions\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n*\n* var arr = ndarray( 'generic', [ 0, 0, 0, 0 ], [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n* var bool = isSquareMatrix( arr );\n* // returns true\n*\n* bool = isSquareMatrix( [] );\n* // returns false\n*/\nfunction isSquareMatrix( v ) {\n\treturn (\n\t\tisMatrixLike( v ) &&\n\t\tv.shape[ 0 ] === v.shape[ 1 ]\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSquareMatrix;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a 2-dimensional ndarray-like object having equal dimensions.\n*\n* @module @stdlib/assert/is-square-matrix\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n* var isSquareMatrix = require( '@stdlib/assert/is-square-matrix' );\n*\n* var arr = ndarray( 'generic', [ 0, 0, 0, 0 ], [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n* var bool = isSquareMatrix( arr );\n* // returns true\n*\n* bool = isSquareMatrix( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isSquareMatrix = require( './../../is-square-matrix' );\nvar floor = require( '@stdlib/math/base/special/floor' );\nvar isOdd = require( '@stdlib/math/base/assert/is-odd' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a centrosymmetric matrix.\n*\n* ## Notes\n*\n* - The implementation must rely on manually checking that \\\\(M_{ij} = M_{N-i-1,N-j-1}\\\\), and, while element access is deterministic, no way exists to prevent cache misses outside of reordering the underlying matrix elements, thus incurring a larger performance penalty than just \"jumping around\" in a single pass.\n* - Worst case scenario: O(N^2).\n*\n* @param {*} v - value to test\n* @returns {boolean} boolean indicating if a value is a centrosymmetric matrix\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n*\n* var arr = ndarray( 'generic', [ 2, 1, 1, 2 ], [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n*\n* var bool = isCentrosymmetricMatrix( arr );\n* // returns true\n*\n* bool = isCentrosymmetricMatrix( [] );\n* // returns false\n*/\nfunction isCentrosymmetricMatrix( v ) {\n\tvar m1;\n\tvar M;\n\tvar N;\n\tvar n;\n\tvar i;\n\tvar j;\n\tif ( !isSquareMatrix( v ) ) {\n\t\treturn false;\n\t}\n\tM = v.shape[ 0 ];\n\tN = floor( M/2.0 ); // corresponds to a row index + 1\n\tm1 = M - 1;\n\tfor ( i = 0; i < N; i++ ) {\n\t\tn = m1 - i;\n\t\tfor ( j = 0; j < M; j++ ) {\n\t\t\tif ( v.get( i, j ) !== v.get( n, m1-j ) ) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t}\n\tif ( isOdd( M ) ) {\n\t\t// Only need to examine the first half of the row (up until the center element) due to symmetry...\n\t\tfor ( j = 0; j < N; j++ ) {\n\t\t\tif ( v.get( i, j ) !== v.get( N, m1-j ) ) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t}\n\treturn true;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isCentrosymmetricMatrix;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a centrosymmetric matrix.\n*\n* @module @stdlib/assert/is-centrosymmetric-matrix\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n* var isCentrosymmetricMatrix = require( '@stdlib/assert/is-centrosymmetric-matrix' );\n*\n* var arr = ndarray( 'generic', [ 2, 1, 1, 2 ], [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n*\n* var bool = isCentrosymmetricMatrix( arr );\n* // returns true\n*\n* bool = isCentrosymmetricMatrix( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar objectKeys = require( '@stdlib/utils/keys' );\n\n\n// FUNCTIONS //\n\n/**\n* Tests if a value is an object.\n*\n* ## Notes\n*\n* - The function excludes `null`.\n*\n* @private\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is an object\n*/\nfunction isObject( value ) {\n\tvar type = typeof value;\n\treturn ( value !== null && ( type === 'object' || type === 'function' ) );\n}\n\n/**\n* Tests if the seen array contains a search value.\n*\n* @private\n* @param {Array} seen - array of seen objects\n* @param {*} searchValue - search value\n* @returns {boolean} boolean indicating whether array contains search value\n*/\nfunction contains( seen, searchValue ) {\n\tvar i;\n\tfor ( i = 0; i < seen.length; i++ ) {\n\t\tif ( seen[ i ] === searchValue ) {\n\t\t\treturn true;\n\t\t}\n\t}\n\treturn false;\n}\n\n/**\n* Tests if an object contains a circular reference by recursively traversing object keys.\n*\n* @private\n* @param {Object} obj - object to test\n* @param {Array} seen - array of seen objects\n* @returns {boolean} boolean indicating whether object contains a circular reference\n*/\nfunction isCircObj( obj, seen ) {\n\tvar keys;\n\tvar val;\n\tvar i;\n\n\tseen.push( obj );\n\tkeys = objectKeys( obj );\n\tif ( keys.length === 0 ) {\n\t\treturn false;\n\t}\n\tfor ( i = 0; i < keys.length; i++ ) {\n\t\tval = obj[ keys[ i ] ];\n\t\tif ( isObject( val ) && ( contains( seen, val ) || isCircObj( val, seen ) ) ) { // eslint-disable-line max-len\n\t\t\treturn true;\n\t\t}\n\t}\n\tseen.pop( obj );\n\treturn false;\n}\n\n\n// MAIN //\n\n/**\n* Tests if an object-like value contains a circular reference.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is object-like and contains a circular reference\n*\n* @example\n* var obj = {\n* 'a': 'beep',\n* 'b': {\n* 'c': 'boop'\n* }\n* };\n* obj.b.self = obj;\n* var bool = isCircular( obj );\n* // returns true\n*\n* @example\n* var arr = [ 1, 2, 3 ];\n* arr.push( arr );\n* var bool = isCircular( arr );\n* // returns true\n*\n* @example\n* var bool = isCircular( {} );\n* // returns false\n*\n* @example\n* var bool = isCircular( null );\n* // returns false\n*/\nfunction isCircular( value ) {\n\tif ( !isObject( value ) ) {\n\t\treturn false;\n\t}\n\treturn isCircObj( value, [] );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isCircular;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if an object-like value contains a circular reference.\n*\n* @module @stdlib/assert/is-circular\n*\n* @example\n* var isCircular = require( '@stdlib/assert/is-circular' );\n*\n* var obj = {\n* 'a': 'beep',\n* 'b': {\n* 'c': 'boop'\n* }\n* };\n* obj.b.self = obj;\n*\n* var bool = isCircular( obj );\n* // returns true\n*\n* bool = isCircular( null );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isArray = require( './../../is-array' );\nvar isCircular = require( './../../is-circular' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is an array containing a circular reference.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is an array containing a circular reference\n*\n* @example\n* var arr = [ 1, 2, 3 ];\n* arr.push( arr );\n* var bool = isCircularArray( arr );\n* // returns true\n*\n* @example\n* var obj = {\n* 'a': 'beep',\n* 'b': {\n* 'c': 'boop'\n* }\n* };\n* obj.b.self = obj;\n* var bool = isCircularArray( obj );\n* // returns false\n*\n* @example\n* var bool = isCircularArray( [] );\n* // returns false\n*\n* @example\n* var bool = isCircularArray( null );\n* // returns false\n*/\nfunction isCircularArray( value ) {\n\tif ( !isArray( value ) ) {\n\t\treturn false;\n\t}\n\treturn isCircular( value );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isCircularArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array containing a circular reference.\n*\n* @module @stdlib/assert/is-circular-array\n*\n* @example\n* var isCircularArray = require( '@stdlib/assert/is-circular-array' );\n*\n* var arr = [ 1, 2, 3 ];\n* arr.push( arr );\n*\n* var bool = isCircularArray( arr );\n* // returns true\n*\n* bool = isCircularArray( null );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPlainObject = require( './../../is-plain-object' );\nvar isCircular = require( './../../is-circular' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a plain object containing a circular reference.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a plain object containing a circular reference\n*\n* @example\n* var obj = {\n* 'a': 'beep',\n* 'b': {\n* 'c': 'boop'\n* }\n* };\n* obj.b.self = obj;\n* var bool = isCircularPlainObject( obj );\n* // returns true\n*\n* @example\n* var arr = [ 1, 2, 3 ];\n* arr.push( arr );\n* var bool = isCircularPlainObject( arr );\n* // returns false\n*\n* @example\n* var bool = isCircularPlainObject( {} );\n* // returns false\n*\n* @example\n* var bool = isCircularPlainObject( null );\n* // returns false\n*/\nfunction isCircularPlainObject( value ) {\n\tif ( !isPlainObject( value ) ) {\n\t\treturn false;\n\t}\n\treturn isCircular( value );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isCircularPlainObject;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a plain object containing a circular reference.\n*\n* @module @stdlib/assert/is-circular-plain-object\n*\n* @example\n* var isCircular = require( '@stdlib/assert/is-circular-plain-object' );\n*\n* var obj = {\n* 'a': 'beep',\n* 'b': {\n* 'c': 'boop'\n* }\n* };\n* obj.b.self = obj;\n*\n* var bool = isCircularPlainObject( obj );\n* // returns true\n*\n* bool = isCircularPlainObject( null );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isFunction = require( './../../is-function' );\nvar function2string = require( '@stdlib/function/to-string' );\n\n\n// VARIABLES //\n\nvar RE_CLASS = /^\\s*class\\s/;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a class.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a class\n*\n* @example\n* var bool = isClass( class Person {} );\n* // returns true\n*\n* @example\n* var bool = isClass( function Person() {} );\n* // returns false\n*\n* @example\n* var bool = isClass( null );\n* // returns false\n*/\nfunction isClass( value ) {\n\tvar str;\n\tif ( !isFunction( value ) ) {\n\t\treturn false;\n\t}\n\tstr = function2string( value );\n\treturn RE_CLASS.test( str );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isClass;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a class.\n*\n* @module @stdlib/assert/is-class\n*\n* @example\n* var isClass = require( '@stdlib/assert/is-class' );\n*\n* var bool = isClass( class Person {} );\n* // returns true\n*\n* bool = isClass( function Person() {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar Complex128 = require( '@stdlib/complex/float64' );\nvar Complex64 = require( '@stdlib/complex/float32' );\nvar constructorName = require( '@stdlib/utils/constructor-name' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a 64-bit or 128-bit complex number.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a 64-bit or 128-bit complex number\n*\n* @example\n* var Complex128 = require( '@stdlib/complex/float64' );\n* var Complex64 = require( '@stdlib/complex/float32' );\n*\n* var x = new Complex128( 4.0, 2.0 );\n* var bool = isComplex( x );\n* // returns true\n*\n* x = new Complex64( 4.0, 2.0 );\n* bool = isComplex( x );\n* // returns true\n*/\nfunction isComplex( value ) {\n\tvar type;\n\tif ( value instanceof Complex128 || value instanceof Complex64 ) {\n\t\treturn true;\n\t}\n\ttype = constructorName( value );\n\treturn ( type === 'Complex64' || type === 'Complex128' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isComplex;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a 64-bit or 128-bit complex number.\n*\n* @module @stdlib/assert/is-complex\n*\n* @example\n* var Complex128 = require( '@stdlib/complex/float64' );\n* var Complex64 = require( '@stdlib/complex/float32' );\n* var isComplex = require( '@stdlib/assert/is-complex' );\n*\n* var x = new Complex128( 4.0, 2.0 );\n* var bool = isComplex( x );\n* // returns true\n*\n* x = new Complex64( 4.0, 2.0 );\n* bool = isComplex( x );\n* // returns true\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar Complex128 = require( '@stdlib/complex/float64' );\nvar Complex64 = require( '@stdlib/complex/float32' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a complex number-like object.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a complex number-like object.\n*\n* @example\n* var Complex128 = require( '@stdlib/complex/float64' );\n* var Complex64 = require( '@stdlib/complex/float32' );\n*\n* var x = new Complex128( 4.0, 2.0 );\n* var bool = isComplexLike( x );\n* // returns true\n*\n* x = new Complex64( 4.0, 2.0 );\n* bool = isComplexLike( x );\n* // returns true\n*/\nfunction isComplexLike( value ) {\n\tif ( value instanceof Complex128 || value instanceof Complex64 ) {\n\t\treturn true;\n\t}\n\treturn (\n\t\ttypeof value === 'object' &&\n\t\tvalue !== null &&\n\t\ttypeof value.re === 'number' &&\n\t\ttypeof value.im === 'number'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isComplexLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a complex number-like object.\n*\n* @module @stdlib/assert/is-complex-like\n*\n* @example\n* var Complex128 = require( '@stdlib/complex/float64' );\n* var Complex64 = require( '@stdlib/complex/float32' );\n* var isComplexLike = require( '@stdlib/assert/is-complex-like' );\n*\n* var x = new Complex128( 4.0, 2.0 );\n* var bool = isComplexLike( x );\n* // returns true\n*\n* x = new Complex64( 4.0, 2.0 );\n* bool = isComplexLike( x );\n* // returns true\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar Complex64Array = require( '@stdlib/array/complex64' );\nvar Complex128Array = require( '@stdlib/array/complex128' );\n\n\n// MAIN //\n\nvar CTORS = [\n\tComplex128Array,\n\tComplex64Array\n];\n\n\n// EXPORTS //\n\nmodule.exports = CTORS;\n", "[\n\t\"Complex64Array\",\n\t\"Complex128Array\"\n]\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar ctorName = require( '@stdlib/utils/constructor-name' );\nvar getPrototypeOf = require( '@stdlib/utils/get-prototype-of' );\nvar CTORS = require( './ctors.js' );\nvar NAMES = require( './names.json' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a complex typed array.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a complex typed array\n*\n* @example\n* var Complex128Array = require( '@stdlib/array/complex128' );\n*\n* var bool = isComplexTypedArray( new Complex128Array( 10 ) );\n* // returns true\n*/\nfunction isComplexTypedArray( value ) {\n\tvar v;\n\tvar i;\n\n\tif ( typeof value !== 'object' || value === null ) {\n\t\treturn false;\n\t}\n\t// Check for complex typed array objects from the same realm (same Node.js `vm` or same `Window` object)...\n\tfor ( i = 0; i < CTORS.length; i++ ) {\n\t\tif ( value instanceof CTORS[ i ] ) {\n\t\t\treturn true;\n\t\t}\n\t}\n\t// Walk the prototype tree until we find an object having a desired class...\n\twhile ( value ) {\n\t\tv = ctorName( value );\n\t\tfor ( i = 0; i < NAMES.length; i++ ) {\n\t\t\tif ( NAMES[ i ] === v ) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t\tvalue = getPrototypeOf( value );\n\t}\n\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isComplexTypedArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a complex typed array.\n*\n* @module @stdlib/assert/is-complex-typed-array\n*\n* @example\n* var Complex128Array = require( '@stdlib/array/complex128' );\n* var isComplexTypedArray = require( '@stdlib/assert/is-complex-typed-array' );\n*\n* var bool = isComplexTypedArray( new Complex128Array( 10 ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNonNegativeInteger = require( './../../is-nonnegative-integer' ).isPrimitive;\nvar MAX = require( '@stdlib/constants/array/max-typed-array-length' );\n\n\n// VARIABLES //\n\nvar MAX_LENGTH = MAX / 2; // every complex array element has both a real and imaginary component stored as separate numbers, so the maximum length is half that of a normal typed array\n\n\n// MAIN //\n\n/**\n* Tests if a value is complex-typed-array-like.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is complex-typed-array-like\n*\n* @example\n* var arr = {\n*\t'BYTES_PER_ELEMENT': 8,\n*\t'length': 10,\n*\t'byteOffset': 0,\n*\t'byteLength': 10,\n* 'get': function get() {},\n* 'set': function set() {}\n* };\n* var val = isComplexTypedArrayLike( arr );\n* // returns true\n*\n* @example\n* var Complex64Array = require( '@stdlib/array/complex64' );\n*\n* var val = isComplexTypedArrayLike( new Complex64Array( 4 ) );\n* // returns true\n*\n* @example\n* var val = isComplexTypedArrayLike( [] );\n* // returns false\n*\n* @example\n* var val = isComplexTypedArrayLike( {} );\n* // returns false\n*\n* @example\n* var val = isComplexTypedArrayLike( null );\n* // returns false\n*\n* @example\n* var val = isComplexTypedArrayLike( 'beep' );\n* // returns false\n*/\nfunction isComplexTypedArrayLike( value ) {\n\treturn (\n\t\tvalue !== null &&\n\t\ttypeof value === 'object' &&\n\n\t\t// Check for standard typed array properties:\n\t\tisNonNegativeInteger( value.length ) &&\n\t\tvalue.length <= MAX_LENGTH &&\n\t\ttypeof value.BYTES_PER_ELEMENT === 'number' &&\n\t\ttypeof value.byteOffset === 'number' &&\n\t\ttypeof value.byteLength === 'number' &&\n\n\t\t// Check for properties necessary for complex typed arrays:\n\t\ttypeof value.get === 'function' &&\n\t\ttypeof value.set === 'function'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isComplexTypedArrayLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is complex-typed-array-like.\n*\n* @module @stdlib/assert/is-complex-typed-array-like\n*\n* @example\n* var Complex64Array = require( '@stdlib/array/complex64' );\n* var isComplexTypedArrayLike = require( '@stdlib/assert/is-complex-typed-array-like' );\n*\n* var bool = isComplexTypedArrayLike( new Complex64Array() );\n* // returns true\n*\n* bool = isComplexTypedArrayLike({\n*\t'length': 10,\n*\t'byteOffset': 0,\n*\t'byteLength': 10,\n*\t'BYTES_PER_ELEMENT': 4,\n* 'get': function get() {},\n* 'set': function set() {}\n* });\n* // returns true\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar Complex64 = require( '@stdlib/complex/float32' );\nvar constructorName = require( '@stdlib/utils/constructor-name' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a 64-bit complex number.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a 64-bit complex number\n*\n* @example\n* var Complex64 = require( '@stdlib/complex/float32' );\n*\n* var x = new Complex64( 4.0, 2.0 );\n*\n* var bool = isComplex64( x );\n* // returns true\n*/\nfunction isComplex64( value ) {\n\treturn (\n\t\tvalue instanceof Complex64 ||\n\t\tconstructorName( value ) === 'Complex64'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isComplex64;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a 64-bit complex number.\n*\n* @module @stdlib/assert/is-complex64\n*\n* @example\n* var Complex64 = require( '@stdlib/complex/float32' );\n* var isComplex64 = require( '@stdlib/assert/is-complex64' );\n*\n* var x = new Complex64( 4.0, 2.0 );\n*\n* var bool = isComplex64( x );\n* // returns true\n*/\n\n// MODULES //\n\nvar isComplex64 = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = isComplex64;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar Complex64Array = require( '@stdlib/array/complex64' );\nvar constructorName = require( '@stdlib/utils/constructor-name' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a Complex64Array.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a Complex64Array\n*\n* @example\n* var bool = isComplex64Array( new Complex64Array( 10 ) );\n* // returns true\n*\n* @example\n* var bool = isComplex64Array( [] );\n* // returns false\n*/\nfunction isComplex64Array( value ) {\n\treturn (\n\t\tvalue instanceof Complex64Array ||\n\t\tconstructorName( value ) === 'Complex64Array'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isComplex64Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a Complex64Array.\n*\n* @module @stdlib/assert/is-complex64array\n*\n* @example\n* var isComplex64Array = require( '@stdlib/assert/is-complex64array' );\n*\n* var bool = isComplex64Array( new Complex64Array( 10 ) );\n* // returns true\n*\n* bool = isComplex64Array( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isComplex64Array = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = isComplex64Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2023 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isMatrixLike = require( './../../is-matrix-like' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a 2-dimensional ndarray-like object whose underlying data type is `complex64`.\n*\n* @param {*} v - value to test\n* @returns {boolean} boolean indicating if a value is a 2-dimensional ndarray-like object whose underlying data type is `complex64`\n*\n* @example\n* var Complex64Array = require( '@stdlib/array/complex64' );\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n*\n* var buffer = new Complex64Array( [ 0, 0, 0, 0, 0, 0, 0, 0 ] );\n* var arr = ndarray( 'complex64', buffer, [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n*\n* var bool = isComplex64MatrixLike( arr );\n* // returns true\n*\n* bool = isComplex64MatrixLike( [] );\n* // returns false\n*/\nfunction isComplex64MatrixLike( v ) {\n\treturn ( isMatrixLike( v ) && v.dtype === 'complex64' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isComplex64MatrixLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2023 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a 2-dimensional ndarray-like object whose underlying data type is `complex64`.\n*\n* @module @stdlib/assert/is-complex64matrix-like\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n* var Complex64Array = require( '@stdlib/array/complex64' );\n* var isComplex64MatrixLike = require( '@stdlib/assert/is-complex64matrix-like' );\n*\n* var buffer = new Complex64Array( [ 0, 0, 0, 0, 0, 0, 0, 0 ] );\n*\n* var arr = ndarray( 'complex64', buffer, [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n*\n* var bool = isComplex64MatrixLike( arr );\n* // returns true\n*\n* bool = isComplex64MatrixLike( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2023 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isndarrayLike = require( './../../is-ndarray-like' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is an ndarray-like object whose underlying data type is `complex64`.\n*\n* @param {*} v - value to test\n* @returns {boolean} boolean indicating if a value is an ndarray-like object whose underlying data type is `complex64`\n*\n* @example\n* var Complex64Array = require( '@stdlib/array/complex64' );\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n*\n* var buffer = new Complex64Array( [ 0, 0, 0, 0, 0, 0, 0, 0 ] );\n* var arr = ndarray( 'complex64', buffer, [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n*\n* var bool = isComplex64ndarrayLike( arr );\n* // returns true\n*\n* bool = isComplex64ndarrayLike( [] );\n* // returns false\n*/\nfunction isComplex64ndarrayLike( v ) {\n\treturn ( isndarrayLike( v ) && v.dtype === 'complex64' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isComplex64ndarrayLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2023 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an ndarray-like object whose underlying data type is `complex64`.\n*\n* @module @stdlib/assert/is-complex64ndarray-like\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n* var Complex64Array = require( '@stdlib/array/complex64' );\n* var isComplex64ndarrayLike = require( '@stdlib/assert/is-complex64ndarray-like' );\n*\n* var buffer = new Complex64Array( [ 0, 0, 0, 0, 0, 0, 0, 0 ] );\n*\n* var arr = ndarray( 'complex64', buffer, [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n*\n* var bool = isComplex64ndarrayLike( arr );\n* // returns true\n*\n* bool = isComplex64ndarrayLike( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isndarrayLike = require( './../../is-ndarray-like' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a 1-dimensional ndarray-like object.\n*\n* @param {*} v - value to test\n* @returns {boolean} boolean indicating if a value is a 1-dimensional ndarray-like object\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n*\n* var arr = ndarray( 'generic', [ 0, 0, 0, 0 ], [ 4 ], [ 1 ], 0, 'row-major' );\n* var bool = isVectorLike( arr );\n* // returns true\n*\n* bool = isVectorLike( [] );\n* // returns false\n*/\nfunction isVectorLike( v ) {\n\treturn (\n\t\tisndarrayLike( v ) &&\n\t\tv.ndims === 1 &&\n\t\tv.shape.length === 1 &&\n\t\tv.strides.length === 1\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isVectorLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a 1-dimensional ndarray-like object.\n*\n* @module @stdlib/assert/is-vector-like\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n* var isVectorLike = require( '@stdlib/assert/is-vector-like' );\n*\n* var arr = ndarray( 'generic', [ 0, 0, 0, 0 ], [ 4 ], [ 1 ], 0, 'row-major' );\n* var bool = isVectorLike( arr );\n* // returns true\n*\n* bool = isVectorLike( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2023 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isVectorLike = require( './../../is-vector-like' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a 1-dimensional ndarray-like object whose underlying data type is `complex64`.\n*\n* @param {*} v - value to test\n* @returns {boolean} boolean indicating if a value is a 1-dimensional ndarray-like object whose underlying data type is `complex64`\n*\n* @example\n* var Complex64Array = require( '@stdlib/array/complex64' );\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n*\n* var buffer = new Complex64Array( [ 0, 0, 0, 0, 0, 0, 0, 0 ] );\n* var arr = ndarray( 'complex64', buffer, [ 4 ], [ 1 ], 0, 'row-major' );\n*\n* var bool = isComplex64VectorLike( arr );\n* // returns true\n*\n* bool = isComplex64VectorLike( [] );\n* // returns false\n*/\nfunction isComplex64VectorLike( v ) {\n\treturn ( isVectorLike( v ) && v.dtype === 'complex64' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isComplex64VectorLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2023 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a 1-dimensional ndarray-like object whose underlying data type is `complex64`.\n*\n* @module @stdlib/assert/is-complex64vector-like\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n* var Complex64Array = require( '@stdlib/array/complex64' );\n* var isComplex64VectorLike = require( '@stdlib/assert/is-complex64vector-like' );\n*\n* var buffer = new Complex64Array( [ 0, 0, 0, 0, 0, 0, 0, 0 ] );\n*\n* var arr = ndarray( 'complex64', buffer, [ 4 ], [ 1 ], 0, 'row-major' );\n*\n* var bool = isComplex64VectorLike( arr );\n* // returns true\n*\n* bool = isComplex64VectorLike( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar Complex128 = require( '@stdlib/complex/float64' );\nvar constructorName = require( '@stdlib/utils/constructor-name' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a 128-bit complex number.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a 128-bit complex number\n*\n* @example\n* var Complex128 = require( '@stdlib/complex/float64' );\n*\n* var x = new Complex128( 4.0, 2.0 );\n*\n* var bool = isComplex128( x );\n* // returns true\n*/\nfunction isComplex128( value ) {\n\treturn (\n\t\tvalue instanceof Complex128 ||\n\t\tconstructorName( value ) === 'Complex128'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isComplex128;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a 128-bit complex number.\n*\n* @module @stdlib/assert/is-complex128\n*\n* @example\n* var Complex128 = require( '@stdlib/complex/float64' );\n* var isComplex128 = require( '@stdlib/assert/is-complex128' );\n*\n* var x = new Complex128( 4.0, 2.0 );\n*\n* var bool = isComplex128( x );\n* // returns true\n*/\n\n// MODULES //\n\nvar isComplex128 = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = isComplex128;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar Complex128Array = require( '@stdlib/array/complex128' );\nvar constructorName = require( '@stdlib/utils/constructor-name' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a Complex128Array.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a Complex128Array\n*\n* @example\n* var bool = isComplex128Array( new Complex128Array( 10 ) );\n* // returns true\n*\n* @example\n* var bool = isComplex128Array( [] );\n* // returns false\n*/\nfunction isComplex128Array( value ) {\n\treturn (\n\t\tvalue instanceof Complex128Array ||\n\t\tconstructorName( value ) === 'Complex128Array'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isComplex128Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a Complex128Array.\n*\n* @module @stdlib/assert/is-complex128array\n*\n* @example\n* var isComplex128Array = require( '@stdlib/assert/is-complex128array' );\n*\n* var bool = isComplex128Array( new Complex128Array( 10 ) );\n* // returns true\n*\n* bool = isComplex128Array( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isComplex128Array = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = isComplex128Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2023 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isMatrixLike = require( './../../is-matrix-like' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a 2-dimensional ndarray-like object whose underlying data type is `complex128`.\n*\n* @param {*} v - value to test\n* @returns {boolean} boolean indicating if a value is a 2-dimensional ndarray-like object whose underlying data type is `complex128`\n*\n* @example\n* var Complex128Array = require( '@stdlib/array/complex128' );\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n*\n* var buffer = new Complex128Array( [ 0, 0, 0, 0, 0, 0, 0, 0 ] );\n* var arr = ndarray( 'complex128', buffer, [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n*\n* var bool = isComplex128MatrixLike( arr );\n* // returns true\n*\n* bool = isComplex128MatrixLike( [] );\n* // returns false\n*/\nfunction isComplex128MatrixLike( v ) {\n\treturn ( isMatrixLike( v ) && v.dtype === 'complex128' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isComplex128MatrixLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2023 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a 2-dimensional ndarray-like object whose underlying data type is `complex128`.\n*\n* @module @stdlib/assert/is-complex128matrix-like\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n* var Complex128Array = require( '@stdlib/array/complex128' );\n* var isComplex128MatrixLike = require( '@stdlib/assert/is-complex128matrix-like' );\n*\n* var buffer = new Complex128Array( [ 0, 0, 0, 0, 0, 0, 0, 0 ] );\n*\n* var arr = ndarray( 'complex128', buffer, [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n*\n* var bool = isComplex128MatrixLike( arr );\n* // returns true\n*\n* bool = isComplex128MatrixLike( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2023 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isndarrayLike = require( './../../is-ndarray-like' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is an ndarray-like object whose underlying data type is `complex128`.\n*\n* @param {*} v - value to test\n* @returns {boolean} boolean indicating if a value is an ndarray-like object whose underlying data type is `complex128`\n*\n* @example\n* var Complex128Array = require( '@stdlib/array/complex128' );\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n*\n* var buffer = new Complex128Array( [ 0, 0, 0, 0, 0, 0, 0, 0 ] );\n* var arr = ndarray( 'complex128', buffer, [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n*\n* var bool = isComplex128ndarrayLike( arr );\n* // returns true\n*\n* bool = isComplex128ndarrayLike( [] );\n* // returns false\n*/\nfunction isComplex128ndarrayLike( v ) {\n\treturn ( isndarrayLike( v ) && v.dtype === 'complex128' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isComplex128ndarrayLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2023 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an ndarray-like object whose underlying data type is `complex128`.\n*\n* @module @stdlib/assert/is-complex128ndarray-like\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n* var Complex128Array = require( '@stdlib/array/complex128' );\n* var isComplex128ndarrayLike = require( '@stdlib/assert/is-complex128ndarray-like' );\n*\n* var buffer = new Complex128Array( [ 0, 0, 0, 0, 0, 0, 0, 0 ] );\n*\n* var arr = ndarray( 'complex128', buffer, [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n*\n* var bool = isComplex128ndarrayLike( arr );\n* // returns true\n*\n* bool = isComplex128ndarrayLike( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2023 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isVectorLike = require( './../../is-vector-like' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a 1-dimensional ndarray-like object whose underlying data type is `complex128`.\n*\n* @param {*} v - value to test\n* @returns {boolean} boolean indicating if a value is a 1-dimensional ndarray-like object whose underlying data type is `complex128`\n*\n* @example\n* var Complex128Array = require( '@stdlib/array/complex128' );\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n*\n* var buffer = new Complex128Array( [ 0, 0, 0, 0, 0, 0, 0, 0 ] );\n* var arr = ndarray( 'complex128', buffer, [ 4 ], [ 1 ], 0, 'row-major' );\n*\n* var bool = isComplex128VectorLike( arr );\n* // returns true\n*\n* bool = isComplex128VectorLike( [] );\n* // returns false\n*/\nfunction isComplex128VectorLike( v ) {\n\treturn ( isVectorLike( v ) && v.dtype === 'complex128' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isComplex128VectorLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2023 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a 1-dimensional ndarray-like object whose underlying data type is `complex128`.\n*\n* @module @stdlib/assert/is-complex128vector-like\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n* var Complex128Array = require( '@stdlib/array/complex128' );\n* var isComplex128VectorLike = require( '@stdlib/assert/is-complex128vector-like' );\n*\n* var buffer = new Complex128Array( [ 0, 0, 0, 0, 0, 0, 0, 0 ] );\n* var arr = ndarray( 'complex128', buffer, [ 4 ], [ 1 ], 0, 'row-major' );\n*\n* var bool = isComplex128VectorLike( arr );\n* // returns true\n*\n* bool = isComplex128VectorLike( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isPrimitive;\nvar iscomposite = require( '@stdlib/math/base/assert/is-composite' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number primitive having a value which is a composite number.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number primitive having a value which is a composite number\n*\n* @example\n* var bool = isComposite( 4.0 );\n* // returns true\n*\n* @example\n* var bool = isComposite( new Number( 4.0 ) );\n* // returns false\n*/\nfunction isComposite( value ) {\n\tif ( !isNumber( value ) ) {\n\t\treturn false;\n\t}\n\treturn iscomposite( value );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isComposite;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isObject;\nvar iscomposite = require( '@stdlib/math/base/assert/is-composite' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number object having a value which is a composite number.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number object having a value which is a composite number\n*\n* @example\n* var bool = isComposite( 4.0 );\n* // returns false\n*\n* @example\n* var bool = isComposite( new Number( 4.0 ) );\n* // returns true\n*/\nfunction isComposite( value ) {\n\tif ( !isNumber( value ) ) {\n\t\treturn false;\n\t}\n\treturn iscomposite( value.valueOf() );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isComposite;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a composite number.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a composite number\n*\n* @example\n* var bool = isComposite( 4.0 );\n* // returns true\n*\n* @example\n* var bool = isComposite( new Number( 4.0 ) );\n* // returns true\n*\n* @example\n* var bool = isComposite( 3.14 );\n* // returns false\n*\n* @example\n* var bool = isComposite( -4.0 );\n* // returns false\n*\n* @example\n* var bool = isComposite( null );\n* // returns false\n*/\nfunction isComposite( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isComposite;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a composite number.\n*\n* @module @stdlib/assert/is-composite\n*\n* @example\n* var isComposite = require( '@stdlib/assert/is-composite' );\n*\n* var bool = isComposite( 4.0 );\n* // returns true\n*\n* bool = isComposite( new Number( 4.0 ) );\n* // returns true\n*\n* bool = isComposite( 3.14 );\n* // returns false\n*\n* bool = isComposite( -4.0 );\n* // returns false\n*\n* bool = isComposite( null );\n* // returns false\n*\n* @example\n* var isComposite = require( '@stdlib/assert/is-composite' ).isPrimitive;\n*\n* var bool = isComposite( 4.0 );\n* // returns true\n*\n* bool = isComposite( new Number( 4.0 ) );\n* // returns false\n*\n* @example\n* var isComposite = require( '@stdlib/assert/is-composite' ).isObject;\n*\n* var bool = isComposite( 4.0 );\n* // returns false\n*\n* bool = isComposite( new Number( 4.0 ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar propertyDescriptor = require( '@stdlib/utils/property-descriptor' );\n\n\n// MAIN //\n\n/**\n* Tests if an object's own property is configurable.\n*\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object property is configurable\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': true,\n* 'writable': true,\n* 'value': true\n* });\n*\n* var bool = isConfigurableProperty( obj, 'boop' );\n* // returns true\n*\n* bool = isConfigurableProperty( obj, 'beep' );\n* // returns false\n*/\nfunction isConfigurableProperty( value, property ) {\n\tvar desc = propertyDescriptor( value, property );\n\treturn ( desc !== null && desc.configurable === true );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isConfigurableProperty;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object's own property is configurable.\n*\n* @module @stdlib/assert/is-configurable-property\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n* var isConfigurableProperty = require( '@stdlib/assert/is-configurable-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': true,\n* 'writable': true,\n* 'value': true\n* });\n*\n* var bool = isConfigurableProperty( obj, 'boop' );\n* // returns true\n*\n* bool = isConfigurableProperty( obj, 'beep' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar propertyDescriptorIn = require( '@stdlib/utils/property-descriptor-in' );\n\n\n// MAIN //\n\n/**\n* Tests if an object's own or inherited property is configurable.\n*\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object property is configurable\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': true,\n* 'writable': true,\n* 'value': true\n* });\n*\n* var bool = isConfigurablePropertyIn( obj, 'boop' );\n* // returns true\n*\n* bool = isConfigurablePropertyIn( obj, 'beep' );\n* // returns false\n*/\nfunction isConfigurablePropertyIn( value, property ) {\n\tvar desc = propertyDescriptorIn( value, property );\n\treturn ( desc !== null && desc.configurable === true );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isConfigurablePropertyIn;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object's own or inherited property is configurable.\n*\n* @module @stdlib/assert/is-configurable-property-in\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n* var isConfigurablePropertyIn = require( '@stdlib/assert/is-configurable-property-in' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': true,\n* 'writable': true,\n* 'value': true\n* });\n*\n* var bool = isConfigurablePropertyIn( obj, 'boop' );\n* // returns true\n*\n* bool = isConfigurablePropertyIn( obj, 'beep' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/*\n* @license Apache-2.0\n*\n* Copyright (c) 2022 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\nvar constantcase = require( '@stdlib/string/base/constantcase' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a constantcase string.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is a constantcase string\n*\n* @example\n* var bool = isConstantcase( 'BEEP_BOOP' );\n* // returns true\n*\n* bool = isConstantcase( 'beep_boop' );\n* // returns false\n*\n* bool = isConstantcase( 'BEEP-BOOP' );\n* // returns true\n*\n* bool = isConstantcase( 'beep boop' );\n* // returns false\n*\n* bool = isConstantcase( 'beep' );\n* // returns false\n*\n* bool = isConstantcase( '' );\n* // returns true\n*\n* bool = isConstantcase( null );\n* // returns false\n*/\nfunction isConstantcase( value ) {\n\treturn (\n\t\tisString( value ) &&\n\t\tvalue === constantcase( value )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isConstantcase;\n", "/*\n* @license Apache-2.0\n*\n* Copyright (c) 2022 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a constantcase string.\n*\n* @module @stdlib/assert/is-constantcase\n*\n* @example\n* var isConstantcase = require( '@stdlib/assert/is-constantcase' );\n*\n* var bool = isConstantcase( 'BEEP_BOOP' );\n* // returns true\n*\n* bool = isConstantcase( 'BEEP and BOOP' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInteger = require( './../../is-integer' ).isPrimitive;\nvar cbrt = require( '@stdlib/math/base/special/cbrt' );\nvar floor = require( '@stdlib/math/base/special/floor' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number primitive having a value which is a cube number.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number primitive having a value which is a cube number\n*\n* @example\n* var bool = isCubeNumber( 8.0 );\n* // returns true\n*\n* @example\n* var bool = isCubeNumber( new Number( 8.0 ) );\n* // returns false\n*/\nfunction isCubeNumber( value ) {\n\tvar n;\n\tif ( !isInteger( value ) ) {\n\t\treturn false;\n\t}\n\tn = floor( cbrt( value ) + 0.5 );\n\treturn n*n*n === value;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isCubeNumber;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInteger = require( './../../is-integer' ).isObject;\nvar cbrt = require( '@stdlib/math/base/special/cbrt' );\nvar floor = require( '@stdlib/math/base/special/floor' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number object having a value which is a cube number.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number object having a value which is a cube number\n*\n* @example\n* var bool = isCubeNumber( 8.0 );\n* // returns false\n*\n* @example\n* var bool = isCubeNumber( new Number( 8.0 ) );\n* // returns true\n*/\nfunction isCubeNumber( value ) {\n\tvar n;\n\tvar x;\n\tif ( !isInteger( value ) ) {\n\t\treturn false;\n\t}\n\tx = value.valueOf();\n\tn = floor( cbrt( x ) + 0.5 );\n\treturn n*n*n === x;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isCubeNumber;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a cube number.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a cube number\n*\n* @example\n* var bool = isCubeNumber( 8.0 );\n* // returns true\n*\n* @example\n* var bool = isCubeNumber( new Number( 8.0 ) );\n* // returns true\n*\n* @example\n* var bool = isCubeNumber( 3.14 );\n* // returns false\n*\n* @example\n* var bool = isCubeNumber( -5.0 );\n* // returns false\n*\n* @example\n* var bool = isCubeNumber( null );\n* // returns false\n*/\nfunction isCubeNumber( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isCubeNumber;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a cube number.\n*\n* @module @stdlib/assert/is-cube-number\n*\n* @example\n* var isCubeNumber = require( '@stdlib/assert/is-cube-number' );\n*\n* var bool = isCubeNumber( 8.0 );\n* // returns true\n*\n* bool = isCubeNumber( new Number( 8.0 ) );\n* // returns true\n*\n* bool = isCubeNumber( 3.14 );\n* // returns false\n*\n* bool = isCubeNumber( -5.0 );\n* // returns false\n*\n* bool = isCubeNumber( null );\n* // returns false\n*\n* @example\n* var isCubeNumber = require( '@stdlib/assert/is-cube-number' ).isPrimitive;\n*\n* var bool = isCubeNumber( 8.0 );\n* // returns true\n*\n* bool = isCubeNumber( new Number( 8.0 ) );\n* // returns false\n*\n* @example\n* var isCubeNumber = require( '@stdlib/assert/is-cube-number' ).isObject;\n*\n* var bool = isCubeNumber( 8.0 );\n* // returns false\n*\n* bool = isCubeNumber( new Number( 8.0 ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2022 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isDateObject = require( './../../is-date-object' );\nvar currentYear = require( '@stdlib/time/current-year' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is either an integer equal to the current year or a `Date` object representing the current year.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a provided value is the current year\n*\n* @example\n* var bool = isCurrentYear( new Date() );\n* // returns true\n*\n* @example\n* var currentYear = require( '@stdlib/time/current-year' );\n* var bool = isCurrentYear( currentYear() );\n* // returns true\n*\n* @example\n* var bool = isCurrentYear( 2021 );\n* // returns false\n*\n* @example\n* var bool = isCurrentYear( null );\n* // returns false\n*/\nfunction isCurrentYear( value ) {\n\tif ( isDateObject( value ) ) {\n\t\treturn value.getFullYear() === currentYear();\n\t}\n\treturn ( value === currentYear() );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isCurrentYear;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2022 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is the current year.\n*\n* @module @stdlib/assert/is-current-year\n*\n* @example\n* var currentYear = require( '@stdlib/time/current-year' );\n* var isCurrentYear = require( '@stdlib/assert/is-current-year' );\n*\n* var bool = isCurrentYear( currentYear() );\n* // returns true\n*\n* bool = isCurrentYear( 2021 );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Boolean indicating if the current process is running on Darwin.\n*\n* @module @stdlib/assert/is-darwin\n* @type {boolean}\n*\n* @example\n* var PLATFORM = require( '@stdlib/os/platform' );\n* var IS_DARWIN = require( '@stdlib/assert/is-darwin' );\n*\n* if ( IS_DARWIN ) {\n* console.log( 'Running on Darwin...' );\n* } else {\n* console.log( 'Running on %s...', PLATFORM );\n* }\n*/\n\n// MODULES //\n\nvar PLATFORM = require( '@stdlib/os/platform' );\n\n\n// MAIN //\n\n/**\n* Boolean indicating if the current process is running on Darwin.\n*\n* @constant\n* @type {boolean}\n*/\nvar IS_DARWIN = ( PLATFORM === 'darwin' );\n\n\n// EXPORTS //\n\nmodule.exports = IS_DARWIN;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar propertyDescriptor = require( '@stdlib/utils/property-descriptor' );\n\n\n// MAIN //\n\n/**\n* Tests if an object's own property has a data descriptor.\n*\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object property has a data descriptor\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* function getter() {\n* return 'beep';\n* }\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': false,\n* 'get': getter\n* });\n*\n* var bool = isDataProperty( obj, 'boop' );\n* // returns true\n*\n* bool = isDataProperty( obj, 'beep' );\n* // returns false\n*/\nfunction isDataProperty( value, property ) {\n\tvar desc = propertyDescriptor( value, property );\n\treturn ( desc !== null && typeof desc.writable === 'boolean' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isDataProperty;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object's own property has a data descriptor.\n*\n* @module @stdlib/assert/is-data-property\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n* var isDataProperty = require( '@stdlib/assert/is-data-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* function getter() {\n* return 'beep';\n* }\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': false,\n* 'get': getter\n* });\n*\n* var bool = isDataProperty( obj, 'boop' );\n* // returns true\n*\n* bool = isDataProperty( obj, 'beep' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar propertyDescriptorIn = require( '@stdlib/utils/property-descriptor-in' );\n\n\n// MAIN //\n\n/**\n* Tests if an object's own or inherited property has a data descriptor.\n*\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object property has a data descriptor\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* function getter() {\n* return 'beep';\n* }\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': false,\n* 'get': getter\n* });\n*\n* var bool = isDataPropertyIn( obj, 'boop' );\n* // returns true\n*\n* bool = isDataPropertyIn( obj, 'beep' );\n* // returns false\n*/\nfunction isDataPropertyIn( value, property ) {\n\tvar desc = propertyDescriptorIn( value, property );\n\treturn ( desc !== null && typeof desc.writable === 'boolean' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isDataPropertyIn;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object's own or inherited property has a data descriptor.\n*\n* @module @stdlib/assert/is-data-property-in\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n* var isDataPropertyIn = require( '@stdlib/assert/is-data-property-in' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* function getter() {\n* return 'beep';\n* }\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': false,\n* 'get': getter\n* });\n*\n* var bool = isDataPropertyIn( obj, 'boop' );\n* // returns true\n*\n* bool = isDataPropertyIn( obj, 'beep' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array-like object containing only `Date` objects.\n*\n* @module @stdlib/assert/is-date-object-array\n*\n* @example\n* var isDateObjectArray = require( '@stdlib/assert/is-date-object-array' );\n*\n* var bool = isDateObjectArray( [ new Date(), new Date() ] );\n* // returns true\n*\n* bool = isDateObjectArray( [ {}, new Number( 3.0 ) ] );\n* // returns false\n*\n* bool = isDateObjectArray( [ {}, '3.0' ] );\n* // returns false\n*/\n\n// MODULES //\n\nvar arrayfun = require( './../../tools/array-like-function' );\nvar isDateObject = require( './../../is-date-object' );\n\n\n// MAIN //\n\nvar isDateObjectArray = arrayfun( isDateObject );\n\n\n// EXPORTS //\n\nmodule.exports = isDateObjectArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\n\n\n// VARIABLES //\n\n// Character codes:\nvar ZERO = 48;\nvar NINE = 57;\n\n\n// MAIN //\n\n/**\n* Tests whether a string contains only numeric digits.\n*\n* @param {*} x - value to test\n* @returns {boolean} boolean indicating if a string contains only numeric digits\n*\n* @example\n* var out = isDigitString( '0123456789' );\n* // returns true\n*\n* @example\n* var out = isDigitString( '0xffffff' );\n* // returns false\n*\n* @example\n* var out = isDigitString( '' );\n* // returns false\n*\n* @example\n* var out = isDigitString( 123 );\n* // returns false\n*/\nfunction isDigitString( x ) {\n\tvar len;\n\tvar ch;\n\tvar i;\n\tif ( !isString( x ) ) {\n\t\treturn false;\n\t}\n\tlen = x.length;\n\tif ( len === 0 ) {\n\t\treturn false;\n\t}\n\tfor ( i = 0; i < len; i++ ) {\n\t\tch = x.charCodeAt( i );\n\t\tif ( ch < ZERO || ch > NINE ) {\n\t\t\treturn false;\n\t\t}\n\t}\n\treturn true;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isDigitString;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether a string contains only numeric digits.\n*\n* @module @stdlib/assert/is-digit-string\n*\n* @example\n* var isDigitString = require( '@stdlib/assert/is-digit-string' );\n*\n* var out = isDigitString( '0123456789' );\n* // returns true\n*\n* out = isDigitString( '0xffffff' );\n* // returns false\n*\n* out = isDigitString( '' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar readFile = require( '@stdlib/fs/read-file' ).sync;\nvar contains = require( './../../contains' );\nvar exists = require( '@stdlib/fs/exists' ).sync;\n\n\n// VARIABLES //\n\nvar OPTS = {\n\t'encoding': 'utf8'\n};\n\n\n// MAIN //\n\n/**\n* Returns a boolean indicating if the process is running in a Docker container.\n*\n* @returns {boolean} boolean indicating if the process is running in a Docker container\n*\n* @example\n* var bool = isDocker();\n* // returns \n*/\nfunction isDocker() {\n\tvar file;\n\tif ( exists( '/.dockerenv' ) ) {\n\t\treturn true;\n\t}\n\tfile = readFile( '/proc/self/cgroup', OPTS );\n\tif ( file instanceof Error ) {\n\t\treturn false;\n\t}\n\treturn contains( file, 'docker' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isDocker;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Boolean indicating if the process is running in a Docker container.\n*\n* @module @stdlib/assert/is-docker\n*\n* @example\n* var IS_DOCKER = require( '@stdlib/assert/is-docker' );\n*\n* var bool = IS_DOCKER;\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// MAIN //\n\nvar bool = main();\n\n\n// EXPORTS //\n\nmodule.exports = bool;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2022 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\n\n\n// VARIABLES //\n\n/**\n* Regular expression: `/^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\\.)+[a-z0-9][a-z0-9-]{0,61}[a-z0-9]$/`\n*\n* - `\\^`\n* - match any string which begins with\n*\n* - `(?:)`\n* - capture but do not remember\n*\n* - `[a-z0-9]`\n* - match a single digit or letter\n*\n* - `(?:)`\n* - capture but do not remember\n*\n* - `[a-z0-9-]{0,61}`\n* - match between 0 and 61 digits, letters, or hyphens\n*\n* - `[a-z0-9]`\n* - match a single digit or letter\n*\n* - `?`\n* - match the previous token between zero and one times\n*\n* - `\\.`\n* - match a literal `.`\n*\n* - `+`\n* - match the previous group one or more times\n*\n* - `[a-z0-9]`\n* - match a single digit or letter\n*\n* - `[a-z0-9-]{0,61}`\n* - match between 0 and 61 digits, letters, or hyphens\n*\n* - `[a-z0-9]`\n* - match a single digit or letter\n*\n* - `$`\n* - match end of string\n*\n* @private\n* @constant\n* @type {RegExp}\n*/\nvar RE_DOMAIN_NAME = /^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\\.)+[a-z0-9][a-z0-9-]{0,61}[a-z0-9]$/i;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a domain name.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is a domain name\n*\n* @example\n* var bool = isDomainName( 'beep.boop' );\n* // returns true\n*\n* @example\n* var bool = isDomainName( 'beep boop' );\n* // returns false\n*\n* @example\n* var bool = isDomainName( 'foo@bar.com' );\n* // returns false\n*\n* @example\n* var bool = isDomainName( null );\n* // returns false\n*/\nfunction isDomainName( value ) {\n\tif ( !isString( value ) ) {\n\t\treturn false;\n\t}\n\tif ( value.length < 2 || value.length > 255 ) {\n\t\treturn false;\n\t}\n\treturn RE_DOMAIN_NAME.test( value );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isDomainName;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2022 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a domain name.\n*\n* @module @stdlib/assert/is-domain-name\n*\n* @example\n* var isDomainName = require( '@stdlib/assert/is-domain-name' );\n*\n* var bool = isDomainName( 'example.com' );\n* // returns true\n*\n* bool = isDomainName( 'foo@bar.com' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2022 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\n\n\n// VARIABLES //\n\nvar RE_DURATION_STRING = /^(?:\\d+d)?(?:\\d+h)?(?:\\d+m)?(?:\\d+s)?(?:\\d+ms)?$/i;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a duration string.\n*\n* ## Notes\n*\n* - The function validates that a value is a string. For all other types, the function returns `false`.\n*\n* - A duration string is a string containing a sequence of time units. A time unit is a non-negative integer followed by a unit identifier. The following unit identifiers are supported:\n*\n* - `d`: days\n* - `h`: hours\n* - `m`: minutes\n* - `s`: seconds\n* - `ms`: milliseconds\n*\n* For example, the string `1m3s10ms` is a duration string containing three time units: `1m` (1 minute), `3s` (3 seconds), and `10ms` (10 milliseconds). The string `60m` is a duration string containing a single time unit: `60m` (60 minutes). A duration string must contain at least one time unit. Time units must be supplied in descending order of magnitude (i.e., days, hours, minutes, seconds, milliseconds).\n*\n* - Duration strings are case insensitive. For example, the string `1M3S10MS` is equivalent to `1m3s10ms`.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a duration string\n*\n* @example\n* var bool = isDurationString( '1d' );\n* // returns true\n*\n* @example\n* var bool = isDurationString( '1d2h' );\n* // returns true\n*/\nfunction isDurationString( value ) {\n\tif ( !isString( value ) ) {\n\t\treturn false;\n\t}\n\treturn RE_DURATION_STRING.test( value );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isDurationString;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2022 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a duration string.\n*\n* @module @stdlib/assert/is-duration-string\n*\n* @example\n* var isDurationString = require( '@stdlib/assert/is-duration-string' );\n*\n* var bool = isDurationString( '1d' );\n* // returns true\n*\n* bool = isDurationString( '1d2h' );\n* // returns true\n*\n* bool = isDurationString( '1d2h-2m' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// EXPORTS //\n\nmodule.exports = process;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar nativeClass = require( '@stdlib/utils/native-class' );\nvar isObject = require( './../../is-plain-object' );\nvar isString = require( './../../is-string' ).isPrimitive;\nvar proc = require( './process.js' );\n\n\n// MAIN //\n\n/**\n* Returns a boolean indicating if the runtime is Electron.\n*\n* @returns {boolean} boolean indicating if runtime is Electron\n*\n* @example\n* var bool = isElectron();\n* // returns \n*/\nfunction isElectron() {\n\treturn (\n\t\t// Check for a `process` global variable:\n\t\ttypeof proc === 'object' &&\n\n\t\t// Check that the `process` global variable has the expected internal class:\n\t\tnativeClass( proc ) === '[object process]' &&\n\n\t\t// Check for a `versions` property:\n\t\tisObject( proc.versions ) &&\n\n\t\t// Check for an `electron` property:\n\t\tisString( proc.versions.electron ) &&\n\n\t\t// Check for a `chrome` property:\n\t\tisString( proc.versions.chrome ) &&\n\n\t\t// Check for a `type` property:\n\t\t(\n\t\t\tproc.type === 'browser' ||\n\t\t\tproc.type === 'renderer'\n\t\t)\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isElectron;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Boolean indicating if the runtime is Electron.\n*\n* @module @stdlib/assert/is-electron\n*\n* @example\n* var IS_ELECTRON = require( '@stdlib/assert/is-electron' );\n*\n* var bool = IS_ELECTRON;\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// MAIN //\n\nvar bool = main();\n\n\n// EXPORTS //\n\nmodule.exports = bool;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// EXPORTS //\n\nmodule.exports = process;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isElectron = require( './../../is-electron' );\nvar proc = require( './process.js' );\n\n\n// MAIN //\n\n/**\n* Returns a boolean indicating if the runtime is the main Electron process.\n*\n* @returns {boolean} boolean indicating if runtime is the main Electron process\n*\n* @example\n* var bool = isElectronMain();\n* // returns \n*/\nfunction isElectronMain() {\n\treturn (\n\t\tisElectron &&\n\t\tproc.type === 'browser'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isElectronMain;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Boolean indicating if the runtime is the main Electron process.\n*\n* @module @stdlib/assert/is-electron-main\n*\n* @example\n* var IS_ELECTRON_MAIN = require( '@stdlib/assert/is-electron-main' );\n*\n* var bool = IS_ELECTRON_MAIN;\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// MAIN //\n\nvar bool = main();\n\n\n// EXPORTS //\n\nmodule.exports = bool;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar process = require( 'process' );\n\n\n// EXPORTS //\n\nmodule.exports = process;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isElectron = require( './../../is-electron' );\nvar proc = require( './process.js' );\n\n\n// MAIN //\n\n/**\n* Returns a boolean indicating if the runtime is the Electron renderer process.\n*\n* @returns {boolean} boolean indicating if runtime is the Electron renderer process\n*\n* @example\n* var bool = isElectronRenderer();\n* // returns \n*/\nfunction isElectronRenderer() {\n\treturn (\n\t\tisElectron &&\n\t\tproc.type === 'renderer'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isElectronRenderer;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Boolean indicating if the runtime is the Electron renderer process.\n*\n* @module @stdlib/assert/is-electron-renderer\n*\n* @example\n* var IS_ELECTRON_RENDERER = require( '@stdlib/assert/is-electron-renderer' );\n*\n* var bool = IS_ELECTRON_RENDERER;\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// MAIN //\n\nvar bool = main();\n\n\n// EXPORTS //\n\nmodule.exports = bool;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\n\n\n// VARIABLES //\n\nvar RE = /@/;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a valid(ish) email address.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is a valid(ish) email address\n*\n* @example\n* var bool = isEmail( 'beep@boop.com' );\n* // returns true\n*\n* @example\n* var bool = isEmail( 'beep' );\n* // returns false\n*\n* @example\n* var bool = isEmail( 'beep.com' );\n* // returns false\n*\n* @example\n* var bool = isEmail( null );\n* // returns false\n*/\nfunction isEmail( value ) {\n\treturn isString( value ) && RE.test( value );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isEmail;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an email address.\n*\n* @module @stdlib/assert/is-email-address\n*\n* @example\n* var isEmail = require( '@stdlib/assert/is-email-address' );\n*\n* var bool = isEmail( 'beep@boop.com' );\n* // returns true\n*\n* bool = isEmail( 'beep' );\n* // returns false\n*\n* bool = isEmail( null );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isArray = require( './../../is-array' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is an empty array.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is an empty array\n*\n* @example\n* var bool = isEmptyArray( [] );\n* // returns true\n*\n* @example\n* var bool = isEmptyArray( [ 1, 2, 3 ] );\n* // returns false\n*\n* @example\n* var bool = isEmptyArray( {} );\n* // returns false\n*/\nfunction isEmptyArray( value ) {\n\treturn (\n\t\tisArray( value ) &&\n\t\tvalue.length === 0\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isEmptyArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an empty array.\n*\n* @module @stdlib/assert/is-empty-array\n*\n* @example\n* var isEmptyArray = require( '@stdlib/assert/is-empty-array' );\n*\n* var bool = isEmptyArray( [] );\n* // returns true\n*\n* bool = isEmptyArray( [ 1, 2, 3 ] );\n* // returns false\n*\n* bool = isEmptyArray( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\n/**\n* Tests if a value is an empty array-like object.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is an empty array-like object\n*\n* @example\n* var bool = isEmptyArrayLikeObject( [] );\n* // returns true\n*\n* @example\n* var bool = isEmptyArrayLikeObject( { 'length': 0 } );\n* // returns true\n*\n* @example\n* var bool = isEmptyArrayLikeObject( '' );\n* // returns false\n*/\nfunction isEmptyArrayLikeObject( value ) {\n\treturn (\n\t\ttypeof value === 'object' &&\n\t\tvalue !== null &&\n\t\tvalue.length === 0\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isEmptyArrayLikeObject;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an empty array-like object.\n*\n* @module @stdlib/assert/is-empty-array-like-object\n*\n* @example\n* var isEmptyArrayLikeObject = require( '@stdlib/assert/is-empty-array-like-object' );\n*\n* var bool = isEmptyArrayLikeObject( [] );\n* // returns true\n*\n* bool = isEmptyArrayLikeObject( { 'length': 0 } );\n* // returns true\n*\n* bool = isEmptyArrayLikeObject( '' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\n/**\n* Tests if a value is an empty collection.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is an empty collection\n*\n* @example\n* var bool = isEmptyCollection( [] );\n* // returns true\n*\n* @example\n* var bool = isEmptyCollection( { 'length': 0 } );\n* // returns true\n*\n* @example\n* var bool = isEmptyCollection( [ 1, 2, 3 ] );\n* // returns false\n*\n* @example\n* var bool = isEmptyCollection( {} );\n* // returns false\n*/\nfunction isEmptyCollection( value ) {\n\treturn (\n\t\ttypeof value === 'object' &&\n\t\tvalue !== null &&\n\t\tvalue.length === 0\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isEmptyCollection;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an empty collection.\n*\n* @module @stdlib/assert/is-empty-collection\n*\n* @example\n* var isEmptyCollection = require( '@stdlib/assert/is-empty-collection' );\n*\n* var bool = isEmptyCollection( [] );\n* // returns true\n*\n* bool = isEmptyCollection( [ 1, 2, 3 ] );\n* // returns false\n*\n* bool = isEmptyCollection( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar objectKeys = require( '@stdlib/utils/keys' );\nvar isPlainObject = require( './../../is-plain-object' );\nvar hasSymbolSupport = require( './../../has-symbol-support' );\n\n\n// VARIABLES //\n\nvar FLG = hasSymbolSupport();\n\n\n// MAIN //\n\n/**\n* Tests if a value is an empty object.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is an empty object\n*\n* @example\n* var bool = isEmptyObject( {} );\n* // returns true\n*\n* @example\n* var bool = isEmptyObject( { 'beep': 'boop' } );\n* // returns false\n*\n* @example\n* var bool = isEmptyObject( [] );\n* // returns false\n*/\nfunction isEmptyObject( value ) {\n\tif ( !isPlainObject( value ) ) {\n\t\treturn false;\n\t}\n\tif ( objectKeys( value ).length > 0 ) {\n\t\treturn false;\n\t}\n\tif ( FLG && Object.getOwnPropertySymbols( value ).length > 0 ) {\n\t\treturn false;\n\t}\n\treturn true;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isEmptyObject;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an empty object.\n*\n* @module @stdlib/assert/is-empty-object\n*\n* @example\n* var isEmptyObject = require( '@stdlib/assert/is-empty-object' );\n*\n* var bool = isEmptyObject( {} );\n* // returns true\n*\n* bool = isEmptyObject( { 'beep': 'boop' } );\n* // returns false\n*\n* bool = isEmptyObject( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\n/**\n* Tests if a value is an empty string primitive.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is an empty string primitive\n*\n* @example\n* var bool = isEmptyString( '' );\n* // returns true\n*\n* @example\n* var bool = isEmptyString( 'beep' );\n* // returns false\n*\n* @example\n* var bool = isEmptyString( [] );\n* // returns false\n*/\nfunction isEmptyString( value ) {\n\treturn ( value === '' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isEmptyString;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isObject;\n\n\n// MAIN //\n\n/**\n* Tests if a value is an empty string object.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is an empty string object\n*\n* @example\n* var bool = isEmptyString( '' );\n* // returns false\n*\n* @example\n* var bool = isEmptyString( new String( '' ) );\n* // returns true\n*\n* @example\n* var bool = isEmptyString( [] );\n* // returns false\n*/\nfunction isEmptyString( value ) {\n\treturn (\n\t\tisString( value ) &&\n\t\tvalue.valueOf() === ''\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isEmptyString;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is an empty string.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is an empty string\n*\n* @example\n* var bool = isEmptyString( '' );\n* // returns true\n*\n* @example\n* var bool = isEmptyString( 'beep' );\n* // returns false\n*\n* @example\n* var bool = isEmptyString( [] );\n* // returns false\n*/\nfunction isEmptyString( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isEmptyString;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an empty string.\n*\n* @module @stdlib/assert/is-empty-string\n*\n* @example\n* var isEmptyString = require( '@stdlib/assert/is-empty-string' );\n*\n* var bool = isEmptyString( '' );\n* // returns true\n*\n* bool = isEmptyString( 'beep' );\n* // returns false\n*\n* bool = isEmptyString( [] );\n* // returns false\n*\n* @example\n* var isEmptyString = require( '@stdlib/assert/is-empty-string' ).isObject;\n*\n* var bool = isEmptyString( new String( '' ) );\n* // returns true\n*\n* bool = isEmptyString( '' );\n* // returns false\n*\n* @example\n* var isEmptyString = require( '@stdlib/assert/is-empty-string' ).isPrimitive;\n*\n* var bool = isEmptyString( '' );\n* // returns true\n*\n* bool = isEmptyString( new String( '' ) );\n* // returns false\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar propertyDescriptorIn = require( '@stdlib/utils/property-descriptor-in' );\n\n\n// MAIN //\n\n/**\n* Tests if an object's own or inherited property is enumerable.\n*\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object property is enumerable\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': true,\n* 'enumerable': false,\n* 'writable': true,\n* 'value': true\n* });\n*\n* var bool = isEnumerablePropertyIn( obj, 'boop' );\n* // returns true\n*\n* bool = isEnumerablePropertyIn( obj, 'beep' );\n* // returns false\n*/\nfunction isEnumerablePropertyIn( value, property ) {\n\tvar desc = propertyDescriptorIn( value, property ); // Note: works for both property names and symbols, which the `in` operator does not.\n\treturn ( desc !== null && desc.enumerable === true );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isEnumerablePropertyIn;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object's own or inherited property is enumerable.\n*\n* @module @stdlib/assert/is-enumerable-property-in\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n* var isEnumerablePropertyIn = require( '@stdlib/assert/is-enumerable-property-in' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': true,\n* 'enumerable': false,\n* 'writable': true,\n* 'value': true\n* });\n*\n* var bool = isEnumerablePropertyIn( obj, 'boop' );\n* // returns true\n*\n* bool = isEnumerablePropertyIn( obj, 'beep' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar getPrototypeOf = require( '@stdlib/utils/get-prototype-of' );\nvar typeOf = require( '@stdlib/utils/type-of' );\nvar isError = require( './../../is-error' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is an `EvalError` object.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is an `EvalError` object\n*\n* @example\n* var bool = isEvalError( new EvalError( 'beep' ) );\n* // returns true\n*\n* @example\n* var bool = isEvalError( {} );\n* // returns false\n*/\nfunction isEvalError( value ) {\n\tif ( typeof value !== 'object' || value === null ) {\n\t\treturn false;\n\t}\n\t// Check for `EvalError` objects from the same realm (same Node.js `vm` or same `Window` object)...\n\tif ( value instanceof EvalError ) {\n\t\treturn true;\n\t}\n\t// All `EvalError` objects are `Error` objects...\n\tif ( isError( value ) ) {\n\t\t// Walk the prototype tree until we find the desired constructor...\n\t\twhile ( value ) {\n\t\t\tif ( typeOf( value ) === 'evalerror' ) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\tvalue = getPrototypeOf( value );\n\t\t}\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isEvalError;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an `EvalError` object.\n*\n* @module @stdlib/assert/is-eval-error\n*\n* @example\n* var isEvalError = require( '@stdlib/assert/is-eval-error' );\n*\n* var bool = isEvalError( new EvalError( 'beep' ) );\n* // returns true\n*\n* bool = isEvalError( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInteger = require( './../../is-integer' ).isPrimitive;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number primitive that is an even number.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number primitive that is an even number\n*\n* @example\n* var bool = isEven( -4.0 );\n* // returns true\n*\n* @example\n* var bool = isEven( new Number( -4.0 ) );\n* // returns false\n*/\nfunction isEven( value ) {\n\treturn (\n\t\tisInteger( value ) &&\n\t\tvalue % 2 === 0\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isEven;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInteger = require( './../../is-integer' ).isObject;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number object that is an even number.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number object that is an even number\n*\n* @example\n* var bool = isEven( 4.0 );\n* // returns false\n*\n* @example\n* var bool = isEven( new Number( 4.0 ) );\n* // returns true\n*/\nfunction isEven( value ) {\n\treturn (\n\t\tisInteger( value ) &&\n\t\tvalue % 2 === 0\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isEven;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is an even number.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is an even number.\n*\n* @example\n* var bool = isEven( 4.0 );\n* // returns true\n*\n* @example\n* var bool = isEven( new Number( 4.0 ) );\n* // returns true\n*\n* @example\n* var bool = isEven( 3.0 );\n* // returns false\n*\n* @example\n* var bool = isEven( new Number( 5.0 ) );\n* // returns false\n*\n* @example\n* var bool = isEven( -3.14 );\n* // returns false\n*\n* @example\n* var bool = isEven( null );\n* // returns false\n*/\nfunction isEven( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isEven;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an even number.\n*\n* @module @stdlib/assert/is-even\n*\n* @example\n* var isEven = require( '@stdlib/assert/is-even' );\n*\n* var bool = isEven( 4.0 );\n* // returns true\n*\n* bool = isEven( new Number( 4.0 ) );\n* // returns true\n*\n* bool = isEven( 3.0 );\n* // returns false\n*\n* bool = isEven( new Number( 5.0 ) );\n* // returns false\n*\n* bool = isEven( -3.14 );\n* // returns false\n*\n* bool = isEven( null );\n* // returns false\n*\n* @example\n* // Use interface to check for even number primitives...\n* var isEven = require( '@stdlib/assert/is-even' ).isPrimitive;\n*\n* var bool = isEven( -4.0 );\n* // returns true\n*\n* bool = isEven( new Number( -4.0 ) );\n* // returns false\n*\n* @example\n* // Use interface to check for even number objects...\n* var isEven = require( '@stdlib/assert/is-even' ).isObject;\n*\n* var bool = isEven( 4.0 );\n* // returns false\n*\n* bool = isEven( new Number( 4.0 ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\n/**\n* Tests if a value is falsy.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is falsy\n*\n* @example\n* var bool = isFalsy( false );\n* // returns true\n*\n* @example\n* var bool = isFalsy( null );\n* // returns true\n*\n* @example\n* var bool = isFalsy( '' );\n* // returns true\n*\n* @example\n* var bool = isFalsy( 0 );\n* // returns true\n*\n* @example\n* var bool = isFalsy( void 0 );\n* // returns true\n*\n* @example\n* var bool = isFalsy( NaN );\n* // returns true\n*\n* @example\n* var bool = isFalsy( [] );\n* // returns false\n*/\nfunction isFalsy( value ) {\n\treturn ( value ) ? false : true; // eslint-disable-line no-unneeded-ternary\n}\n\n\n// EXPORTS //\n\nmodule.exports = isFalsy;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is falsy.\n*\n* @module @stdlib/assert/is-falsy\n*\n* @example\n* var isFalsy = require( '@stdlib/assert/is-falsy' );\n*\n* var bool = isFalsy( false );\n* // returns true\n*\n* bool = isFalsy( null );\n* // returns true\n*\n* bool = isFalsy( '' );\n* // returns true\n*\n* bool = isFalsy( 0 );\n* // returns true\n*\n* bool = isFalsy( void 0 );\n* // returns true\n*\n* bool = isFalsy( NaN );\n* // returns true\n*\n* bool = isFalsy( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array-like object containing only falsy values.\n*\n* @module @stdlib/assert/is-falsy-array\n*\n* @example\n* var isFalsyArray = require( '@stdlib/assert/is-falsy-array' );\n*\n* var bool = isFalsyArray( [ false, null, void 0, '', 0, NaN ] );\n* // returns true\n*\n* bool = isFalsyArray( [ {}, [] ] );\n* // returns false\n*\n* bool = isFalsyArray( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar arrayfun = require( './../../tools/array-like-function' );\nvar isFalsy = require( './../../is-falsy' );\n\n\n// MAIN //\n\nvar isFalsyArray = arrayfun( isFalsy );\n\n\n// EXPORTS //\n\nmodule.exports = isFalsyArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n/* eslint-disable stdlib/no-redeclare */\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isPrimitive;\nvar isfinite = require( '@stdlib/math/base/assert/is-finite' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number primitive having a finite value.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number primitive having a finite value\n*\n* @example\n* var bool = isFinite( -3.0 );\n* // returns true\n*\n* @example\n* var bool = isFinite( new Number( -3.0 ) );\n* // returns false\n*/\nfunction isFinite( value ) {\n\treturn (\n\t\tisNumber( value ) &&\n\t\tisfinite( value )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isFinite;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n/* eslint-disable stdlib/no-redeclare */\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isObject;\nvar isfinite = require( '@stdlib/math/base/assert/is-finite' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number object having a finite value.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number object having a finite value\n*\n* @example\n* var bool = isFinite( 3.0 );\n* // returns false\n*\n* @example\n* var bool = isFinite( new Number( 3.0 ) );\n* // returns true\n*/\nfunction isFinite( value ) {\n\treturn (\n\t\tisNumber( value ) &&\n\t\tisfinite( value.valueOf() )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isFinite;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n/* eslint-disable stdlib/no-redeclare */\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a finite number.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is a finite number\n*\n* @example\n* var bool = isFinite( 5.0 );\n* // returns true\n*\n* @example\n* var bool = isFinite( new Number( 5.0 ) );\n* // returns true\n*\n* @example\n* var bool = isFinite( 1.0/0.0 );\n* // returns false\n*\n* @example\n* var bool = isFinite( null );\n* // returns false\n*/\nfunction isFinite( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isFinite;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a finite number.\n*\n* @module @stdlib/assert/is-finite\n*\n* @example\n* var isFinite = require( '@stdlib/assert/is-finite' );\n*\n* var bool = isFinite( 5.0 );\n* // returns true\n*\n* bool = isFinite( new Number( 5.0 ) );\n* // returns true\n*\n* bool = isFinite( 1.0/0.0 );\n* // returns false\n*\n* bool = isFinite( null );\n* // returns false\n*\n* @example\n* var isFinite = require( '@stdlib/assert/is-finite' ).isPrimitive;\n*\n* var bool = isFinite( -3.0 );\n* // returns true\n*\n* bool = isFinite( new Number( -3.0 ) );\n* // returns false\n*\n* @example\n* var isFinite = require( '@stdlib/assert/is-finite' ).isObject;\n*\n* var bool = isFinite( 3.0 );\n* // returns false\n*\n* bool = isFinite( new Number( 3.0 ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array-like object containing only finite numbers.\n*\n* @module @stdlib/assert/is-finite-array\n*\n* @example\n* var isFiniteArray = require( '@stdlib/assert/is-finite-array' );\n*\n* var bool = isFiniteArray( [ -3.0, new Number(0.0), 2.0 ] );\n* // returns true\n*\n* bool = isFiniteArray( [ -3.0, 1.0/0.0 ] );\n* // returns false\n*\n* @example\n* var isFiniteArray = require( '@stdlib/assert/is-finite-array' ).primitives;\n*\n* var bool = isFiniteArray( [ -1.0, 10.0 ] );\n* // returns true\n*\n* bool = isFiniteArray( [ -1.5, 0.0, 5.0 ] );\n* // returns true\n*\n* bool = isFiniteArray( [ -3.0, new Number(-1.0) ] );\n* // returns false\n*\n* @example\n* var isFiniteArray = require( '@stdlib/assert/is-finite-array' ).objects;\n*\n* var bool = isFiniteArray( [ new Number(1.0), new Number(3.0) ] );\n* // returns true\n*\n* bool = isFiniteArray( [ -1.0, 0.0, 3.0 ] );\n* // returns false\n*\n* bool = isFiniteArray( [ 3.0, new Number(-1.0) ] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isFinite = require( './../../is-finite' ); // eslint-disable-line stdlib/no-redeclare\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar arrayfun = require( './../../tools/array-like-function' );\n\n\n// VARIABLES //\n\nvar isPrimitiveArray = arrayfun( isFinite.isPrimitive );\nvar isObjectArray = arrayfun( isFinite.isObject );\n\n\n// MAIN //\n\nvar isFiniteArray = arrayfun( isFinite );\nsetReadOnly( isFiniteArray, 'primitives', isPrimitiveArray );\nsetReadOnly( isFiniteArray, 'objects', isObjectArray );\n\n\n// EXPORTS //\n\nmodule.exports = isFiniteArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isMatrixLike = require( './../../is-matrix-like' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a 2-dimensional ndarray-like object whose underlying data type is `float32`.\n*\n* @param {*} v - value to test\n* @returns {boolean} boolean indicating if a value is a 2-dimensional ndarray-like object whose underlying data type is `float32`\n*\n* @example\n* var Float32Array = require( '@stdlib/array/float32' );\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n*\n* var buffer = new Float32Array( [ 0, 0, 0, 0 ] );\n* var arr = ndarray( 'float32', buffer, [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n*\n* var bool = isFloat32MatrixLike( arr );\n* // returns true\n*\n* bool = isFloat32MatrixLike( [] );\n* // returns false\n*/\nfunction isFloat32MatrixLike( v ) {\n\treturn ( isMatrixLike( v ) && v.dtype === 'float32' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isFloat32MatrixLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a 2-dimensional ndarray-like object whose underlying data type is `float32`.\n*\n* @module @stdlib/assert/is-float32matrix-like\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n* var Float32Array = require( '@stdlib/array/float32' );\n* var isFloat32MatrixLike = require( '@stdlib/assert/is-float32matrix-like' );\n*\n* var buffer = new Float32Array( [ 0, 0, 0, 0 ] );\n*\n* var arr = ndarray( 'float32', buffer, [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n*\n* var bool = isFloat32MatrixLike( arr );\n* // returns true\n*\n* bool = isFloat32MatrixLike( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isFloat32MatrixLike = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = isFloat32MatrixLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isndarrayLike = require( './../../is-ndarray-like' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is an ndarray-like object whose underlying data type is `float32`.\n*\n* @param {*} v - value to test\n* @returns {boolean} boolean indicating if a value is an ndarray-like object whose underlying data type is `float32`\n*\n* @example\n* var Float32Array = require( '@stdlib/array/float32' );\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n*\n* var buffer = new Float32Array( [ 0, 0, 0, 0 ] );\n* var arr = ndarray( 'float32', buffer, [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n*\n* var bool = isFloat32ndarrayLike( arr );\n* // returns true\n*\n* bool = isFloat32ndarrayLike( [] );\n* // returns false\n*/\nfunction isFloat32ndarrayLike( v ) {\n\treturn ( isndarrayLike( v ) && v.dtype === 'float32' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isFloat32ndarrayLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an ndarray-like object whose underlying data type is `float32`.\n*\n* @module @stdlib/assert/is-float32ndarray-like\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n* var Float32Array = require( '@stdlib/array/float32' );\n* var isFloat32ndarrayLike = require( '@stdlib/assert/is-float32ndarray-like' );\n*\n* var buffer = new Float32Array( [ 0, 0, 0, 0 ] );\n*\n* var arr = ndarray( 'float32', buffer, [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n*\n* var bool = isFloat32ndarrayLike( arr );\n* // returns true\n*\n* bool = isFloat32ndarrayLike( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isFloat32ndarrayLike = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = isFloat32ndarrayLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isVectorLike = require( './../../is-vector-like' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a 1-dimensional ndarray-like object whose underlying data type is `float32`.\n*\n* @param {*} v - value to test\n* @returns {boolean} boolean indicating if a value is a 1-dimensional ndarray-like object whose underlying data type is `float32`\n*\n* @example\n* var Float32Array = require( '@stdlib/array/float32' );\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n*\n* var buffer = new Float32Array( [ 0, 0, 0, 0 ] );\n* var arr = ndarray( 'float32', buffer, [ 4 ], [ 1 ], 0, 'row-major' );\n*\n* var bool = isFloat32VectorLike( arr );\n* // returns true\n*\n* bool = isFloat32VectorLike( [] );\n* // returns false\n*/\nfunction isFloat32VectorLike( v ) {\n\treturn ( isVectorLike( v ) && v.dtype === 'float32' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isFloat32VectorLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a 1-dimensional ndarray-like object whose underlying data type is `float32`.\n*\n* @module @stdlib/assert/is-float32vector-like\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n* var Float32Array = require( '@stdlib/array/float32' );\n* var isFloat32VectorLike = require( '@stdlib/assert/is-float32vector-like' );\n*\n* var buffer = new Float32Array( [ 0, 0, 0, 0 ] );\n*\n* var arr = ndarray( 'float32', buffer, [ 4 ], [ 1 ], 0, 'row-major' );\n*\n* var bool = isFloat32VectorLike( arr );\n* // returns true\n*\n* bool = isFloat32VectorLike( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isFloat32VectorLike = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = isFloat32VectorLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isMatrixLike = require( './../../is-matrix-like' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a 2-dimensional ndarray-like object whose underlying data type is `float64`.\n*\n* @param {*} v - value to test\n* @returns {boolean} boolean indicating if a value is a 2-dimensional ndarray-like object whose underlying data type is `float64`\n*\n* @example\n* var Float64Array = require( '@stdlib/array/float64' );\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n*\n* var buffer = new Float64Array( [ 0, 0, 0, 0 ] );\n* var arr = ndarray( 'float64', buffer, [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n*\n* var bool = isFloat64MatrixLike( arr );\n* // returns true\n*\n* bool = isFloat64MatrixLike( [] );\n* // returns false\n*/\nfunction isFloat64MatrixLike( v ) {\n\treturn ( isMatrixLike( v ) && v.dtype === 'float64' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isFloat64MatrixLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a 2-dimensional ndarray-like object whose underlying data type is `float64`.\n*\n* @module @stdlib/assert/is-float64matrix-like\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n* var Float64Array = require( '@stdlib/array/float64' );\n* var isFloat64MatrixLike = require( '@stdlib/assert/is-float64matrix-like' );\n*\n* var buffer = new Float64Array( [ 0, 0, 0, 0 ] );\n*\n* var arr = ndarray( 'float64', buffer, [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n*\n* var bool = isFloat64MatrixLike( arr );\n* // returns true\n*\n* bool = isFloat64MatrixLike( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isFloat64MatrixLike = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = isFloat64MatrixLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isndarrayLike = require( './../../is-ndarray-like' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is an ndarray-like object whose underlying data type is `float64`.\n*\n* @param {*} v - value to test\n* @returns {boolean} boolean indicating if a value is an ndarray-like object whose underlying data type is `float64`\n*\n* @example\n* var Float64Array = require( '@stdlib/array/float64' );\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n*\n* var buffer = new Float64Array( [ 0, 0, 0, 0 ] );\n* var arr = ndarray( 'float64', buffer, [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n*\n* var bool = isFloat64ndarrayLike( arr );\n* // returns true\n*\n* bool = isFloat64ndarrayLike( [] );\n* // returns false\n*/\nfunction isFloat64ndarrayLike( v ) {\n\treturn ( isndarrayLike( v ) && v.dtype === 'float64' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isFloat64ndarrayLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an ndarray-like object whose underlying data type is `float64`.\n*\n* @module @stdlib/assert/is-float64ndarray-like\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n* var Float64Array = require( '@stdlib/array/float64' );\n* var isFloat64ndarrayLike = require( '@stdlib/assert/is-float64ndarray-like' );\n*\n* var buffer = new Float64Array( [ 0, 0, 0, 0 ] );\n*\n* var arr = ndarray( 'float64', buffer, [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n*\n* var bool = isFloat64ndarrayLike( arr );\n* // returns true\n*\n* bool = isFloat64ndarrayLike( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isFloat64ndarrayLike = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = isFloat64ndarrayLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isVectorLike = require( './../../is-vector-like' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a 1-dimensional ndarray-like object whose underlying data type is `float64`.\n*\n* @param {*} v - value to test\n* @returns {boolean} boolean indicating if a value is a 1-dimensional ndarray-like object whose underlying data type is `float64`\n*\n* @example\n* var Float64Array = require( '@stdlib/array/float64' );\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n*\n* var buffer = new Float64Array( [ 0, 0, 0, 0 ] );\n* var arr = ndarray( 'float64', buffer, [ 4 ], [ 1 ], 0, 'row-major' );\n*\n* var bool = isFloat64VectorLike( arr );\n* // returns true\n*\n* bool = isFloat64VectorLike( [] );\n* // returns false\n*/\nfunction isFloat64VectorLike( v ) {\n\treturn ( isVectorLike( v ) && v.dtype === 'float64' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isFloat64VectorLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a 1-dimensional ndarray-like object whose underlying data type is `float64`.\n*\n* @module @stdlib/assert/is-float64vector-like\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n* var Float64Array = require( '@stdlib/array/float64' );\n* var isFloat64VectorLike = require( '@stdlib/assert/is-float64vector-like' );\n*\n* var buffer = new Float64Array( [ 0, 0, 0, 0 ] );\n* var arr = ndarray( 'float64', buffer, [ 4 ], [ 1 ], 0, 'row-major' );\n*\n* var bool = isFloat64VectorLike( arr );\n* // returns true\n*\n* bool = isFloat64VectorLike( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isFloat64VectorLike = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = isFloat64VectorLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array-like object containing only functions.\n*\n* @module @stdlib/assert/is-function-array\n*\n* @example\n* var isFunctionArray = require( '@stdlib/assert/is-function-array' );\n*\n* function beep() {}\n*\n* function boop() {}\n*\n* var bool = isFunctionArray( [ beep, boop ] );\n* // returns true\n*\n* bool = isFunctionArray( [ {}, beep ] );\n* // returns false\n*\n* bool = isFunctionArray( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar arrayfun = require( './../../tools/array-like-function' );\nvar isFunction = require( './../../is-function' );\n\n\n// MAIN //\n\nvar isFunctionArray = arrayfun( isFunction );\n\n\n// EXPORTS //\n\nmodule.exports = isFunctionArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar hasGeneratorSupport = require( './../../has-generator-support' );\nvar nativeClass = require( '@stdlib/utils/native-class' );\n\n\n// VARIABLES //\n\nvar hasGenerators = hasGeneratorSupport();\n\n\n// MAIN //\n\n/**\n* Tests if a value is a generator object.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a generator object\n*\n* @example\n* function* generateID() {\n* var idx = 0;\n* while ( idx < idx+1 ) {\n* yield idx;\n* idx += 1;\n* }\n* }\n* var bool = isGeneratorObject( generateID() );\n* // returns true\n*\n* @example\n* var bool = isGeneratorObject( {} );\n* // returns false\n*\n* @example\n* var bool = isGeneratorObject( null );\n* // returns false\n*/\nfunction isGeneratorObject( value ) {\n\treturn ( hasGenerators && nativeClass( value ) === '[object Generator]' );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isGeneratorObject;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a generator object.\n*\n* @module @stdlib/assert/is-generator-object\n*\n* @example\n* var isGeneratorObject = require( '@stdlib/assert/is-generator-object' );\n*\n* function* generateID() {\n* var idx = 0;\n* while ( idx < idx+1 ) {\n* yield idx;\n* idx += 1;\n* }\n* }\n*\n* var bool = isGeneratorObject( generateID() );\n* // returns true\n*\n* bool = isGeneratorObject( generateID );\n* // returns false\n*\n* bool = isGeneratorObject( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\n/**\n* Tests if a value is generator object-like.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is generator object-like\n*\n* @example\n* var gen = {\n* 'next': function noop() {},\n* 'return': function noop() {},\n* 'throw': function noop() {}\n* };\n* var bool = isGeneratorObjectLike( gen );\n* // returns true\n*\n* @example\n* function* generateID() {\n* var idx = 0;\n* while ( idx < idx+1 ) {\n* yield idx;\n* idx += 1;\n* }\n* }\n* var bool = isGeneratorObjectLike( generateID() );\n* // returns true\n*\n* @example\n* var bool = isGeneratorObjectLike( {} );\n* // returns false\n*\n* @example\n* var bool = isGeneratorObjectLike( null );\n* // returns false\n*/\nfunction isGeneratorObjectLike( value ) {\n\treturn (\n\t\tvalue !== null &&\n\t\ttypeof value === 'object' &&\n\t\ttypeof value.next === 'function' &&\n\t\ttypeof value.return === 'function' &&\n\t\ttypeof value.throw === 'function'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isGeneratorObjectLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is generator object-like.\n*\n* @module @stdlib/assert/is-generator-object-like\n*\n* @example\n* var isGeneratorObjectLike = require( '@stdlib/assert/is-generator-object-like' );\n*\n* var gen = {\n* 'next': function noop() {},\n* 'return': function noop() {},\n* 'throw': function noop() {}\n* };\n* var bool = isGeneratorObjectLike( gen );\n* // returns true\n*\n* bool = isGeneratorObjectLike( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isUint8Array = require( './../../is-uint8array' );\nvar isBuffer = require( './../../is-buffer' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a gzip buffer (or Uint8Array).\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is a gzip buffer\n*\n* @example\n* var Uint8Array = require( '@stdlib/array/uint8' );\n*\n* var buf = new Uint8Array( 20 );\n* buf[ 0 ] = 31; // 0x1f => magic number\n* buf[ 1 ] = 139; // 0x8b\n* buf[ 2 ] = 8; // 0x08 => compression method\n*\n* var bool = isgzipBuffer( buf );\n* // returns true\n*\n* @example\n* var Uint8Array = require( '@stdlib/array/uint8' );\n*\n* var bool = isgzipBuffer( new Uint8Array( 20 ) );\n* // returns false\n*\n* @example\n* var bool = isgzipBuffer( [] );\n* // returns false\n*/\nfunction isgzipBuffer( value ) {\n\tif ( !isUint8Array( value ) && !isBuffer( value ) ) {\n\t\treturn false;\n\t}\n\tif ( value.length < 19 ) { // 10-byte header + 8-byte footer + payload\n\t\treturn false;\n\t}\n\treturn (\n\t\t// Check for expected magic number:\n\t\tvalue[ 0 ] === 0x1F &&\n\t\tvalue[ 1 ] === 0x8B &&\n\n\t\t// Check for expected compression method:\n\t\tvalue[ 2 ] === 0x08\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isgzipBuffer;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a gzip buffer (or Uint8Array).\n*\n* @module @stdlib/assert/is-gzip-buffer\n*\n* @example\n* var Uint8Array = require( '@stdlib/array/uint8' );\n* var isgzipBuffer = require( '@stdlib/assert/is-gzip-buffer' );\n*\n* var buf = new Uint8Array( 20 );\n* buf[ 0 ] = 31; // 0x1f => magic number\n* buf[ 1 ] = 139; // 0x8b\n* buf[ 2 ] = 8; // 0x08 => compression method\n*\n* var bool = isgzipBuffer( buf );\n* // returns true\n*\n* bool = isgzipBuffer( new Uint8Array( 20 ) );\n* // returns false\n*\n* bool = isgzipBuffer( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\n\n\n// VARIABLES //\n\n// Character codes:\nvar ZERO = 48;\nvar NINE = 57;\nvar A = 65;\nvar F = 70;\nvar a = 97;\nvar f = 102;\n\n\n// MAIN //\n\n/**\n* Tests whether a string contains only hexadecimal digits.\n*\n* @param {*} x - value to test\n* @returns {boolean} boolean indicating if a string contains only hexadecimal digits\n*\n* @example\n* var out = isHexString( '0123456789abcdefABCDEF' );\n* // returns true\n*\n* @example\n* var out = isHexString( '0xffffff' );\n* // returns false\n*\n* @example\n* var out = isHexString( '' );\n* // returns false\n*\n* @example\n* var out = isHexString( 123 );\n* // returns false\n*/\nfunction isHexString( x ) {\n\tvar len;\n\tvar ch;\n\tvar i;\n\tif ( !isString( x ) ) {\n\t\treturn false;\n\t}\n\tlen = x.length;\n\tif ( !len ) {\n\t\treturn false;\n\t}\n\tfor ( i = 0; i < len; i++ ) {\n\t\tch = x.charCodeAt( i );\n\t\tif (\n\t\t\tch < ZERO ||\n\t\t\t( ch > NINE && ch < A ) ||\n\t\t\t( ch > F && ch < a ) ||\n\t\t\tch > f\n\t\t) {\n\t\t\treturn false;\n\t\t}\n\t}\n\treturn true;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isHexString;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether a string contains only hexadecimal digits.\n*\n* @module @stdlib/assert/is-hex-string\n*\n* @example\n* var isHexString = require( '@stdlib/assert/is-hex-string' );\n*\n* var out = isHexString( '0123456789abcdefABCDEF' );\n* // returns true\n*\n* out = isHexString( '0xffffff' );\n* // returns false\n*\n* out = isHexString( '' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isPrimitive;\nvar isinf = require( '@stdlib/math/base/assert/is-infinite' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number primitive having an infinite value.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number primitive having an infinite value\n*\n* @example\n* var bool = isInfinite( -1.0/0.0 );\n* // returns true\n*\n* @example\n* var bool = isInfinite( new Number( -1.0/0.0 ) );\n* // returns false\n*/\nfunction isInfinite( value ) {\n\treturn (\n\t\tisNumber( value ) &&\n\t\tisinf( value )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isInfinite;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isObject;\nvar isinf = require( '@stdlib/math/base/assert/is-infinite' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number object having an infinite value.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number object having an infinite value\n*\n* @example\n* var bool = isInfinite( 1.0/0.0 );\n* // returns false\n*\n* @example\n* var bool = isInfinite( new Number( 1.0/0.0 ) );\n* // returns true\n*/\nfunction isInfinite( value ) {\n\treturn (\n\t\tisNumber( value ) &&\n\t\tisinf( value.valueOf() )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isInfinite;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is an infinite number.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is an infinite number\n*\n* @example\n* var bool = isInfinite( 1.0/0.0 );\n* // returns true\n*\n* @example\n* var bool = isInfinite( new Number( 1.0/0.0 ) );\n* // returns true\n*\n* @example\n* var bool = isInfinite( 5.0 );\n* // returns false\n*\n* @example\n* var bool = isInfinite( null );\n* // returns false\n*/\nfunction isInfinite( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isInfinite;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an infinite number.\n*\n* @module @stdlib/assert/is-infinite\n*\n* @example\n* var isInfinite = require( '@stdlib/assert/is-infinite' );\n*\n* var bool = isInfinite( 1.0/0.0 );\n* // returns true\n*\n* bool = isInfinite( new Number( 1.0/0.0 ) );\n* // returns true\n*\n* bool = isInfinite( 5.0 );\n* // returns false\n*\n* bool = isInfinite( null );\n* // returns false\n*\n* @example\n* var isInfinite = require( '@stdlib/assert/is-infinite' ).isPrimitive;\n*\n* var bool = isInfinite( -1.0/0.0 );\n* // returns true\n*\n* bool = isInfinite( new Number( -1.0/0.0 ) );\n* // returns false\n*\n* @example\n* var isInfinite = require( '@stdlib/assert/is-infinite' ).isObject;\n*\n* var bool = isInfinite( 1.0/0.0 );\n* // returns false\n*\n* bool = isInfinite( new Number( 1.0/0.0 ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar hasOwnProp = require( './../../has-own-property' );\n\n\n// MAIN //\n\n/**\n* Tests if an object has an inherited property.\n*\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object has an inherited property\n*\n* @example\n* var obj = {\n* 'boop': true\n* };\n*\n* var bool = isInheritedProperty( obj, 'toString' );\n* // returns true\n*\n* @example\n* var obj = {\n* 'boop': true\n* };\n*\n* var bool = isInheritedProperty( obj, 'boop' );\n* // returns false\n*\n* @example\n* var obj = {\n* 'boop': true\n* };\n*\n* var bool = isInheritedProperty( obj, 'bap' );\n* // returns false\n*/\nfunction isInheritedProperty( value, property ) {\n\tif ( value === void 0 || value === null || hasOwnProp( value, property ) ) {\n\t\treturn false;\n\t}\n\tif ( typeof property === 'symbol' ) {\n\t\treturn property in Object( value );\n\t}\n\treturn ( String( property ) in Object( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isInheritedProperty;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object has an inherited property.\n*\n* @module @stdlib/assert/is-inherited-property\n*\n* @example\n* var isInheritedProperty = require( '@stdlib/assert/is-inherited-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* var bool = isInheritedProperty( obj, 'toString' );\n* // returns true\n*\n* bool = isInheritedProperty( obj, 'boop' );\n* // returns false\n*\n* bool = isInheritedProperty( obj, 'bop' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array-like object containing only integers.\n*\n* @module @stdlib/assert/is-integer-array\n*\n* @example\n* var isIntegerArray = require( '@stdlib/assert/is-integer-array' );\n*\n* var bool = isIntegerArray( [ -3.0, new Number(0.0), 2.0 ] );\n* // returns true\n*\n* bool = isIntegerArray( [ -3.0, '3.0' ] );\n* // returns false\n*\n* @example\n* var isIntegerArray = require( '@stdlib/assert/is-integer-array' ).primitives;\n*\n* var bool = isIntegerArray( [ -1.0, 10.0 ] );\n* // returns true\n*\n* bool = isIntegerArray( [ -1.0, 0.0, 5.0 ] );\n* // returns true\n*\n* bool = isIntegerArray( [ -3.0, new Number(-1.0) ] );\n* // returns false\n*\n* @example\n* var isIntegerArray = require( '@stdlib/assert/is-integer-array' ).objects;\n*\n* var bool = isIntegerArray( [ new Number(1.0), new Number(3.0) ] );\n* // returns true\n*\n* bool = isIntegerArray( [ -1.0, 0.0, 3.0 ] );\n* // returns false\n*\n* bool = isIntegerArray( [ 3.0, new Number(-1.0) ] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isInteger = require( './../../is-integer' );\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar arrayfun = require( './../../tools/array-like-function' );\n\n\n// VARIABLES //\n\nvar isPrimitiveArray = arrayfun( isInteger.isPrimitive );\nvar isObjectArray = arrayfun( isInteger.isObject );\n\n\n// MAIN //\n\nvar isIntegerArray = arrayfun( isInteger );\nsetReadOnly( isIntegerArray, 'primitives', isPrimitiveArray );\nsetReadOnly( isIntegerArray, 'objects', isObjectArray );\n\n\n// EXPORTS //\n\nmodule.exports = isIntegerArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Tests if a value is a JavaScript primitive.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a JavaScript primitive\n*\n* @example\n* var bool = isPrimitive( true );\n* // returns true\n*\n* @example\n* var bool = isPrimitive( {} );\n* // returns false\n*/\nfunction isPrimitive( value ) {\n\tvar type = typeof value;\n\treturn (\n\t\ttype === 'string' ||\n\t\ttype === 'number' ||\n\t\ttype === 'boolean' ||\n\t\ttype === 'symbol' || // ES6/ES2015\n\t\ttype === 'bigint' || // ES11/ES2020\n\t\tvalue === null ||\n\t\tvalue === void 0\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isPrimitive;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a JavaScript primitive.\n*\n* @module @stdlib/assert/is-primitive\n*\n* @example\n* var isPrimitive = require( '@stdlib/assert/is-primitive' );\n*\n* var bool = isPrimitive( true );\n* // returns true\n*\n* bool = isPrimitive( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isFunction = require( './../../is-function' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is iterator-like.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is iterator-like\n*\n* @example\n* var it = {\n* 'next': function noop() {}\n* };\n* var bool = isIteratorLike( it );\n* // returns true\n*\n* @example\n* var bool = isIteratorLike( {} );\n* // returns false\n*\n* @example\n* var bool = isIteratorLike( null );\n* // returns false\n*/\nfunction isIteratorLike( value ) {\n\tvar t = typeof value;\n\treturn (\n\t\tvalue !== null &&\n\t\t( t === 'object' || t === 'function' ) &&\n\t\tisFunction( value.next )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isIteratorLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is iterator-like.\n*\n* @module @stdlib/assert/is-iterator-like\n*\n* @example\n* var isIteratorLike = require( '@stdlib/assert/is-iterator-like' );\n*\n* var it = {\n* 'next': function noop() {}\n* };\n* var bool = isIteratorLike( it );\n* // returns true\n*\n* bool = isIteratorLike( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './../../is-primitive' );\nvar isFunction = require( './../../is-function' );\nvar ITERATOR = require( '@stdlib/symbol/iterator' );\nvar isIteratorLike = require( './../../is-iterator-like' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is iterable-like.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is iterable-like\n*\n* @example\n* var bool = isIterableLike( [] );\n* // returns \n*\n* @example\n* var bool = isIterableLike( {} );\n* // returns false\n*\n* @example\n* var bool = isIterableLike( null );\n* // returns false\n*/\nfunction isIterableLike( value ) {\n\tvar f;\n\tif ( isPrimitive( value ) ) {\n\t\treturn false;\n\t}\n\tf = value[ ITERATOR ];\n\treturn (\n\t\tisFunction( f ) &&\n\t\tf.length === 0 &&\n\t\tisIteratorLike( value[ ITERATOR ]() ) // Why this form? In order to preserve `this`.\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isIterableLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is iterable-like.\n*\n* @module @stdlib/assert/is-iterable-like\n*\n* @example\n* var isIterableLike = require( '@stdlib/assert/is-iterable-like' );\n*\n* var bool = isIterableLike( [] );\n* // returns \n*\n* bool = isIterableLike( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar hasIteratorSymbolSupport = require( './../../has-iterator-symbol-support' );\nvar constantFunction = require( '@stdlib/utils/constant-function' );\nvar main = require( './main.js' );\n\n\n// MAIN //\n\nvar isIterable;\nif ( hasIteratorSymbolSupport() ) {\n\tisIterable = main;\n} else {\n\tisIterable = constantFunction( false );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isIterable;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// VARIABLES //\n\n/**\n* Detects a JSON string.\n*\n* Regular expression: `/^\\{[\\s\\S]*\\}$|^\\[[\\s\\S]*\\]$/`\n*\n* - `^\\{`\n*\n* - match a `{` literal which is the first character\n*\n* - `[\\s\\S]*`\n*\n* - match any whitespace and non-whitespace characters which occur `0` or more times\n*\n* - `\\}$`\n*\n* - match a `}` literal which is the last character\n*\n* - `|`\n*\n* - alternatively\n*\n* - `^\\[`\n*\n* - match a `[` literal which is the first character\n*\n* - `[\\s\\S]*`\n*\n* - match any whitespace and non-whitespace characters which occur `0` or more times\n*\n* - `\\]$`\n*\n* - match a `]` literal which is the last character\n*\n*\n* Example matching strings:\n*\n* - `'{}'`\n* - `'[]'`\n* - `'{adjlkfaj3743.,><\\n\\t\\rdf}'`\n* - `'[adjlkfaj3743.,><\\n\\t\\rdf]'`\n* - `'{\"a\":5}'`\n*\n* @constant\n* @type {RegExp}\n* @default /^\\{[\\s\\S]*\\}$|^\\[[\\s\\S]*\\]$/\n*/\nvar re = /^\\{[\\s\\S]*\\}$|^\\[[\\s\\S]*\\]$/;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a parseable JSON string.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a parseable JSON string\n*\n* @example\n* var v = isJSON( '{\"a\":5}' );\n* // returns true\n*\n* @example\n* var v = isJSON( '{a\":5}' );\n* // returns false\n*/\nfunction isJSON( value ) {\n\tif ( typeof value !== 'string' ) {\n\t\treturn false;\n\t}\n\tif ( !re.test( value ) ) {\n\t\treturn false;\n\t}\n\ttry {\n\t\tJSON.parse( value );\n\t} catch ( err ) { // eslint-disable-line no-unused-vars\n\t\treturn false;\n\t}\n\treturn true;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isJSON;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a parseable JSON string.\n*\n* @module @stdlib/assert/is-json\n*\n* @example\n* var isJSON = require( '@stdlib/assert/is-json' );\n*\n* var v = isJSON( '{\"a\":5}' );\n* // returns true\n*\n* v = isJSON( '{a\":5}' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2022 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\nvar kebabcase = require( '@stdlib/string/base/kebabcase' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a string in kebab case.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is a string in kebab case\n*\n* @example\n* var bool = isKebabcase( 'beep-boop' );\n* // returns true\n*\n* @example\n* var bool = isKebabcase( 'Beep-boop' );\n* // returns false\n*\n* @example\n* var bool = isKebabcase( 'BEEP_BOOP' );\n* // returns false\n*\n* @example\n* var bool = isKebabcase( 1 );\n* // returns false\n*/\nfunction isKebabcase( value ) {\n\treturn ( isString( value ) && kebabcase( value ) === value );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isKebabcase;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2022 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a string in kebab case.\n*\n* @module @stdlib/assert/is-kebabcase\n*\n* @example\n* var isKebabcase = require( '@stdlib/assert/is-kebabcase' );\n*\n* var bool = isKebabcase( 'beep-boop' );\n* // returns true\n*\n* bool = isKebabcase( 'BEEP_BOOP' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isDateObject = require( './../../is-date-object' );\nvar isInteger = require( './../../is-integer' ).isPrimitive;\nvar currentYear = require( '@stdlib/time/current-year' );\n\n\n// MAIN //\n\n/**\n* Tests whether a value corresponds to a leap year in the Gregorian calendar.\n*\n* ## Notes\n*\n* - According to the Gregorian calendar, every year that is exactly divisible by `4` is a leap year, except those years which are also divisible by `100` and not by `400` (e.g., `1900`).\n*\n* @param {*} [value] - input value\n* @returns {boolean} boolean whether a value corresponds to a leap year\n*\n* @example\n* var bool = isLeapYear();\n* // returns \n*\n* @example\n* var bool = isLeapYear( new Date() );\n* // returns \n*\n* @example\n* var bool = isLeapYear( 1996 );\n* // returns true\n*\n* @example\n* var bool = isLeapYear( 2001 );\n* // returns false\n*/\nfunction isLeapYear( value ) {\n\tvar yr;\n\tif ( arguments.length ) {\n\t\tif ( isDateObject( value ) ) {\n\t\t\tyr = value.getFullYear();\n\t\t} else if ( isInteger( value ) ) {\n\t\t\tyr = value;\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t} else {\n\t\t// Note: cannot cache, as possible for application to cross into a new year:\n\t\tyr = currentYear();\n\t}\n\t// Special case if year is a new century...\n\tif ( (yr % 100) === 0 ) {\n\t\t// Centuries are only leap years at the end of \"leap cycles\" which happen every `400` years:\n\t\treturn ( (yr % 400) === 0 );\n\t}\n\t// All other years which are exactly divisible by `4` are leap years:\n\treturn ( (yr % 4) === 0 );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isLeapYear;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether a value corresponds to a leap year in the Gregorian calendar.\n*\n* @module @stdlib/assert/is-leap-year\n*\n* @example\n* var isLeapYear = require( '@stdlib/assert/is-leap-year' );\n*\n* var bool = isLeapYear();\n* // returns \n*\n* bool = isLeapYear( new Date() );\n* // returns \n*\n* bool = isLeapYear( 1996 );\n* // returns true\n*\n* bool = isLeapYear( 2001 );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar Uint8Array = require( '@stdlib/array/uint8' );\nvar Uint16Array = require( '@stdlib/array/uint16' );\n\n\n// MAIN //\n\nvar ctors = {\n\t'uint16': Uint16Array,\n\t'uint8': Uint8Array\n};\n\n\n// EXPORTS //\n\nmodule.exports = ctors;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar ctors = require( './ctors.js' );\n\n\n// VARIABLES //\n\nvar bool;\n\n\n// FUNCTIONS //\n\n/**\n* Returns a boolean indicating if an environment is little endian.\n*\n* @private\n* @returns {boolean} boolean indicating if an environment is little endian\n*\n* @example\n* var bool = isLittleEndian();\n* // returns \n*/\nfunction isLittleEndian() {\n\tvar uint16view;\n\tvar uint8view;\n\n\tuint16view = new ctors[ 'uint16' ]( 1 );\n\n\t/*\n\t* Set the uint16 view to a value having distinguishable lower and higher order words.\n\t*\n\t* 4660 => 0x1234 => 0x12 0x34 => '00010010 00110100' => (0x12,0x34) == (18,52)\n\t*/\n\tuint16view[ 0 ] = 0x1234;\n\n\t// Create a uint8 view on top of the uint16 buffer:\n\tuint8view = new ctors[ 'uint8' ]( uint16view.buffer );\n\n\t// If little endian, the least significant byte will be first...\n\treturn ( uint8view[ 0 ] === 0x34 );\n}\n\n\n// MAIN //\n\nbool = isLittleEndian();\n\n\n// EXPORTS //\n\nmodule.exports = bool;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Return a boolean indicating if an environment is little endian.\n*\n* @module @stdlib/assert/is-little-endian\n*\n* @example\n* var IS_LITTLE_ENDIAN = require( '@stdlib/assert/is-little-endian' );\n*\n* var bool = IS_LITTLE_ENDIAN;\n* // returns \n*/\n\n// MODULES //\n\nvar IS_LITTLE_ENDIAN = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = IS_LITTLE_ENDIAN;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\n\n\n// VARIABLES //\n\n// IPv4 127.0.0.0/8 address block:\nvar RE_LOCALHOST_IPV4 = /^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/;\n\n\n// MAIN //\n\n/**\n* Tests whether a value is a localhost hostname.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a localhost hostname\n*\n* @example\n* var bool = isLocalhost( 'localhost' );\n* // returns true\n*\n* @example\n* var bool = isLocalhost( '127.0.0.1' );\n* // returns true\n*\n* @example\n* var bool = isLocalhost( '[::1]' );\n* // returns true\n*\n* @example\n* var bool = isLocalhost( 'wikipedia.org' );\n* // returns false\n*\n* @example\n* var bool = isLocalhost( 'stdlib.io' );\n* // returns false\n*\n* @example\n* var bool = isLocalhost( null );\n* // returns false\n*/\nfunction isLocalhost( value ) {\n\tif ( !isString( value ) ) {\n\t\treturn false;\n\t}\n\treturn (\n\t\tvalue === 'localhost' || value === 'LOCALHOST' ||\n\n\t\t// IPv6 localhost address:\n\t\tvalue === '[::1]' ||\n\n\t\tRE_LOCALHOST_IPV4.test( value )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isLocalhost;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether a value is is a localhost hostname.\n*\n* @module @stdlib/assert/is-localhost\n*\n* @example\n* var isLocalhost = require( '@stdlib/assert/is-localhost' );\n*\n* var bool = isLocalhost( 'localhost' );\n* // returns true\n*\n* bool = isLocalhost( '127.0.0.1' );\n* // returns true\n*\n* bool = isLocalhost( '[::1]' );\n* // returns true\n*\n* bool = isLocalhost( 'stdlib.io' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar lowercase = require( '@stdlib/string/lowercase' );\nvar uppercase = require( '@stdlib/string/uppercase' );\nvar isString = require( './../../is-string' ).isPrimitive;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a lowercase string.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a lowercase string\n*\n* @example\n* var bool = isLowercase( 'salt and light' );\n* // returns true\n*\n* @example\n* var bool = isLowercase( 'HELLO' );\n* // returns false\n*\n* @example\n* var bool = isLowercase( 'World' );\n* // returns false\n*\n* @example\n* var bool = isLowercase( '!' );\n* // returns false\n*/\nfunction isLowercase( value ) {\n\treturn (\n\t\tisString( value ) &&\n\t\tvalue === lowercase( value ) &&\n\t\tvalue !== uppercase( value )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isLowercase;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a lowercase string.\n*\n* @module @stdlib/assert/is-lowercase\n*\n* @example\n* var isLowercase = require( '@stdlib/assert/is-lowercase' );\n*\n* var bool = isLowercase( 'hello' );\n* // returns true\n*\n* bool = isLowercase( 'World' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar hasOwnProp = require( './../../has-own-property' );\nvar isFunction = require( './../../is-function' );\n\n\n// MAIN //\n\n/**\n* Tests if an object has a specified method name.\n*\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object has a specified method name\n*\n* @example\n* var beep = {\n* 'boop': isMethod\n* };\n*\n* var bool = isMethod( beep, 'boop' );\n* // returns true\n*\n* var bool = isMethod( beep, 'toString' );\n* // returns false\n*/\nfunction isMethod( value, property ) {\n\treturn (\n\t\thasOwnProp( value, property ) &&\n\t\tisFunction( value[ property ] )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isMethod;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object has a specified method name.\n*\n* @module @stdlib/assert/is-method\n*\n* @example\n* var isMethod = require( '@stdlib/assert/is-method' );\n*\n* var beep = {\n* 'boop': isMethod\n* };\n*\n* var bool = isMethod( beep, 'boop' );\n* // returns true\n*\n* bool = isMethod( beep, 'toString' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isFunction = require( './../../is-function' );\nvar Object = require( '@stdlib/object/ctor' );\n\n\n// MAIN //\n\n/**\n* Tests if an object has a specified method name, either own or inherited.\n*\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object has a specified method name\n*\n* @example\n* var beep = {\n* 'boop': true\n* };\n*\n* var bool = isMethodIn( beep, 'toString' );\n* // returns true\n*\n* bool = isMethodIn( beep, 'boop' );\n* // returns false\n*/\nfunction isMethodIn( value, property ) {\n\tif ( value === void 0 || value === null ) {\n\t\treturn false;\n\t}\n\tvalue = Object( value );\n\tif ( typeof property !== 'symbol' ) {\n\t\tproperty = String( property );\n\t}\n\treturn (\n\t\t( property in value ) &&\n\t\tisFunction( value[ property ] )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isMethodIn;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object has a specified method name, either own or inherited.\n*\n* @module @stdlib/assert/is-method-in\n*\n* @example\n* var isMethodIn = require( '@stdlib/assert/is-method-in' );\n*\n* var beep = {\n* 'boop': true\n* };\n*\n* var bool = isMethodIn( beep, 'toString' );\n* // returns true\n*\n* bool = isMethodIn( beep, 'boop' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar constantFunction = require( '@stdlib/utils/constant-function' );\n\n\n// MAIN //\n\nvar isMobile = constantFunction( false );\n\n\n// EXPORTS //\n\nmodule.exports = isMobile;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Boolean indicating if the current environment is a mobile device.\n*\n* @module @stdlib/assert/is-mobile\n*\n* @example\n* var IS_MOBILE = require( '@stdlib/assert/is-mobile' );\n*\n* var bool = IS_MOBILE;\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// MAIN //\n\nvar bool = main();\n\n\n// EXPORTS //\n\nmodule.exports = bool;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2023 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar MultiSlice = require( '@stdlib/slice/multi' );\nvar constructorName = require( '@stdlib/utils/constructor-name' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a MultiSlice object.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a MultiSlice object\n*\n* @example\n* var MultiSlice = require( '@stdlib/slice/multi' );\n*\n* var s = new MultiSlice();\n*\n* var bool = isMultiSlice( s );\n* // returns true\n*/\nfunction isMultiSlice( value ) {\n\treturn (\n\t\tvalue instanceof MultiSlice ||\n\t\tconstructorName( value ) === 'MultiSlice'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isMultiSlice;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2023 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a MultiSlice object.\n*\n* @module @stdlib/assert/is-multi-slice\n*\n* @example\n* var MultiSlice = require( '@stdlib/slice/multi' );\n* var isMultiSlice = require( '@stdlib/assert/is-multi-slice' );\n*\n* var s = new MultiSlice();\n*\n* var bool = isMultiSlice( s );\n* // returns true\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isTypedArray = require( './../../is-typed-array' );\nvar hasOwnProp = require( './../../has-own-property' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is named typed tuple-like.\n*\n* @param {*} v - value to test\n* @returns {boolean} boolean indicating if a value is named typed tuple-like\n*\n* @example\n* var namedtypedtuple = require( '@stdlib/utils/named-typed-tuple' );\n*\n* var Point = namedtypedtuple( [ 'x', 'y' ] );\n*\n* var p = new Point();\n*\n* var bool = isNamedTypedTupleLike( p );\n* // returns true\n*\n* bool = isNamedTypedTupleLike( [] );\n* // returns false\n*/\nfunction isNamedTypedTupleLike( v ) {\n\treturn (\n\t\tisTypedArray( v ) &&\n\t\ttypeof v.fieldOf === 'function' &&\n\t\ttypeof v.findField === 'function' &&\n\t\ttypeof v.ind2key === 'function' &&\n\t\ttypeof v.key2ind === 'function' &&\n\t\ttypeof v.lastFieldOf === 'function' &&\n\t\ttypeof v.subtuple === 'function' &&\n\t\thasOwnProp( v, 'fields' ) &&\n\t\thasOwnProp( v, 'orderedFields' )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNamedTypedTupleLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is named typed tuple-like.\n*\n* @module @stdlib/assert/is-named-typed-tuple-like\n*\n* @example\n* var namedtypedtuple = require( '@stdlib/utils/named-typed-tuple' );\n* var isNamedTypedTupleLike = require( '@stdlib/assert/is-named-typed-tuple-like' );\n*\n* var Point = namedtypedtuple( [ 'x', 'y' ] );\n*\n* var p = new Point();\n*\n* var bool = isNamedTypedTupleLike( p );\n* // returns true\n*\n* bool = isNamedTypedTupleLike( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array-like object containing only `NaN` values.\n*\n* @module @stdlib/assert/is-nan-array\n*\n* @example\n* var isNaNArray = require( '@stdlib/assert/is-nan-array' );\n*\n* var bool = isNaNArray( [ NaN, NaN, NaN ] );\n* // returns true\n*\n* bool = isNaNArray( [ NaN, 2 ] );\n* // returns false\n*\n* bool = isNaNArray.primitives( [ NaN, new Number( NaN ) ] );\n* // returns false\n*\n* bool = isNaNArray.primitives( [ NaN, NaN, NaN ] );\n* // returns true\n*\n* bool = isNaNArray.objects( [ new Number( NaN ), new Number( NaN ) ] );\n* // returns true\n*\n* bool = isNaNArray.objects( [ NaN, new Number( NaN ), new Number( NaN ) ] );\n* // returns false\n*\n* bool = isNaNArray.objects( [ NaN, NaN, NaN ] );\n* // returns false\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar arrayfun = require( './../../tools/array-like-function' );\nvar isnan = require( './../../is-nan' );\n\n\n// VARIABLES //\n\nvar isPrimitiveArray = arrayfun( isnan.isPrimitive );\nvar isObjectArray = arrayfun( isnan.isObject );\n\n\n// MAIN //\n\nvar isNaNArray = arrayfun( isnan );\nsetReadOnly( isNaNArray, 'primitives', isPrimitiveArray );\nsetReadOnly( isNaNArray, 'objects', isObjectArray );\n\n\n// EXPORTS //\n\nmodule.exports = isNaNArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isFunction = require( './../../is-function' );\nvar reNativeFunction = require( '@stdlib/regexp/native-function' );\nvar function2string = require( '@stdlib/function/to-string' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a native function.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a native function\n*\n* @example\n* function beep() {\n* console.log( 'boop' );\n* }\n*\n* var bool = isNativeFunction( beep );\n* // returns false\n*\n* bool = isNativeFunction( Date );\n* // returns true\n*/\nfunction isNativeFunction( value ) {\n\treturn (\n\t\tisFunction( value ) &&\n\t\treNativeFunction.REGEXP.test( function2string( value ) )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNativeFunction;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a native function.\n*\n* @module @stdlib/assert/is-native-function\n*\n* @example\n* var isNativeFunction = require( '@stdlib/assert/is-native-function' );\n*\n* function beep() {\n* console.log( 'boop' );\n* }\n*\n* var bool = isNativeFunction( beep );\n* // returns false\n*\n* bool = isNativeFunction( Date );\n* // returns true\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInteger = require( './../../is-integer' ).isPrimitive;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number primitive having a negative integer value.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number primitive having a negative integer value\n*\n* @example\n* var bool = isNegativeInteger( -3.0 );\n* // returns true\n*\n* @example\n* var bool = isNegativeInteger( new Number( -3.0 ) );\n* // returns false\n*/\nfunction isNegativeInteger( value ) {\n\treturn (\n\t\tisInteger( value ) &&\n\t\tvalue < 0.0\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNegativeInteger;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInteger = require( './../../is-integer' ).isObject;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number object having a negative integer value.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number object having a negative integer value\n*\n* @example\n* var bool = isNegativeInteger( -3.0 );\n* // returns false\n*\n* @example\n* var bool = isNegativeInteger( new Number( -3.0 ) );\n* // returns true\n*/\nfunction isNegativeInteger( value ) {\n\treturn (\n\t\tisInteger( value ) &&\n\t\tvalue.valueOf() < 0.0\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNegativeInteger;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a negative integer.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a negative integer\n*\n* @example\n* var bool = isNegativeInteger( -5.0 );\n* // returns true\n*\n* @example\n* var bool = isNegativeInteger( new Number( -5.0 ) );\n* // returns true\n*\n* @example\n* var bool = isNegativeInteger( 5.0 );\n* // returns false\n*\n* @example\n* var bool = isNegativeInteger( -3.14 );\n* // returns false\n*\n* @example\n* var bool = isNegativeInteger( null );\n* // returns false\n*/\nfunction isNegativeInteger( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNegativeInteger;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a negative integer.\n*\n* @module @stdlib/assert/is-negative-integer\n*\n* @example\n* var isNegativeInteger = require( '@stdlib/assert/is-negative-integer' );\n*\n* var bool = isNegativeInteger( -5.0 );\n* // returns true\n*\n* bool = isNegativeInteger( new Number( -5.0 ) );\n* // returns true\n*\n* bool = isNegativeInteger( 5.0 );\n* // returns false\n*\n* bool = isNegativeInteger( -3.14 );\n* // returns false\n*\n* bool = isNegativeInteger( null );\n* // returns false\n*\n* @example\n* var isNegativeInteger = require( '@stdlib/assert/is-negative-integer' ).isPrimitive;\n*\n* var bool = isNegativeInteger( -3.0 );\n* // returns true\n*\n* bool = isNegativeInteger( new Number( -3.0 ) );\n* // returns false\n*\n* @example\n* var isNegativeInteger = require( '@stdlib/assert/is-negative-integer' ).isObject;\n*\n* var bool = isNegativeInteger( -3.0 );\n* // returns false\n*\n* bool = isNegativeInteger( new Number( -3.0 ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array-like object containing only negative integers.\n*\n* @module @stdlib/assert/is-negative-integer-array\n*\n* @example\n* var isNegativeIntegerArray = require( '@stdlib/assert/is-negative-integer-array' );\n*\n* var bool = isNegativeIntegerArray( [ -3.0, new Number(-3.0) ] );\n* // returns true\n*\n* bool = isNegativeIntegerArray( [ -3.0, '-3.0' ] );\n* // returns false\n*\n* @example\n* var isNegativeIntegerArray = require( '@stdlib/assert/is-negative-integer-array' ).primitives;\n*\n* var bool = isNegativeIntegerArray( [ -1.0, -10.0 ] );\n* // returns true\n*\n* bool = isNegativeIntegerArray( [ -1.0, 0.0, -10.0 ] );\n* // returns false\n*\n* bool = isNegativeIntegerArray( [ -3.0, new Number(-1.0) ] );\n* // returns false\n*\n* @example\n* var isNegativeIntegerArray = require( '@stdlib/assert/is-negative-integer-array' ).objects;\n*\n* var bool = isNegativeIntegerArray( [ new Number(-1.0), new Number(-10.0) ] );\n* // returns true\n*\n* bool = isNegativeIntegerArray( [ -1.0, 0.0, -10.0 ] );\n* // returns false\n*\n* bool = isNegativeIntegerArray( [ -3.0, new Number(-1.0) ] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isNegativeInteger = require( './../../is-negative-integer' );\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar arrayfun = require( './../../tools/array-like-function' );\n\n\n// VARIABLES //\n\nvar isPrimitiveArray = arrayfun( isNegativeInteger.isPrimitive );\nvar isObjectArray = arrayfun( isNegativeInteger.isObject );\n\n\n// MAIN //\n\nvar isNegativeIntegerArray = arrayfun( isNegativeInteger );\nsetReadOnly( isNegativeIntegerArray, 'primitives', isPrimitiveArray );\nsetReadOnly( isNegativeIntegerArray, 'objects', isObjectArray );\n\n\n// EXPORTS //\n\nmodule.exports = isNegativeIntegerArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isPrimitive;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number primitive having a negative value.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number primitive having a negative value\n*\n* @example\n* var bool = isNegativeNumber( -3.0 );\n* // returns true\n*\n* @example\n* var bool = isNegativeNumber( new Number( -3.0 ) );\n* // returns false\n*/\nfunction isNegativeNumber( value ) {\n\treturn (\n\t\tisNumber( value ) &&\n\t\tvalue < 0.0\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNegativeNumber;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isObject;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number object having a negative value.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number object having a negative value\n*\n* @example\n* var bool = isNegativeNumber( -3.0 );\n* // returns false\n*\n* @example\n* var bool = isNegativeNumber( new Number( -3.0 ) );\n* // returns true\n*/\nfunction isNegativeNumber( value ) {\n\treturn (\n\t\tisNumber( value ) &&\n\t\tvalue.valueOf() < 0.0\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNegativeNumber;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a negative number.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a negative number\n*\n* @example\n* var bool = isNegativeNumber( -5.0 );\n* // returns true\n*\n* @example\n* var bool = isNegativeNumber( new Number( -5.0 ) );\n* // returns true\n*\n* @example\n* var bool = isNegativeNumber( -3.14 );\n* // returns true\n*\n* @example\n* var bool = isNegativeNumber( 5.0 );\n* // returns false\n*\n* @example\n* var bool = isNegativeNumber( null );\n* // returns false\n*/\nfunction isNegativeNumber( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNegativeNumber;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a negative number.\n*\n* @module @stdlib/assert/is-negative-number\n*\n* @example\n* var isNegativeNumber = require( '@stdlib/assert/is-negative-number' );\n*\n* var bool = isNegativeNumber( -5.0 );\n* // returns true\n*\n* bool = isNegativeNumber( new Number( -5.0 ) );\n* // returns true\n*\n* bool = isNegativeNumber( -3.14 );\n* // returns true\n*\n* bool = isNegativeNumber( 5.0 );\n* // returns false\n*\n* bool = isNegativeNumber( null );\n* // returns false\n*\n* @example\n* // Use interface to check for negative number primitives...\n* var isNegativeNumber = require( '@stdlib/assert/is-negative-number' ).isPrimitive;\n*\n* var bool = isNegativeNumber( -3.0 );\n* // returns true\n*\n* bool = isNegativeNumber( new Number( -3.0 ) );\n* // returns false\n*\n* @example\n* // Use interface to check for negative number objects...\n* var isNegativeNumber = require( '@stdlib/assert/is-negative-number' ).isObject;\n*\n* var bool = isNegativeNumber( -3.0 );\n* // returns false\n*\n* bool = isNegativeNumber( new Number( -3.0 ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array-like object containing only negative numbers.\n*\n* @module @stdlib/assert/is-negative-number-array\n*\n* @example\n* var isNegativeNumberArray = require( '@stdlib/assert/is-negative-number-array' );\n*\n* var bool = isNegativeNumberArray( [ -3.0, new Number(-3.0) ] );\n* // returns true\n*\n* bool = isNegativeNumberArray( [ -3.0, '-3.0' ] );\n* // returns false\n*\n* @example\n* var isNegativeNumberArray = require( '@stdlib/assert/is-negative-number-array' ).primitives;\n*\n* var bool = isNegativeNumberArray( [ -1.0, -5.0, -10.0 ] );\n* // returns true\n*\n* bool = isNegativeNumberArray( [ -3.0, new Number(-1.0) ] );\n* // returns false\n*\n* @example\n* var isNegativeNumberArray = require( '@stdlib/assert/is-negative-number-array' ).objects;\n*\n* var bool = isNegativeNumberArray( [ new Number(-3.0), new Number(-1.0) ] );\n* // returns true\n*\n* bool = isNegativeNumberArray( [ -1.0, -5.0, -10.0 ] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isNegativeNumber = require( './../../is-negative-number' );\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar arrayfun = require( './../../tools/array-like-function' );\n\n\n// VARIABLES //\n\nvar isPrimitiveArray = arrayfun( isNegativeNumber.isPrimitive );\nvar isObjectArray = arrayfun( isNegativeNumber.isObject );\n\n\n// MAIN //\n\nvar isNegativeNumberArray = arrayfun( isNegativeNumber );\nsetReadOnly( isNegativeNumberArray, 'primitives', isPrimitiveArray );\nsetReadOnly( isNegativeNumberArray, 'objects', isObjectArray );\n\n\n// EXPORTS //\n\nmodule.exports = isNegativeNumberArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isPrimitive;\nvar NINF = require( '@stdlib/constants/float64/ninf' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number primitive equal to negative zero.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number primitive equal to negative zero\n*\n* @example\n* var bool = isNegativeZero( -0.0 );\n* // returns true\n*\n* @example\n* var bool = isNegativeZero( new Number( -0.0 ) );\n* // returns false\n*/\nfunction isNegativeZero( value ) {\n\treturn (\n\t\tisNumber( value ) &&\n\t\t( 1.0 / value ) === NINF\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNegativeZero;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isObject;\nvar NINF = require( '@stdlib/constants/float64/ninf' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number object having a value equal to negative zero.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number object having a value equal to negative zero\n*\n* @example\n* var bool = isNegativeZero( -0.0 );\n* // returns false\n*\n* @example\n* var bool = isNegativeZero( new Number( -0.0 ) );\n* // returns true\n*/\nfunction isNegativeZero( value ) {\n\treturn (\n\t\tisNumber( value ) &&\n\t\t( 1.0 / value.valueOf() ) === NINF\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNegativeZero;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is equal to negative zero.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is equal to negative zero\n*\n* @example\n* var bool = isNegativeZero( -0.0 );\n* // returns true\n*\n* @example\n* var bool = isNegativeZero( new Number( -0.0 ) );\n* // returns true\n*\n* @example\n* var bool = isNegativeZero( -3.14 );\n* // returns false\n*\n* @example\n* var bool = isNegativeZero( 5.0 );\n* // returns false\n*\n* @example\n* var bool = isNegativeZero( 0.0 );\n* // returns false\n*\n* @example\n* var bool = isNegativeZero( null );\n* // returns false\n*/\nfunction isNegativeZero( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNegativeZero;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is equal to negative zero.\n*\n* @module @stdlib/assert/is-negative-zero\n*\n* @example\n* var isNegativeZero = require( '@stdlib/assert/is-negative-zero' );\n*\n* var bool = isNegativeZero( -0.0 );\n* // returns true\n*\n* bool = isNegativeZero( new Number( -0.0 ) );\n* // returns true\n*\n* bool = isNegativeZero( -3.14 );\n* // returns false\n*\n* bool = isNegativeZero( 5.0 );\n* // returns false\n*\n* bool = isNegativeZero( 0.0 );\n* // returns false\n*\n* bool = isNegativeZero( null );\n* // returns false\n*\n* @example\n* var isNegativeZero = require( '@stdlib/assert/is-negative-zero' ).isPrimitive;\n*\n* var bool = isNegativeZero( -0.0 );\n* // returns true\n*\n* bool = isNegativeZero( new Number( -0.0 ) );\n* // returns false\n*\n* @example\n* var isNegativeZero = require( '@stdlib/assert/is-negative-zero' ).isObject;\n*\n* var bool = isNegativeZero( -0.0 );\n* // returns false\n*\n* bool = isNegativeZero( new Number( -0.0 ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "[\n\t\"assert\",\n\t\"async_hooks\",\n\t\"buffer\",\n\t\"child_process\",\n\t\"cluster\",\n\t\"console\",\n\t\"constants\",\n\t\"crypto\",\n\t\"dgram\",\n\t\"dns\",\n\t\"domain\",\n\t\"events\",\n\t\"fs\",\n\t\"http\",\n\t\"http2\",\n\t\"https\",\n\t\"_http_agent\",\n\t\"_http_client\",\n\t\"_http_common\",\n\t\"_http_incoming\",\n\t\"_http_outgoing\",\n\t\"_http_server\",\n\t\"inspector\",\n\t\"module\",\n\t\"net\",\n\t\"os\",\n\t\"path\",\n\t\"perf_hooks\",\n\t\"process\",\n\t\"punycode\",\n\t\"querystring\",\n\t\"readline\",\n\t\"repl\",\n\t\"stream\",\n\t\"_stream_readable\",\n\t\"_stream_writable\",\n\t\"_stream_duplex\",\n\t\"_stream_transform\",\n\t\"_stream_passthrough\",\n\t\"_stream_wrap\",\n\t\"string_decoder\",\n\t\"sys\",\n\t\"timers\",\n\t\"tls\",\n\t\"_tls_common\",\n\t\"_tls_legacy\",\n\t\"_tls_wrap\",\n\t\"tty\",\n\t\"url\",\n\t\"util\",\n\t\"v8\",\n\t\"vm\",\n\t\"zlib\",\n\t\"v8/tools/splaytree\",\n\t\"v8/tools/codemap\",\n\t\"v8/tools/consarray\",\n\t\"v8/tools/csvparser\",\n\t\"v8/tools/profile\",\n\t\"v8/tools/profile_view\",\n\t\"v8/tools/logreader\",\n\t\"v8/tools/tickprocessor\",\n\t\"v8/tools/SourceMap\",\n\t\"v8/tools/tickprocessor-driver\",\n\t\"node-inspect/lib/_inspect\",\n\t\"node-inspect/lib/internal/inspect_client\",\n\t\"node-inspect/lib/internal/inspect_repl\"\n]\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar mod = require( 'module' );\nvar contains = require( './../../contains' );\nvar isString = require( './../../is-string' ).isPrimitive;\nvar BUILTINS = require( './builtins.json' );\n\n\n// VARIABLES //\n\nvar LIST = mod.builtinModules || BUILTINS;\n\n\n// MAIN //\n\n/**\n* Tests whether a string matches a Node.js built-in module name.\n*\n* @param {*} x - value to test\n* @returns {boolean} boolean indicating whether a string matches a Node.js built-in module name\n*\n* @example\n* var out = isNodeBuiltin( 'cluster' );\n* // returns true\n*\n* @example\n* var out = isNodeBuiltin( 'crypto' );\n* // returns true\n*\n* @example\n* var out = isNodeBuiltin( 'fs-extra' );\n* // returns false\n*\n* @example\n* var out = isNodeBuiltin( '' );\n* // returns false\n*/\nfunction isNodeBuiltin( x ) {\n\tif ( !isString( x ) ) {\n\t\treturn false;\n\t}\n\treturn contains( LIST, x );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNodeBuiltin;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether a string matches a Node.js built-in module name.\n*\n* @module @stdlib/assert/is-node-builtin\n*\n* @example\n* var isNodeBuiltin = require( '@stdlib/assert/is-node-builtin' );\n*\n* var out = isNodeBuiltin( 'crypto' );\n* // returns true\n*\n* out = isNodeBuiltin( 'cluster' );\n* // returns true\n*\n* out = isNodeBuiltin( '' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\n/**\n* Tests if a value is Node stream-like.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is Node stream-like\n*\n* @example\n* var transformStream = require( '@stdlib/streams/node/transform' );\n*\n* var stream = transformStream();\n*\n* var bool = isNodeStreamLike( stream );\n* // returns true\n*\n* bool = isNodeStreamLike( {} );\n* // returns false\n*/\nfunction isNodeStreamLike( value ) {\n\treturn (\n\t\t// Must be an object:\n\t\tvalue !== null &&\n\t\ttypeof value === 'object' &&\n\n\t\t// Should be an event emitter:\n\t\ttypeof value.on === 'function' &&\n\t\ttypeof value.once === 'function' &&\n\t\ttypeof value.emit === 'function' &&\n\t\ttypeof value.addListener === 'function' &&\n\t\ttypeof value.removeListener === 'function' &&\n\t\ttypeof value.removeAllListeners === 'function' &&\n\n\t\t// Should have a `pipe` method (Node streams inherit from `Stream`, including writable streams):\n\t\ttypeof value.pipe === 'function'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNodeStreamLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is Node stream-like.\n*\n* @module @stdlib/assert/is-node-stream-like\n*\n* @example\n* var transformStream = require( '@stdlib/streams/node/transform' );\n* var isNodeStreamLike = require( '@stdlib/assert/is-node-stream-like' );\n*\n* var stream = transformStream();\n*\n* var bool = isNodeStreamLike( stream );\n* // returns true\n*\n* bool = isNodeStreamLike( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n/* eslint-disable no-underscore-dangle */\n\n'use strict';\n\n// MODULES //\n\nvar isNodeStreamLike = require( './../../is-node-stream-like' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is Node writable stream-like.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is Node writable stream-like\n*\n* @example\n* var transformStream = require( '@stdlib/streams/node/transform' );\n*\n* var stream = transformStream();\n*\n* var bool = isNodeWritableStreamLike( stream );\n* // returns true\n*\n* bool = isNodeWritableStreamLike( {} );\n* // returns false\n*/\nfunction isNodeWritableStreamLike( value ) {\n\treturn (\n\t\t// Must be stream-like:\n\t\tisNodeStreamLike( value ) &&\n\n\t\t// Should have writable stream methods:\n\t\ttypeof value._write === 'function' &&\n\n\t\t// Should have writable stream state:\n\t\ttypeof value._writableState === 'object'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNodeWritableStreamLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is Node writable stream-like.\n*\n* @module @stdlib/assert/is-node-writable-stream-like\n*\n* @example\n* var transformStream = require( '@stdlib/streams/node/transform' );\n* var isNodeWritableStreamLike = require( '@stdlib/assert/is-node-writable-stream-like' );\n*\n* var stream = transformStream();\n*\n* var bool = isNodeWritableStreamLike( stream );\n* // returns true\n*\n* bool = isNodeWritableStreamLike( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n/* eslint-disable no-underscore-dangle */\n\n'use strict';\n\n// MODULES //\n\nvar isNodeStreamLike = require( './../../is-node-stream-like' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is Node readable stream-like.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is Node readable stream-like\n*\n* @example\n* var transformStream = require( '@stdlib/streams/node/transform' );\n*\n* var stream = transformStream();\n*\n* var bool = isNodeReadableStreamLike( stream );\n* // returns true\n*\n* bool = isNodeReadableStreamLike( {} );\n* // returns false\n*/\nfunction isNodeReadableStreamLike( value ) {\n\treturn (\n\t\t// Must be stream-like:\n\t\tisNodeStreamLike( value ) &&\n\n\t\t// Should have readable stream methods:\n\t\ttypeof value._read === 'function' &&\n\n\t\t// Should have readable stream state:\n\t\ttypeof value._readableState === 'object'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNodeReadableStreamLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is Node readable stream-like.\n*\n* @module @stdlib/assert/is-node-readable-stream-like\n*\n* @example\n* var transformStream = require( '@stdlib/streams/node/transform' );\n* var isNodeReadableStreamLike = require( '@stdlib/assert/is-node-readable-stream-like' );\n*\n* var stream = transformStream();\n*\n* var bool = isNodeReadableStreamLike( stream );\n* // returns true\n*\n* bool = isNodeReadableStreamLike( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNodeWritableStreamLike = require( './../../is-node-writable-stream-like' );\nvar isNodeReadableStreamLike = require( './../../is-node-readable-stream-like' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is Node duplex stream-like.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is Node duplex stream-like\n*\n* @example\n* var transformStream = require( '@stdlib/streams/node/transform' );\n*\n* var stream = transformStream();\n*\n* var bool = isNodeDuplexStreamLike( stream );\n* // returns true\n*\n* bool = isNodeDuplexStreamLike( {} );\n* // returns false\n*/\nfunction isNodeDuplexStreamLike( value ) {\n\treturn (\n\t\t// Must be both readable and writable:\n\t\tisNodeWritableStreamLike( value ) &&\n\t\tisNodeReadableStreamLike( value )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNodeDuplexStreamLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is Node duplex stream-like.\n*\n* @module @stdlib/assert/is-node-duplex-stream-like\n*\n* @example\n* var transformStream = require( '@stdlib/streams/node/transform' );\n* var isNodeDuplexStreamLike = require( '@stdlib/assert/is-node-duplex-stream-like' );\n*\n* var stream = transformStream();\n*\n* var bool = isNodeDuplexStreamLike( stream );\n* // returns true\n*\n* bool = isNodeDuplexStreamLike( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\n/**\n* Returns the parent module.\n*\n* @private\n* @returns {Module} parent module\n*/\nfunction parent() { // eslint-disable-line stdlib/no-redeclare\n\treturn module;\n}\n\n\n// EXPORTS //\n\nmodule.exports = parent;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\n/**\n* Returns a stacktrace.\n*\n* @private\n* @returns {(string|void)} stacktrace\n*/\nfunction stacktrace() {\n\tvar err = new Error();\n\treturn err.stack;\n}\n\n\n// EXPORTS //\n\nmodule.exports = stacktrace;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar IS_NODE = require( './../../is-node' );\nvar p = require( './parent.js' );\nvar stacktrace = require( './stacktrace.js' );\n\n\n// VARIABLES //\n\n// The module id for the builtin REPL was `repl` in Node versions <4 and then changed to `` for Node versions >=4 (see https://github.com/nodejs/node/commit/ee72ee753118f2576bfd1ccf58fb2ff651e8bfb0#diff-b13d72249263845d8e8341db0426f9d3R527).\nvar RE_MODULE_ID = /^repl$|^$/;\n\n// This is V8 specific (!!), as this assumes the V8 stacktrace API. TODO: rely on an engine agnostic approach to determining callsites.\nvar RE_ERROR_STACK = /at REPLServer/;\n\n\n// MAIN //\n\n/**\n* Returns a boolean indicating if the function is called from a Node.js REPL environment.\n*\n* ## Notes\n*\n* - False positives are possible due to the existence of a userland package having the same module `id` (see [repl][repl-template-lib]) as the builtin Node.js `repl`.\n*\n* [repl-template-lib]: https://www.npmjs.com/package/repl\n*\n* @returns {boolean} boolean indicating if the function is called from a Node.js REPL environment\n*\n* @example\n* var bool = isNodeREPL();\n* // returns \n*/\nfunction isNodeREPL() {\n\tvar stack;\n\tvar m;\n\tif ( !IS_NODE ) {\n\t\treturn false;\n\t}\n\t// If this module was required in a REPL environment, we can walk up the module dependency tree to find a `repl` ancestor...\n\tm = p();\n\twhile ( m ) {\n\t\tif ( RE_MODULE_ID.test( m.id ) ) {\n\t\t\treturn true;\n\t\t}\n\t\tm = m.parent;\n\t}\n\t// Unable to find a `repl` ancestor, so try determining if this function was called from a REPL environment...\n\tstack = stacktrace();\n\tif ( stack ) {\n\t\treturn RE_ERROR_STACK.test( stack );\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNodeREPL;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Check if running within a Node.js REPL environment.\n*\n* @module @stdlib/assert/is-node-repl\n*\n* @example\n* var isNodeREPL = require( '@stdlib/assert/is-node-repl' );\n*\n* var bool = isNodeREPL();\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n/* eslint-disable no-underscore-dangle */\n\n'use strict';\n\n// MODULES //\n\nvar isNodeDuplexStreamLike = require( './../../is-node-duplex-stream-like' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is Node transform stream-like.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is Node transform stream-like\n*\n* @example\n* var transformStream = require( '@stdlib/streams/node/transform' );\n*\n* var stream = transformStream();\n*\n* var bool = isNodeTransformStreamLike( stream );\n* // returns true\n*\n* bool = isNodeTransformStreamLike( {} );\n* // returns false\n*/\nfunction isNodeTransformStreamLike( value ) {\n\treturn (\n\t\t// Must be duplex stream-like:\n\t\tisNodeDuplexStreamLike( value ) &&\n\n\t\t// Should have transform stream methods:\n\t\ttypeof value._transform === 'function'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNodeTransformStreamLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is Node transform stream-like.\n*\n* @module @stdlib/assert/is-node-transform-stream-like\n*\n* @example\n* var transformStream = require( '@stdlib/streams/node/transform' );\n* var isNodeTransformStreamLike = require( '@stdlib/assert/is-node-transform-stream-like' );\n*\n* var stream = transformStream();\n*\n* var bool = isNodeTransformStreamLike( stream );\n* // returns true\n*\n* bool = isNodeTransformStreamLike( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar propertyDescriptor = require( '@stdlib/utils/property-descriptor' );\n\n\n// MAIN //\n\n/**\n* Tests if an object's own property is non-configurable.\n*\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object property is non-configurable\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': true,\n* 'writable': true,\n* 'value': 'beep'\n* });\n*\n* var bool = isNonConfigurableProperty( obj, 'boop' );\n* // returns false\n*\n* bool = isNonConfigurableProperty( obj, 'beep' );\n* // returns true\n*/\nfunction isNonConfigurableProperty( value, property ) {\n\tvar desc = propertyDescriptor( value, property );\n\treturn ( desc !== null && desc.configurable === false );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNonConfigurableProperty;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object's own property is non-configurable.\n*\n* @module @stdlib/assert/is-nonconfigurable-property\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n* var isNonConfigurableProperty = require( '@stdlib/assert/is-nonconfigurable-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': true,\n* 'writable': true,\n* 'value': 'beep'\n* });\n*\n* var bool = isNonConfigurableProperty( obj, 'boop' );\n* // returns false\n*\n* bool = isNonConfigurableProperty( obj, 'beep' );\n* // returns true\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar propertyDescriptorIn = require( '@stdlib/utils/property-descriptor-in' );\n\n\n// MAIN //\n\n/**\n* Tests if an object's own or inherited property is non-configurable.\n*\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object property is non-configurable\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': true,\n* 'writable': true,\n* 'value': true\n* });\n*\n* var bool = isNonConfigurablePropertyIn( obj, 'boop' );\n* // returns false\n*\n* bool = isNonConfigurablePropertyIn( obj, 'beep' );\n* // returns true\n*/\nfunction isNonConfigurablePropertyIn( value, property ) { // eslint-disable-line id-length\n\tvar desc = propertyDescriptorIn( value, property );\n\treturn ( desc !== null && desc.configurable === false );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNonConfigurablePropertyIn;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object's own or inherited property is non-configurable.\n*\n* @module @stdlib/assert/is-nonconfigurable-property-in\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n* var isNonConfigurablePropertyIn = require( '@stdlib/assert/is-nonconfigurable-property-in' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': true,\n* 'writable': true,\n* 'value': true\n* });\n*\n* var bool = isNonConfigurablePropertyIn( obj, 'boop' );\n* // returns false\n*\n* bool = isNonConfigurablePropertyIn( obj, 'beep' );\n* // returns true\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar hasOwnProp = require( './../../has-own-property' );\nvar isEnumerableProperty = require( './../../is-enumerable-property' );\n\n\n// MAIN //\n\n/**\n* Tests if an object's own property is non-enumerable.\n*\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object property is non-enumerable\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': false,\n* 'writable': true,\n* 'value': 'beep'\n* });\n*\n* var bool = isNonEnumerableProperty( obj, 'boop' );\n* // returns false\n*\n* bool = isNonEnumerableProperty( obj, 'beep' );\n* // returns true\n*/\nfunction isNonEnumerableProperty( value, property ) {\n\tif ( hasOwnProp( value, property ) === false ) {\n\t\treturn false;\n\t}\n\treturn ( isEnumerableProperty( value, property ) === false );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNonEnumerableProperty;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object's own property is non-enumerable.\n*\n* @module @stdlib/assert/is-nonenumerable-property\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n* var isNonEnumerableProperty = require( '@stdlib/assert/is-nonenumerable-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': false,\n* 'writable': true,\n* 'value': 'beep'\n* });\n*\n* var bool = isNonEnumerableProperty( obj, 'boop' );\n* // returns false\n*\n* bool = isNonEnumerableProperty( obj, 'beep' );\n* // returns true\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar propertyDescriptorIn = require( '@stdlib/utils/property-descriptor-in' );\n\n\n// MAIN //\n\n/**\n* Tests if an object's own or inherited property is non-enumerable.\n*\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object property is non-enumerable\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': true,\n* 'enumerable': false,\n* 'writable': true,\n* 'value': true\n* });\n*\n* var bool = isNonEnumerablePropertyIn( obj, 'boop' );\n* // returns false\n*\n* bool = isNonEnumerablePropertyIn( obj, 'beep' );\n* // returns true\n*/\nfunction isNonEnumerablePropertyIn( value, property ) {\n\tvar desc = propertyDescriptorIn( value, property );\n\treturn ( desc !== null && desc.enumerable === false );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNonEnumerablePropertyIn;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object's own or inherited property is non-enumerable.\n*\n* @module @stdlib/assert/is-nonenumerable-property-in\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n* var isNonEnumerablePropertyIn = require( '@stdlib/assert/is-nonenumerable-property-in' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': true,\n* 'enumerable': false,\n* 'writable': true,\n* 'value': true\n* });\n*\n* var bool = isNonEnumerablePropertyIn( obj, 'boop' );\n* // returns false\n*\n* bool = isNonEnumerablePropertyIn( obj, 'beep' );\n* // returns true\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array-like object containing only nonnegative integers.\n*\n* @module @stdlib/assert/is-nonnegative-integer-array\n*\n* @example\n* var isNonNegativeIntegerArray = require( '@stdlib/assert/is-nonnegative-integer-array' );\n*\n* var bool = isNonNegativeIntegerArray( [ 3.0, new Number(3.0) ] );\n* // returns true\n*\n* bool = isNonNegativeIntegerArray( [ 3.0, '3.0' ] );\n* // returns false\n*\n* @example\n* var isNonNegativeIntegerArray = require( '@stdlib/assert/is-nonnegative-integer-array' ).primitives;\n*\n* var bool = isNonNegativeIntegerArray( [ 1.0, 0.0, 10.0 ] );\n* // returns true\n*\n* bool = isNonNegativeIntegerArray( [ 3.0, new Number(1.0) ] );\n* // returns false\n*\n* @example\n* var isNonNegativeIntegerArray = require( '@stdlib/assert/is-nonnegative-integer-array' ).objects;\n*\n* var bool = isNonNegativeIntegerArray( [ new Number(3.0), new Number(1.0) ] );\n* // returns true\n*\n* bool = isNonNegativeIntegerArray( [ 1.0, 0.0, 10.0 ] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isNonNegativeInteger = require( './../../is-nonnegative-integer' );\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar arrayfun = require( './../../tools/array-like-function' );\n\n\n// VARIABLES //\n\nvar isPrimitiveArray = arrayfun( isNonNegativeInteger.isPrimitive );\nvar isObjectArray = arrayfun( isNonNegativeInteger.isObject );\n\n\n// MAIN //\n\nvar isNonNegativeIntegerArray = arrayfun( isNonNegativeInteger );\nsetReadOnly( isNonNegativeIntegerArray, 'primitives', isPrimitiveArray );\nsetReadOnly( isNonNegativeIntegerArray, 'objects', isObjectArray );\n\n\n// EXPORTS //\n\nmodule.exports = isNonNegativeIntegerArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isPrimitive;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number primitive having a nonnegative value.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number primitive having a nonnegative number value\n*\n* @example\n* var bool = isNonNegativeNumber( 3.0 );\n* // returns true\n*\n* @example\n* var bool = isNonNegativeNumber( new Number( 3.0 ) );\n* // returns false\n*/\nfunction isNonNegativeNumber( value ) {\n\treturn (\n\t\tisNumber( value ) &&\n\t\tvalue >= 0.0\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNonNegativeNumber;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isObject;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number object having a nonnegative value.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number object having a nonnegative number value\n*\n* @example\n* var bool = isNonNegativeNumber( 3.0 );\n* // returns false\n*\n* @example\n* var bool = isNonNegativeNumber( new Number( 3.0 ) );\n* // returns true\n*/\nfunction isNonNegativeNumber( value ) {\n\treturn (\n\t\tisNumber( value ) &&\n\t\tvalue.valueOf() >= 0.0\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNonNegativeNumber;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a nonnegative number.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a nonnegative number\n*\n* @example\n* var bool = isNonNegativeNumber( 5.0 );\n* // returns true\n*\n* @example\n* var bool = isNonNegativeNumber( new Number( 5.0 ) );\n* // returns true\n*\n* @example\n* var bool = isNonNegativeNumber( 3.14 );\n* // returns true\n*\n* @example\n* var bool = isNonNegativeNumber( -5.0 );\n* // returns false\n*\n* @example\n* var bool = isNonNegativeNumber( null );\n* // returns false\n*/\nfunction isNonNegativeNumber( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNonNegativeNumber;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a nonnegative number.\n*\n* @module @stdlib/assert/is-nonnegative-number\n*\n* @example\n* var isNonNegativeNumber = require( '@stdlib/assert/is-nonnegative-number' );\n*\n* var bool = isNonNegativeNumber( 5.0 );\n* // returns true\n*\n* bool = isNonNegativeNumber( new Number( 5.0 ) );\n* // returns true\n*\n* bool = isNonNegativeNumber( 3.14 );\n* // returns true\n*\n* bool = isNonNegativeNumber( -5.0 );\n* // returns false\n*\n* bool = isNonNegativeNumber( null );\n* // returns false\n*\n* @example\n* var isNonNegativeNumber = require( '@stdlib/assert/is-nonnegative-number' ).isPrimitive;\n*\n* var bool = isNonNegativeNumber( 3.0 );\n* // returns true\n*\n* bool = isNonNegativeNumber( new Number( 3.0 ) );\n* // returns false\n*\n* @example\n* var isNonNegativeNumber = require( '@stdlib/assert/is-nonnegative-number' ).isObject;\n*\n* var bool = isNonNegativeNumber( 3.0 );\n* // returns false\n*\n* bool = isNonNegativeNumber( new Number( 3.0 ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array-like object containing only nonnegative numbers.\n*\n* @module @stdlib/assert/is-nonnegative-number-array\n*\n* @example\n* var isNonNegativeNumberArray = require( '@stdlib/assert/is-nonnegative-number-array' );\n*\n* var bool = isNonNegativeNumberArray( [ 3.0, new Number(3.0) ] );\n* // returns true\n*\n* bool = isNonNegativeNumberArray( [ 3.0, '3.0' ] );\n* // returns false\n*\n* @example\n* var isNonNegativeNumberArray = require( '@stdlib/assert/is-nonnegative-number-array' ).primitives;\n*\n* var bool = isNonNegativeNumberArray( [ 1.0, 0.0, 10.0 ] );\n* // returns true\n*\n* bool = isNonNegativeNumberArray( [ 3.0, new Number(1.0) ] );\n* // returns false\n*\n* @example\n* var isNonNegativeNumberArray = require( '@stdlib/assert/is-nonnegative-number-array' ).objects;\n*\n* var bool = isNonNegativeNumberArray( [ new Number(3.0), new Number(1.0) ] );\n* // returns true\n*\n* bool = isNonNegativeNumberArray( [ 1.0, 0.0, 10.0 ] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isNonNegativeNumber = require( './../../is-nonnegative-number' );\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar arrayfun = require( './../../tools/array-like-function' );\n\n\n// VARIABLES //\n\nvar isPrimitiveArray = arrayfun( isNonNegativeNumber.isPrimitive );\nvar isObjectArray = arrayfun( isNonNegativeNumber.isObject );\n\n\n// MAIN //\n\nvar isNonNegativeNumberArray = arrayfun( isNonNegativeNumber );\nsetReadOnly( isNonNegativeNumberArray, 'primitives', isPrimitiveArray );\nsetReadOnly( isNonNegativeNumberArray, 'objects', isObjectArray );\n\n\n// EXPORTS //\n\nmodule.exports = isNonNegativeNumberArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInteger = require( './../../is-integer' ).isPrimitive;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number primitive having a nonpositive integer value.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number primitive having a nonpositive integer value\n*\n* @example\n* var bool = isNonPositiveInteger( -3.0 );\n* // returns true\n*\n* @example\n* var bool = isNonPositiveInteger( new Number( -3.0 ) );\n* // returns false\n*/\nfunction isNonPositiveInteger( value ) {\n\treturn (\n\t\tisInteger( value ) &&\n\t\tvalue <= 0\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNonPositiveInteger;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInteger = require( './../../is-integer' ).isObject;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number object having a nonpositive integer value.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number object having a nonpositive integer value\n*\n* @example\n* var bool = isNonPositiveInteger( -3.0 );\n* // returns false\n*\n* @example\n* var bool = isNonPositiveInteger( new Number( -3.0 ) );\n* // returns true\n*/\nfunction isNonPositiveInteger( value ) {\n\treturn (\n\t\tisInteger( value ) &&\n\t\tvalue.valueOf() <= 0\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNonPositiveInteger;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a nonpositive integer.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a nonpositive integer\n*\n* @example\n* var bool = isNonPositiveInteger( -5.0 );\n* // returns true\n*\n* @example\n* var bool = isNonPositiveInteger( new Number( -5.0 ) );\n* // returns true\n*\n* @example\n* var bool = isNonPositiveInteger( 5.0 );\n* // returns false\n*\n* @example\n* var bool = isNonPositiveInteger( -3.14 );\n* // returns false\n*\n* @example\n* var bool = isNonPositiveInteger( null );\n* // returns false\n*/\nfunction isNonPositiveInteger( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNonPositiveInteger;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a nonpositive integer.\n*\n* @module @stdlib/assert/is-nonpositive-integer\n*\n* @example\n* var isNonPositiveInteger = require( '@stdlib/assert/is-nonpositive-integer' );\n*\n* var bool = isNonPositiveInteger( -5.0 );\n* // returns true\n*\n* bool = isNonPositiveInteger( new Number( -5.0 ) );\n* // returns true\n*\n* bool = isNonPositiveInteger( 5.0 );\n* // returns false\n*\n* bool = isNonPositiveInteger( -3.14 );\n* // returns false\n*\n* bool = isNonPositiveInteger( null );\n* // returns false\n*\n* @example\n* var isNonPositiveInteger = require( '@stdlib/assert/is-nonpositive-integer' ).isPrimitive;\n*\n* var bool = isNonPositiveInteger( -3.0 );\n* // returns true\n*\n* bool = isNonPositiveInteger( new Number( -3.0 ) );\n* // returns false\n*\n* @example\n* var isNonPositiveInteger = require( '@stdlib/assert/is-nonpositive-integer' ).isObject;\n*\n* var bool = isNonPositiveInteger( -3.0 );\n* // returns false\n*\n* bool = isNonPositiveInteger( new Number( -3.0 ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array-like object containing only nonpositive integers.\n*\n* @module @stdlib/assert/is-nonpositive-integer-array\n*\n* @example\n* var isNonPositiveIntegerArray = require( '@stdlib/assert/is-nonpositive-integer-array' );\n*\n* var bool = isNonPositiveIntegerArray( [ -3.0, new Number(-3.0) ] );\n* // returns true\n*\n* bool = isNonPositiveIntegerArray( [ -3.0, '-3.0' ] );\n* // returns false\n*\n* @example\n* var isNonPositiveIntegerArray = require( '@stdlib/assert/is-nonpositive-integer-array' ).primitives;\n*\n* var bool = isNonPositiveIntegerArray( [ -1.0, 0.0, -10.0 ] );\n* // returns true\n*\n* bool = isNonPositiveIntegerArray( [ -3.0, new Number(-1.0) ] );\n* // returns false\n*\n* @example\n* var isNonPositiveIntegerArray = require( '@stdlib/assert/is-nonpositive-integer-array' ).objects;\n*\n* var bool = isNonPositiveIntegerArray( [ new Number(-3.0), new Number(-1.0) ] );\n* // returns true\n*\n* bool = isNonPositiveIntegerArray( [ -1.0, 0.0, -10.0 ] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isNonPositiveInteger = require( './../../is-nonpositive-integer' );\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar arrayfun = require( './../../tools/array-like-function' );\n\n\n// VARIABLES //\n\nvar isPrimitiveArray = arrayfun( isNonPositiveInteger.isPrimitive );\nvar isObjectArray = arrayfun( isNonPositiveInteger.isObject );\n\n\n// MAIN //\n\nvar isNonPositiveIntegerArray = arrayfun( isNonPositiveInteger );\nsetReadOnly( isNonPositiveIntegerArray, 'primitives', isPrimitiveArray );\nsetReadOnly( isNonPositiveIntegerArray, 'objects', isObjectArray );\n\n\n// EXPORTS //\n\nmodule.exports = isNonPositiveIntegerArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isPrimitive;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number primitive having a nonpositive value.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number primitive having a nonpositive number value\n*\n* @example\n* var bool = isNonPositiveNumber( -3.0 );\n* // returns true\n*\n* @example\n* var bool = isNonPositiveNumber( new Number( -3.0 ) );\n* // returns false\n*/\nfunction isNonPositiveNumber( value ) {\n\treturn (\n\t\tisNumber( value ) &&\n\t\tvalue <= 0.0\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNonPositiveNumber;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isObject;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number object having a nonpositive value.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number object having a nonpositive number value\n*\n* @example\n* var bool = isNonPositiveNumber( -3.0 );\n* // returns false\n*\n* @example\n* var bool = isNonPositiveNumber( new Number( -3.0 ) );\n* // returns true\n*/\nfunction isNonPositiveNumber( value ) {\n\treturn (\n\t\tisNumber( value ) &&\n\t\tvalue.valueOf() <= 0.0\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNonPositiveNumber;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a nonpositive number.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a nonpositive number\n*\n* @example\n* var bool = isNonPositiveNumber( -5.0 );\n* // returns true\n*\n* @example\n* var bool = isNonPositiveNumber( new Number( -5.0 ) );\n* // returns true\n*\n* @example\n* var bool = isNonPositiveNumber( -3.14 );\n* // returns true\n*\n* @example\n* var bool = isNonPositiveNumber( 5.0 );\n* // returns false\n*\n* @example\n* var bool = isNonPositiveNumber( null );\n* // returns false\n*/\nfunction isNonPositiveNumber( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNonPositiveNumber;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a nonpositive number.\n*\n* @module @stdlib/assert/is-nonpositive-number\n*\n* @example\n* var isNonPositiveNumber = require( '@stdlib/assert/is-nonpositive-number' );\n*\n* var bool = isNonPositiveNumber( -5.0 );\n* // returns true\n*\n* bool = isNonPositiveNumber( new Number( -5.0 ) );\n* // returns true\n*\n* bool = isNonPositiveNumber( -3.14 );\n* // returns true\n*\n* bool = isNonPositiveNumber( 5.0 );\n* // returns false\n*\n* bool = isNonPositiveNumber( null );\n* // returns false\n*\n* @example\n* var isNonPositiveNumber = require( '@stdlib/assert/is-nonpositive-number' ).isPrimitive;\n*\n* var bool = isNonPositiveNumber( -3.0 );\n* // returns true\n*\n* bool = isNonPositiveNumber( new Number( -3.0 ) );\n* // returns false\n*\n* @example\n* var isNonPositiveNumber = require( '@stdlib/assert/is-nonpositive-number' ).isObject;\n*\n* var bool = isNonPositiveNumber( -3.0 );\n* // returns false\n*\n* bool = isNonPositiveNumber( new Number( -3.0 ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array-like object containing only nonpositive numbers.\n*\n* @module @stdlib/assert/is-nonpositive-number-array\n*\n* @example\n* var isNonPositiveNumberArray = require( '@stdlib/assert/is-nonpositive-number-array' );\n*\n* var bool = isNonPositiveNumberArray( [ -3.0, new Number(-3.0) ] );\n* // returns true\n*\n* bool = isNonPositiveNumberArray( [ -3.0, '-3.0' ] );\n* // returns false\n*\n* @example\n* var isNonPositiveNumberArray = require( '@stdlib/assert/is-nonpositive-number-array' ).primitives;\n*\n* var bool = isNonPositiveNumberArray( [ -1.0, 0.0, -10.0 ] );\n* // returns true\n*\n* bool = isNonPositiveNumberArray( [ -3.0, new Number(-1.0) ] );\n* // returns false\n*\n* @example\n* var isNonPositiveNumberArray = require( '@stdlib/assert/is-nonpositive-number-array' ).objects;\n*\n* var bool = isNonPositiveNumberArray( [ new Number(-3.0), new Number(-1.0) ] );\n* // returns true\n*\n* bool = isNonPositiveNumberArray( [ -1.0, 0.0, -10.0 ] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isNonPositiveNumber = require( './../../is-nonpositive-number' );\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar arrayfun = require( './../../tools/array-like-function' );\n\n\n// VARIABLES //\n\nvar isPrimitiveArray = arrayfun( isNonPositiveNumber.isPrimitive );\nvar isObjectArray = arrayfun( isNonPositiveNumber.isObject );\n\n\n// MAIN //\n\nvar isNonPositiveNumberArray = arrayfun( isNonPositiveNumber );\nsetReadOnly( isNonPositiveNumberArray, 'primitives', isPrimitiveArray );\nsetReadOnly( isNonPositiveNumberArray, 'objects', isObjectArray );\n\n\n// EXPORTS //\n\nmodule.exports = isNonPositiveNumberArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isMatrixLike = require( './../../is-matrix-like' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a non-symmetric matrix.\n*\n* ## Notes\n*\n* - The implementation must rely on manually checking that \\\\(M_{ij} \\neq M_{ji}\\\\), and, while element access is deterministic, no way exists to prevent cache misses outside of reordering the underlying matrix elements, thus incurring a larger performance penalty than just \"jumping around\" in a single pass.\n* - Worst case scenario: O(N^2).\n*\n* @param {*} v - value to test\n* @returns {boolean} boolean indicating if a value is a non-symmetric matrix\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n*\n* var arr = ndarray( 'generic', [ 1, 2, 3, 4 ], [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n* var bool = isNonSymmetricMatrix( arr );\n* // returns true\n*\n* bool = isNonSymmetricMatrix( [] );\n* // returns false\n*/\nfunction isNonSymmetricMatrix( v ) {\n\tvar M;\n\tvar i;\n\tvar j;\n\tif ( !isMatrixLike( v ) ) {\n\t\treturn false;\n\t}\n\tM = v.shape[ 0 ];\n\tif ( M !== v.shape[ 1 ] ) {\n\t\treturn true;\n\t}\n\tfor ( i = 0; i < M; i++ ) {\n\t\tfor ( j = 0; j < i; j++ ) {\n\t\t\tif ( v.get( i, j ) !== v.get( j, i ) ) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNonSymmetricMatrix;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a non-symmetric matrix.\n*\n* @module @stdlib/assert/is-nonsymmetric-matrix\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n* var isNonSymmetricMatrix = require( '@stdlib/assert/is-nonsymmetric-matrix' );\n*\n* var arr = ndarray( 'generic', [ 1, 2, 3, 4 ], [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n* var bool = isNonSymmetricMatrix( arr );\n* // returns true\n*\n* bool = isNonSymmetricMatrix( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Tests if a value is `null`.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is null\n*\n* @example\n* var bool = isNull( null );\n* // returns true\n*\n* bool = isNull( true );\n* // returns false\n*/\nfunction isNull( value ) {\n\treturn value === null;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNull;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is `null`.\n*\n* @module @stdlib/assert/is-null\n*\n* @example\n* var isNull = require( '@stdlib/assert/is-null' );\n*\n* var value = null;\n*\n* var bool = isNull( value );\n* // returns true\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar arrayfun = require( './../../tools/array-like-function' );\nvar isNull = require( './../../is-null' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is an array-like object containing only `null` values.\n*\n* @name isNullArray\n* @type {Function}\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether an input value is an array-like object containing only `null` values\n*\n* @example\n* var bool = isNullArray( [null,null,null] );\n* // returns true\n*\n* bool = isNullArray( [NaN,2,null] );\n* // returns false\n*/\nvar isNullArray = arrayfun( isNull );\n\n\n// EXPORTS //\n\nmodule.exports = isNullArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array-like object containing only `null` values.\n*\n* @module @stdlib/assert/is-null-array\n*\n* @example\n* var isNullArray = require( '@stdlib/assert/is-null-array' );\n*\n* var bool = isNullArray( [null,null,null] );\n* // returns true\n*\n* bool = isNullArray( [NaN,2,null] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array-like object of numbers.\n*\n* @module @stdlib/assert/is-number-array\n*\n* @example\n* var isNumberArray = require( '@stdlib/assert/is-number-array' );\n*\n* var bool = isNumberArray( [ 1, 2, 3 ] );\n* // returns true\n*\n* bool = isNumberArray( [ '1', 2, 3 ] );\n* // returns false\n*\n* @example\n* var isNumberArray = require( '@stdlib/assert/is-number-array' ).primitives;\n*\n* var bool = isNumberArray( [ 1, 2, 3 ] );\n* // returns true\n*\n* bool = isNumberArray( [ 1, new Number( 2 ) ] );\n* // returns false\n*\n* @example\n* var isNumberArray = require( '@stdlib/assert/is-number-array' ).objects;\n*\n* var bool = isNumberArray( [ new Number( 1 ), new Number( 2 ) ] );\n* // returns true\n*\n* bool = isNumberArray( [ new Number( 1 ), 2 ] );\n* // returns false\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar arrayfun = require( './../../tools/array-like-function' );\nvar isNumber = require( './../../is-number' );\n\n\n// VARIABLES //\n\nvar isPrimitiveArray = arrayfun( isNumber.isPrimitive );\nvar isObjectArray = arrayfun( isNumber.isObject );\n\n\n// MAIN //\n\nvar isNumberArray = arrayfun( isNumber );\nsetReadOnly( isNumberArray, 'primitives', isPrimitiveArray );\nsetReadOnly( isNumberArray, 'objects', isObjectArray );\n\n\n// EXPORTS //\n\nmodule.exports = isNumberArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isTypedArray = require( './../../is-typed-array' );\nvar isNumberArray = require( './../../is-number-array' ).primitives;\nvar isBuffer = require( './../../is-buffer' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a numeric array.\n*\n* @param {*} v - value to test\n* @returns {boolean} boolean indicating if a value is a numeric array\n*\n* @example\n* var bool = isNumericArray( new Int8Array( 10 ) );\n* // returns true\n*\n* bool = isNumericArray( [ 1, 2, 3 ] );\n* // returns true\n*\n* bool = isNumericArray( [ '1', '2', '3' ] );\n* // returns false\n*/\nfunction isNumericArray( v ) {\n\treturn (\n\t\t!isBuffer( v ) &&\n\t\t(isTypedArray( v ) || isNumberArray( v ))\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isNumericArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a numeric array.\n*\n* @module @stdlib/assert/is-numeric-array\n*\n* @example\n* var isNumericArray = require( '@stdlib/assert/is-numeric-array' );\n*\n* var bool = isNumericArray( new Int8Array( 10 ) );\n* // returns true\n*\n* bool = isNumericArray( [ 1, 2, 3 ] );\n* // returns true\n*\n* bool = isNumericArray( [ '1', '2', '3' ] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar arrayfun = require( './../../tools/array-like-function' );\nvar isObject = require( './../../is-object' );\n\n\n// MAIN //\n\n/**\n* Test if a value is an array-like object containing only objects.\n*\n* @name isObjectArray\n* @type {Function}\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether an input value is an array-like object containing only objects\n*\n* @example\n* var bool = isObjectArray( [ {}, new Number(3.0) ] );\n* // returns true\n*\n* bool = isObjectArray( [ {}, { 'beep': 'boop' } ] );\n* // returns true\n*\n* bool = isObjectArray( [ {}, '3.0' ] );\n* // returns false\n*/\nvar isObjectArray = arrayfun( isObject );\n\n\n// EXPORTS //\n\nmodule.exports = isObjectArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array-like object containing only objects.\n*\n* @module @stdlib/assert/is-object-array\n*\n* @example\n* var isObjectArray = require( '@stdlib/assert/is-object-array' );\n*\n* var bool = isObjectArray( [ {}, new Number(3.0) ] );\n* // returns true\n*\n* bool = isObjectArray( [ {}, { 'beep': 'boop' } ] );\n* // returns true\n*\n* bool = isObjectArray( [ {}, '3.0' ] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInteger = require( './../../is-integer' ).isPrimitive;\nvar isEven = require( './../../is-even' ).isPrimitive;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number primitive that is an odd number.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number primitive that is an odd number\n*\n* @example\n* var bool = isOdd( -5.0 );\n* // returns true\n*\n* @example\n* var bool = isOdd( new Number( -5.0 ) );\n* // returns false\n*/\nfunction isOdd( value ) {\n\tif ( !isInteger( value ) ) {\n\t\treturn false;\n\t}\n\t// Check sign to prevent overflow...\n\tif ( value > 0.0 ) {\n\t\treturn isEven( value-1.0 );\n\t}\n\treturn isEven( value+1.0 );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isOdd;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInteger = require( './../../is-integer' ).isObject;\nvar isEven = require( './../../is-even' ).isPrimitive;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number object that has an odd number value.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number object that has an odd number value\n*\n* @example\n* var bool = isOdd( 5.0 );\n* // returns false\n*\n* @example\n* var bool = isOdd( new Number( 5.0 ) );\n* // returns true\n*/\nfunction isOdd( value ) {\n\tif ( !isInteger( value ) ) {\n\t\treturn false;\n\t}\n\t// Check sign to prevent overflow...\n\tif ( value > 0.0 ) {\n\t\treturn isEven( value-1.0 );\n\t}\n\treturn isEven( value+1.0 );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isOdd;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is an odd number.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is an odd number.\n*\n* @example\n* var bool = isOdd( 5.0 );\n* // returns true\n*\n* @example\n* var bool = isOdd( new Number( 5.0 ) );\n* // returns true\n*\n* @example\n* var bool = isOdd( 4.0 );\n* // returns false\n*\n* @example\n* var bool = isOdd( new Number( 4.0 ) );\n* // returns false\n*\n* @example\n* var bool = isOdd( -3.14 );\n* // returns false\n*\n* @example\n* var bool = isOdd( null );\n* // returns false\n*/\nfunction isOdd( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isOdd;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an odd number.\n*\n* @module @stdlib/assert/is-odd\n*\n* @example\n* var isOdd = require( '@stdlib/assert/is-odd' );\n*\n* var bool = isOdd( 5.0 );\n* // returns true\n*\n* bool = isOdd( new Number( 5.0 ) );\n* // returns true\n*\n* bool = isOdd( 4.0 );\n* // returns false\n*\n* bool = isOdd( new Number( 4.0 ) );\n* // returns false\n*\n* bool = isOdd( -3.14 );\n* // returns false\n*\n* bool = isOdd( null );\n* // returns false\n*\n* @example\n* var isOdd = require( '@stdlib/assert/is-odd' ).isPrimitive;\n*\n* var bool = isOdd( -5.0 );\n* // returns true\n*\n* bool = isOdd( new Number( -5.0 ) );\n* // returns false\n*\n* @example\n* var isOdd = require( '@stdlib/assert/is-odd' ).isObject;\n*\n* var bool = isOdd( 5.0 );\n* // returns false\n*\n* bool = isOdd( new Number( 5.0 ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/*\n* @license Apache-2.0\n*\n* Copyright (c) 2022 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\nvar pascalcase = require( '@stdlib/string/base/pascalcase' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a string in Pascal case.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is a string in Pascal case\n*\n* @example\n* var bool = isPascalcase( 'HelloWorld' );\n* // returns true\n*\n* @example\n* var bool = isPascalcase( 'helloWorld' );\n* // returns false\n*\n* @example\n* var bool = isPascalcase( 'HELLO_WORLD' );\n* // returns false\n*\n* @example\n* var bool = isPascalcase( null );\n* // returns false\n*/\nfunction isPascalcase( value ) {\n\treturn ( isString( value ) && pascalcase( value ) === value );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isPascalcase;\n", "/*\n* @license Apache-2.0\n*\n* Copyright (c) 2022 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a string in Pascal case.\n*\n* @module @stdlib/assert/is-pascalcase\n*\n* @example\n* var isPascalcase = require( '@stdlib/assert/is-pascalcase' );\n*\n* var bool = isPascalcase( 'HelloWorld' );\n* // returns true\n*\n* bool = isPascalcase( 'Hello World' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isSquareMatrix = require( './../../is-square-matrix' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a persymmetric matrix.\n*\n* ## Notes\n*\n* - The implementation must rely on manually checking that \\\\(M_{ij} = M_{N-j-1,N-i-1}\\\\), and, while element access is deterministic, no way exists to prevent cache misses outside of reordering the underlying matrix elements, thus incurring a larger performance penalty than just \"jumping around\" in a single pass.\n* - Worst case scenario: O(N^2).\n*\n* @param {*} v - value to test\n* @returns {boolean} boolean indicating if a value is a persymmetric matrix\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n*\n* var arr = ndarray( 'generic', [ 1, 2, 3, 1 ], [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n* var bool = isPersymmetricMatrix( arr );\n* // returns true\n*\n* bool = isPersymmetricMatrix( [] );\n* // returns false\n*/\nfunction isPersymmetricMatrix( v ) {\n\tvar M;\n\tvar n;\n\tvar i;\n\tvar j;\n\tif ( !isSquareMatrix( v ) ) {\n\t\treturn false;\n\t}\n\tM = v.shape[ 0 ] - 1;\n\tfor ( i = 0; i < M; i++ ) {\n\t\tn = M - i;\n\t\tfor ( j = 0; j < n; j++ ) {\n\t\t\tif ( v.get( i, j ) !== v.get( M-j, n ) ) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t}\n\treturn true;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isPersymmetricMatrix;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a persymmetric matrix.\n*\n* @module @stdlib/assert/is-persymmetric-matrix\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n* var isPersymmetricMatrix = require( '@stdlib/assert/is-persymmetric-matrix' );\n*\n* var arr = ndarray( 'generic', [ 1, 2, 3, 1 ], [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n* var bool = isPersymmetricMatrix( arr );\n* // returns true\n*\n* bool = isPersymmetricMatrix( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar arrayfun = require( './../../tools/array-like-function' );\nvar isPlainObject = require( './../../is-plain-object' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is an array-like object containing only plain objects.\n*\n* @name isPlainObjectArray\n* @type {Function}\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether an input value is an array-like object containing only plain objects\n*\n* @example\n* var bool = isPlainObjectArray( [ {}, { 'beep': 'boop' } ] );\n* // returns true\n*\n* bool = isPlainObjectArray( [ {}, new Number(3.0) ] );\n* // returns false\n*\n* bool = isPlainObjectArray( [ {}, '3.0' ] );\n* // returns false\n*/\nvar isPlainObjectArray = arrayfun( isPlainObject );\n\n\n// EXPORTS //\n\nmodule.exports = isPlainObjectArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array-like object containing only plain objects.\n*\n* @module @stdlib/assert/is-plain-object-array\n*\n* @example\n* var isPlainObjectArray = require( '@stdlib/assert/is-plain-object-array' );\n*\n* var bool = isPlainObjectArray( [ {}, { 'beep': 'boop' } ] );\n* // returns true\n*\n* bool = isPlainObjectArray( [ {}, new Number(3.0) ] );\n* // returns false\n*\n* bool = isPlainObjectArray( [ {}, '3.0' ] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInteger = require( './../../is-integer' ).isPrimitive;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number primitive having a positive integer value.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number primitive having a positive integer value\n*\n* @example\n* var bool = isPositiveInteger( 3.0 );\n* // returns true\n*\n* @example\n* var bool = isPositiveInteger( new Number( 3.0 ) );\n* // returns false\n*/\nfunction isPositiveInteger( value ) {\n\treturn (\n\t\tisInteger( value ) &&\n\t\tvalue > 0.0\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isPositiveInteger;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInteger = require( './../../is-integer' ).isObject;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number object having a positive integer value.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number object having a positive integer value\n*\n* @example\n* var bool = isPositiveInteger( 3.0 );\n* // returns false\n*\n* @example\n* var bool = isPositiveInteger( new Number( 3.0 ) );\n* // returns true\n*/\nfunction isPositiveInteger( value ) {\n\treturn (\n\t\tisInteger( value ) &&\n\t\tvalue.valueOf() > 0.0\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isPositiveInteger;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a positive integer.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a positive integer\n*\n* @example\n* var bool = isPositiveInteger( 5.0 );\n* // returns true\n*\n* @example\n* var bool = isPositiveInteger( new Number( 5.0 ) );\n* // returns true\n*\n* @example\n* var bool = isPositiveInteger( 0.0 );\n* // returns false\n*\n* @example\n* var bool = isPositiveInteger( -5.0 );\n* // returns false\n*\n* @example\n* var bool = isPositiveInteger( 3.14 );\n* // returns false\n*\n* @example\n* var bool = isPositiveInteger( null );\n* // returns false\n*/\nfunction isPositiveInteger( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isPositiveInteger;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a positive integer.\n*\n* @module @stdlib/assert/is-positive-integer\n*\n* @example\n* var isPositiveInteger = require( '@stdlib/assert/is-positive-integer' );\n*\n* var bool = isPositiveInteger( 5.0 );\n* // returns true\n*\n* bool = isPositiveInteger( new Number( 5.0 ) );\n* // returns true\n*\n* bool = isPositiveInteger( -5.0 );\n* // returns false\n*\n* bool = isPositiveInteger( 3.14 );\n* // returns false\n*\n* bool = isPositiveInteger( null );\n* // returns false\n*\n* @example\n* var isPositiveInteger = require( '@stdlib/assert/is-positive-integer' ).isPrimitive;\n*\n* var bool = isPositiveInteger( 3.0 );\n* // returns true\n*\n* bool = isPositiveInteger( new Number( 3.0 ) );\n* // returns false\n*\n* @example\n* var isPositiveInteger = require( '@stdlib/assert/is-positive-integer' ).isObject;\n*\n* var bool = isPositiveInteger( 3.0 );\n* // returns false\n*\n* bool = isPositiveInteger( new Number( 3.0 ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array-like object containing only positive integers.\n*\n* @module @stdlib/assert/is-positive-integer-array\n*\n* @example\n* var isPositiveIntegerArray = require( '@stdlib/assert/is-positive-integer-array' );\n*\n* var bool = isPositiveIntegerArray( [ 3.0, new Number(3.0) ] );\n* // returns true\n*\n* bool = isPositiveIntegerArray( [ 3.0, '3.0' ] );\n* // returns false\n*\n* @example\n* var isPositiveIntegerArray = require( '@stdlib/assert/is-positive-integer-array' ).primitives;\n*\n* var bool = isPositiveIntegerArray( [ 1.0, 2.0, 10.0 ] );\n* // returns true\n*\n* bool = isPositiveIntegerArray( [ 3.0, new Number(1.0) ] );\n* // returns false\n*\n* @example\n* var isPositiveIntegerArray = require( '@stdlib/assert/is-positive-integer-array' ).objects;\n*\n* var bool = isPositiveIntegerArray( [ new Number(3.0), new Number(1.0) ] );\n* // returns true\n*\n* bool = isPositiveIntegerArray( [ 1.0, 2.0, 10.0 ] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isPositiveInteger = require( './../../is-positive-integer' );\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar arrayfun = require( './../../tools/array-like-function' );\n\n\n// VARIABLES //\n\nvar isPrimitiveArray = arrayfun( isPositiveInteger.isPrimitive );\nvar isObjectArray = arrayfun( isPositiveInteger.isObject );\n\n\n// MAIN //\n\nvar isPositiveIntegerArray = arrayfun( isPositiveInteger );\nsetReadOnly( isPositiveIntegerArray, 'primitives', isPrimitiveArray );\nsetReadOnly( isPositiveIntegerArray, 'objects', isObjectArray );\n\n\n// EXPORTS //\n\nmodule.exports = isPositiveIntegerArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isPrimitive;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number primitive having a positive value.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number primitive having a positive value\n*\n* @example\n* var bool = isPositiveNumber( 3.0 );\n* // returns true\n*\n* @example\n* var bool = isPositiveNumber( new Number( 3.0 ) );\n* // returns false\n*/\nfunction isPositiveNumber( value ) {\n\treturn (\n\t\tisNumber( value ) &&\n\t\tvalue > 0.0\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isPositiveNumber;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isObject;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number object having a positive value.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number object having a positive value\n*\n* @example\n* var bool = isPositiveNumber( 3.0 );\n* // returns false\n*\n* @example\n* var bool = isPositiveNumber( new Number( 3.0 ) );\n* // returns true\n*/\nfunction isPositiveNumber( value ) {\n\treturn (\n\t\tisNumber( value ) &&\n\t\tvalue.valueOf() > 0.0\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isPositiveNumber;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a positive number.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a positive number\n*\n* @example\n* var bool = isPositiveNumber( 5.0 );\n* // returns true\n*\n* @example\n* var bool = isPositiveNumber( new Number( 5.0 ) );\n* // returns true\n*\n* @example\n* var bool = isPositiveNumber( 3.14 );\n* // returns true\n*\n* @example\n* var bool = isPositiveNumber( -5.0 );\n* // returns false\n*\n* @example\n* var bool = isPositiveNumber( null );\n* // returns false\n*/\nfunction isPositiveNumber( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isPositiveNumber;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a positive number.\n*\n* @module @stdlib/assert/is-positive-number\n*\n* @example\n* var isPositiveNumber = require( '@stdlib/assert/is-positive-number' );\n*\n* var bool = isPositiveNumber( 5.0 );\n* // returns true\n*\n* bool = isPositiveNumber( new Number( 5.0 ) );\n* // returns true\n*\n* bool = isPositiveNumber( 3.14 );\n* // returns true\n*\n* bool = isPositiveNumber( -5.0 );\n* // returns false\n*\n* bool = isPositiveNumber( null );\n* // returns false\n*\n* @example\n* var isPositiveNumber = require( '@stdlib/assert/is-positive-number' ).isPrimitive;\n*\n* var bool = isPositiveNumber( 3.0 );\n* // returns true\n*\n* bool = isPositiveNumber( new Number( 3.0 ) );\n* // returns false\n*\n* @example\n* var isPositiveNumber = require( '@stdlib/assert/is-positive-number' ).isObject;\n*\n* var bool = isPositiveNumber( 3.0 );\n* // returns false\n*\n* bool = isPositiveNumber( new Number( 3.0 ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array-like object containing only positive numbers.\n*\n* @module @stdlib/assert/is-positive-number-array\n*\n* @example\n* var isPositiveNumberArray = require( '@stdlib/assert/is-positive-number-array' );\n*\n* var bool = isPositiveNumberArray( [ 3.0, new Number(3.0) ] );\n* // returns true\n*\n* bool = isPositiveNumberArray( [ 3.0, '3.0' ] );\n* // returns false\n*\n* @example\n* var isPositiveNumberArray = require( '@stdlib/assert/is-positive-number-array' ).primitives;\n*\n* var bool = isPositiveNumberArray( [ 1.0, 5.0, 10.0 ] );\n* // returns true\n*\n* bool = isPositiveNumberArray( [ 3.0, new Number(1.0) ] );\n* // returns false\n*\n* @example\n* var isPositiveNumberArray = require( '@stdlib/assert/is-positive-number-array' ).objects;\n*\n* var bool = isPositiveNumberArray( [ new Number(3.0), new Number(1.0) ] );\n* // returns true\n*\n* bool = isPositiveNumberArray( [ 1.0, 5.0, 10.0 ] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isPositiveNumber = require( './../../is-positive-number' );\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar arrayfun = require( './../../tools/array-like-function' );\n\n\n// VARIABLES //\n\nvar isPrimitiveArray = arrayfun( isPositiveNumber.isPrimitive );\nvar isObjectArray = arrayfun( isPositiveNumber.isObject );\n\n\n// MAIN //\n\nvar isPositiveNumberArray = arrayfun( isPositiveNumber );\nsetReadOnly( isPositiveNumberArray, 'primitives', isPrimitiveArray );\nsetReadOnly( isPositiveNumberArray, 'objects', isObjectArray );\n\n\n// EXPORTS //\n\nmodule.exports = isPositiveNumberArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isPrimitive;\nvar PINF = require( '@stdlib/constants/float64/pinf' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number primitive equal to positive zero.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number primitive equal to positive zero\n*\n* @example\n* var bool = isPositiveZero( 0.0 );\n* // returns true\n*\n* @example\n* var bool = isPositiveZero( new Number( 0.0 ) );\n* // returns false\n*/\nfunction isPositiveZero( value ) {\n\treturn (\n\t\tisNumber( value ) &&\n\t\t( 1.0 / value ) === PINF\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isPositiveZero;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isObject;\nvar PINF = require( '@stdlib/constants/float64/pinf' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number object having a value equal to positive zero.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number object having a value equal to positive zero\n*\n* @example\n* var bool = isPositiveZero( 0.0 );\n* // returns false\n*\n* @example\n* var bool = isPositiveZero( new Number( 0.0 ) );\n* // returns true\n*/\nfunction isPositiveZero( value ) {\n\treturn (\n\t\tisNumber( value ) &&\n\t\t( 1.0 / value.valueOf() ) === PINF\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isPositiveZero;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is equal to positive zero.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is equal to positive zero\n*\n* @example\n* var bool = isPositiveZero( 0.0 );\n* // returns true\n*\n* @example\n* var bool = isPositiveZero( new Number( 0.0 ) );\n* // returns true\n*\n* @example\n* var bool = isPositiveZero( -3.14 );\n* // returns false\n*\n* @example\n* var bool = isPositiveZero( 5.0 );\n* // returns false\n*\n* @example\n* var bool = isPositiveZero( -0.0 );\n* // returns false\n*\n* @example\n* var bool = isPositiveZero( null );\n* // returns false\n*/\nfunction isPositiveZero( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isPositiveZero;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is equal to positive zero.\n*\n* @module @stdlib/assert/is-positive-zero\n*\n* @example\n* var isPositiveZero = require( '@stdlib/assert/is-positive-zero' );\n*\n* var bool = isPositiveZero( 0.0 );\n* // returns true\n*\n* bool = isPositiveZero( new Number( 0.0 ) );\n* // returns true\n*\n* bool = isPositiveZero( -3.14 );\n* // returns false\n*\n* bool = isPositiveZero( 5.0 );\n* // returns false\n*\n* bool = isPositiveZero( -0.0 );\n* // returns false\n*\n* bool = isPositiveZero( null );\n* // returns false\n*\n* @example\n* var isPositiveZero = require( '@stdlib/assert/is-positive-zero' ).isPrimitive;\n*\n* var bool = isPositiveZero( 0.0 );\n* // returns true\n*\n* bool = isPositiveZero( new Number( 0.0 ) );\n* // returns false\n*\n* @example\n* var isPositiveZero = require( '@stdlib/assert/is-positive-zero' ).isObject;\n*\n* var bool = isPositiveZero( 0.0 );\n* // returns false\n*\n* bool = isPositiveZero( new Number( 0.0 ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isPrimitive;\nvar isprime = require( '@stdlib/math/base/assert/is-prime' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number primitive having a value which is a prime number.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number primitive having a value which is a prime number\n*\n* @example\n* var bool = isPrime( 5.0 );\n* // returns true\n*\n* @example\n* var bool = isPrime( new Number( 5.0 ) );\n* // returns false\n*/\nfunction isPrime( value ) {\n\tif ( !isNumber( value ) ) {\n\t\treturn false;\n\t}\n\treturn isprime( value );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isPrime;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isObject;\nvar isprime = require( '@stdlib/math/base/assert/is-prime' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number object having a value which is a prime number.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number object having a value which is a prime number\n*\n* @example\n* var bool = isPrime( 5.0 );\n* // returns false\n*\n* @example\n* var bool = isPrime( new Number( 5.0 ) );\n* // returns true\n*/\nfunction isPrime( value ) {\n\tif ( !isNumber( value ) ) {\n\t\treturn false;\n\t}\n\treturn isprime( value.valueOf() );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isPrime;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a prime number.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a prime number\n*\n* @example\n* var bool = isPrime( 5.0 );\n* // returns true\n*\n* @example\n* var bool = isPrime( new Number( 5.0 ) );\n* // returns true\n*\n* @example\n* var bool = isPrime( 3.14 );\n* // returns false\n*\n* @example\n* var bool = isPrime( -5.0 );\n* // returns false\n*\n* @example\n* var bool = isPrime( null );\n* // returns false\n*/\nfunction isPrime( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isPrime;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a prime number.\n*\n* @module @stdlib/assert/is-prime\n*\n* @example\n* var isPrime = require( '@stdlib/assert/is-prime' );\n*\n* var bool = isPrime( 5.0 );\n* // returns true\n*\n* bool = isPrime( new Number( 5.0 ) );\n* // returns true\n*\n* bool = isPrime( 3.14 );\n* // returns false\n*\n* bool = isPrime( -5.0 );\n* // returns false\n*\n* bool = isPrime( null );\n* // returns false\n*\n* @example\n* var isPrime = require( '@stdlib/assert/is-prime' ).isPrimitive;\n*\n* var bool = isPrime( 5.0 );\n* // returns true\n*\n* bool = isPrime( new Number( 5.0 ) );\n* // returns false\n*\n* @example\n* var isPrime = require( '@stdlib/assert/is-prime' ).isObject;\n*\n* var bool = isPrime( 5.0 );\n* // returns false\n*\n* bool = isPrime( new Number( 5.0 ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar arrayfun = require( './../../tools/array-like-function' );\nvar isPrimitive = require( './../../is-primitive' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is an array-like object containing only JavaScript primitives.\n*\n* @name isPrimitiveArray\n* @type {Function}\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether an input value is an array-like object containing only JavaScript primitives\n*\n* @example\n* var bool = isPrimitiveArray( [ '3', 2, null ] );\n* // returns true\n*\n* bool = isPrimitiveArray( [ {}, 2, 1 ] );\n* // returns false\n*\n* bool = isPrimitiveArray( [ new String('abc'), '3.0' ] );\n* // returns false\n*/\nvar isPrimitiveArray = arrayfun( isPrimitive );\n\n\n// EXPORTS //\n\nmodule.exports = isPrimitiveArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array-like object containing only JavaScript primitives.\n*\n* @module @stdlib/assert/is-primitive-array\n*\n* @example\n* var isPrimitiveArray = require( '@stdlib/assert/is-primitive-array' );\n*\n* var bool = isPrimitiveArray( [ '3', 2, null ] );\n* // returns true\n*\n* bool = isPrimitiveArray( [ {}, 2, 1 ] );\n* // returns false\n*\n* bool = isPrimitiveArray( [ new String('abc'), '3.0' ] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isFunction = require( './../../is-function' );\nvar hasOwnProp = require( './../../has-own-property' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is PRNG-like.\n*\n* @param {*} v - value to test\n* @returns {boolean} boolean indicating if a value is PRNG-like\n*\n* @example\n* var randu = require( '@stdlib/random/base/randu' );\n*\n* var bool = isPRNGLike( randu );\n* // returns true\n*\n* bool = isPRNGLike( [] );\n* // returns false\n*/\nfunction isPRNGLike( v ) {\n\treturn (\n\t\tisFunction( v ) &&\n\t\ttypeof v.NAME === 'string' &&\n\t\thasOwnProp( v, 'state' ) &&\n\t\thasOwnProp( v, 'seed' )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isPRNGLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is PRNG-like.\n*\n* @module @stdlib/assert/is-prng-like\n*\n* @example\n* var randu = require( '@stdlib/random/base/randu' );\n* var isPRNGLike = require( '@stdlib/assert/is-prng-like' );\n*\n* var bool = isPRNGLike( randu );\n* // returns true\n*\n* bool = isPRNGLike( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isPrimitive;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number primitive having a value which is a probability.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number primitive having a value which is a probability\n*\n* @example\n* var bool = isProbability( 0.66 );\n* // returns true\n*\n* @example\n* var bool = isProbability( new Number( 0.66 ) );\n* // returns false\n*/\nfunction isProbability( value ) {\n\treturn (\n\t\tisNumber( value ) &&\n\t\tvalue >= 0.0 &&\n\t\tvalue <= 1.0\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isProbability;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isObject;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number object having a value which is a probability.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number object having a value which is a probability\n*\n* @example\n* var bool = isProbability( 0.5 );\n* // returns false\n*\n* @example\n* var bool = isProbability( new Number( 0.5 ) );\n* // returns true\n*/\nfunction isProbability( value ) {\n\treturn (\n\t\tisNumber( value ) &&\n\t\tvalue.valueOf() >= 0.0 &&\n\t\tvalue.valueOf() <= 1.0\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isProbability;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a probability.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a probability\n*\n* @example\n* var bool = isProbability( 0.5 );\n* // returns true\n*\n* @example\n* var bool = isProbability( new Number( 0.5 ) );\n* // returns true\n*\n* @example\n* var bool = isProbability( 3.14 );\n* // returns false\n*\n* @example\n* var bool = isProbability( -5.0 );\n* // returns false\n*\n* @example\n* var bool = isProbability( null );\n* // returns false\n*/\nfunction isProbability( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isProbability;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a probability.\n*\n* @module @stdlib/assert/is-probability\n*\n* @example\n* var isProbability = require( '@stdlib/assert/is-probability' );\n*\n* var bool = isProbability( 0.5 );\n* // returns true\n*\n* bool = isProbability( new Number( 0.5 ) );\n* // returns true\n*\n* bool = isProbability( 3.14 );\n* // returns false\n*\n* bool = isProbability( -5.0 );\n* // returns false\n*\n* bool = isProbability( null );\n* // returns false\n*\n* @example\n* var isProbability = require( '@stdlib/assert/is-probability' ).isPrimitive;\n*\n* var bool = isProbability( 0.3 );\n* // returns true\n*\n* bool = isProbability( new Number( 0.3 ) );\n* // returns false\n*\n* @example\n* var isProbability = require( '@stdlib/assert/is-probability' ).isObject;\n*\n* var bool = isProbability( 0.77 );\n* // returns false\n*\n* bool = isProbability( new Number( 0.77 ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array-like object containing only probabilities.\n*\n* @module @stdlib/assert/is-probability-array\n*\n* @example\n* var isNonNegativeNumberArray = require( '@stdlib/assert/is-probability-array' );\n*\n* var bool = isProbabilityArray( [ 0.5, new Number(0.8) ] );\n* // returns true\n*\n* bool = isProbabilityArray( [ 0.8, 1.2 ] );\n* // returns false\n*\n* bool = isProbabilityArray( [ 0.8, '0.2' ] );\n* // returns false\n*\n* @example\n* var isProbabilityArray = require( '@stdlib/assert/is-probability-array' ).primitives;\n*\n* var bool = isProbabilityArray( [ 1.0, 0.0, 0.5 ] );\n* // returns true\n*\n* bool = isProbabilityArray( [ 0.3, new Number(0.4) ] );\n* // returns false\n*\n* @example\n* var isProbabilityArray = require( '@stdlib/assert/is-probability-array' ).objects;\n*\n* var bool = isProbabilityArray( [ new Number(0.7), new Number(1.0) ] );\n* // returns true\n*\n* bool = isProbabilityArray( [ 1.0, 0.0, new Number(0.7) ] );\n* // returns false\n*/\n\n// MODULES //\n\nvar isProbability = require( './../../is-probability' );\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar arrayfun = require( './../../tools/array-like-function' );\n\n\n// VARIABLES //\n\nvar isPrimitiveArray = arrayfun( isProbability.isPrimitive );\nvar isObjectArray = arrayfun( isProbability.isObject );\n\n\n// MAIN //\n\nvar isProbabilityArray = arrayfun( isProbability );\nsetReadOnly( isProbabilityArray, 'primitives', isPrimitiveArray );\nsetReadOnly( isProbabilityArray, 'objects', isObjectArray );\n\n\n// EXPORTS //\n\nmodule.exports = isProbabilityArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\nvar isSymbol = require( './../../is-symbol' ).isPrimitive;\nvar isNonNegativeInteger = require( './../../is-nonnegative-integer' ).isPrimitive;\n\n\n// MAIN //\n\n/**\n* Tests whether a value is a property key.\n*\n* ## Notes\n*\n* - A property key is either a string, symbol, or a nonnegative integer.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a property key\n*\n* @example\n* var bool = isPropertyKey( 'beep' );\n* // returns true\n*\n* @example\n* var bool = isPropertyKey( 37 );\n* // returns true\n*\n* @example\n* var bool = isPropertyKey( {} );\n* // returns false\n*\n* @example\n* var bool = isPropertyKey( [] );\n* // returns false\n*/\nfunction isPropertyKey( value ) {\n\treturn (\n\t\tisString( value ) ||\n\t\tisSymbol( value ) ||\n\t\tisNonNegativeInteger( value )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isPropertyKey;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether a value is a property key.\n*\n* @module @stdlib/assert/is-property-key\n*\n* @example\n* var isPropertyKey = require( '@stdlib/assert/is-property-key' );\n*\n* var bool = isPropertyKey( 'beep' );\n* // returns true\n*\n* bool = isPropertyKey( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// VARIABLES //\n\nvar isProtoOf = Object.prototype.isPrototypeOf;\nvar format = require( '@stdlib/string/format' );\n\n\n// MAIN //\n\n/**\n* Tests if an object's prototype chain contains a provided prototype.\n*\n* @param {*} value - value to test\n* @param {(Object|Function)} proto - prototype\n* @throws {TypeError} second argument must be an object and not null\n* @returns {boolean} boolean indicating if a provided prototype exists in a prototype chain\n*\n* @example\n* var inherit = require( '@stdlib/utils/inherit' );\n*\n* function Foo() {\n* return this;\n* }\n*\n* function Bar() {\n* return this;\n* }\n* inherit( Bar, Foo );\n*\n* var bar = new Bar();\n*\n* var bool = isPrototypeOf( bar, Foo.prototype );\n* // returns true\n*/\nfunction isPrototypeOf( value, proto ) { // eslint-disable-line stdlib/no-redeclare\n\tvar type = typeof proto;\n\tif (\n\t\tproto === null ||\n\t\t(type !== 'object' && type !== 'function')\n\t) {\n\t\tthrow new TypeError( format( 'invalid argument. Second argument must be either an object (except null) or a function. Value: `%s`.', proto ) );\n\t}\n\ttype = typeof value;\n\tif (\n\t\tvalue === null ||\n\t\t(type !== 'object' && type !== 'function')\n\t) {\n\t\treturn false;\n\t}\n\treturn isProtoOf.call( proto, value );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isPrototypeOf;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if an object's prototype chain contains a provided prototype.\n*\n* @module @stdlib/assert/is-prototype-of\n*\n* @example\n* var inherit = require( '@stdlib/utils/inherit' );\n* var isPrototypeOf = require( '@stdlib/assert/is-prototype-of' );\n*\n* function Foo() {\n* return this;\n* }\n*\n* function Bar() {\n* return this;\n* }\n* inherit( Bar, Foo );\n*\n* var bar = new Bar();\n*\n* var bool = isPrototypeOf( bar, Foo.prototype );\n* // returns true\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar getPrototypeOf = require( '@stdlib/utils/get-prototype-of' );\nvar typeOf = require( '@stdlib/utils/type-of' );\nvar isError = require( './../../is-error' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a `RangeError` object.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is a `RangeError` object\n*\n* @example\n* var bool = isRangeError( new RangeError( 'beep' ) );\n* // returns true\n*\n* @example\n* var bool = isRangeError( {} );\n* // returns false\n*/\nfunction isRangeError( value ) {\n\tif ( typeof value !== 'object' || value === null ) {\n\t\treturn false;\n\t}\n\t// Check for `RangeError` objects from the same realm (same Node.js `vm` or same `Window` object)...\n\tif ( value instanceof RangeError ) {\n\t\treturn true;\n\t}\n\t// All `RangeError` objects are `Error` objects...\n\tif ( isError( value ) ) {\n\t\t// Walk the prototype tree until we find the desired constructor...\n\t\twhile ( value ) {\n\t\t\tif ( typeOf( value ) === 'rangeerror' ) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\tvalue = getPrototypeOf( value );\n\t\t}\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isRangeError;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a `RangeError` object.\n*\n* @module @stdlib/assert/is-range-error\n*\n* @example\n* var isRangeError = require( '@stdlib/assert/is-range-error' );\n*\n* var bool = isRangeError( new RangeError( 'beep' ) );\n* // returns true\n*\n* bool = isRangeError( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar propertyDescriptor = require( '@stdlib/utils/property-descriptor' );\n\n\n// MAIN //\n\n/**\n* Tests if an object's own property is read-only.\n*\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object property is read-only\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': true,\n* 'writable': false,\n* 'value': true\n* });\n*\n* var bool = isReadOnlyProperty( obj, 'boop' );\n* // returns false\n*\n* bool = isReadOnlyProperty( obj, 'beep' );\n* // returns true\n*/\nfunction isReadOnlyProperty( value, property ) {\n\tvar desc = propertyDescriptor( value, property );\n\treturn (\n\t\tdesc !== null &&\n\t\tdesc.configurable === false &&\n\t\t(\n\t\t\t// Data descriptor:\n\t\t\tdesc.writable === false ||\n\n\t\t\t// Accessor descriptor:\n\t\t\t(\n\t\t\t\ttypeof desc.get === 'function' &&\n\t\t\t\tdesc.set === void 0\n\t\t\t)\n\t\t)\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isReadOnlyProperty;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object's own property is read-only.\n*\n* @module @stdlib/assert/is-read-only-property\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n* var isReadOnlyProperty = require( '@stdlib/assert/is-read-only-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': true,\n* 'writable': false,\n* 'value': true\n* });\n*\n* var bool = isReadOnlyProperty( obj, 'boop' );\n* // returns false\n*\n* bool = isReadOnlyProperty( obj, 'beep' );\n* // returns true\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar propertyDescriptorIn = require( '@stdlib/utils/property-descriptor-in' );\n\n\n// MAIN //\n\n/**\n* Tests if an object's own or inherited property is read-only.\n*\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object property is read-only\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': true,\n* 'writable': false,\n* 'value': true\n* });\n*\n* var bool = isReadOnlyPropertyIn( obj, 'boop' );\n* // returns false\n*\n* bool = isReadOnlyPropertyIn( obj, 'beep' );\n* // returns true\n*/\nfunction isReadOnlyPropertyIn( value, property ) {\n\tvar desc = propertyDescriptorIn( value, property );\n\treturn (\n\t\tdesc !== null &&\n\t\tdesc.configurable === false &&\n\t\t(\n\t\t\t// Data descriptor:\n\t\t\tdesc.writable === false ||\n\n\t\t\t// Accessor descriptor:\n\t\t\t(\n\t\t\t\ttypeof desc.get === 'function' &&\n\t\t\t\tdesc.set === void 0\n\t\t\t)\n\t\t)\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isReadOnlyPropertyIn;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object's own or inherited property is read-only.\n*\n* @module @stdlib/assert/is-read-only-property-in\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n* var isReadOnlyPropertyIn = require( '@stdlib/assert/is-read-only-property-in' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': true,\n* 'writable': false,\n* 'value': true\n* });\n*\n* var bool = isReadOnlyPropertyIn( obj, 'boop' );\n* // returns false\n*\n* bool = isReadOnlyPropertyIn( obj, 'beep' );\n* // returns true\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar propertyDescriptor = require( '@stdlib/utils/property-descriptor' );\n\n\n// MAIN //\n\n/**\n* Tests if an object's own property is readable and writable.\n*\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object property is readable and writable\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* function setter( v ) {\n* obj.boop = v;\n* }\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': false,\n* 'set': setter\n* });\n*\n* var bool = isReadWriteProperty( obj, 'boop' );\n* // returns true\n*\n* bool = isReadWriteProperty( obj, 'beep' );\n* // returns false\n*/\nfunction isReadWriteProperty( value, property ) {\n\tvar desc = propertyDescriptor( value, property );\n\treturn (\n\t\tdesc !== null &&\n\t\t(\n\t\t\t// Data descriptor:\n\t\t\tdesc.writable === true ||\n\n\t\t\t// Accessor descriptor:\n\t\t\t(\n\t\t\t\ttypeof desc.get === 'function' &&\n\t\t\t\ttypeof desc.set === 'function'\n\t\t\t)\n\t\t)\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isReadWriteProperty;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object's own property is readable and writable.\n*\n* @module @stdlib/assert/is-read-write-property\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n* var isReadWriteProperty = require( '@stdlib/assert/is-read-write-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* function setter( v ) {\n* obj.boop = v;\n* }\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': false,\n* 'set': setter\n* });\n*\n* var bool = isReadWriteProperty( obj, 'boop' );\n* // returns true\n*\n* bool = isReadWriteProperty( obj, 'beep' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar propertyDescriptorIn = require( '@stdlib/utils/property-descriptor-in' );\n\n\n// MAIN //\n\n/**\n* Tests if an object's own or inherited property is readable and writable.\n*\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object property is readable and writable\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* function setter( v ) {\n* obj.boop = v;\n* }\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': false,\n* 'set': setter\n* });\n*\n* var bool = isReadWritePropertyIn( obj, 'boop' );\n* // returns true\n*\n* bool = isReadWritePropertyIn( obj, 'beep' );\n* // returns false\n*/\nfunction isReadWritePropertyIn( value, property ) {\n\tvar desc = propertyDescriptorIn( value, property );\n\treturn (\n\t\tdesc !== null &&\n\t\t(\n\t\t\t// Data descriptor:\n\t\t\tdesc.writable === true ||\n\n\t\t\t// Accessor descriptor:\n\t\t\t(\n\t\t\t\ttypeof desc.get === 'function' &&\n\t\t\t\ttypeof desc.set === 'function'\n\t\t\t)\n\t\t)\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isReadWritePropertyIn;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object's own or inherited property is readable and writable.\n*\n* @module @stdlib/assert/is-read-write-property-in\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n* var isReadWritePropertyIn = require( '@stdlib/assert/is-read-write-property-in' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* function setter( v ) {\n* obj.boop = v;\n* }\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': false,\n* 'set': setter\n* });\n*\n* var bool = isReadWritePropertyIn( obj, 'boop' );\n* // returns true\n*\n* bool = isReadWritePropertyIn( obj, 'beep' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar propertyDescriptor = require( '@stdlib/utils/property-descriptor' );\n\n\n// MAIN //\n\n/**\n* Tests if an object's own property is readable.\n*\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object property is readable\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* function setter( v ) {\n* obj.boop = v;\n* }\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': false,\n* 'set': setter\n* });\n*\n* var bool = isReadableProperty( obj, 'boop' );\n* // returns true\n*\n* bool = isReadableProperty( obj, 'beep' );\n* // returns false\n*/\nfunction isReadableProperty( value, property ) {\n\tvar desc = propertyDescriptor( value, property );\n\treturn (\n\t\tdesc !== null &&\n\t\t(\n\t\t\tdesc.writable !== void 0 || // data descriptor\n\t\t\ttypeof desc.get === 'function' // accessor descriptor\n\t\t)\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isReadableProperty;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object's own property is readable.\n*\n* @module @stdlib/assert/is-readable-property\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n* var isReadableProperty = require( '@stdlib/assert/is-readable-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* function setter( v ) {\n* obj.boop = v;\n* }\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': false,\n* 'set': setter\n* });\n*\n* var bool = isReadableProperty( obj, 'boop' );\n* // returns true\n*\n* bool = isReadableProperty( obj, 'beep' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar propertyDescriptorIn = require( '@stdlib/utils/property-descriptor-in' );\n\n\n// MAIN //\n\n/**\n* Tests if an object's own or inherited property is readable.\n*\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object property is readable\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* function setter( v ) {\n* obj.boop = v;\n* }\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': false,\n* 'set': setter\n* });\n*\n* var bool = isReadablePropertyIn( obj, 'boop' );\n* // returns true\n*\n* bool = isReadablePropertyIn( obj, 'beep' );\n* // returns false\n*/\nfunction isReadablePropertyIn( value, property ) {\n\tvar desc = propertyDescriptorIn( value, property );\n\treturn (\n\t\tdesc !== null &&\n\t\t(\n\t\t\tdesc.writable !== void 0 || // data descriptor\n\t\t\ttypeof desc.get === 'function' // accessor descriptor\n\t\t)\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isReadablePropertyIn;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object's own or inherited property is readable.\n*\n* @module @stdlib/assert/is-readable-property-in\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n* var isReadablePropertyIn = require( '@stdlib/assert/is-readable-property-in' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* function setter( v ) {\n* obj.boop = v;\n* }\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': false,\n* 'set': setter\n* });\n*\n* var bool = isReadablePropertyIn( obj, 'boop' );\n* // returns true\n*\n* bool = isReadablePropertyIn( obj, 'beep' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar getPrototypeOf = require( '@stdlib/utils/get-prototype-of' );\nvar typeOf = require( '@stdlib/utils/type-of' );\nvar isError = require( './../../is-error' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a `ReferenceError` object.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is a `ReferenceError` object\n*\n* @example\n* var bool = isReferenceError( new ReferenceError( 'beep' ) );\n* // returns true\n*\n* @example\n* var bool = isReferenceError( {} );\n* // returns false\n*/\nfunction isReferenceError( value ) {\n\tif ( typeof value !== 'object' || value === null ) {\n\t\treturn false;\n\t}\n\t// Check for `ReferenceError` objects from the same realm (same Node.js `vm` or same `Window` object)...\n\tif ( value instanceof ReferenceError ) {\n\t\treturn true;\n\t}\n\t// All `ReferenceError` objects are `Error` objects...\n\tif ( isError( value ) ) {\n\t\t// Walk the prototype tree until we find the desired constructor...\n\t\twhile ( value ) {\n\t\t\tif ( typeOf( value ) === 'referenceerror' ) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\tvalue = getPrototypeOf( value );\n\t\t}\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isReferenceError;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a `ReferenceError` object.\n*\n* @module @stdlib/assert/is-reference-error\n*\n* @example\n* var isReferenceError = require( '@stdlib/assert/is-reference-error' );\n*\n* var bool = isReferenceError( new ReferenceError( 'beep' ) );\n* // returns true\n*\n* bool = isReferenceError( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\nvar RE = require( '@stdlib/regexp/regexp' ).REGEXP;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a regular expression string.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is a regular expression string\n*\n* @example\n* var bool = isRegExpString( '/beep/' );\n* // returns true\n*\n* @example\n* var bool = isRegExpString( '/beep/gim' );\n* // returns true\n*\n* @example\n* var bool = isRegExpString( 'beep' );\n* // returns false\n*\n* @example\n* var bool = isRegExpString( '' );\n* // returns false\n*\n* @example\n* var bool = isRegExpString( null );\n* // returns false\n*/\nfunction isRegExpString( value ) {\n\treturn isString( value ) && RE.test( value );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isRegExpString;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a regular expression string.\n*\n* @module @stdlib/assert/is-regexp-string\n*\n* @example\n* var isRegExpString = require( '@stdlib/assert/is-regexp-string' );\n*\n* var bool = isRegExpString( '/beep/' );\n* // returns true\n*\n* bool = isRegExpString( 'beep' );\n* // returns false\n*\n* bool = isRegExpString( '' );\n* // returns false\n*\n* bool = isRegExpString( null );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\nvar isAbsolutePath = require( './../../is-absolute-path' ).posix;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a POSIX relative path.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a POSIX relative path\n*\n* @example\n* var bool = isRelativePath( './foo/bar/baz' );\n* // returns true\n*\n* @example\n* var bool = isRelativePath( '/foo/../bar/baz' );\n* // returns false\n*/\nfunction isRelativePath( value ) {\n\treturn (\n\t\tisString( value ) &&\n\t\t!isAbsolutePath( value )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isRelativePath;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\nvar isAbsolutePath = require( './../../is-absolute-path' ).win32;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a Windows relative path.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a Windows relative path\n*\n* @example\n* var bool = isRelativePath( 'foo\\\\bar\\\\baz' );\n* // returns true\n*\n* @example\n* var bool = isRelativePath( 'C:\\\\foo\\\\..\\\\bar\\\\baz' );\n* // returns false\n*/\nfunction isRelativePath( value ) {\n\treturn (\n\t\tisString( value ) &&\n\t\t!isAbsolutePath( value )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isRelativePath;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a relative path.\n*\n* @module @stdlib/assert/is-relative-path\n*\n* @example\n* var IS_WINDOWS = require( '@stdlib/assert/is-windows' );\n* var isRelativePath = require( '@stdlib/assert/is-relative-path' );\n*\n* var bool;\n* if ( IS_WINDOWS ) {\n* bool = isRelativePath( 'foo\\\\bar\\\\baz' );\n* // returns true\n*\n* bool = isRelativePath( 'C:\\\\foo\\\\..\\\\bar\\\\baz' );\n* // returns false\n* } else {\n* bool = isRelativePath( './foo/bar/baz' );\n* // returns true\n*\n* bool = isRelativePath( '/foo/../bar/baz' );\n* // returns false\n* }\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar IS_WINDOWS = require( './../../is-windows' );\nvar isRelativePathPosix = require( './posix.js' );\nvar isRelativePathWin32 = require( './win32.js' );\n\n\n// MAIN //\n\nvar isRelativePath;\nif ( IS_WINDOWS ) {\n\tisRelativePath = isRelativePathWin32;\n} else {\n\tisRelativePath = isRelativePathPosix;\n}\nsetReadOnly( isRelativePath, 'posix', isRelativePathPosix );\nsetReadOnly( isRelativePath, 'win32', isRelativePathWin32 );\n\n\n// EXPORTS //\n\nmodule.exports = isRelativePath;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\n\n\n// VARIABLES //\n\n/**\n* Matches parts of a URI according to RFC 3986.\n*\n* ```text\n* : [ ? ] [ # ]\n* ```\n*\n* Regular expression: `/(?:([^:\\/?#]+):)?(?:\\/\\/([^\\/?#]*))?([^?#]*)(?:\\?[^#]*)?(?:#.*)?/`\n*\n* - `(?:([^:\\/?#]+):)`\n*\n* - match the scheme, including the `:`, but only capture the scheme name\n*\n* - `?`\n*\n* - match the scheme zero or one times\n*\n* - `(?:\\/\\/([^\\/?#]*))`\n*\n* - match the hierarchical part which is everything which is not a `/`, `#`, or `?`, but only capture whatever comes after the `//`\n*\n* - `?`\n*\n* - match the hierarchical part zero or one times\n*\n* - `([^?#]*)`\n*\n* - capture everything (the path) until meeting a `?` or `#`\n*\n* - `(?:\\?[^#]*)`\n*\n* - match, but don't capture, a query\n*\n* - `?`\n*\n* - match the query zero or one times\n*\n* - `(?:#.*)`\n*\n* - match, but don't capture, a fragment\n*\n* - `?`\n*\n* - match the fragment zero or one times\n*\n* @private\n* @constant\n* @type {RegExp}\n* @default /(?:([^:\\/?#]+):)?(?:\\/\\/([^\\/?#]*))?([^?#]*)(?:\\?[^#]*)?(?:#.*)?/\n*/\nvar RE_URI = /(?:([^:\\/?#]+):)?(?:\\/\\/([^\\/?#]*))?([^?#]*)(?:\\?[^#]*)?(?:#.*)?/; // eslint-disable-line no-useless-escape\n\n// Illegal characters (anything which is not in between the square brackets):\nvar RE_ILLEGALS = /[^a-z0-9:\\/?#\\[\\]@!$&'()*+,;=.\\-_~%]/i; // eslint-disable-line no-useless-escape\n\n// Incomplete HEX escapes:\nvar RE_HEX1 = /%[^0-9a-f]/i;\nvar RE_HEX2 = /%[0-9a-f](:?[^0-9a-f]|$)/i;\n\n// If authority is not present, path must not begin with '//'\nvar RE_PATH = /^\\/\\//;\n\n// Scheme must begin with a letter, then consist of letters, digits, '+', '.', or '-' => e.g., 'http', 'https', 'ftp'\nvar RE_SCHEME = /^[a-z][a-z0-9+\\-.]*$/;\n\n\n// MAIN //\n\n/**\n* Tests whether a value is a relative URI.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is a relative URI\n*\n* @example\n* var bool = isRelativeURI( './beep/boop' );\n* // returns true\n*\n* @example\n* var bool = isRelativeURI( '/dashboard/admin' );\n* // returns true\n*\n* @example\n* var bool = isRelativeURI( 'https://wikipedia.org' );\n* // returns false\n*\n* @example\n* var bool = isRelativeURI( null );\n* // returns false\n*/\nfunction isRelativeURI( value ) {\n\tvar authority;\n\tvar scheme;\n\tvar parts;\n\tvar path;\n\tif ( !isString( value ) ) {\n\t\treturn false;\n\t}\n\t// Check for illegal characters:\n\tif ( RE_ILLEGALS.test( value ) ) {\n\t\treturn false;\n\t}\n\t// Check for incomplete HEX escapes:\n\tif (\n\t\tRE_HEX1.test( value ) ||\n\t\tRE_HEX2.test( value )\n\t) {\n\t\treturn false;\n\t}\n\t// Split the string into various URI components:\n\tparts = value.match( RE_URI );\n\tscheme = parts[ 1 ];\n\tauthority = parts[ 2 ];\n\tpath = parts[ 3 ];\n\n\tif (\n\t\t!scheme ||\n\t\t!scheme.length ||\n\t\t!RE_SCHEME.test( scheme.toLowerCase() )\n\t) {\n\t\treturn true;\n\t}\n\tif (\n\t\t!authority &&\n\t\tRE_PATH.test( path )\n\t) {\n\t\treturn true;\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isRelativeURI;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether a value is a relative URI.\n*\n* @module @stdlib/assert/is-relative-uri\n*\n* @example\n* var isRelativeURI = require( '@stdlib/assert/is-relative-uri' );\n*\n* var bool = isRelativeURI( 'foo/bar' );\n* // returns true\n*\n* bool = isRelativeURI( 'https://example.com/' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isPrimitive;\nvar isSafeInt = require( '@stdlib/math/base/assert/is-safe-integer' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number primitive having a safe integer value.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number primitive having a safe integer value\n*\n* @example\n* var bool = isSafeInteger( -3.0 );\n* // returns true\n*\n* @example\n* var bool = isSafeInteger( new Number( -3.0 ) );\n* // returns false\n*/\nfunction isSafeInteger( value ) {\n\treturn (\n\t\tisNumber( value ) &&\n\t\tisSafeInt( value )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSafeInteger;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNumber = require( './../../is-number' ).isObject;\nvar isSafeInt = require( '@stdlib/math/base/assert/is-safe-integer' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number object having a safe integer value.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number object having a safe integer value\n*\n* @example\n* var bool = isSafeInteger( 3.0 );\n* // returns false\n*\n* @example\n* var bool = isSafeInteger( new Number( 3.0 ) );\n* // returns true\n*/\nfunction isSafeInteger( value ) {\n\treturn (\n\t\tisNumber( value ) &&\n\t\tisSafeInt( value.valueOf() )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSafeInteger;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a safe integer.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a safe integer\n*\n* @example\n* var bool = isSafeInteger( 5.0 );\n* // returns true\n*\n* @example\n* var bool = isSafeInteger( new Number( 5.0 ) );\n* // returns true\n*\n* @example\n* var bool = isSafeInteger( 2.0e300 );\n* // returns false\n*\n* @example\n* var bool = isSafeInteger( -3.14 );\n* // returns false\n*\n* @example\n* var bool = isSafeInteger( null );\n* // returns false\n*/\nfunction isSafeInteger( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSafeInteger;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a safe integer.\n*\n* @module @stdlib/assert/is-safe-integer\n*\n* @example\n* var isSafeInteger = require( '@stdlib/assert/is-safe-integer' );\n*\n* var bool = isSafeInteger( 5.0 );\n* // returns true\n*\n* bool = isSafeInteger( new Number( 5.0 ) );\n* // returns true\n*\n* bool = isSafeInteger( 2.0e200 );\n* // returns false\n*\n* bool = isSafeInteger( -3.14 );\n* // returns false\n*\n* bool = isSafeInteger( null );\n* // returns false\n*\n* @example\n* var isSafeInteger = require( '@stdlib/assert/is-safe-integer' ).isPrimitive;\n*\n* var bool = isSafeInteger( -3.0 );\n* // returns true\n*\n* bool = isSafeInteger( new Number( -3.0 ) );\n* // returns false\n*\n* @example\n* var isSafeInteger = require( '@stdlib/assert/is-safe-integer' ).isObject;\n*\n* var bool = isSafeInteger( 3.0 );\n* // returns false\n*\n* bool = isSafeInteger( new Number( 3.0 ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array-like object containing only safe integers.\n*\n* @module @stdlib/assert/is-safe-integer-array\n*\n* @example\n* var isSafeIntegerArray = require( '@stdlib/assert/is-safe-integer-array' );\n*\n* var bool = isSafeIntegerArray( [ -3.0, new Number(0.0), 2.0 ] );\n* // returns true\n*\n* bool = isSafeIntegerArray( [ -3.0, '3.0' ] );\n* // returns false\n*\n* @example\n* var isSafeIntegerArray = require( '@stdlib/assert/is-safe-integer-array' ).primitives;\n*\n* var bool = isSafeIntegerArray( [ -1.0, 10.0 ] );\n* // returns true\n*\n* bool = isSafeIntegerArray( [ -1.0, 0.0, 5.0 ] );\n* // returns true\n*\n* bool = isSafeIntegerArray( [ -3.0, new Number(-1.0) ] );\n* // returns false\n*\n* @example\n* var isSafeIntegerArray = require( '@stdlib/assert/is-safe-integer-array' ).objects;\n*\n* var bool = isSafeIntegerArray( [ new Number(1.0), new Number(3.0) ] );\n* // returns true\n*\n* bool = isSafeIntegerArray( [ -1.0, 0.0, 3.0 ] );\n* // returns false\n*\n* bool = isSafeIntegerArray( [ 3.0, new Number(-1.0) ] );\n* // returns false\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar arrayfun = require( './../../tools/array-like-function' );\nvar isSafeInteger = require( './../../is-safe-integer' );\n\n\n// VARIABLES //\n\nvar isPrimitiveArray = arrayfun( isSafeInteger.isPrimitive );\nvar isObjectArray = arrayfun( isSafeInteger.isObject );\n\n\n// MAIN //\n\nvar isSafeIntegerArray = arrayfun( isSafeInteger );\nsetReadOnly( isSafeIntegerArray, 'primitives', isPrimitiveArray );\nsetReadOnly( isSafeIntegerArray, 'objects', isObjectArray );\n\n\n// EXPORTS //\n\nmodule.exports = isSafeIntegerArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2024 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isComplex64 = require( './../../is-complex64' );\nvar isSameValuef = require( '@stdlib/complex/base/assert/is-same-valuef' );\n\n\n// MAIN //\n\n/**\n* Tests if two arguments are both single-precision complex floating-point numbers and have the same value.\n*\n* @param {*} v1 - first value\n* @param {*} v2 - second value\n* @returns {boolean} boolean result\n*\n* @example\n* var Complex64 = require( '@stdlib/complex/float32' );\n*\n* var x = new Complex64( 1.0, 2.0 );\n* var y = new Complex64( 1.0, 2.0 );\n*\n* var out = isSameComplex64( x, y );\n* // returns true\n*\n* @example\n* var Complex64 = require( '@stdlib/complex/float32' );\n*\n* var x = new Complex64( 1.0, 2.0 );\n* var y = new Complex64( -1.0, -2.0 );\n*\n* var out = isSameComplex64( x, y );\n* // returns false\n*/\nfunction isSameComplex64( v1, v2 ) {\n\tif ( isComplex64( v1 ) && isComplex64( v2 ) ) {\n\t\treturn isSameValuef( v1, v2 );\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSameComplex64;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2024 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if two arguments are both single-precision complex floating-point numbers and have the same value.\n*\n* @module @stdlib/assert/is-same-complex64\n*\n* @example\n* var Complex64 = require( '@stdlib/complex/float32' );\n* var isSameComplex64 = require( '@stdlib/assert/is-same-complex64' );\n*\n* var x = new Complex64( 1.0, 2.0 );\n* var y = new Complex64( 1.0, 2.0 );\n*\n* var out = isSameComplex64( x, y );\n* // returns true\n*\n* @example\n* var Complex64 = require( '@stdlib/complex/float32' );\n* var isSameComplex64 = require( '@stdlib/assert/is-same-complex64' );\n*\n* var x = new Complex64( 1.0, 2.0 );\n* var y = new Complex64( -1.0, -2.0 );\n*\n* var out = isSameComplex64( x, y );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2024 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isComplex64Array = require( './../../is-complex64array' );\nvar hasSameValues = require( '@stdlib/array/base/assert/has-same-values' );\n\n\n// MAIN //\n\n/**\n* Tests if two arguments are both Complex64Arrays and have the same values.\n*\n* @param {*} v1 - first value\n* @param {*} v2 - second value\n* @returns {boolean} boolean result\n*\n* @example\n* var Complex64Array = require( '@stdlib/array/complex64' );\n*\n* var x = new Complex64Array( [ 1.0, 2.0, 3.0, 4.0 ] );\n* var y = new Complex64Array( [ 1.0, 2.0, 3.0, 4.0 ] );\n*\n* var out = isSameComplex64Array( x, y );\n* // returns true\n*\n* @example\n* var Complex64Array = require( '@stdlib/array/complex64' );\n*\n* var x = new Complex64Array( [ 1.0, 2.0, 3.0, 4.0 ] );\n* var y = new Complex64Array( [ 1.0, 2.0, 4.0, 4.0 ] );\n*\n* var out = isSameComplex64Array( x, y );\n* // returns false\n*/\nfunction isSameComplex64Array( v1, v2 ) {\n\tif ( isComplex64Array( v1 ) && isComplex64Array( v2 ) ) {\n\t\treturn hasSameValues( v1, v2 );\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSameComplex64Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2024 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if two arguments are both Complex64Arrays and have the same values.\n*\n* @module @stdlib/assert/is-same-complex64array\n*\n* @example\n* var Complex64Array = require( '@stdlib/array/complex64' );\n* var isSameComplex64Array = require( '@stdlib/assert/is-same-complex64array' );\n*\n* var x = new Complex64Array( [ 1.0, 2.0, 3.0, 4.0 ] );\n* var y = new Complex64Array( [ 1.0, 2.0, 3.0, 4.0 ] );\n*\n* var out = isSameComplex64Array( x, y );\n* // returns true\n*\n* @example\n* var Complex64Array = require( '@stdlib/array/complex64' );\n* var isSameComplex64Array = require( '@stdlib/assert/is-same-complex64array' );\n*\n* var x = new Complex64Array( [ 1.0, 2.0, 3.0, 4.0 ] );\n* var y = new Complex64Array( [ 1.0, 2.0, 4.0, 4.0 ] );\n*\n* var out = isSameComplex64Array( x, y );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2024 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isComplex128 = require( './../../is-complex128' );\nvar isSameValue = require( '@stdlib/complex/base/assert/is-same-value' );\n\n\n// MAIN //\n\n/**\n* Tests if two arguments are both double-precision complex floating-point numbers and have the same value.\n*\n* @param {*} v1 - first value\n* @param {*} v2 - second value\n* @returns {boolean} boolean result\n*\n* @example\n* var Complex128 = require( '@stdlib/complex/float64' );\n*\n* var x = new Complex128( 1.0, 2.0 );\n* var y = new Complex128( 1.0, 2.0 );\n*\n* var out = isSameComplex128( x, y );\n* // returns true\n*\n* @example\n* var Complex128 = require( '@stdlib/complex/float64' );\n*\n* var x = new Complex128( 1.0, 2.0 );\n* var y = new Complex128( -1.0, -2.0 );\n*\n* var out = isSameComplex128( x, y );\n* // returns false\n*/\nfunction isSameComplex128( v1, v2 ) {\n\tif ( isComplex128( v1 ) && isComplex128( v2 ) ) {\n\t\treturn isSameValue( v1, v2 );\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSameComplex128;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2024 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if two arguments are both double-precision complex floating-point numbers and have the same value.\n*\n* @module @stdlib/assert/is-same-complex128\n*\n* @example\n* var Complex128 = require( '@stdlib/complex/float64' );\n* var isSameComplex128 = require( '@stdlib/assert/is-same-complex128' );\n*\n* var x = new Complex128( 1.0, 2.0 );\n* var y = new Complex128( 1.0, 2.0 );\n*\n* var out = isSameComplex128( x, y );\n* // returns true\n*\n* @example\n* var Complex128 = require( '@stdlib/complex/float64' );\n* var isSameComplex128 = require( '@stdlib/assert/is-same-complex128' );\n*\n* var x = new Complex128( 1.0, 2.0 );\n* var y = new Complex128( -1.0, -2.0 );\n*\n* var out = isSameComplex128( x, y );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2024 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isComplex128Array = require( './../../is-complex128array' );\nvar hasSameValues = require( '@stdlib/array/base/assert/has-same-values' );\n\n\n// MAIN //\n\n/**\n* Tests if two arguments are both Complex128Arrays and have the same values.\n*\n* @param {*} v1 - first value\n* @param {*} v2 - second value\n* @returns {boolean} boolean result\n*\n* @example\n* var Complex128Array = require( '@stdlib/array/complex128' );\n*\n* var x = new Complex128Array( [ 1.0, 2.0, 3.0, 4.0 ] );\n* var y = new Complex128Array( [ 1.0, 2.0, 3.0, 4.0 ] );\n*\n* var out = isSameComplex128Array( x, y );\n* // returns true\n*\n* @example\n* var Complex128Array = require( '@stdlib/array/complex128' );\n*\n* var x = new Complex128Array( [ 1.0, 2.0, 3.0, 4.0 ] );\n* var y = new Complex128Array( [ 1.0, 2.0, 4.0, 4.0 ] );\n*\n* var out = isSameComplex128Array( x, y );\n* // returns false\n*/\nfunction isSameComplex128Array( v1, v2 ) {\n\tif ( isComplex128Array( v1 ) && isComplex128Array( v2 ) ) {\n\t\treturn hasSameValues( v1, v2 );\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSameComplex128Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2024 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if two arguments are both Complex128Arrays and have the same values.\n*\n* @module @stdlib/assert/is-same-complex128array\n*\n* @example\n* var Complex128Array = require( '@stdlib/array/complex128' );\n* var isSameComplex128Array = require( '@stdlib/assert/is-same-complex128array' );\n*\n* var x = new Complex128Array( [ 1.0, 2.0, 3.0, 4.0 ] );\n* var y = new Complex128Array( [ 1.0, 2.0, 3.0, 4.0 ] );\n*\n* var out = isSameComplex128Array( x, y );\n* // returns true\n*\n* @example\n* var Complex128Array = require( '@stdlib/array/complex128' );\n* var isSameComplex128Array = require( '@stdlib/assert/is-same-complex128array' );\n*\n* var x = new Complex128Array( [ 1.0, 2.0, 3.0, 4.0 ] );\n* var y = new Complex128Array( [ 1.0, 2.0, 4.0, 4.0 ] );\n*\n* var out = isSameComplex128Array( x, y );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2024 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isFloat32Array = require( './../../is-float32array' );\nvar hasSameValues = require( '@stdlib/array/base/assert/has-same-values' );\n\n\n// MAIN //\n\n/**\n* Tests if two arguments are both Float32Arrays and have the same values.\n*\n* @param {*} v1 - first value\n* @param {*} v2 - second value\n* @returns {boolean} boolean result\n*\n* @example\n* var Float32Array = require( '@stdlib/array/float32' );\n*\n* var x = new Float32Array( [ 1.0, 2.0, 3.0 ] );\n* var y = new Float32Array( [ 1.0, 2.0, 3.0 ] );\n*\n* var out = isSameFloat32Array( x, y );\n* // returns true\n*\n* @example\n* var Float32Array = require( '@stdlib/array/float32' );\n*\n* var x = new Float32Array( [ 1.0, 2.0, 3.0 ] );\n* var y = new Float32Array( [ 1.0, 2.0, 4.0 ] );\n*\n* var out = isSameFloat32Array( x, y );\n* // returns false\n*/\nfunction isSameFloat32Array( v1, v2 ) {\n\tif ( isFloat32Array( v1 ) && isFloat32Array( v2 ) ) {\n\t\treturn hasSameValues( v1, v2 );\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSameFloat32Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2024 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if two arguments are both Float32Arrays and have the same values.\n*\n* @module @stdlib/assert/is-same-float32array\n*\n* @example\n* var Float32Array = require( '@stdlib/array/float32' );\n* var isSameFloat32Array = require( '@stdlib/assert/is-same-float32array' );\n*\n* var x = new Float32Array( [ 1.0, 2.0, 3.0 ] );\n* var y = new Float32Array( [ 1.0, 2.0, 3.0 ] );\n*\n* var out = isSameFloat32Array( x, y );\n* // returns true\n*\n* @example\n* var Float32Array = require( '@stdlib/array/float32' );\n* var isSameFloat32Array = require( '@stdlib/assert/is-same-float32array' );\n*\n* var x = new Float32Array( [ 1.0, 2.0, 3.0 ] );\n* var y = new Float32Array( [ 1.0, 2.0, 4.0 ] );\n*\n* var out = isSameFloat32Array( x, y );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2024 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isFloat64Array = require( './../../is-float64array' );\nvar hasSameValues = require( '@stdlib/array/base/assert/has-same-values' );\n\n\n// MAIN //\n\n/**\n* Tests if two arguments are both Float64Arrays and have the same values.\n*\n* @param {*} v1 - first value\n* @param {*} v2 - second value\n* @returns {boolean} boolean result\n*\n* @example\n* var Float64Array = require( '@stdlib/array/float64' );\n*\n* var x = new Float64Array( [ 1.0, 2.0, 3.0 ] );\n* var y = new Float64Array( [ 1.0, 2.0, 3.0 ] );\n*\n* var out = isSameFloat64Array( x, y );\n* // returns true\n*\n* @example\n* var Float64Array = require( '@stdlib/array/float64' );\n*\n* var x = new Float64Array( [ 1.0, 2.0, 3.0 ] );\n* var y = new Float64Array( [ 1.0, 2.0, 4.0 ] );\n*\n* var out = isSameFloat64Array( x, y );\n* // returns false\n*/\nfunction isSameFloat64Array( v1, v2 ) {\n\tif ( isFloat64Array( v1 ) && isFloat64Array( v2 ) ) {\n\t\treturn hasSameValues( v1, v2 );\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSameFloat64Array;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2024 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if two arguments are both Float64Arrays and have the same values.\n*\n* @module @stdlib/assert/is-same-float64array\n*\n* @example\n* var Float64Array = require( '@stdlib/array/float64' );\n* var isSameFloat64Array = require( '@stdlib/assert/is-same-float64array' );\n*\n* var x = new Float64Array( [ 1.0, 2.0, 3.0 ] );\n* var y = new Float64Array( [ 1.0, 2.0, 3.0 ] );\n*\n* var out = isSameFloat64Array( x, y );\n* // returns true\n*\n* @example\n* var Float64Array = require( '@stdlib/array/float64' );\n* var isSameFloat64Array = require( '@stdlib/assert/is-same-float64array' );\n*\n* var x = new Float64Array( [ 1.0, 2.0, 3.0 ] );\n* var y = new Float64Array( [ 1.0, 2.0, 4.0 ] );\n*\n* var out = isSameFloat64Array( x, y );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar nativeClass = require( '@stdlib/utils/native-class' );\n\n\n// MAIN //\n\n/**\n* Tests if two arguments have the same native class.\n*\n* @param {*} a - first input value\n* @param {*} b - second input value\n* @returns {boolean} boolean indicating whether two arguments have the same native class\n*\n* @example\n* var bool = isSameNativeClass( 3.14, new Number( 3.14 ) );\n* // returns true\n*\n* @example\n* var bool = isSameNativeClass( 'beep', 'boop' );\n* // returns true\n*\n* @example\n* var bool = isSameNativeClass( [], {} );\n* // returns false\n*/\nfunction isSameNativeClass( a, b ) {\n\treturn ( nativeClass( a ) === nativeClass( b ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSameNativeClass;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if two arguments have the same native class.\n*\n* @module @stdlib/assert/is-same-native-class\n*\n* @example\n* var isSameNativeClass = require( '@stdlib/assert/is-same-native-class' );\n*\n* var bool = isSameNativeClass( 'beep', 'boop' );\n* // returns true\n*\n* bool = isSameNativeClass( [], {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\n/**\n* Tests if two arguments have the same type.\n*\n* ## Notes\n*\n* - The function uses the `typeof` operator to test for the same type.\n*\n* @param {*} a - first input value\n* @param {*} b - second input value\n* @returns {boolean} boolean indicating whether two arguments have the same type\n*\n* @example\n* var bool = isSameType( true, true );\n* // returns true\n*\n* @example\n* var bool = isSameType( 3.14, 3.14 );\n* // returns true\n*\n* @example\n* var bool = isSameType( {}, [] );\n* // returns true\n*\n* @example\n* var bool = isSameType( NaN, NaN );\n* // returns true\n*\n* @example\n* var bool = isSameType( 0.0, '0.0' );\n* // returns false\n*/\nfunction isSameType( a, b ) {\n\treturn ( typeof a ) === ( typeof b );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSameType;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if two arguments have the same type.\n*\n* @module @stdlib/assert/is-same-type\n*\n* @example\n* var isSameType = require( '@stdlib/assert/is-same-type' );\n*\n* var bool = isSameType( true, true );\n* // returns true\n*\n* bool = isSameType( 3.14, -3.14 );\n* // returns true\n*\n* bool = isSameType( {}, [] );\n* // returns true\n*\n* bool = isSameType( NaN, NaN );\n* // returns true\n*\n* bool = isSameType( '0.0', 0.0 );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isSameComplexValue = require( '@stdlib/complex/base/assert/is-same-value' );\nvar isComplexLike = require( './../../is-complex-like' );\n\n\n// MAIN //\n\n/**\n* Tests if two arguments are the same value.\n*\n* ## Notes\n*\n* - The function implements the [SameValue Algorithm][ecma-262-same-value-algorithm] (as specified in ECMAScript 5), with support for complex number objects.\n* - In contrast to the strict equality operator `===`, `-0` and `+0` are distinguishable and `NaNs` are the same.\n*\n* [ecma-262-same-value-algorithm]: http://ecma-international.org/ecma-262/5.1/#sec-9.12\n*\n* @param {*} a - first input value\n* @param {*} b - second input value\n* @returns {boolean} boolean indicating whether two arguments are the same value\n*\n* @example\n* var bool = isSameValue( true, true );\n* // returns true\n*\n* @example\n* var bool = isSameValue( 3.14, 3.14 );\n* // returns true\n*\n* @example\n* var bool = isSameValue( {}, {} );\n* // returns false\n*\n* @example\n* var bool = isSameValue( -0.0, -0.0 );\n* // returns true\n*\n* @example\n* var bool = isSameValue( -0.0, 0.0 );\n* // returns false\n*\n* @example\n* var bool = isSameValue( NaN, NaN );\n* // returns true\n*\n* @example\n* var bool = isSameValue( [], [] );\n* // returns false\n*/\nfunction isSameValue( a, b ) {\n\tif ( a === b ) {\n\t\tif ( a === 0.0 ) {\n\t\t\treturn 1.0 / a === 1.0 / b; // handles +-0\n\t\t}\n\t\treturn true;\n\t}\n\tif ( a !== a && b !== b ) { // handles NaNs\n\t\treturn true;\n\t}\n\tif ( isComplexLike( a ) && isComplexLike( b ) ) {\n\t\treturn isSameComplexValue( a, b );\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSameValue;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if two arguments are the same value.\n*\n* @module @stdlib/assert/is-same-value\n*\n* @example\n* var isSameValue = require( '@stdlib/assert/is-same-value' );\n*\n* var bool = isSameValue( true, true );\n* // returns true\n*\n* bool = isSameValue( 3.14, 3.14 );\n* // returns true\n*\n* bool = isSameValue( {}, {} );\n* // returns false\n*\n* bool = isSameValue( -0.0, -0.0 );\n* // returns true\n*\n* bool = isSameValue( -0.0, 0.0 );\n* // returns false\n*\n* bool = isSameValue( NaN, NaN );\n* // returns true\n*\n* bool = isSameValue( [], [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isSameComplexValueZero = require( '@stdlib/complex/base/assert/is-same-value-zero' );\nvar isComplexLike = require( './../../is-complex-like' );\n\n\n// MAIN //\n\n/**\n* Tests if two arguments are the same value.\n*\n* ## Notes\n*\n* - The function implements the SameValueZero Algorithm used by `TypedArray` and `ArrayBuffer` constructors, `Map` and `Set` operations, `String.prototype.includes`, and `Array.prototype.includes` since ES2016, and includes support for complex number objects.\n* - In contrast to the strict equality operator `===`, `NaNs` are considered the same value.\n*\n* @param {*} a - first input value\n* @param {*} b - second input value\n* @returns {boolean} boolean indicating whether two arguments are the same value\n*\n* @example\n* var bool = isSameValueZero( true, true );\n* // returns true\n*\n* @example\n* var bool = isSameValueZero( 3.14, 3.14 );\n* // returns true\n*\n* @example\n* var bool = isSameValueZero( {}, {} );\n* // returns false\n*\n* @example\n* var bool = isSameValueZero( -0.0, -0.0 );\n* // returns true\n*\n* @example\n* var bool = isSameValueZero( -0.0, 0.0 );\n* // returns true\n*\n* @example\n* var bool = isSameValueZero( NaN, NaN );\n* // returns true\n*\n* @example\n* var bool = isSameValueZero( [], [] );\n* // returns false\n*/\nfunction isSameValueZero( a, b ) {\n\tif ( ( a === b ) || ( a !== a && b !== b ) ) { // handles NaNs\n\t\treturn true;\n\t}\n\tif ( isComplexLike( a ) && isComplexLike( b ) ) {\n\t\treturn isSameComplexValueZero( a, b );\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSameValueZero;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if two arguments are the same value.\n*\n* @module @stdlib/assert/is-same-value-zero\n*\n* @example\n* var isSameValueZero = require( '@stdlib/assert/is-same-value-zero' );\n*\n* var bool = isSameValueZero( true, true );\n* // returns true\n*\n* bool = isSameValueZero( 3.14, 3.14 );\n* // returns true\n*\n* bool = isSameValueZero( {}, {} );\n* // returns false\n*\n* bool = isSameValueZero( -0.0, -0.0 );\n* // returns true\n*\n* bool = isSameValueZero( -0.0, 0.0 );\n* // returns true\n*\n* bool = isSameValueZero( NaN, NaN );\n* // returns true\n*\n* bool = isSameValueZero( [], [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2022 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\nvar RE_SEMVER = require( '@stdlib/regexp/semver' ).REGEXP;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a semantic version string.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a provided value is a semantic version string\n*\n* @example\n* var bool = isSemVer( '1.0.0' );\n* // returns true\n*\n* @example\n* var bool = isSemVer( '1.0.0-alpha.1' );\n* // returns true\n*\n* @example\n* var bool = isSemVer( '0.1' );\n* // returns false\n*\n* @example\n* var bool = isSemVer( null );\n* // returns false\n*/\nfunction isSemVer( value ) {\n\treturn ( isString( value ) && RE_SEMVER.test( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSemVer;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2022 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a semantic version string.\n*\n* @module @stdlib/assert/is-semver\n*\n* @example\n* var isSemVer = require( '@stdlib/assert/is-semver' );\n*\n* var bool = isSemVer( '0.0.2' );\n* // returns true\n*\n* bool = isSemVer( 'foo' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isSquareMatrix = require( './../../is-square-matrix' );\nvar floor = require( '@stdlib/math/base/special/floor' );\nvar isOdd = require( '@stdlib/math/base/assert/is-odd' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a skew-centrosymmetric matrix.\n*\n* ## Notes\n*\n* - The implementation must rely on manually checking that \\\\(M_{ij} = -M_{N-i-1,N-j-1}\\\\), and, while element access is deterministic, no way exists to prevent cache misses outside of reordering the underlying matrix elements, thus incurring a larger performance penalty than just \"jumping around\" in a single pass.\n* - Worst case scenario: O(N^2).\n*\n* @param {*} v - value to test\n* @returns {boolean} boolean indicating if a value is a skew-centrosymmetric matrix\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n*\n* var arr = ndarray( 'generic', [ 2, 1, -1, -2 ], [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n* var bool = isSkewCentrosymmetricMatrix( arr );\n* // returns true\n*\n* bool = isSkewCentrosymmetricMatrix( [] );\n* // returns false\n*/\nfunction isSkewCentrosymmetricMatrix( v ) { // eslint-disable-line id-length\n\tvar m1;\n\tvar M;\n\tvar N;\n\tvar n;\n\tvar i;\n\tvar j;\n\tif ( !isSquareMatrix( v ) ) {\n\t\treturn false;\n\t}\n\tM = v.shape[ 0 ];\n\tN = floor( M/2.0 ); // corresponds to a row index + 1\n\tm1 = M - 1;\n\tfor ( i = 0; i < N; i++ ) {\n\t\tn = m1 - i;\n\t\tfor ( j = 0; j < M; j++ ) {\n\t\t\tif ( v.get( i, j ) !== -v.get( n, m1-j ) ) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t}\n\tif ( isOdd( M ) ) {\n\t\t// Only need to examine the first half of the row (including the center element) due to symmetry...\n\t\tfor ( j = 0; j <= N; j++ ) {\n\t\t\tif ( v.get( i, j ) !== -v.get( N, m1-j ) ) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t}\n\treturn true;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSkewCentrosymmetricMatrix;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a skew-centrosymmetric matrix.\n*\n* @module @stdlib/assert/is-skew-centrosymmetric-matrix\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n* var isSkewCentrosymmetricMatrix = require( '@stdlib/assert/is-skew-centrosymmetric-matrix' );\n*\n* var arr = ndarray( 'generic', [ 2, 1, -1, -2 ], [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n* var bool = isSkewCentrosymmetricMatrix( arr );\n* // returns true\n*\n* bool = isSkewCentrosymmetricMatrix( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isSquareMatrix = require( './../../is-square-matrix' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a skew-persymmetric matrix.\n*\n* ## Notes\n*\n* - The implementation must rely on manually checking that \\\\(M_{ij} = -M_{N-j-1,N-i-1}\\\\), and, while element access is deterministic, no way exists to prevent cache misses outside of reordering the underlying matrix elements, thus incurring a larger performance penalty than just \"jumping around\" in a single pass.\n* - Worst case scenario: O(N^2).\n*\n* @param {*} v - value to test\n* @returns {boolean} boolean indicating if a value is a skew-persymmetric matrix\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n*\n* var arr = ndarray( 'generic', [ 1, 0, 0, -1 ], [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n* var bool = isSkewPersymmetricMatrix( arr );\n* // returns true\n*\n* bool = isSkewPersymmetricMatrix( [] );\n* // returns false\n*/\nfunction isSkewPersymmetricMatrix( v ) {\n\tvar M;\n\tvar n;\n\tvar i;\n\tvar j;\n\tif ( !isSquareMatrix( v ) ) {\n\t\treturn false;\n\t}\n\tM = v.shape[ 0 ] - 1;\n\tfor ( i = 0; i < M; i++ ) {\n\t\tn = M - i;\n\t\tfor ( j = 0; j <= n; j++ ) {\n\t\t\tif ( v.get( i, j ) !== -v.get( M-j, n ) ) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t}\n\treturn true;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSkewPersymmetricMatrix;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a skew-persymmetric matrix.\n*\n* @module @stdlib/assert/is-skew-persymmetric-matrix\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n* var isSkewPersymmetricMatrix = require( '@stdlib/assert/is-skew-persymmetric-matrix' );\n*\n* var arr = ndarray( 'generic', [ 1, 0, 0, -1 ], [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n* var bool = isSkewPersymmetricMatrix( arr );\n* // returns true\n*\n* bool = isSkewPersymmetricMatrix( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isSquareMatrix = require( './../../is-square-matrix' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a skew-symmetric matrix.\n*\n* ## Notes\n*\n* - The implementation must rely on manually checking that \\\\(M_{ij} = -M_{ji}\\\\), and, while element access is deterministic, no way exists to prevent cache misses outside of reordering the underlying matrix elements, thus incurring a larger performance penalty than just \"jumping around\" in a single pass.\n* - Worst case scenario: O(N^2).\n*\n* @param {*} v - value to test\n* @returns {boolean} boolean indicating if a value is a skew-symmetric matrix\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n*\n* var arr = ndarray( 'generic', [ 0, -1, 1, 0 ], [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n* var bool = isSkewSymmetricMatrix( arr );\n* // returns true\n*\n* bool = isSkewSymmetricMatrix( [] );\n* // returns false\n*/\nfunction isSkewSymmetricMatrix( v ) {\n\tvar M;\n\tvar i;\n\tvar j;\n\tif ( !isSquareMatrix( v ) ) {\n\t\treturn false;\n\t}\n\tM = v.shape[ 0 ];\n\tfor ( i = 0; i < M; i++ ) {\n\t\tfor ( j = 0; j <= i; j++ ) { // includes diagonal\n\t\t\tif ( v.get( i, j ) !== -v.get( j, i ) ) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t}\n\treturn true;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSkewSymmetricMatrix;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a skew-symmetric matrix.\n*\n* @module @stdlib/assert/is-skew-symmetric-matrix\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n* var isSkewSymmetricMatrix = require( '@stdlib/assert/is-skew-symmetric-matrix' );\n*\n* var arr = ndarray( 'generic', [ 0, -1, 1, 0 ], [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n* var bool = isSkewSymmetricMatrix( arr );\n* // returns true\n*\n* bool = isSkewSymmetricMatrix( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2023 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar Slice = require( '@stdlib/slice/ctor' );\nvar constructorName = require( '@stdlib/utils/constructor-name' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a Slice object.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a Slice object\n*\n* @example\n* var Slice = require( '@stdlib/slice/ctor' );\n*\n* var s = new Slice( 0, 10, 2 );\n*\n* var bool = isSlice( s );\n* // returns true\n*/\nfunction isSlice( value ) {\n\treturn (\n\t\tvalue instanceof Slice ||\n\t\tconstructorName( value ) === 'Slice'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSlice;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2023 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a Slice object.\n*\n* @module @stdlib/assert/is-slice\n*\n* @example\n* var Slice = require( '@stdlib/slice/ctor' );\n* var isSlice = require( '@stdlib/assert/is-slice' );\n*\n* var s = new Slice( 0, 10, 2 );\n*\n* var bool = isSlice( s );\n* // returns true\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2022 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\nvar snakecase = require( '@stdlib/string/base/snakecase' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a string in snake case.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is a string in snake case\n*\n* @example\n* var bool = isSnakecase( 'hello_world' );\n* // returns true\n*\n* @example\n* var bool = isSnakecase( 'Hello World' );\n* // returns false\n*\n* @example\n* var bool = isSnakecase( 'Hello_World' );\n* // returns false\n*\n* @example\n* var bool = isSnakecase( '' );\n* // returns true\n*\n* @example\n* var bool = isSnakecase( null );\n* // returns false\n*/\nfunction isSnakecase( value ) {\n\treturn ( isString( value ) && snakecase( value ) === value );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSnakecase;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2022 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a string in snake case.\n*\n* @module @stdlib/assert/is-snakecase\n*\n* @example\n* var isSnakecase = require( '@stdlib/assert/is-snakecase' );\n*\n* var bool = isSnakecase( 'hello_world' );\n* // returns true\n*\n* bool = isSnakecase( 'Hello World' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInteger = require( './../../is-integer' ).isPrimitive;\nvar sqrt = require( '@stdlib/math/base/special/sqrt' );\nvar floor = require( '@stdlib/math/base/special/floor' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number primitive having a value which is a square number.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number primitive having a value which is a square number\n*\n* @example\n* var bool = isSquareNumber( 4.0 );\n* // returns true\n*\n* @example\n* var bool = isSquareNumber( new Number( 4.0 ) );\n* // returns false\n*/\nfunction isSquareNumber( value ) {\n\tvar n;\n\tif ( !isInteger( value ) ) {\n\t\treturn false;\n\t}\n\tn = floor( sqrt( value ) + 0.5 );\n\treturn n*n === value;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSquareNumber;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInteger = require( './../../is-integer' ).isObject;\nvar sqrt = require( '@stdlib/math/base/special/sqrt' );\nvar floor = require( '@stdlib/math/base/special/floor' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number object having a value which is a square number.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number object having a value which is a square number\n*\n* @example\n* var bool = isSquareNumber( 4.0 );\n* // returns false\n*\n* @example\n* var bool = isSquareNumber( new Number( 4.0 ) );\n* // returns true\n*/\nfunction isSquareNumber( value ) {\n\tvar n;\n\tvar x;\n\tif ( !isInteger( value ) ) {\n\t\treturn false;\n\t}\n\tx = value.valueOf();\n\tn = floor( sqrt( x ) + 0.5 );\n\treturn n*n === x;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSquareNumber;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a square number.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a square number\n*\n* @example\n* var bool = isSquareNumber( 4.0 );\n* // returns true\n*\n* @example\n* var bool = isSquareNumber( new Number( 4.0 ) );\n* // returns true\n*\n* @example\n* var bool = isSquareNumber( 3.14 );\n* // returns false\n*\n* @example\n* var bool = isSquareNumber( -5.0 );\n* // returns false\n*\n* @example\n* var bool = isSquareNumber( null );\n* // returns false\n*/\nfunction isSquareNumber( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSquareNumber;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a square number.\n*\n* @module @stdlib/assert/is-square-number\n*\n* @example\n* var isSquareNumber = require( '@stdlib/assert/is-square-number' );\n*\n* var bool = isSquareNumber( 4.0 );\n* // returns true\n*\n* bool = isSquareNumber( new Number( 4.0 ) );\n* // returns true\n*\n* bool = isSquareNumber( 3.14 );\n* // returns false\n*\n* bool = isSquareNumber( -5.0 );\n* // returns false\n*\n* bool = isSquareNumber( null );\n* // returns false\n*\n* @example\n* var isSquareNumber = require( '@stdlib/assert/is-square-number' ).isPrimitive;\n*\n* var bool = isSquareNumber( 4.0 );\n* // returns true\n*\n* bool = isSquareNumber( new Number( 4.0 ) );\n* // returns false\n*\n* @example\n* var isSquareNumber = require( '@stdlib/assert/is-square-number' ).isObject;\n*\n* var bool = isSquareNumber( 4.0 );\n* // returns false\n*\n* bool = isSquareNumber( new Number( 4.0 ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInteger = require( './../../is-integer' ).isPrimitive;\nvar sqrt = require( '@stdlib/math/base/special/sqrt' );\nvar floor = require( '@stdlib/math/base/special/floor' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number primitive having a value which is a square triangular number.\n*\n* ## Notes\n*\n* - Return values are not reliable for numbers greater than `1125899906842624`.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number primitive having a value which is a square triangular number\n*\n* @example\n* var bool = isSquareTriangularNumber( 36.0 );\n* // returns true\n*\n* @example\n* var bool = isSquareTriangularNumber( new Number( 36.0 ) );\n* // returns false\n*/\nfunction isSquareTriangularNumber( value ) {\n\tvar n;\n\tvar x;\n\tif ( !isInteger( value ) ) {\n\t\treturn false;\n\t}\n\t// Test if a square number:\n\tn = floor( sqrt( value ) + 0.5 );\n\tif ( n*n !== value ) {\n\t\treturn false;\n\t}\n\t// Test if a triangular number:\n\tx = ( 8.0*value ) + 1.0;\n\tn = floor( sqrt( x ) + 0.5 );\n\treturn n*n === x;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSquareTriangularNumber;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInteger = require( './../../is-integer' ).isObject;\nvar sqrt = require( '@stdlib/math/base/special/sqrt' );\nvar floor = require( '@stdlib/math/base/special/floor' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number object having a value which is a square triangular number.\n*\n* ## Notes\n*\n* - Return values are not reliable for numbers greater than `1125899906842624`.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number object having a value which is a square triangular number\n*\n* @example\n* var bool = isSquareTriangularNumber( 36.0 );\n* // returns false\n*\n* @example\n* var bool = isSquareTriangularNumber( new Number( 36.0 ) );\n* // returns true\n*/\nfunction isSquareTriangularNumber( value ) {\n\tvar n;\n\tvar x;\n\tif ( !isInteger( value ) ) {\n\t\treturn false;\n\t}\n\t// Test if a square number:\n\tx = value.valueOf();\n\tn = floor( sqrt( x ) + 0.5 );\n\tif ( n*n !== x ) {\n\t\treturn false;\n\t}\n\t// Test if a triangular number:\n\tx = ( 8.0*x ) + 1.0;\n\tn = floor( sqrt( x ) + 0.5 );\n\treturn n*n === x;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSquareTriangularNumber;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a square triangular number.\n*\n* ## Notes\n*\n* - Return values are not reliable for numbers greater than `1125899906842624`.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a square triangular number\n*\n* @example\n* var bool = isSquareTriangularNumber( 36.0 );\n* // returns true\n*\n* @example\n* var bool = isSquareTriangularNumber( new Number( 36.0 ) );\n* // returns true\n*\n* @example\n* var bool = isSquareTriangularNumber( 3.14 );\n* // returns false\n*\n* @example\n* var bool = isSquareTriangularNumber( -5.0 );\n* // returns false\n*\n* @example\n* var bool = isSquareTriangularNumber( null );\n* // returns false\n*/\nfunction isSquareTriangularNumber( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSquareTriangularNumber;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a square triangular number.\n*\n* @module @stdlib/assert/is-square-triangular-number\n*\n* @example\n* var isSquareTriangularNumber = require( '@stdlib/assert/is-square-triangular-number' );\n*\n* var bool = isSquareTriangularNumber( 36.0 );\n* // returns true\n*\n* bool = isSquareTriangularNumber( new Number( 36.0 ) );\n* // returns true\n*\n* bool = isSquareTriangularNumber( 3.14 );\n* // returns false\n*\n* bool = isSquareTriangularNumber( -5.0 );\n* // returns false\n*\n* bool = isSquareTriangularNumber( null );\n* // returns false\n*\n* @example\n* var isSquareTriangularNumber = require( '@stdlib/assert/is-square-triangular-number' ).isPrimitive;\n*\n* var bool = isSquareTriangularNumber( 36.0 );\n* // returns true\n*\n* bool = isSquareTriangularNumber( new Number( 36.0 ) );\n* // returns false\n*\n* @example\n* var isSquareTriangularNumber = require( '@stdlib/assert/is-square-triangular-number' ).isObject;\n*\n* var bool = isSquareTriangularNumber( 36.0 );\n* // returns false\n*\n* bool = isSquareTriangularNumber( new Number( 36.0 ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2022 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\nvar startcase = require( '@stdlib/string/base/startcase' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a startcase string (i.e., the first character of each word is uppercase).\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a startcase string\n*\n* @example\n* var bool = isStartcase( 'Beep Boop' );\n* // returns true\n*\n* bool = isStartcase( 'beep boop' );\n* // returns false\n*\n* bool = isStartcase( 'beep and boop' );\n* // returns false\n*/\nfunction isStartcase( value ) {\n\treturn ( isString( value ) && startcase( value ) === value );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isStartcase;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2022 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a startcase string.\n*\n* @module @stdlib/assert/is-startcase\n*\n* @example\n* var isStartcase = require( '@stdlib/assert/is-startcase' );\n*\n* var bool = isStartcase( 'Beep Boop' );\n* // returns true\n*\n* bool = isStartcase( 'Beep and Boop' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\n/**\n* Tests if two arguments are strictly equal.\n*\n* ## Notes\n*\n* - In contrast to the strict equality operator `===`, `-0` and `+0` are distinguishable.\n*\n* @param {*} a - first input value\n* @param {*} b - second input value\n* @returns {boolean} boolean indicating whether two arguments are strictly equal\n*\n* @example\n* var bool = isStrictEqual( true, true );\n* // returns true\n*\n* @example\n* var bool = isStrictEqual( 3.14, 3.14 );\n* // returns true\n*\n* @example\n* var bool = isStrictEqual( {}, {} );\n* // returns false\n*\n* @example\n* var bool = isStrictEqual( -0.0, -0.0 );\n* // returns true\n*\n* @example\n* var bool = isStrictEqual( -0.0, 0.0 );\n* // returns false\n*\n* @example\n* var bool = isStrictEqual( NaN, NaN );\n* // returns false\n*\n* @example\n* var bool = isStrictEqual( [], [] );\n* // returns false\n*/\nfunction isStrictEqual( a, b ) {\n\tif ( a === b ) {\n\t\tif ( a === 0.0 ) {\n\t\t\treturn 1.0 / a === 1.0 / b; // handles +-0\n\t\t}\n\t\treturn true;\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isStrictEqual;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if two arguments are strictly equal.\n*\n* @module @stdlib/assert/is-strict-equal\n*\n* @example\n* var isStrictEqual = require( '@stdlib/assert/is-strict-equal' );\n*\n* var bool = isStrictEqual( true, true );\n* // returns true\n*\n* bool = isStrictEqual( 3.14, 3.14 );\n* // returns true\n*\n* bool = isStrictEqual( {}, {} );\n* // returns false\n*\n* bool = isStrictEqual( -0.0, -0.0 );\n* // returns true\n*\n* bool = isStrictEqual( -0.0, 0.0 );\n* // returns false\n*\n* bool = isStrictEqual( NaN, NaN );\n* // returns false\n*\n* bool = isStrictEqual( [], [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array of strings.\n*\n* @module @stdlib/assert/is-string-array\n*\n* @example\n* var isStringArray = require( '@stdlib/assert/is-string-array' );\n*\n* var bool = isStringArray( [ 'abc', 'def' ] );\n* // returns true\n*\n* bool = isStringArray( [ 'abc', 123 ] );\n* // returns false\n*\n* @example\n* var isStringArray = require( '@stdlib/assert/is-string-array' ).primitives;\n*\n* var bool = isStringArray( [ 'abc', 'def' ] );\n* // returns true\n*\n* bool = isStringArray( [ 'abc', new String( 'def' ) ] );\n* // returns false\n*\n* @example\n* var isStringArray = require( '@stdlib/assert/is-string-array' ).objects;\n*\n* var bool = isStringArray( [ new String( 'abc' ), new String( 'def' ) ] );\n* // returns true\n*\n* bool = isStringArray( [ new String( 'abc' ), 'def' ] );\n* // returns false\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar arrayfun = require( './../../tools/array-function' );\nvar isString = require( './../../is-string' );\n\n\n// VARIABLES //\n\nvar isPrimitiveArray = arrayfun( isString.isPrimitive );\nvar isObjectArray = arrayfun( isString.isObject );\n\n\n// MAIN //\n\nvar isStringArray = arrayfun( isString );\nsetReadOnly( isStringArray, 'primitives', isPrimitiveArray );\nsetReadOnly( isStringArray, 'objects', isObjectArray );\n\n\n// EXPORTS //\n\nmodule.exports = isStringArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array-like object containing only symbols.\n*\n* @module @stdlib/assert/is-symbol-array\n*\n* @example\n* var isSymbolArray = require( '@stdlib/assert/is-symbol-array' );\n*\n* var bool = isSymbolArray( [ Symbol( 'abc' ), Symbol( 'def' ) ] );\n* // returns true\n*\n* bool = isSymbolArray( [ Symbol( 'abc' ), 'def' ] );\n* // returns false\n*\n* @example\n* var isSymbolArray = require( '@stdlib/assert/is-symbol-array' ).primitives;\n*\n* var bool = isSymbolArray( [ Symbol( 'abc' ), Symbol( 'def' ) ] );\n* // returns true\n*\n* bool = isSymbolArray( [ Symbol( 'abc' ), Object( Symbol( 'def' ) ) ] );\n* // returns false\n*\n* @example\n* var isSymbolArray = require( '@stdlib/assert/is-symbol-array' ).objects;\n*\n* var bool = isSymbolArray( [ Object( Symbol( 'abc' ) ), Object( Symbol( 'def' ) ) ] );\n* // returns true\n*\n* bool = isSymbolArray( [ Symbol( 'abc' ), Symbol( 'def' ) ] );\n* // returns false\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar arrayfun = require( './../../tools/array-like-function' );\nvar isSymbol = require( './../../is-symbol' );\n\n\n// VARIABLES //\n\nvar isPrimitiveArray = arrayfun( isSymbol.isPrimitive );\nvar isObjectArray = arrayfun( isSymbol.isObject );\n\n\n// MAIN //\n\nvar isSymbolArray = arrayfun( isSymbol );\nsetReadOnly( isSymbolArray, 'primitives', isPrimitiveArray );\nsetReadOnly( isSymbolArray, 'objects', isObjectArray );\n\n\n// EXPORTS //\n\nmodule.exports = isSymbolArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isSquareMatrix = require( './../../is-square-matrix' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a symmetric matrix.\n*\n* ## Notes\n*\n* - The implementation must rely on manually checking that \\\\(M_{ij} = M_{ji}\\\\), and, while element access is deterministic, no way exists to prevent cache misses outside of reordering the underlying matrix elements, thus incurring a larger performance penalty than just \"jumping around\" in a single pass.\n* - Worst case scenario: O(N^2).\n*\n* @param {*} v - value to test\n* @returns {boolean} boolean indicating if a value is a symmetric matrix\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n*\n* var arr = ndarray( 'generic', [ 0, 1, 1, 2 ], [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n* var bool = isSymmetricMatrix( arr );\n* // returns true\n*\n* bool = isSymmetricMatrix( [] );\n* // returns false\n*/\nfunction isSymmetricMatrix( v ) {\n\tvar M;\n\tvar i;\n\tvar j;\n\tif ( !isSquareMatrix( v ) ) {\n\t\treturn false;\n\t}\n\tM = v.shape[ 0 ];\n\tfor ( i = 0; i < M; i++ ) {\n\t\tfor ( j = 0; j < i; j++ ) {\n\t\t\tif ( v.get( i, j ) !== v.get( j, i ) ) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t}\n\treturn true;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSymmetricMatrix;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a symmetric matrix.\n*\n* @module @stdlib/assert/is-symmetric-matrix\n*\n* @example\n* var ndarray = require( '@stdlib/ndarray/ctor' );\n* var isSymmetricMatrix = require( '@stdlib/assert/is-symmetric-matrix' );\n*\n* var arr = ndarray( 'generic', [ 0, 1, 1, 2 ], [ 2, 2 ], [ 2, 1 ], 0, 'row-major' );\n* var bool = isSymmetricMatrix( arr );\n* // returns true\n*\n* bool = isSymmetricMatrix( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar getPrototypeOf = require( '@stdlib/utils/get-prototype-of' );\nvar typeOf = require( '@stdlib/utils/type-of' );\nvar isError = require( './../../is-error' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a `SyntaxError` object.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is a `SyntaxError` object\n*\n* @example\n* var bool = isSyntaxError( new SyntaxError( 'beep' ) );\n* // returns true\n*\n* @example\n* var bool = isSyntaxError( {} );\n* // returns false\n*/\nfunction isSyntaxError( value ) {\n\tif ( typeof value !== 'object' || value === null ) {\n\t\treturn false;\n\t}\n\t// Check for `SyntaxError` objects from the same realm (same Node.js `vm` or same `Window` object)...\n\tif ( value instanceof SyntaxError ) {\n\t\treturn true;\n\t}\n\t// All `SyntaxError` objects are `Error` objects...\n\tif ( isError( value ) ) {\n\t\t// Walk the prototype tree until we find the desired constructor...\n\t\twhile ( value ) {\n\t\t\tif ( typeOf( value ) === 'syntaxerror' ) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\tvalue = getPrototypeOf( value );\n\t\t}\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isSyntaxError;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a `SyntaxError` object.\n*\n* @module @stdlib/assert/is-syntax-error\n*\n* @example\n* var isSyntaxError = require( '@stdlib/assert/is-syntax-error' );\n*\n* var bool = isSyntaxError( new SyntaxError( 'beep' ) );\n* // returns true\n*\n* bool = isSyntaxError( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar constantFunction = require( '@stdlib/utils/constant-function' );\n\n\n// MAIN //\n\nvar isTouchDevice = constantFunction( false );\n\n\n// EXPORTS //\n\nmodule.exports = isTouchDevice;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2021 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Boolean indicating if the current environment is a touch device.\n*\n* @module @stdlib/assert/is-touch-device\n*\n* @example\n* var IS_TOUCH_DEVICE = require( '@stdlib/assert/is-touch-device' );\n*\n* var bool = IS_TOUCH_DEVICE;\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// MAIN //\n\nvar bool = main();\n\n\n// EXPORTS //\n\nmodule.exports = bool;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInteger = require( './../../is-integer' ).isPrimitive;\nvar sqrt = require( '@stdlib/math/base/special/sqrt' );\nvar floor = require( '@stdlib/math/base/special/floor' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number primitive having a value which is a triangular number.\n*\n* ## Notes\n*\n* - Return values are not reliable for numbers greater than `1125899906842624`.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number primitive having a value which is a triangular number\n*\n* @example\n* var bool = isTriangularNumber( 36.0 );\n* // returns true\n*\n* @example\n* var bool = isTriangularNumber( new Number( 36.0 ) );\n* // returns false\n*/\nfunction isTriangularNumber( value ) {\n\tvar n;\n\tvar x;\n\tif ( !isInteger( value ) ) {\n\t\treturn false;\n\t}\n\tx = ( 8.0*value ) + 1.0;\n\tn = floor( sqrt( x ) + 0.5 );\n\treturn n*n === x;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isTriangularNumber;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInteger = require( './../../is-integer' ).isObject;\nvar sqrt = require( '@stdlib/math/base/special/sqrt' );\nvar floor = require( '@stdlib/math/base/special/floor' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a number object having a value which is a triangular number.\n*\n* ## Notes\n*\n* - Return values are not reliable for numbers greater than `1125899906842624`.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a number object having a value which is a triangular number\n*\n* @example\n* var bool = isTriangularNumber( 36.0 );\n* // returns false\n*\n* @example\n* var bool = isTriangularNumber( new Number( 36.0 ) );\n* // returns true\n*/\nfunction isTriangularNumber( value ) {\n\tvar n;\n\tvar x;\n\tif ( !isInteger( value ) ) {\n\t\treturn false;\n\t}\n\tx = ( 8.0*value.valueOf() ) + 1.0;\n\tn = floor( sqrt( x ) + 0.5 );\n\treturn n*n === x;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isTriangularNumber;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a triangular number.\n*\n* ## Notes\n*\n* - Return values are not reliable for numbers greater than `1125899906842624`.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is a triangular number\n*\n* @example\n* var bool = isTriangularNumber( 36.0 );\n* // returns true\n*\n* @example\n* var bool = isTriangularNumber( new Number( 36.0 ) );\n* // returns true\n*\n* @example\n* var bool = isTriangularNumber( 3.14 );\n* // returns false\n*\n* @example\n* var bool = isTriangularNumber( -5.0 );\n* // returns false\n*\n* @example\n* var bool = isTriangularNumber( null );\n* // returns false\n*/\nfunction isTriangularNumber( value ) {\n\treturn ( isPrimitive( value ) || isObject( value ) );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isTriangularNumber;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2020 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a triangular number.\n*\n* @module @stdlib/assert/is-triangular-number\n*\n* @example\n* var isTriangularNumber = require( '@stdlib/assert/is-triangular-number' );\n*\n* var bool = isTriangularNumber( 36.0 );\n* // returns true\n*\n* bool = isTriangularNumber( new Number( 36.0 ) );\n* // returns true\n*\n* bool = isTriangularNumber( 3.14 );\n* // returns false\n*\n* bool = isTriangularNumber( -5.0 );\n* // returns false\n*\n* bool = isTriangularNumber( null );\n* // returns false\n*\n* @example\n* var isTriangularNumber = require( '@stdlib/assert/is-triangular-number' ).isPrimitive;\n*\n* var bool = isTriangularNumber( 36.0 );\n* // returns true\n*\n* bool = isTriangularNumber( new Number( 36.0 ) );\n* // returns false\n*\n* @example\n* var isTriangularNumber = require( '@stdlib/assert/is-triangular-number' ).isObject;\n*\n* var bool = isTriangularNumber( 36.0 );\n* // returns false\n*\n* bool = isTriangularNumber( new Number( 36.0 ) );\n* // returns true\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-nonenumerable-read-only-property' );\nvar main = require( './main.js' );\nvar isPrimitive = require( './primitive.js' );\nvar isObject = require( './object.js' );\n\n\n// MAIN //\n\nsetReadOnly( main, 'isPrimitive', isPrimitive );\nsetReadOnly( main, 'isObject', isObject );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MAIN //\n\n/**\n* Tests if a value is truthy.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is truthy\n*\n* @example\n* var bool = isTruthy( true );\n* // returns true\n*\n* @example\n* var bool = isTruthy( [] );\n* // returns true\n*\n* @example\n* var bool = isTruthy( false );\n* // returns false\n*\n* @example\n* var bool = isTruthy( null );\n* // returns false\n*\n* @example\n* var bool = isTruthy( '' );\n* // returns false\n*\n* @example\n* var bool = isTruthy( 0 );\n* // returns false\n*\n* @example\n* var bool = isTruthy( void 0 );\n* // returns false\n*\n* @example\n* var bool = isTruthy( NaN );\n* // returns false\n*/\nfunction isTruthy( value ) {\n\treturn ( value ) ? true : false; // eslint-disable-line no-unneeded-ternary\n}\n\n\n// EXPORTS //\n\nmodule.exports = isTruthy;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is truthy.\n*\n* @module @stdlib/assert/is-truthy\n*\n* @example\n* var isTruthy = require( '@stdlib/assert/is-truthy' );\n*\n* var bool = isTruthy( true );\n* // returns true\n*\n* bool = isTruthy( [] );\n* // returns true\n*\n* bool = isTruthy( false );\n* // returns false\n*\n* bool = isTruthy( null );\n* // returns false\n*\n* bool = isTruthy( '' );\n* // returns false\n*\n* bool = isTruthy( 0 );\n* // returns false\n*\n* bool = isTruthy( void 0 );\n* // returns false\n*\n* bool = isTruthy( NaN );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar arrayfun = require( './../../tools/array-like-function' );\nvar isTruthy = require( './../../is-truthy' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is an array-like object containing only truthy values.\n*\n* @name isTruthyArray\n* @type {Function}\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether an input value is an array-like object containing only truthy values\n*\n* @example\n* var bool = isTruthyArray( [ {}, [] ] );\n* // returns true\n*\n* bool = isTruthyArray( [ false, null, void 0, '', 0, NaN ] );\n* // returns false\n*\n* bool = isTruthyArray( [] );\n* // returns false\n*/\nvar isTruthyArray = arrayfun( isTruthy );\n\n\n// EXPORTS //\n\nmodule.exports = isTruthyArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array-like object containing only truthy values.\n*\n* @module @stdlib/assert/is-truthy-array\n*\n* @example\n* var isTruthyArray = require( '@stdlib/assert/is-truthy-array' );\n*\n* var bool = isTruthyArray( [ {}, [] ] );\n* // returns true\n*\n* bool = isTruthyArray( [ false, null, void 0, '', 0, NaN ] );\n* // returns false\n*\n* bool = isTruthyArray( [] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar getPrototypeOf = require( '@stdlib/utils/get-prototype-of' );\nvar typeOf = require( '@stdlib/utils/type-of' );\nvar isError = require( './../../is-error' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a `TypeError` object.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is a `TypeError` object\n*\n* @example\n* var bool = isTypeError( new TypeError( 'beep' ) );\n* // returns true\n*\n* @example\n* var bool = isTypeError( {} );\n* // returns false\n*/\nfunction isTypeError( value ) {\n\tif ( typeof value !== 'object' || value === null ) {\n\t\treturn false;\n\t}\n\t// Check for `TypeError` objects from the same realm (same Node.js `vm` or same `Window` object)...\n\tif ( value instanceof TypeError ) {\n\t\treturn true;\n\t}\n\t// All `TypeError` objects are `Error` objects...\n\tif ( isError( value ) ) {\n\t\t// Walk the prototype tree until we find the desired constructor...\n\t\twhile ( value ) {\n\t\t\tif ( typeOf( value ) === 'typeerror' ) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\tvalue = getPrototypeOf( value );\n\t\t}\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isTypeError;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a `TypeError` object.\n*\n* @module @stdlib/assert/is-type-error\n*\n* @example\n* var isTypeError = require( '@stdlib/assert/is-type-error' );\n*\n* var bool = isTypeError( new TypeError( 'beep' ) );\n* // returns true\n*\n* bool = isTypeError( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isInteger = require( './../../is-integer' ).isPrimitive;\nvar MAX_LENGTH = require( '@stdlib/constants/array/max-typed-array-length' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a valid typed array length.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a valid typed array length\n*\n* @example\n* var bool = isTypedArrayLength( 3 );\n* // returns true\n*\n* @example\n* var bool = isTypedArrayLength( 3.14 );\n* // returns false\n*/\nfunction isTypedArrayLength( value ) {\n\treturn (\n\t\tisInteger( value ) &&\n\t\tvalue >= 0 &&\n\t\tvalue <= MAX_LENGTH\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isTypedArrayLength;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a valid typed array length.\n*\n* @module @stdlib/assert/is-typed-array-length\n*\n* @example\n* var isTypedArrayLength = require( '@stdlib/assert/is-typed-array-length' );\n*\n* var bool = isTypedArrayLength( 5 );\n* // returns true\n*\n* bool = isTypedArrayLength( 2.0e200 );\n* // returns false\n*\n* bool = isTypedArrayLength( -3.14 );\n* // returns false\n*\n* bool = isTypedArrayLength( null );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isNonNegativeInteger = require( './../../is-nonnegative-integer' ).isPrimitive;\nvar MAX = require( '@stdlib/constants/array/max-typed-array-length' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is typed-array-like.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is typed-array-like\n*\n* @example\n* var arr = {\n*\t'BYTES_PER_ELEMENT': 8,\n*\t'length': 10,\n*\t'byteOffset': 0,\n*\t'byteLength': 10\n* };\n* var val = isTypedArrayLike( arr );\n* // returns true\n*\n* @example\n* var Int8Array = require( '@stdlib/array/int8' );\n*\n* var val = isTypedArrayLike( new Int8Array( 4 ) );\n* // returns true\n*\n* @example\n* var val = isTypedArrayLike( [] );\n* // returns false\n*\n* @example\n* var val = isTypedArrayLike( {} );\n* // returns false\n*\n* @example\n* var val = isTypedArrayLike( null );\n* // returns false\n*\n* @example\n* var val = isTypedArrayLike( 'beep' );\n* // returns false\n*/\nfunction isTypedArrayLike( value ) {\n\treturn (\n\t\tvalue !== null &&\n\t\ttypeof value === 'object' &&\n\t\tisNonNegativeInteger( value.length ) &&\n\t\tvalue.length <= MAX &&\n\t\ttypeof value.BYTES_PER_ELEMENT === 'number' &&\n\t\ttypeof value.byteOffset === 'number' &&\n\t\ttypeof value.byteLength === 'number'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isTypedArrayLike;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is typed-array-like.\n*\n* @module @stdlib/assert/is-typed-array-like\n*\n* @example\n* var Int16Array = require( '@stdlib/array/int16' );\n* var isTypedArrayLike = require( '@stdlib/assert/is-typed-array-like' );\n*\n* var bool = isTypedArrayLike( new Int16Array() );\n* // returns true\n*\n* bool = isTypedArrayLike({\n*\t'length': 10,\n*\t'byteOffset': 0,\n*\t'byteLength': 10,\n*\t'BYTES_PER_ELEMENT': 4\n* });\n* // returns true\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\nvar RE_UNC_PATH = require( '@stdlib/regexp/unc-path' ).REGEXP;\n\n\n// MAIN //\n\n/**\n* Tests if a value is a UNC path.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating if a value is a UNC path\n*\n* @example\n* var bool = isUNCPath( '\\\\\\\\server\\\\share\\\\foo\\\\bar\\\\baz' );\n* // returns true\n*\n* @example\n* var bool = isUNCPath( '/foo/bar/baz' );\n* // returns false\n*/\nfunction isUNCPath( value ) {\n\treturn (\n\t\tisString( value ) &&\n\t\tRE_UNC_PATH.test( value )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isUNCPath;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a UNC path.\n*\n* @module @stdlib/assert/is-unc-path\n*\n* @example\n* var isUNCPath = require( '@stdlib/assert/is-unc-path' );\n*\n* var bool = isUNCPath( '\\\\\\\\server\\\\share\\\\foo\\\\bar\\\\baz' );\n* // returns true\n*\n* bool = isUNCPath( '/foo/bar/baz' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Tests if a value is `undefined`.\n*\n* ## Notes\n*\n* - In older browsers, `undefined` is a global which can be overridden. `void`, however, is an operator which **cannot** be overridden. Consequently, better to use `void` to check for `undefined`. See [Stack Overflow][1].\n*\n* [1]: http://stackoverflow.com/a/19369078/2225624\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is undefined\n*\n* @example\n* var bool = isUndefined( undefined );\n* // returns true\n*\n* bool = isUndefined( null );\n* // returns false\n*/\nfunction isUndefined( value ) {\n\treturn value === void 0;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isUndefined;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is `undefined`.\n*\n* @module @stdlib/assert/is-undefined\n*\n* @example\n* var isUndefined = require( '@stdlib/assert/is-undefined' );\n*\n* var bool = isUndefined( void 0 );\n* // returns true\n*\n* bool = isUndefined( null );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Tests if a value is `undefined` or `null`.\n*\n* ## Notes\n*\n* - In older browsers, `undefined` is a global which can be overridden. `void`, however, is an operator which **cannot** be overridden. Consequently, better to use `void` to check for `undefined`. See [Stack Overflow][1].\n*\n* [1]: http://stackoverflow.com/a/19369078/2225624\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is undefined\n*\n* @example\n* var bool = isUndefinedOrNull( undefined );\n* // returns true\n*\n* bool = isUndefinedOrNull( null );\n* // returns true\n*\n* bool = isUndefinedOrNull( false );\n* // returns false\n*/\nfunction isUndefinedOrNull( value ) {\n\treturn ( value === void 0 || value === null );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isUndefinedOrNull;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is `undefined` or `null`.\n*\n* @module @stdlib/assert/is-undefined-or-null\n*\n* @example\n* var isUndefinedOrNull = require( '@stdlib/assert/is-undefined-or-null' );\n*\n* var bool = isUndefinedOrNull( void 0 );\n* // returns true\n*\n* bool = isUndefinedOrNull( null );\n* // returns true\n*\n* bool = isUndefinedOrNull( false );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isTypedArray = require( './../../is-typed-array' );\nvar isArray = require( './../../is-array' );\nvar isNumber = require( './../../is-number' ).isPrimitive;\nvar absdiff = require( '@stdlib/math/base/utils/absolute-difference' );\nvar FLOAT64_SQRT_EPS = require( '@stdlib/constants/float64/sqrt-eps' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is an array of probabilities that sum to one.\n*\n* @param {*} v - value to test\n* @returns {boolean} boolean indicating if a value is a probability array\n*\n* @example\n* var bool = isUnityProbabilityArray( [ 0.25, 0.5, 0.25 ] );\n* // returns true\n*\n* @example\n* var bool = isUnityProbabilityArray( new Uint8Array( [ 0, 1 ] ) );\n* // returns true\n*\n* @example\n* var bool = isUnityProbabilityArray( [ 0.4, 0.4, 0.4 ] );\n* // returns false\n*\n* @example\n* var bool = isUnityProbabilityArray( [ 3.14, 0.0 ] );\n* // returns false\n*/\nfunction isUnityProbabilityArray( v ) {\n\tvar sum;\n\tvar i;\n\tif ( isArray( v ) ) {\n\t\tsum = 0.0;\n\t\tfor ( i = 0; i < v.length; i++ ) {\n\t\t\tif (\n\t\t\t\t!isNumber( v[ i ] ) ||\n\t\t\t\tv[ i ] > 1.0 ||\n\t\t\t\tv[ i ] < 0.0\n\t\t\t) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\tsum += v[ i ];\n\t\t}\n\t\treturn ( absdiff( sum, 1.0 ) <= FLOAT64_SQRT_EPS );\n\t}\n\tif ( isTypedArray( v ) ) {\n\t\tsum = 0.0;\n\t\tfor ( i = 0; i < v.length; i++ ) {\n\t\t\tif (\n\t\t\t\tv[ i ] > 1.0 ||\n\t\t\t\tv[ i ] < 0.0\n\t\t\t) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\tsum += v[ i ];\n\t\t}\n\t\treturn ( absdiff( sum, 1.0 ) <= FLOAT64_SQRT_EPS );\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isUnityProbabilityArray;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an array of probabilities that sum to one.\n*\n* @module @stdlib/assert/is-unity-probability-array\n*\n* @example\n* var isUnityProbabilityArray = require( '@stdlib/assert/is-unity-probability-array' );\n*\n* var bool = isUnityProbabilityArray( [ 0.25, 0.5, 0.25 ] );\n* // returns true\n*\n* bool = isUnityProbabilityArray( new Uint8Array( [ 0, 1 ] ) );\n* // returns true\n*\n* bool = isUnityProbabilityArray( [ 0.4, 0.4, 0.4 ] );\n* // returns false\n*\n* bool = isUnityProbabilityArray( [ 3.14, 0.0 ] );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar lowercase = require( '@stdlib/string/lowercase' );\nvar uppercase = require( '@stdlib/string/uppercase' );\nvar isString = require( './../../is-string' ).isPrimitive;\n\n\n// MAIN //\n\n/**\n* Tests if a value is an uppercase string.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether value is an uppercase string\n*\n* @example\n* var bool = isUppercase( 'HELLO' );\n* // returns true\n*\n* @example\n* var bool = isUppercase( 'World' );\n* // returns false\n*\n* @example\n* var bool = isUppercase( '!' );\n* // returns false\n*\n* @example\n* var bool = isUppercase( 'salt and light' );\n* // returns false\n*/\nfunction isUppercase( value ) {\n\treturn (\n\t\tisString( value ) &&\n\t\tvalue === uppercase( value ) &&\n\t\tvalue !== lowercase( value )\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isUppercase;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is an uppercase string.\n*\n* @module @stdlib/assert/is-uppercase\n*\n* @example\n* var isUppercase = require( '@stdlib/assert/is-uppercase' );\n*\n* var bool = isUppercase( 'HELLO' );\n* // returns true\n*\n* bool = isUppercase( 'World' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar getPrototypeOf = require( '@stdlib/utils/get-prototype-of' );\nvar typeOf = require( '@stdlib/utils/type-of' );\nvar isError = require( './../../is-error' );\n\n\n// MAIN //\n\n/**\n* Tests if a value is a `URIError` object.\n*\n* @param {*} value - value to test\n* @returns {boolean} boolean indicating whether a value is a `URIError` object\n*\n* @example\n* var bool = isURIError( new URIError( 'beep' ) );\n* // returns true\n*\n* @example\n* var bool = isURIError( {} );\n* // returns false\n*/\nfunction isURIError( value ) {\n\tif ( typeof value !== 'object' || value === null ) {\n\t\treturn false;\n\t}\n\t// Check for `URIError` objects from the same realm (same Node.js `vm` or same `Window` object)...\n\tif ( value instanceof URIError ) {\n\t\treturn true;\n\t}\n\t// All `URIError` objects are `Error` objects...\n\tif ( isError( value ) ) {\n\t\t// Walk the prototype tree until we find the desired constructor...\n\t\twhile ( value ) {\n\t\t\tif ( typeOf( value ) === 'urierror' ) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\tvalue = getPrototypeOf( value );\n\t\t}\n\t}\n\treturn false;\n}\n\n\n// EXPORTS //\n\nmodule.exports = isURIError;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test if a value is a `URIError` object.\n*\n* @module @stdlib/assert/is-uri-error\n*\n* @example\n* var isURIError = require( '@stdlib/assert/is-uri-error' );\n*\n* var bool = isURIError( new URIError( 'beep' ) );\n* // returns true\n*\n* bool = isURIError( {} );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// VARIABLES //\n\nvar scope;\n\n\n// FUNCTIONS //\n\n/**\n* Test if the global scope is bound to the \"self\" variable present in browser web worker environments. When creating a new function using the `Function(){}` constructor, the execution scope aliased by the `this` variable is the global scope.\n*\n* @private\n* @returns {boolean} boolean indicating if global scope is bound to \"self\" variable\n*/\nfunction globalScope() {\n\tvar fcn = '';\n\tfcn += 'try {';\n\tfcn += 'return this === self;';\n\tfcn += '} catch ( err ) {';\n\tfcn += 'return false;';\n\tfcn += '}';\n\treturn (new Function( fcn ))(); // eslint-disable-line stdlib/require-globals, no-new-func\n}\n\n\n// MAIN //\n\nscope = globalScope();\n\n\n// EXPORTS //\n\nmodule.exports = scope;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n/* global WorkerGlobalScope, WorkerNavigator, WorkerLocation, self, importScripts, navigator, location */\n\n'use strict';\n\n// MODULES //\n\nvar getGlobal = require( '@stdlib/utils/global' );\nvar IS_NODE = require( './../../is-node' );\nvar isObject = require( './../../is-plain-object' );\nvar globalScope = require( './global_scope.js' );\n\n\n// VARIABLES //\n\nvar Global = getGlobal();\n\n\n// MAIN //\n\n/**\n* Returns a boolean indicating if the runtime is a web worker.\n*\n* @returns {boolean} boolean indicating if runtime is a web worker\n*\n* @example\n* var bool = isWebWorker();\n* // returns \n*/\nfunction isWebWorker() {\n\treturn (\n\t\t// Check that we are not running in a Node.js runtime:\n\t\tIS_NODE === false &&\n\n\t\t// Check for presence of `WorkerGlobalScope` global variable:\n\t\ttypeof WorkerGlobalScope === 'object' &&\n\n\t\t// Check for presence of `WorkerNavigator` global variable:\n\t\tisObject( WorkerNavigator ) &&\n\n\t\t// Check that the `navigator` global object is an instance of `WorkerNavigator`:\n\t\tnavigator instanceof WorkerNavigator &&\n\n\t\t// Check for presence of `WorkerLocation` global variable:\n\t\tisObject( WorkerLocation ) &&\n\n\t\t// Check that the `location` global object is an instance of `WorkerLocation`:\n\t\tlocation instanceof WorkerLocation &&\n\n\t\t// Check for presence of `self` variable:\n\t\ttypeof self === 'object' &&\n\n\t\t// Check that the `self` variable matches the determined global variable:\n\t\tself === Global &&\n\n\t\t// Check that the `self` variable is equal to the global scope:\n\t\tglobalScope === true &&\n\n\t\t// Check for presence of `importScripts` function:\n\t\ttypeof importScripts === 'function'\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isWebWorker;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Boolean indicating if the runtime is a web worker.\n*\n* @module @stdlib/assert/is-web-worker\n*\n* @example\n* var IS_WEB_WORKER = require( '@stdlib/assert/is-web-worker' );\n*\n* var bool = IS_WEB_WORKER;\n* // returns \n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// MAIN //\n\nvar bool = main();\n\n\n// EXPORTS //\n\nmodule.exports = bool;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isString = require( './../../is-string' ).isPrimitive;\nvar reWhitespace = require( '@stdlib/regexp/whitespace' );\n\n\n// VARIABLES //\n\nvar RE = new RegExp( '^'+reWhitespace.REGEXP.source+'+$' );\n\n\n// MAIN //\n\n/**\n* Tests whether a string contains only white space characters.\n*\n* @param {*} x - value to test\n* @returns {boolean} boolean indicating if a string contains only white space characters\n*\n* @example\n* var out = isWhitespace( ' ' );\n* // returns true\n*\n* @example\n* var out = isWhitespace( 'beep boop' );\n* // returns false\n*\n* @example\n* var out = isWhitespace( '' );\n* // returns false\n*\n* @example\n* var out = isWhitespace( 123 );\n* // returns false\n*/\nfunction isWhitespace( x ) {\n\tif ( !isString( x ) ) {\n\t\treturn false;\n\t}\n\treturn RE.test( x );\n}\n\n\n// EXPORTS //\n\nmodule.exports = isWhitespace;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether a string contains only white space characters.\n*\n* @module @stdlib/assert/is-whitespace\n*\n* @example\n* var isWhitespace = require( '@stdlib/assert/is-whitespace' );\n*\n* var out = isWhitespace( ' ' );\n* // returns true\n*\n* out = isWhitespace( 'beep boop' );\n* // returns false\n*\n* out = isWhitespace( '' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar propertyDescriptor = require( '@stdlib/utils/property-descriptor' );\n\n\n// MAIN //\n\n/**\n* Tests if an object's own property is writable.\n*\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object property is writable\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': false,\n* 'writable': false,\n* 'value': 'beep'\n* });\n*\n* var bool = isWritableProperty( obj, 'boop' );\n* // returns true\n*\n* bool = isWritableProperty( obj, 'beep' );\n* // returns false\n*/\nfunction isWritableProperty( value, property ) {\n\tvar desc = propertyDescriptor( value, property );\n\treturn (\n\t\tdesc !== null &&\n\t\t(\n\t\t\tdesc.writable === true ||\n\t\t\ttypeof desc.set === 'function'\n\t\t)\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isWritableProperty;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object's own property is writable.\n*\n* @module @stdlib/assert/is-writable-property\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n* var isWritableProperty = require( '@stdlib/assert/is-writable-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': false,\n* 'writable': false,\n* 'value': 'beep'\n* });\n*\n* var bool = isWritableProperty( obj, 'boop' );\n* // returns true\n*\n* bool = isWritableProperty( obj, 'beep' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar propertyDescriptorIn = require( '@stdlib/utils/property-descriptor-in' );\n\n\n// MAIN //\n\n/**\n* Tests if an object's own or inherited property is writable.\n*\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object property is writable\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': false,\n* 'writable': false,\n* 'value': 'beep'\n* });\n*\n* var bool = isWritablePropertyIn( obj, 'boop' );\n* // returns true\n*\n* bool = isWritablePropertyIn( obj, 'beep' );\n* // returns false\n*/\nfunction isWritablePropertyIn( value, property ) {\n\tvar desc = propertyDescriptorIn( value, property );\n\treturn (\n\t\tdesc !== null &&\n\t\t(\n\t\t\tdesc.writable === true ||\n\t\t\ttypeof desc.set === 'function'\n\t\t)\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isWritablePropertyIn;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object's own or inherited property is writable.\n*\n* @module @stdlib/assert/is-writable-property-in\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n* var isWritablePropertyIn = require( '@stdlib/assert/is-writable-property-in' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': false,\n* 'writable': false,\n* 'value': 'beep'\n* });\n*\n* var bool = isWritablePropertyIn( obj, 'boop' );\n* // returns true\n*\n* bool = isWritablePropertyIn( obj, 'beep' );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar propertyDescriptor = require( '@stdlib/utils/property-descriptor' );\n\n\n// MAIN //\n\n/**\n* Tests if an object's own property is write-only.\n*\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object property is write-only\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* function setter( v ) {\n* obj.boop = v;\n* }\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': true,\n* 'set': setter\n* });\n*\n* var bool = isWriteOnlyProperty( obj, 'boop' );\n* // returns false\n*\n* bool = isWriteOnlyProperty( obj, 'beep' );\n* // returns true\n*/\nfunction isWriteOnlyProperty( value, property ) {\n\tvar desc = propertyDescriptor( value, property );\n\treturn (\n\t\tdesc !== null &&\n\t\tdesc.configurable === false &&\n\t\t(\n\t\t\ttypeof desc.set === 'function' &&\n\t\t\tdesc.get === void 0\n\t\t)\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isWriteOnlyProperty;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object's own property is write-only.\n*\n* @module @stdlib/assert/is-write-only-property\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n* var isWriteOnlyProperty = require( '@stdlib/assert/is-write-only-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* function setter( v ) {\n* obj.boop = v;\n* }\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': true,\n* 'set': setter\n* });\n*\n* var bool = isWriteOnlyProperty( obj, 'boop' );\n* // returns false\n*\n* bool = isWriteOnlyProperty( obj, 'beep' );\n* // returns true\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar propertyDescriptorIn = require( '@stdlib/utils/property-descriptor-in' );\n\n\n// MAIN //\n\n/**\n* Tests if an object's own or inherited property is write-only.\n*\n* @param {*} value - value to test\n* @param {*} property - property to test\n* @returns {boolean} boolean indicating if an object property is write-only\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* function setter( v ) {\n* obj.boop = v;\n* }\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': true,\n* 'set': setter\n* });\n*\n* var bool = isWriteOnlyPropertyIn( obj, 'boop' );\n* // returns false\n*\n* bool = isWriteOnlyPropertyIn( obj, 'beep' );\n* // returns true\n*/\nfunction isWriteOnlyPropertyIn( value, property ) {\n\tvar desc = propertyDescriptorIn( value, property );\n\treturn (\n\t\tdesc !== null &&\n\t\tdesc.configurable === false &&\n\t\t(\n\t\t\ttypeof desc.set === 'function' &&\n\t\t\tdesc.get === void 0\n\t\t)\n\t);\n}\n\n\n// EXPORTS //\n\nmodule.exports = isWriteOnlyPropertyIn;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Test whether an object's own or inherited property is write-only.\n*\n* @module @stdlib/assert/is-write-only-property-in\n*\n* @example\n* var defineProperty = require( '@stdlib/utils/define-property' );\n* var isWriteOnlyPropertyIn = require( '@stdlib/assert/is-write-only-property-in' );\n*\n* var obj = {\n* 'boop': true\n* };\n*\n* function setter( v ) {\n* obj.boop = v;\n* }\n*\n* defineProperty( obj, 'beep', {\n* 'configurable': false,\n* 'enumerable': true,\n* 'set': setter\n* });\n*\n* var bool = isWriteOnlyPropertyIn( obj, 'boop' );\n* // returns false\n*\n* bool = isWriteOnlyPropertyIn( obj, 'beep' );\n* // returns true\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n// MODULES //\n\nvar isTypedArray = require( './../../../is-typed-array' );\nvar format = require( '@stdlib/string/format' );\n\n\n// MAIN //\n\n/**\n* Returns a function which tests if every element in a typed array passes a test condition.\n*\n* @param {Function} predicate - function to apply\n* @throws {TypeError} must provide a function\n* @returns {Function} a typed array function\n*\n* @example\n* var isOdd = require( '@stdlib/assert/is-odd' );\n*\n* var arr1 = new Int32Array( [ 1, 3, 5, 7 ] );\n* var arr2 = new Int32Array( [ 1, 3, 5, 8 ] );\n*\n* var validate = typedarrayfcn( isOdd );\n*\n* var bool = validate( arr1 );\n* // returns true\n*\n* bool = validate( arr2 );\n* // returns false\n*/\nfunction typedarrayfcn( predicate ) {\n\tif ( typeof predicate !== 'function' ) {\n\t\tthrow new TypeError( format( 'invalid argument. Must provide a function. Value: `%s`.', predicate ) );\n\t}\n\treturn every;\n\n\t/**\n\t* Tests if every element in a typed array passes a test condition.\n\t*\n\t* @private\n\t* @param {*} value - value to test\n\t* @returns {boolean} boolean indicating whether a value is a typed array for which all elements pass a test condition\n\t*/\n\tfunction every( value ) {\n\t\tvar len;\n\t\tvar i;\n\t\tif ( !isTypedArray( value ) ) {\n\t\t\treturn false;\n\t\t}\n\t\tlen = value.length;\n\t\tif ( len === 0 ) {\n\t\t\treturn false;\n\t\t}\n\t\tfor ( i = 0; i < len; i++ ) {\n\t\t\tif ( predicate( value[ i ] ) === false ) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t\treturn true;\n\t}\n}\n\n\n// EXPORTS //\n\nmodule.exports = typedarrayfcn;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/**\n* Return a function which tests if every element in a typed array passes a test condition.\n*\n* @module @stdlib/assert/tools/typed-array-function\n*\n* @example\n* var isOdd = require( '@stdlib/math/base/assert/is-odd' );\n* var typedarrayfcn = require( '@stdlib/assert/tools/typed-array-function' );\n*\n* var arr1 = new Int32Array( [ 1, 3, 5, 7 ] );\n* var arr2 = new Int32Array( [ 3, 5, 6, 8 ] );\n*\n* var f = typedarrayfcn( isOdd );\n*\n* var bool = f( arr1 );\n* // returns true\n*\n* bool = f( arr2 );\n* // returns false\n*/\n\n// MODULES //\n\nvar main = require( './main.js' );\n\n\n// EXPORTS //\n\nmodule.exports = main;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/*\n* When adding modules to the namespace, ensure that they are added in alphabetical order according to module name.\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-read-only-property' );\n\n\n// MAIN //\n\n/**\n* Top-level namespace.\n*\n* @namespace ns\n*/\nvar ns = {};\n\n/**\n* @name arrayfcn\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/tools/array-function}\n*/\nsetReadOnly( ns, 'arrayfcn', require( './../../tools/array-function' ) );\n\n/**\n* @name arraylikefcn\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/tools/array-like-function}\n*/\nsetReadOnly( ns, 'arraylikefcn', require( './../../tools/array-like-function' ) );\n\n/**\n* @name typedarrayfcn\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/tools/typed-array-function}\n*/\nsetReadOnly( ns, 'typedarrayfcn', require( './../../tools/typed-array-function' ) );\n\n\n// EXPORTS //\n\nmodule.exports = ns;\n", "/**\n* @license Apache-2.0\n*\n* Copyright (c) 2018 The Stdlib Authors.\n*\n* Licensed under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License.\n* You may obtain a copy of the License at\n*\n* http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software\n* distributed under the License is distributed on an \"AS IS\" BASIS,\n* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n* See the License for the specific language governing permissions and\n* limitations under the License.\n*/\n\n'use strict';\n\n/*\n* When adding modules to the namespace, ensure that they are added in alphabetical order according to module name.\n*/\n\n// MODULES //\n\nvar setReadOnly = require( '@stdlib/utils/define-read-only-property' );\n\n\n// MAIN //\n\n/**\n* Top-level namespace.\n*\n* @namespace ns\n*/\nvar ns = {};\n\n/**\n* @name contains\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/contains}\n*/\nsetReadOnly( ns, 'contains', require( './../contains' ) );\n\n/**\n* @name deepEqual\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/deep-equal}\n*/\nsetReadOnly( ns, 'deepEqual', require( './../deep-equal' ) );\n\n/**\n* @name deepHasOwnProp\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/deep-has-own-property}\n*/\nsetReadOnly( ns, 'deepHasOwnProp', require( './../deep-has-own-property' ) );\n\n/**\n* @name deepHasProp\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/deep-has-property}\n*/\nsetReadOnly( ns, 'deepHasProp', require( './../deep-has-property' ) );\n\n/**\n* @name hasArrayBufferSupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-arraybuffer-support}\n*/\nsetReadOnly( ns, 'hasArrayBufferSupport', require( './../has-arraybuffer-support' ) );\n\n/**\n* @name hasArrowFunctionSupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-arrow-function-support}\n*/\nsetReadOnly( ns, 'hasArrowFunctionSupport', require( './../has-arrow-function-support' ) );\n\n/**\n* @name hasAsyncAwaitSupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-async-await-support}\n*/\nsetReadOnly( ns, 'hasAsyncAwaitSupport', require( './../has-async-await-support' ) );\n\n/**\n* @name hasAsyncIteratorSymbolSupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-async-iterator-symbol-support}\n*/\nsetReadOnly( ns, 'hasAsyncIteratorSymbolSupport', require( './../has-async-iterator-symbol-support' ) );\n\n/**\n* @name hasBigIntSupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-bigint-support}\n*/\nsetReadOnly( ns, 'hasBigIntSupport', require( './../has-bigint-support' ) );\n\n/**\n* @name hasBigInt64ArraySupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-bigint64array-support}\n*/\nsetReadOnly( ns, 'hasBigInt64ArraySupport', require( './../has-bigint64array-support' ) );\n\n/**\n* @name hasBigUint64ArraySupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-biguint64array-support}\n*/\nsetReadOnly( ns, 'hasBigUint64ArraySupport', require( './../has-biguint64array-support' ) );\n\n/**\n* @name hasClassSupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-class-support}\n*/\nsetReadOnly( ns, 'hasClassSupport', require( './../has-class-support' ) );\n\n/**\n* @name hasDataViewSupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-dataview-support}\n*/\nsetReadOnly( ns, 'hasDataViewSupport', require( './../has-dataview-support' ) );\n\n/**\n* @name hasDefinePropertiesSupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-define-properties-support}\n*/\nsetReadOnly( ns, 'hasDefinePropertiesSupport', require( './../has-define-properties-support' ) );\n\n/**\n* @name hasDefinePropertySupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-define-property-support}\n*/\nsetReadOnly( ns, 'hasDefinePropertySupport', require( './../has-define-property-support' ) );\n\n/**\n* @name hasFloat32ArraySupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-float32array-support}\n*/\nsetReadOnly( ns, 'hasFloat32ArraySupport', require( './../has-float32array-support' ) );\n\n/**\n* @name hasFloat64ArraySupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-float64array-support}\n*/\nsetReadOnly( ns, 'hasFloat64ArraySupport', require( './../has-float64array-support' ) );\n\n/**\n* @name hasFunctionNameSupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-function-name-support}\n*/\nsetReadOnly( ns, 'hasFunctionNameSupport', require( './../has-function-name-support' ) );\n\n/**\n* @name hasGeneratorSupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-generator-support}\n*/\nsetReadOnly( ns, 'hasGeneratorSupport', require( './../has-generator-support' ) );\n\n/**\n* @name hasGlobalThisSupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-globalthis-support}\n*/\nsetReadOnly( ns, 'hasGlobalThisSupport', require( './../has-globalthis-support' ) );\n\n/**\n* @name hasInt8ArraySupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-int8array-support}\n*/\nsetReadOnly( ns, 'hasInt8ArraySupport', require( './../has-int8array-support' ) );\n\n/**\n* @name hasInt16ArraySupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-int16array-support}\n*/\nsetReadOnly( ns, 'hasInt16ArraySupport', require( './../has-int16array-support' ) );\n\n/**\n* @name hasInt32ArraySupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-int32array-support}\n*/\nsetReadOnly( ns, 'hasInt32ArraySupport', require( './../has-int32array-support' ) );\n\n/**\n* @name hasIteratorSymbolSupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-iterator-symbol-support}\n*/\nsetReadOnly( ns, 'hasIteratorSymbolSupport', require( './../has-iterator-symbol-support' ) );\n\n/**\n* @name hasMapSupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-map-support}\n*/\nsetReadOnly( ns, 'hasMapSupport', require( './../has-map-support' ) );\n\n/**\n* @name hasNodeBufferSupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-node-buffer-support}\n*/\nsetReadOnly( ns, 'hasNodeBufferSupport', require( './../has-node-buffer-support' ) );\n\n/**\n* @name hasOwnProp\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-own-property}\n*/\nsetReadOnly( ns, 'hasOwnProp', require( './../has-own-property' ) );\n\n/**\n* @name hasProp\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-property}\n*/\nsetReadOnly( ns, 'hasProp', require( './../has-property' ) );\n\n/**\n* @name hasProxySupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-proxy-support}\n*/\nsetReadOnly( ns, 'hasProxySupport', require( './../has-proxy-support' ) );\n\n/**\n* @name hasSetSupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-set-support}\n*/\nsetReadOnly( ns, 'hasSetSupport', require( './../has-set-support' ) );\n\n/**\n* @name hasSharedArrayBufferSupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-sharedarraybuffer-support}\n*/\nsetReadOnly( ns, 'hasSharedArrayBufferSupport', require( './../has-sharedarraybuffer-support' ) );\n\n/**\n* @name hasSymbolSupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-symbol-support}\n*/\nsetReadOnly( ns, 'hasSymbolSupport', require( './../has-symbol-support' ) );\n\n/**\n* @name hasToStringTagSupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-tostringtag-support}\n*/\nsetReadOnly( ns, 'hasToStringTagSupport', require( './../has-tostringtag-support' ) );\n\n/**\n* @name hasUint8ArraySupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-uint8array-support}\n*/\nsetReadOnly( ns, 'hasUint8ArraySupport', require( './../has-uint8array-support' ) );\n\n/**\n* @name hasUint8ClampedArraySupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-uint8clampedarray-support}\n*/\nsetReadOnly( ns, 'hasUint8ClampedArraySupport', require( './../has-uint8clampedarray-support' ) );\n\n/**\n* @name hasUint16ArraySupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-uint16array-support}\n*/\nsetReadOnly( ns, 'hasUint16ArraySupport', require( './../has-uint16array-support' ) );\n\n/**\n* @name hasUint32ArraySupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-uint32array-support}\n*/\nsetReadOnly( ns, 'hasUint32ArraySupport', require( './../has-uint32array-support' ) );\n\n/**\n* @name hasUTF16SurrogatePairAt\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-utf16-surrogate-pair-at}\n*/\nsetReadOnly( ns, 'hasUTF16SurrogatePairAt', require( './../has-utf16-surrogate-pair-at' ) );\n\n/**\n* @name hasWebAssemblySupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-wasm-support}\n*/\nsetReadOnly( ns, 'hasWebAssemblySupport', require( './../has-wasm-support' ) );\n\n/**\n* @name hasWeakMapSupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-weakmap-support}\n*/\nsetReadOnly( ns, 'hasWeakMapSupport', require( './../has-weakmap-support' ) );\n\n/**\n* @name hasWeakSetSupport\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/has-weakset-support}\n*/\nsetReadOnly( ns, 'hasWeakSetSupport', require( './../has-weakset-support' ) );\n\n/**\n* @name instanceOf\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/instance-of}\n*/\nsetReadOnly( ns, 'instanceOf', require( './../instance-of' ) );\n\n/**\n* @name isAbsoluteHttpURI\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-absolute-http-uri}\n*/\nsetReadOnly( ns, 'isAbsoluteHttpURI', require( './../is-absolute-http-uri' ) );\n\n/**\n* @name isAbsolutePath\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-absolute-path}\n*/\nsetReadOnly( ns, 'isAbsolutePath', require( './../is-absolute-path' ) );\n\n/**\n* @name isAbsoluteURI\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-absolute-uri}\n*/\nsetReadOnly( ns, 'isAbsoluteURI', require( './../is-absolute-uri' ) );\n\n/**\n* @name isAccessorArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-accessor-array}\n*/\nsetReadOnly( ns, 'isAccessorArray', require( './../is-accessor-array' ) );\n\n/**\n* @name isAccessorProperty\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-accessor-property}\n*/\nsetReadOnly( ns, 'isAccessorProperty', require( './../is-accessor-property' ) );\n\n/**\n* @name isAccessorPropertyIn\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-accessor-property-in}\n*/\nsetReadOnly( ns, 'isAccessorPropertyIn', require( './../is-accessor-property-in' ) );\n\n/**\n* @name isAlphagram\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-alphagram}\n*/\nsetReadOnly( ns, 'isAlphagram', require( './../is-alphagram' ) );\n\n/**\n* @name isAlphaNumeric\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-alphanumeric}\n*/\nsetReadOnly( ns, 'isAlphaNumeric', require( './../is-alphanumeric' ) );\n\n/**\n* @name isAnagram\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-anagram}\n*/\nsetReadOnly( ns, 'isAnagram', require( './../is-anagram' ) );\n\n/**\n* @name isArguments\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-arguments}\n*/\nsetReadOnly( ns, 'isArguments', require( './../is-arguments' ) );\n\n/**\n* @name isArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-array}\n*/\nsetReadOnly( ns, 'isArray', require( './../is-array' ) );\n\n/**\n* @name isArrayArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-array-array}\n*/\nsetReadOnly( ns, 'isArrayArray', require( './../is-array-array' ) );\n\n/**\n* @name isArrayLength\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-array-length}\n*/\nsetReadOnly( ns, 'isArrayLength', require( './../is-array-length' ) );\n\n/**\n* @name isArrayLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-array-like}\n*/\nsetReadOnly( ns, 'isArrayLike', require( './../is-array-like' ) );\n\n/**\n* @name isArrayLikeObject\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-array-like-object}\n*/\nsetReadOnly( ns, 'isArrayLikeObject', require( './../is-array-like-object' ) );\n\n/**\n* @name isArrayBuffer\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-arraybuffer}\n*/\nsetReadOnly( ns, 'isArrayBuffer', require( './../is-arraybuffer' ) );\n\n/**\n* @name isArrayBufferView\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-arraybuffer-view}\n*/\nsetReadOnly( ns, 'isArrayBufferView', require( './../is-arraybuffer-view' ) );\n\n/**\n* @name isArrowFunction\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-arrow-function}\n*/\nsetReadOnly( ns, 'isArrowFunction', require( './../is-arrow-function' ) );\n\n/**\n* @name isASCII\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-ascii}\n*/\nsetReadOnly( ns, 'isASCII', require( './../is-ascii' ) );\n\n/**\n* @name isBetween\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-between}\n*/\nsetReadOnly( ns, 'isBetween', require( './../is-between' ) );\n\n/**\n* @name isBetweenArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-between-array}\n*/\nsetReadOnly( ns, 'isBetweenArray', require( './../is-between-array' ) );\n\n/**\n* @name IS_BIG_ENDIAN\n* @memberof ns\n* @readonly\n* @type {boolean}\n* @see {@link module:@stdlib/assert/is-big-endian}\n*/\nsetReadOnly( ns, 'IS_BIG_ENDIAN', require( './../is-big-endian' ) );\n\n/**\n* @name isBigInt\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-bigint}\n*/\nsetReadOnly( ns, 'isBigInt', require( './../is-bigint' ) );\n\n/**\n* @name isBigInt64Array\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-bigint64array}\n*/\nsetReadOnly( ns, 'isBigInt64Array', require( './../is-bigint64array' ) );\n\n/**\n* @name isBigUint64Array\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-biguint64array}\n*/\nsetReadOnly( ns, 'isBigUint64Array', require( './../is-biguint64array' ) );\n\n/**\n* @name isBinaryString\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-binary-string}\n*/\nsetReadOnly( ns, 'isBinaryString', require( './../is-binary-string' ) );\n\n/**\n* @name isBlankString\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-blank-string}\n*/\nsetReadOnly( ns, 'isBlankString', require( './../is-blank-string' ) );\n\n/**\n* @name isBoolean\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-boolean}\n*/\nsetReadOnly( ns, 'isBoolean', require( './../is-boolean' ) );\n\n/**\n* @name isBooleanArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-boolean-array}\n*/\nsetReadOnly( ns, 'isBooleanArray', require( './../is-boolean-array' ) );\n\n/**\n* @name isBoxedPrimitive\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-boxed-primitive}\n*/\nsetReadOnly( ns, 'isBoxedPrimitive', require( './../is-boxed-primitive' ) );\n\n/**\n* @name IS_BROWSER\n* @memberof ns\n* @readonly\n* @type {boolean}\n* @see {@link module:@stdlib/assert/is-browser}\n*/\nsetReadOnly( ns, 'IS_BROWSER', require( './../is-browser' ) );\n\n/**\n* @name isBuffer\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-buffer}\n*/\nsetReadOnly( ns, 'isBuffer', require( './../is-buffer' ) );\n\n/**\n* @name isCamelcase\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-camelcase}\n*/\nsetReadOnly( ns, 'isCamelcase', require( './../is-camelcase' ) );\n\n/**\n* @name isCapitalized\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-capitalized}\n*/\nsetReadOnly( ns, 'isCapitalized', require( './../is-capitalized' ) );\n\n/**\n* @name isCentrosymmetricMatrix\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-centrosymmetric-matrix}\n*/\nsetReadOnly( ns, 'isCentrosymmetricMatrix', require( './../is-centrosymmetric-matrix' ) );\n\n/**\n* @name isCircular\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-circular}\n*/\nsetReadOnly( ns, 'isCircular', require( './../is-circular' ) );\n\n/**\n* @name isCircularArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-circular-array}\n*/\nsetReadOnly( ns, 'isCircularArray', require( './../is-circular-array' ) );\n\n/**\n* @name isCircularPlainObject\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-circular-plain-object}\n*/\nsetReadOnly( ns, 'isCircularPlainObject', require( './../is-circular-plain-object' ) );\n\n/**\n* @name isClass\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-class}\n*/\nsetReadOnly( ns, 'isClass', require( './../is-class' ) );\n\n/**\n* @name isCollection\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-collection}\n*/\nsetReadOnly( ns, 'isCollection', require( './../is-collection' ) );\n\n/**\n* @name isComplex\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-complex}\n*/\nsetReadOnly( ns, 'isComplex', require( './../is-complex' ) );\n\n/**\n* @name isComplexLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-complex-like}\n*/\nsetReadOnly( ns, 'isComplexLike', require( './../is-complex-like' ) );\n\n/**\n* @name isComplexTypedArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-complex-typed-array}\n*/\nsetReadOnly( ns, 'isComplexTypedArray', require( './../is-complex-typed-array' ) );\n\n/**\n* @name isComplexTypedArrayLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-complex-typed-array-like}\n*/\nsetReadOnly( ns, 'isComplexTypedArrayLike', require( './../is-complex-typed-array-like' ) );\n\n/**\n* @name isComplex64\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-complex64}\n*/\nsetReadOnly( ns, 'isComplex64', require( './../is-complex64' ) );\n\n/**\n* @name isComplex64Array\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-complex64array}\n*/\nsetReadOnly( ns, 'isComplex64Array', require( './../is-complex64array' ) );\n\n/**\n* @name isComplex64MatrixLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-complex64matrix-like}\n*/\nsetReadOnly( ns, 'isComplex64MatrixLike', require( './../is-complex64matrix-like' ) );\n\n/**\n* @name isComplex64ndarrayLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-complex64ndarray-like}\n*/\nsetReadOnly( ns, 'isComplex64ndarrayLike', require( './../is-complex64ndarray-like' ) );\n\n/**\n* @name isComplex64VectorLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-complex64vector-like}\n*/\nsetReadOnly( ns, 'isComplex64VectorLike', require( './../is-complex64vector-like' ) );\n\n/**\n* @name isComplex128\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-complex128}\n*/\nsetReadOnly( ns, 'isComplex128', require( './../is-complex128' ) );\n\n/**\n* @name isComplex128Array\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-complex128array}\n*/\nsetReadOnly( ns, 'isComplex128Array', require( './../is-complex128array' ) );\n\n/**\n* @name isComplex128MatrixLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-complex128matrix-like}\n*/\nsetReadOnly( ns, 'isComplex128MatrixLike', require( './../is-complex128matrix-like' ) );\n\n/**\n* @name isComplex128ndarrayLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-complex128ndarray-like}\n*/\nsetReadOnly( ns, 'isComplex128ndarrayLike', require( './../is-complex128ndarray-like' ) );\n\n/**\n* @name isComplex128VectorLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-complex128vector-like}\n*/\nsetReadOnly( ns, 'isComplex128VectorLike', require( './../is-complex128vector-like' ) );\n\n/**\n* @name isComposite\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-composite}\n*/\nsetReadOnly( ns, 'isComposite', require( './../is-composite' ) );\n\n/**\n* @name isConfigurableProperty\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-configurable-property}\n*/\nsetReadOnly( ns, 'isConfigurableProperty', require( './../is-configurable-property' ) );\n\n/**\n* @name isConfigurablePropertyIn\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-configurable-property-in}\n*/\nsetReadOnly( ns, 'isConfigurablePropertyIn', require( './../is-configurable-property-in' ) );\n\n/**\n* @name isConstantcase\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-constantcase}\n*/\nsetReadOnly( ns, 'isConstantcase', require( './../is-constantcase' ) );\n\n/**\n* @name isCubeNumber\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-cube-number}\n*/\nsetReadOnly( ns, 'isCubeNumber', require( './../is-cube-number' ) );\n\n/**\n* @name isCurrentYear\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-current-year}\n*/\nsetReadOnly( ns, 'isCurrentYear', require( './../is-current-year' ) );\n\n/**\n* @name IS_DARWIN\n* @memberof ns\n* @readonly\n* @type {boolean}\n* @see {@link module:@stdlib/assert/is-darwin}\n*/\nsetReadOnly( ns, 'IS_DARWIN', require( './../is-darwin' ) );\n\n/**\n* @name isDataProperty\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-data-property}\n*/\nsetReadOnly( ns, 'isDataProperty', require( './../is-data-property' ) );\n\n/**\n* @name isDataPropertyIn\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-data-property-in}\n*/\nsetReadOnly( ns, 'isDataPropertyIn', require( './../is-data-property-in' ) );\n\n/**\n* @name isDataView\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-dataview}\n*/\nsetReadOnly( ns, 'isDataView', require( './../is-dataview' ) );\n\n/**\n* @name isDateObject\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-date-object}\n*/\nsetReadOnly( ns, 'isDateObject', require( './../is-date-object' ) );\n\n/**\n* @name isDateObjectArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-date-object-array}\n*/\nsetReadOnly( ns, 'isDateObjectArray', require( './../is-date-object-array' ) );\n\n/**\n* @name isDigitString\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-digit-string}\n*/\nsetReadOnly( ns, 'isDigitString', require( './../is-digit-string' ) );\n\n/**\n* @name IS_DOCKER\n* @memberof ns\n* @readonly\n* @type {boolean}\n* @see {@link module:@stdlib/assert/is-docker}\n*/\nsetReadOnly( ns, 'IS_DOCKER', require( './../is-docker' ) );\n\n/**\n* @name isDomainName\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-domain-name}\n*/\nsetReadOnly( ns, 'isDomainName', require( './../is-domain-name' ) );\n\n/**\n* @name isDurationString\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-duration-string}\n*/\nsetReadOnly( ns, 'isDurationString', require( './../is-duration-string' ) );\n\n/**\n* @name IS_ELECTRON\n* @memberof ns\n* @readonly\n* @type {boolean}\n* @see {@link module:@stdlib/assert/is-electron}\n*/\nsetReadOnly( ns, 'IS_ELECTRON', require( './../is-electron' ) );\n\n/**\n* @name IS_ELECTRON_MAIN\n* @memberof ns\n* @readonly\n* @type {boolean}\n* @see {@link module:@stdlib/assert/is-electron-main}\n*/\nsetReadOnly( ns, 'IS_ELECTRON_MAIN', require( './../is-electron-main' ) );\n\n/**\n* @name IS_ELECTRON_RENDERER\n* @memberof ns\n* @readonly\n* @type {boolean}\n* @see {@link module:@stdlib/assert/is-electron-renderer}\n*/\nsetReadOnly( ns, 'IS_ELECTRON_RENDERER', require( './../is-electron-renderer' ) );\n\n/**\n* @name isEmailAddress\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-email-address}\n*/\nsetReadOnly( ns, 'isEmailAddress', require( './../is-email-address' ) );\n\n/**\n* @name isEmptyArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-empty-array}\n*/\nsetReadOnly( ns, 'isEmptyArray', require( './../is-empty-array' ) );\n\n/**\n* @name isEmptyArrayLikeObject\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-empty-array-like-object}\n*/\nsetReadOnly( ns, 'isEmptyArrayLikeObject', require( './../is-empty-array-like-object' ) );\n\n/**\n* @name isEmptyCollection\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-empty-collection}\n*/\nsetReadOnly( ns, 'isEmptyCollection', require( './../is-empty-collection' ) );\n\n/**\n* @name isEmptyObject\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-empty-object}\n*/\nsetReadOnly( ns, 'isEmptyObject', require( './../is-empty-object' ) );\n\n/**\n* @name isEmptyString\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-empty-string}\n*/\nsetReadOnly( ns, 'isEmptyString', require( './../is-empty-string' ) );\n\n/**\n* @name isEnumerableProperty\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-enumerable-property}\n*/\nsetReadOnly( ns, 'isEnumerableProperty', require( './../is-enumerable-property' ) );\n\n/**\n* @name isEnumerablePropertyIn\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-enumerable-property-in}\n*/\nsetReadOnly( ns, 'isEnumerablePropertyIn', require( './../is-enumerable-property-in' ) );\n\n/**\n* @name isError\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-error}\n*/\nsetReadOnly( ns, 'isError', require( './../is-error' ) );\n\n/**\n* @name isEvalError\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-eval-error}\n*/\nsetReadOnly( ns, 'isEvalError', require( './../is-eval-error' ) );\n\n/**\n* @name isEven\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-even}\n*/\nsetReadOnly( ns, 'isEven', require( './../is-even' ) );\n\n/**\n* @name isFalsy\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-falsy}\n*/\nsetReadOnly( ns, 'isFalsy', require( './../is-falsy' ) );\n\n/**\n* @name isFalsyArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-falsy-array}\n*/\nsetReadOnly( ns, 'isFalsyArray', require( './../is-falsy-array' ) );\n\n/**\n* @name isFinite\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-finite}\n*/\nsetReadOnly( ns, 'isFinite', require( './../is-finite' ) );\n\n/**\n* @name isFiniteArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-finite-array}\n*/\nsetReadOnly( ns, 'isFiniteArray', require( './../is-finite-array' ) );\n\n/**\n* @name isFloat32Array\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-float32array}\n*/\nsetReadOnly( ns, 'isFloat32Array', require( './../is-float32array' ) );\n\n/**\n* @name isFloat32MatrixLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-float32matrix-like}\n*/\nsetReadOnly( ns, 'isFloat32MatrixLike', require( './../is-float32matrix-like' ) );\n\n/**\n* @name isFloat32ndarrayLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-float32ndarray-like}\n*/\nsetReadOnly( ns, 'isFloat32ndarrayLike', require( './../is-float32ndarray-like' ) );\n\n/**\n* @name isFloat32VectorLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-float32vector-like}\n*/\nsetReadOnly( ns, 'isFloat32VectorLike', require( './../is-float32vector-like' ) );\n\n/**\n* @name isFloat64Array\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-float64array}\n*/\nsetReadOnly( ns, 'isFloat64Array', require( './../is-float64array' ) );\n\n/**\n* @name isFloat64MatrixLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-float64matrix-like}\n*/\nsetReadOnly( ns, 'isFloat64MatrixLike', require( './../is-float64matrix-like' ) );\n\n/**\n* @name isFloat64ndarrayLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-float64ndarray-like}\n*/\nsetReadOnly( ns, 'isFloat64ndarrayLike', require( './../is-float64ndarray-like' ) );\n\n/**\n* @name isFloat64VectorLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-float64vector-like}\n*/\nsetReadOnly( ns, 'isFloat64VectorLike', require( './../is-float64vector-like' ) );\n\n/**\n* @name isFunction\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-function}\n*/\nsetReadOnly( ns, 'isFunction', require( './../is-function' ) );\n\n/**\n* @name isFunctionArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-function-array}\n*/\nsetReadOnly( ns, 'isFunctionArray', require( './../is-function-array' ) );\n\n/**\n* @name isGeneratorObject\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-generator-object}\n*/\nsetReadOnly( ns, 'isGeneratorObject', require( './../is-generator-object' ) );\n\n/**\n* @name isGeneratorObjectLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-generator-object-like}\n*/\nsetReadOnly( ns, 'isGeneratorObjectLike', require( './../is-generator-object-like' ) );\n\n/**\n* @name isgzipBuffer\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-gzip-buffer}\n*/\nsetReadOnly( ns, 'isgzipBuffer', require( './../is-gzip-buffer' ) );\n\n/**\n* @name isHexString\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-hex-string}\n*/\nsetReadOnly( ns, 'isHexString', require( './../is-hex-string' ) );\n\n/**\n* @name isInfinite\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-infinite}\n*/\nsetReadOnly( ns, 'isInfinite', require( './../is-infinite' ) );\n\n/**\n* @name isInheritedProperty\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-inherited-property}\n*/\nsetReadOnly( ns, 'isInheritedProperty', require( './../is-inherited-property' ) );\n\n/**\n* @name isInt8Array\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-int8array}\n*/\nsetReadOnly( ns, 'isInt8Array', require( './../is-int8array' ) );\n\n/**\n* @name isInt16Array\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-int16array}\n*/\nsetReadOnly( ns, 'isInt16Array', require( './../is-int16array' ) );\n\n/**\n* @name isInt32Array\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-int32array}\n*/\nsetReadOnly( ns, 'isInt32Array', require( './../is-int32array' ) );\n\n/**\n* @name isInteger\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-integer}\n*/\nsetReadOnly( ns, 'isInteger', require( './../is-integer' ) );\n\n/**\n* @name isIntegerArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-integer-array}\n*/\nsetReadOnly( ns, 'isIntegerArray', require( './../is-integer-array' ) );\n\n/**\n* @name isIterableLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-iterable-like}\n*/\nsetReadOnly( ns, 'isIterableLike', require( './../is-iterable-like' ) );\n\n/**\n* @name isIteratorLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-iterator-like}\n*/\nsetReadOnly( ns, 'isIteratorLike', require( './../is-iterator-like' ) );\n\n/**\n* @name isJSON\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-json}\n*/\nsetReadOnly( ns, 'isJSON', require( './../is-json' ) );\n\n/**\n* @name isKebabcase\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-kebabcase}\n*/\nsetReadOnly( ns, 'isKebabcase', require( './../is-kebabcase' ) );\n\n/**\n* @name isLeapYear\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-leap-year}\n*/\nsetReadOnly( ns, 'isLeapYear', require( './../is-leap-year' ) );\n\n/**\n* @name IS_LITTLE_ENDIAN\n* @memberof ns\n* @readonly\n* @type {boolean}\n* @see {@link module:@stdlib/assert/is-little-endian}\n*/\nsetReadOnly( ns, 'IS_LITTLE_ENDIAN', require( './../is-little-endian' ) );\n\n/**\n* @name isLocalhost\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-localhost}\n*/\nsetReadOnly( ns, 'isLocalhost', require( './../is-localhost' ) );\n\n/**\n* @name isLowercase\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-lowercase}\n*/\nsetReadOnly( ns, 'isLowercase', require( './../is-lowercase' ) );\n\n/**\n* @name isMatrixLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-matrix-like}\n*/\nsetReadOnly( ns, 'isMatrixLike', require( './../is-matrix-like' ) );\n\n/**\n* @name isMethod\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-method}\n*/\nsetReadOnly( ns, 'isMethod', require( './../is-method' ) );\n\n/**\n* @name isMethodIn\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-method-in}\n*/\nsetReadOnly( ns, 'isMethodIn', require( './../is-method-in' ) );\n\n/**\n* @name IS_MOBILE\n* @memberof ns\n* @readonly\n* @type {boolean}\n* @see {@link module:@stdlib/assert/is-mobile}\n*/\nsetReadOnly( ns, 'IS_MOBILE', require( './../is-mobile' ) );\n\n/**\n* @name isMultiSlice\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-multi-slice}\n*/\nsetReadOnly( ns, 'isMultiSlice', require( './../is-multi-slice' ) );\n\n/**\n* @name isNamedTypedTupleLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-named-typed-tuple-like}\n*/\nsetReadOnly( ns, 'isNamedTypedTupleLike', require( './../is-named-typed-tuple-like' ) );\n\n/**\n* @name isnan\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-nan}\n*/\nsetReadOnly( ns, 'isnan', require( './../is-nan' ) );\n\n/**\n* @name isNaNArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-nan-array}\n*/\nsetReadOnly( ns, 'isNaNArray', require( './../is-nan-array' ) );\n\n/**\n* @name isNativeFunction\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-native-function}\n*/\nsetReadOnly( ns, 'isNativeFunction', require( './../is-native-function' ) );\n\n/**\n* @name isndarrayLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-ndarray-like}\n*/\nsetReadOnly( ns, 'isndarrayLike', require( './../is-ndarray-like' ) );\n\n/**\n* @name isNegativeInteger\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-negative-integer}\n*/\nsetReadOnly( ns, 'isNegativeInteger', require( './../is-negative-integer' ) );\n\n/**\n* @name isNegativeIntegerArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-negative-integer-array}\n*/\nsetReadOnly( ns, 'isNegativeIntegerArray', require( './../is-negative-integer-array' ) );\n\n/**\n* @name isNegativeNumber\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-negative-number}\n*/\nsetReadOnly( ns, 'isNegativeNumber', require( './../is-negative-number' ) );\n\n/**\n* @name isNegativeNumberArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-negative-number-array}\n*/\nsetReadOnly( ns, 'isNegativeNumberArray', require( './../is-negative-number-array' ) );\n\n/**\n* @name isNegativeZero\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-negative-zero}\n*/\nsetReadOnly( ns, 'isNegativeZero', require( './../is-negative-zero' ) );\n\n/**\n* @name IS_NODE\n* @memberof ns\n* @readonly\n* @type {boolean}\n* @see {@link module:@stdlib/assert/is-node}\n*/\nsetReadOnly( ns, 'IS_NODE', require( './../is-node' ) );\n\n/**\n* @name isNodeBuiltin\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-node-builtin}\n*/\nsetReadOnly( ns, 'isNodeBuiltin', require( './../is-node-builtin' ) );\n\n/**\n* @name isNodeDuplexStreamLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-node-duplex-stream-like}\n*/\nsetReadOnly( ns, 'isNodeDuplexStreamLike', require( './../is-node-duplex-stream-like' ) );\n\n/**\n* @name isNodeReadableStreamLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-node-readable-stream-like}\n*/\nsetReadOnly( ns, 'isNodeReadableStreamLike', require( './../is-node-readable-stream-like' ) );\n\n/**\n* @name isNodeREPL\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-node-repl}\n*/\nsetReadOnly( ns, 'isNodeREPL', require( './../is-node-repl' ) );\n\n/**\n* @name isNodeStreamLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-node-stream-like}\n*/\nsetReadOnly( ns, 'isNodeStreamLike', require( './../is-node-stream-like' ) );\n\n/**\n* @name isNodeTransformStreamLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-node-transform-stream-like}\n*/\nsetReadOnly( ns, 'isNodeTransformStreamLike', require( './../is-node-transform-stream-like' ) );\n\n/**\n* @name isNodeWritableStreamLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-node-writable-stream-like}\n*/\nsetReadOnly( ns, 'isNodeWritableStreamLike', require( './../is-node-writable-stream-like' ) );\n\n/**\n* @name isNonConfigurableProperty\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-nonconfigurable-property}\n*/\nsetReadOnly( ns, 'isNonConfigurableProperty', require( './../is-nonconfigurable-property' ) );\n\n/**\n* @name isNonConfigurablePropertyIn\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-nonconfigurable-property-in}\n*/\nsetReadOnly( ns, 'isNonConfigurablePropertyIn', require( './../is-nonconfigurable-property-in' ) );\n\n/**\n* @name isNonEnumerableProperty\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-nonenumerable-property}\n*/\nsetReadOnly( ns, 'isNonEnumerableProperty', require( './../is-nonenumerable-property' ) );\n\n/**\n* @name isNonEnumerablePropertyIn\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-nonenumerable-property-in}\n*/\nsetReadOnly( ns, 'isNonEnumerablePropertyIn', require( './../is-nonenumerable-property-in' ) );\n\n/**\n* @name isNonNegativeInteger\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-nonnegative-integer}\n*/\nsetReadOnly( ns, 'isNonNegativeInteger', require( './../is-nonnegative-integer' ) );\n\n/**\n* @name isNonNegativeIntegerArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-nonnegative-integer-array}\n*/\nsetReadOnly( ns, 'isNonNegativeIntegerArray', require( './../is-nonnegative-integer-array' ) );\n\n/**\n* @name isNonNegativeNumber\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-nonnegative-number}\n*/\nsetReadOnly( ns, 'isNonNegativeNumber', require( './../is-nonnegative-number' ) );\n\n/**\n* @name isNonNegativeNumberArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-nonnegative-number-array}\n*/\nsetReadOnly( ns, 'isNonNegativeNumberArray', require( './../is-nonnegative-number-array' ) );\n\n/**\n* @name isNonPositiveInteger\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-nonpositive-integer}\n*/\nsetReadOnly( ns, 'isNonPositiveInteger', require( './../is-nonpositive-integer' ) );\n\n/**\n* @name isNonPositiveIntegerArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-nonpositive-integer-array}\n*/\nsetReadOnly( ns, 'isNonPositiveIntegerArray', require( './../is-nonpositive-integer-array' ) );\n\n/**\n* @name isNonPositiveNumber\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-nonpositive-number}\n*/\nsetReadOnly( ns, 'isNonPositiveNumber', require( './../is-nonpositive-number' ) );\n\n/**\n* @name isNonPositiveNumberArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-nonpositive-number-array}\n*/\nsetReadOnly( ns, 'isNonPositiveNumberArray', require( './../is-nonpositive-number-array' ) );\n\n/**\n* @name isNonSymmetricMatrix\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-nonsymmetric-matrix}\n*/\nsetReadOnly( ns, 'isNonSymmetricMatrix', require( './../is-nonsymmetric-matrix' ) );\n\n/**\n* @name isNull\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-null}\n*/\nsetReadOnly( ns, 'isNull', require( './../is-null' ) );\n\n/**\n* @name isNullArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-null-array}\n*/\nsetReadOnly( ns, 'isNullArray', require( './../is-null-array' ) );\n\n/**\n* @name isNumber\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-number}\n*/\nsetReadOnly( ns, 'isNumber', require( './../is-number' ) );\n\n/**\n* @name isNumberArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-number-array}\n*/\nsetReadOnly( ns, 'isNumberArray', require( './../is-number-array' ) );\n\n/**\n* @name isNumericArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-numeric-array}\n*/\nsetReadOnly( ns, 'isNumericArray', require( './../is-numeric-array' ) );\n\n/**\n* @name isObject\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-object}\n*/\nsetReadOnly( ns, 'isObject', require( './../is-object' ) );\n\n/**\n* @name isObjectArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-object-array}\n*/\nsetReadOnly( ns, 'isObjectArray', require( './../is-object-array' ) );\n\n/**\n* @name isObjectLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-object-like}\n*/\nsetReadOnly( ns, 'isObjectLike', require( './../is-object-like' ) );\n\n/**\n* @name isOdd\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-odd}\n*/\nsetReadOnly( ns, 'isOdd', require( './../is-odd' ) );\n\n/**\n* @name isPascalcase\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-pascalcase}\n*/\nsetReadOnly( ns, 'isPascalcase', require( './../is-pascalcase' ) );\n\n/**\n* @name isPersymmetricMatrix\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-persymmetric-matrix}\n*/\nsetReadOnly( ns, 'isPersymmetricMatrix', require( './../is-persymmetric-matrix' ) );\n\n/**\n* @name isPlainObject\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-plain-object}\n*/\nsetReadOnly( ns, 'isPlainObject', require( './../is-plain-object' ) );\n\n/**\n* @name isPlainObjectArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-plain-object-array}\n*/\nsetReadOnly( ns, 'isPlainObjectArray', require( './../is-plain-object-array' ) );\n\n/**\n* @name isPositiveInteger\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-positive-integer}\n*/\nsetReadOnly( ns, 'isPositiveInteger', require( './../is-positive-integer' ) );\n\n/**\n* @name isPositiveIntegerArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-positive-integer-array}\n*/\nsetReadOnly( ns, 'isPositiveIntegerArray', require( './../is-positive-integer-array' ) );\n\n/**\n* @name isPositiveNumber\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-positive-number}\n*/\nsetReadOnly( ns, 'isPositiveNumber', require( './../is-positive-number' ) );\n\n/**\n* @name isPositiveNumberArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-positive-number-array}\n*/\nsetReadOnly( ns, 'isPositiveNumberArray', require( './../is-positive-number-array' ) );\n\n/**\n* @name isPositiveZero\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-positive-zero}\n*/\nsetReadOnly( ns, 'isPositiveZero', require( './../is-positive-zero' ) );\n\n/**\n* @name isPrime\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-prime}\n*/\nsetReadOnly( ns, 'isPrime', require( './../is-prime' ) );\n\n/**\n* @name isPrimitive\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-primitive}\n*/\nsetReadOnly( ns, 'isPrimitive', require( './../is-primitive' ) );\n\n/**\n* @name isPrimitiveArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-primitive-array}\n*/\nsetReadOnly( ns, 'isPrimitiveArray', require( './../is-primitive-array' ) );\n\n/**\n* @name isPRNGLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-prng-like}\n*/\nsetReadOnly( ns, 'isPRNGLike', require( './../is-prng-like' ) );\n\n/**\n* @name isProbability\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-probability}\n*/\nsetReadOnly( ns, 'isProbability', require( './../is-probability' ) );\n\n/**\n* @name isProbabilityArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-probability-array}\n*/\nsetReadOnly( ns, 'isProbabilityArray', require( './../is-probability-array' ) );\n\n/**\n* @name isPropertyKey\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-property-key}\n*/\nsetReadOnly( ns, 'isPropertyKey', require( './../is-property-key' ) );\n\n/**\n* @name isPrototypeOf\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-prototype-of}\n*/\nsetReadOnly( ns, 'isPrototypeOf', require( './../is-prototype-of' ) );\n\n/**\n* @name isRangeError\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-range-error}\n*/\nsetReadOnly( ns, 'isRangeError', require( './../is-range-error' ) );\n\n/**\n* @name isReadOnlyProperty\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-read-only-property}\n*/\nsetReadOnly( ns, 'isReadOnlyProperty', require( './../is-read-only-property' ) );\n\n/**\n* @name isReadOnlyPropertyIn\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-read-only-property-in}\n*/\nsetReadOnly( ns, 'isReadOnlyPropertyIn', require( './../is-read-only-property-in' ) );\n\n/**\n* @name isReadWriteProperty\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-read-write-property}\n*/\nsetReadOnly( ns, 'isReadWriteProperty', require( './../is-read-write-property' ) );\n\n/**\n* @name isReadWritePropertyIn\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-read-write-property-in}\n*/\nsetReadOnly( ns, 'isReadWritePropertyIn', require( './../is-read-write-property-in' ) );\n\n/**\n* @name isReadableProperty\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-readable-property}\n*/\nsetReadOnly( ns, 'isReadableProperty', require( './../is-readable-property' ) );\n\n/**\n* @name isReadablePropertyIn\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-readable-property-in}\n*/\nsetReadOnly( ns, 'isReadablePropertyIn', require( './../is-readable-property-in' ) );\n\n/**\n* @name isReferenceError\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-reference-error}\n*/\nsetReadOnly( ns, 'isReferenceError', require( './../is-reference-error' ) );\n\n/**\n* @name isRegExp\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-regexp}\n*/\nsetReadOnly( ns, 'isRegExp', require( './../is-regexp' ) );\n\n/**\n* @name isRegExpString\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-regexp-string}\n*/\nsetReadOnly( ns, 'isRegExpString', require( './../is-regexp-string' ) );\n\n/**\n* @name isRelativePath\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-relative-path}\n*/\nsetReadOnly( ns, 'isRelativePath', require( './../is-relative-path' ) );\n\n/**\n* @name isRelativeURI\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-relative-uri}\n*/\nsetReadOnly( ns, 'isRelativeURI', require( './../is-relative-uri' ) );\n\n/**\n* @name isSafeInteger\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-safe-integer}\n*/\nsetReadOnly( ns, 'isSafeInteger', require( './../is-safe-integer' ) );\n\n/**\n* @name isSafeIntegerArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-safe-integer-array}\n*/\nsetReadOnly( ns, 'isSafeIntegerArray', require( './../is-safe-integer-array' ) );\n\n/**\n* @name isSameComplex64\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-same-complex64}\n*/\nsetReadOnly( ns, 'isSameComplex64', require( './../is-same-complex64' ) );\n\n/**\n* @name isSameComplex64Array\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-same-complex64array}\n*/\nsetReadOnly( ns, 'isSameComplex64Array', require( './../is-same-complex64array' ) );\n\n/**\n* @name isSameComplex128\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-same-complex128}\n*/\nsetReadOnly( ns, 'isSameComplex128', require( './../is-same-complex128' ) );\n\n/**\n* @name isSameComplex128Array\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-same-complex128array}\n*/\nsetReadOnly( ns, 'isSameComplex128Array', require( './../is-same-complex128array' ) );\n\n/**\n* @name isSameFloat32Array\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-same-float32array}\n*/\nsetReadOnly( ns, 'isSameFloat32Array', require( './../is-same-float32array' ) );\n\n/**\n* @name isSameFloat64Array\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-same-float64array}\n*/\nsetReadOnly( ns, 'isSameFloat64Array', require( './../is-same-float64array' ) );\n\n/**\n* @name isSameNativeClass\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-same-native-class}\n*/\nsetReadOnly( ns, 'isSameNativeClass', require( './../is-same-native-class' ) );\n\n/**\n* @name isSameType\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-same-type}\n*/\nsetReadOnly( ns, 'isSameType', require( './../is-same-type' ) );\n\n/**\n* @name isSameValue\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-same-value}\n*/\nsetReadOnly( ns, 'isSameValue', require( './../is-same-value' ) );\n\n/**\n* @name isSameValueZero\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-same-value-zero}\n*/\nsetReadOnly( ns, 'isSameValueZero', require( './../is-same-value-zero' ) );\n\n/**\n* @name isSemVer\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-semver}\n*/\nsetReadOnly( ns, 'isSemVer', require( './../is-semver' ) );\n\n/**\n* @name isSharedArrayBuffer\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-sharedarraybuffer}\n*/\nsetReadOnly( ns, 'isSharedArrayBuffer', require( './../is-sharedarraybuffer' ) );\n\n/**\n* @name isSkewCentrosymmetricMatrix\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-skew-centrosymmetric-matrix}\n*/\nsetReadOnly( ns, 'isSkewCentrosymmetricMatrix', require( './../is-skew-centrosymmetric-matrix' ) );\n\n/**\n* @name isSkewPersymmetricMatrix\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-skew-persymmetric-matrix}\n*/\nsetReadOnly( ns, 'isSkewPersymmetricMatrix', require( './../is-skew-persymmetric-matrix' ) );\n\n/**\n* @name isSkewSymmetricMatrix\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-skew-symmetric-matrix}\n*/\nsetReadOnly( ns, 'isSkewSymmetricMatrix', require( './../is-skew-symmetric-matrix' ) );\n\n/**\n* @name isSlice\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-slice}\n*/\nsetReadOnly( ns, 'isSlice', require( './../is-slice' ) );\n\n/**\n* @name isSnakecase\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-snakecase}\n*/\nsetReadOnly( ns, 'isSnakecase', require( './../is-snakecase' ) );\n\n/**\n* @name isSquareMatrix\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-square-matrix}\n*/\nsetReadOnly( ns, 'isSquareMatrix', require( './../is-square-matrix' ) );\n\n/**\n* @name isSquareNumber\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-square-number}\n*/\nsetReadOnly( ns, 'isSquareNumber', require( './../is-square-number' ) );\n\n/**\n* @name isSquareTriangularNumber\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-square-triangular-number}\n*/\nsetReadOnly( ns, 'isSquareTriangularNumber', require( './../is-square-triangular-number' ) );\n\n/**\n* @name isStartcase\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-startcase}\n*/\nsetReadOnly( ns, 'isStartcase', require( './../is-startcase' ) );\n\n/**\n* @name isStrictEqual\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-strict-equal}\n*/\nsetReadOnly( ns, 'isStrictEqual', require( './../is-strict-equal' ) );\n\n/**\n* @name isString\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-string}\n*/\nsetReadOnly( ns, 'isString', require( './../is-string' ) );\n\n/**\n* @name isStringArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-string-array}\n*/\nsetReadOnly( ns, 'isStringArray', require( './../is-string-array' ) );\n\n/**\n* @name isSymbol\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-symbol}\n*/\nsetReadOnly( ns, 'isSymbol', require( './../is-symbol' ) );\n\n/**\n* @name isSymbolArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-symbol-array}\n*/\nsetReadOnly( ns, 'isSymbolArray', require( './../is-symbol-array' ) );\n\n/**\n* @name isSymmetricMatrix\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-symmetric-matrix}\n*/\nsetReadOnly( ns, 'isSymmetricMatrix', require( './../is-symmetric-matrix' ) );\n\n/**\n* @name isSyntaxError\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-syntax-error}\n*/\nsetReadOnly( ns, 'isSyntaxError', require( './../is-syntax-error' ) );\n\n/**\n* @name IS_TOUCH_DEVICE\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-touch-device}\n*/\nsetReadOnly( ns, 'IS_TOUCH_DEVICE', require( './../is-touch-device' ) );\n\n/**\n* @name isTriangularNumber\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-triangular-number}\n*/\nsetReadOnly( ns, 'isTriangularNumber', require( './../is-triangular-number' ) );\n\n/**\n* @name isTruthy\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-truthy}\n*/\nsetReadOnly( ns, 'isTruthy', require( './../is-truthy' ) );\n\n/**\n* @name isTruthyArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-truthy-array}\n*/\nsetReadOnly( ns, 'isTruthyArray', require( './../is-truthy-array' ) );\n\n/**\n* @name isTypeError\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-type-error}\n*/\nsetReadOnly( ns, 'isTypeError', require( './../is-type-error' ) );\n\n/**\n* @name isTypedArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-typed-array}\n*/\nsetReadOnly( ns, 'isTypedArray', require( './../is-typed-array' ) );\n\n/**\n* @name isTypedArrayLength\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-typed-array-length}\n*/\nsetReadOnly( ns, 'isTypedArrayLength', require( './../is-typed-array-length' ) );\n\n/**\n* @name isTypedArrayLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-typed-array-like}\n*/\nsetReadOnly( ns, 'isTypedArrayLike', require( './../is-typed-array-like' ) );\n\n/**\n* @name isUint8Array\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-uint8array}\n*/\nsetReadOnly( ns, 'isUint8Array', require( './../is-uint8array' ) );\n\n/**\n* @name isUint8ClampedArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-uint8clampedarray}\n*/\nsetReadOnly( ns, 'isUint8ClampedArray', require( './../is-uint8clampedarray' ) );\n\n/**\n* @name isUint16Array\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-uint16array}\n*/\nsetReadOnly( ns, 'isUint16Array', require( './../is-uint16array' ) );\n\n/**\n* @name isUint32Array\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-uint32array}\n*/\nsetReadOnly( ns, 'isUint32Array', require( './../is-uint32array' ) );\n\n/**\n* @name isUNCPath\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-unc-path}\n*/\nsetReadOnly( ns, 'isUNCPath', require( './../is-unc-path' ) );\n\n/**\n* @name isUndefined\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-undefined}\n*/\nsetReadOnly( ns, 'isUndefined', require( './../is-undefined' ) );\n\n/**\n* @name isUndefinedOrNull\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-undefined-or-null}\n*/\nsetReadOnly( ns, 'isUndefinedOrNull', require( './../is-undefined-or-null' ) );\n\n/**\n* @name isUnityProbabilityArray\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-unity-probability-array}\n*/\nsetReadOnly( ns, 'isUnityProbabilityArray', require( './../is-unity-probability-array' ) );\n\n/**\n* @name isUppercase\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-uppercase}\n*/\nsetReadOnly( ns, 'isUppercase', require( './../is-uppercase' ) );\n\n/**\n* @name isURI\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-uri}\n*/\nsetReadOnly( ns, 'isURI', require( './../is-uri' ) );\n\n/**\n* @name isURIError\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-uri-error}\n*/\nsetReadOnly( ns, 'isURIError', require( './../is-uri-error' ) );\n\n/**\n* @name isVectorLike\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-vector-like}\n*/\nsetReadOnly( ns, 'isVectorLike', require( './../is-vector-like' ) );\n\n/**\n* @name IS_WEB_WORKER\n* @memberof ns\n* @readonly\n* @type {boolean}\n* @see {@link module:@stdlib/assert/is-web-worker}\n*/\nsetReadOnly( ns, 'IS_WEB_WORKER', require( './../is-web-worker' ) );\n\n/**\n* @name isWhitespace\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-whitespace}\n*/\nsetReadOnly( ns, 'isWhitespace', require( './../is-whitespace' ) );\n\n/**\n* @name IS_WINDOWS\n* @memberof ns\n* @readonly\n* @type {boolean}\n* @see {@link module:@stdlib/assert/is-windows}\n*/\nsetReadOnly( ns, 'IS_WINDOWS', require( './../is-windows' ) );\n\n/**\n* @name isWritableProperty\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-writable-property}\n*/\nsetReadOnly( ns, 'isWritableProperty', require( './../is-writable-property' ) );\n\n/**\n* @name isWritablePropertyIn\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-writable-property-in}\n*/\nsetReadOnly( ns, 'isWritablePropertyIn', require( './../is-writable-property-in' ) );\n\n/**\n* @name isWriteOnlyProperty\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-write-only-property}\n*/\nsetReadOnly( ns, 'isWriteOnlyProperty', require( './../is-write-only-property' ) );\n\n/**\n* @name isWriteOnlyPropertyIn\n* @memberof ns\n* @readonly\n* @type {Function}\n* @see {@link module:@stdlib/assert/is-write-only-property-in}\n*/\nsetReadOnly( ns, 'isWriteOnlyPropertyIn', require( './../is-write-only-property-in' ) );\n\n/**\n* @name tools\n* @memberof ns\n* @readonly\n* @type {Namespace}\n* @see {@link module:@stdlib/assert/tools}\n*/\nsetReadOnly( ns, 'tools', require( './../tools' ) );\n\n\n// EXPORTS //\n\nmodule.exports = ns;\n"], + "mappings": "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", + "names": ["require_main", "__commonJSMin", "exports", "module", "isInteger", "MAX_LENGTH", "isCollection", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_primitive", "__commonJSMin", "exports", "module", "isNumber", "value", "require_main", "__commonJSMin", "exports", "module", "hasSymbolSupport", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "hasSymbols", "FLG", "hasToStringTagSupport", "require_lib", "__commonJSMin", "exports", "module", "main", "require_tostring", "__commonJSMin", "exports", "module", "Number", "toString", "require_try2serialize", "__commonJSMin", "exports", "module", "toString", "test", "value", "err", "require_object", "__commonJSMin", "exports", "module", "hasToStringTag", "nativeClass", "Number", "test", "FLG", "isNumber", "value", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isNumber", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_integer", "__commonJSMin", "exports", "module", "PINF", "NINF", "isInt", "isInteger", "value", "require_primitive", "__commonJSMin", "exports", "module", "isNumber", "isInt", "isInteger", "value", "require_object", "__commonJSMin", "exports", "module", "isNumber", "isInt", "isInteger", "value", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isInteger", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_primitive", "__commonJSMin", "exports", "module", "isString", "value", "require_valueof", "__commonJSMin", "exports", "module", "valueOf", "require_try2valueof", "__commonJSMin", "exports", "module", "valueOf", "test", "value", "err", "require_object", "__commonJSMin", "exports", "module", "hasToStringTag", "nativeClass", "test", "FLG", "isString", "value", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isString", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_primitive", "__commonJSMin", "exports", "module", "isNumber", "isNan", "isnan", "value", "require_object", "__commonJSMin", "exports", "module", "isNumber", "isNan", "isnan", "value", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isnan", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_main", "__commonJSMin", "exports", "module", "isCollection", "isInteger", "isString", "isnan", "format", "contains", "val", "searchValue", "position", "len", "pos", "i", "require_lib", "__commonJSMin", "exports", "module", "main", "require_getday", "__commonJSMin", "exports", "module", "getDay", "require_try2getday", "__commonJSMin", "exports", "module", "getDay", "test", "value", "err", "require_main", "__commonJSMin", "exports", "module", "hasToStringTag", "nativeClass", "test", "FLG", "isDateObject", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "getPrototypeOf", "nativeClass", "isError", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "nativeClass", "f", "isArray", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isArray", "format", "arrayfcn", "predicate", "every", "value", "len", "i", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isObjectLike", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "arrayfun", "main", "isObjectLikeArray", "require_main", "__commonJSMin", "exports", "module", "isObjectLike", "isBuffer", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_exec", "__commonJSMin", "exports", "module", "exec", "require_try2exec", "__commonJSMin", "exports", "module", "exec", "test", "value", "err", "require_main", "__commonJSMin", "exports", "module", "hasToStringTag", "nativeClass", "test", "FLG", "isRegExp", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "objectKeys", "getPrototypeOf", "isDate", "isError", "isBuffer", "isRegExp", "deepEqual", "a", "b", "aKeys", "bKeys", "typeA", "typeB", "key", "i", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isArray", "isObject", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "typeOf", "isFunction", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "has", "hasOwnProp", "value", "property", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isObject", "isFunction", "getPrototypeOf", "hasOwnProp", "nativeClass", "objectPrototype", "ownProps", "obj", "key", "isPlainObject", "value", "proto", "require_lib", "__commonJSMin", "exports", "module", "main", "require_validate", "__commonJSMin", "exports", "module", "isString", "isObject", "hasOwnProp", "format", "validate", "opts", "options", "require_defaults", "__commonJSMin", "exports", "module", "defaults", "require_has", "__commonJSMin", "exports", "module", "hasOwnProp", "deepHasOwnProp", "v", "props", "len", "i", "require_main", "__commonJSMin", "exports", "module", "isString", "isArray", "format", "validate", "defaults", "has", "deepHasOwnProp", "value", "path", "options", "isStr", "props", "opts", "err", "require_factory", "__commonJSMin", "exports", "module", "isString", "isArray", "format", "validate", "defaults", "has", "factory", "path", "options", "isStr", "props", "opts", "err", "deepHasOwnProp", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "factory", "require_validate", "__commonJSMin", "exports", "module", "isString", "isObject", "hasOwnProp", "format", "validate", "opts", "options", "require_defaults", "__commonJSMin", "exports", "module", "defaults", "require_main", "__commonJSMin", "exports", "module", "hasProp", "value", "property", "require_lib", "__commonJSMin", "exports", "module", "main", "require_has", "__commonJSMin", "exports", "module", "hasProp", "deepHasProp", "v", "props", "len", "i", "require_main", "__commonJSMin", "exports", "module", "isString", "isArray", "format", "validate", "defaults", "has", "deepHasProp", "value", "path", "options", "isStr", "props", "opts", "err", "require_factory", "__commonJSMin", "exports", "module", "isString", "isArray", "format", "validate", "defaults", "has", "factory", "path", "options", "isStr", "props", "opts", "err", "deepHasProp", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "factory", "require_main", "__commonJSMin", "exports", "module", "nativeClass", "hasArrayBuffer", "isArrayBuffer", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_arraybuffer", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isArrayBuffer", "Float64Array", "GlobalArrayBuffer", "hasArrayBufferSupport", "bool", "view", "buf", "err", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "evil", "hasArrowFunctionSupport", "bool", "err", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "evil", "hasAsyncAwaitSupport", "bool", "err", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "hasOwnProp", "hasAsyncIteratorSymbolSupport", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "getGlobal", "Global", "hasBigIntSupport", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "nativeClass", "hasBigInt64Array", "isBigInt64Array", "value", "require_lib", "__commonJSMin", "exports", "module", "isBigInt64Array", "require_primitive", "__commonJSMin", "exports", "module", "isBigInt", "value", "require_try2valueof", "__commonJSMin", "exports", "module", "test", "value", "err", "require_object", "__commonJSMin", "exports", "module", "nativeClass", "test", "BigInt", "value", "require_generic", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isBigInt", "value", "require_main", "__commonJSMin", "exports", "module", "setReadOnly", "isSymbol", "isPrimitive", "isObject", "require_polyfill", "__commonJSMin", "exports", "module", "setReadOnly", "constantFunction", "isBigInt", "isPrimitive", "isObject", "require_lib", "__commonJSMin", "exports", "module", "hasBigInts", "main", "polyfill", "isBigInt", "require_bigint64array", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isBigInt64Array", "isBigInt", "GlobalBigInt64Array", "MAX_FLOAT64_INTEGER", "MAX_FLOAT64_INTEGER_P2", "hasBigInt64ArraySupport", "arr", "err", "require_lib", "__commonJSMin", "exports", "module", "hasBigInt64ArraySupport", "require_main", "__commonJSMin", "exports", "module", "nativeClass", "hasBigUint64Array", "isBigUint64Array", "value", "require_lib", "__commonJSMin", "exports", "module", "isBigUint64Array", "require_biguint64array", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isBigUint64Array", "isBigInt", "GlobalBigUint64Array", "MAX_SIGNED_INT64", "MAX_SIGNED_INT64_P2", "hasBigUint64ArraySupport", "arr", "err", "require_lib", "__commonJSMin", "exports", "module", "hasBigUint64ArraySupport", "require_main", "__commonJSMin", "exports", "module", "evil", "hasClassSupport", "bool", "err", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "nativeClass", "hasDataView", "isDataView", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_dataview", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isDataView", "ArrayBuffer", "GlobalDataView", "hasDataViewSupport", "bool", "view", "buf", "err", "require_lib", "__commonJSMin", "exports", "module", "main", "require_define_properties", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "defineProperties", "hasDefinePropertiesSupport", "err", "require_lib", "__commonJSMin", "exports", "module", "main", "require_define_property", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "defineProperty", "hasDefinePropertySupport", "err", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "nativeClass", "hasFloat32Array", "isFloat32Array", "value", "require_lib", "__commonJSMin", "exports", "module", "isFloat32Array", "require_float32array", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isFloat32Array", "PINF", "GlobalFloat32Array", "hasFloat32ArraySupport", "bool", "arr", "err", "require_lib", "__commonJSMin", "exports", "module", "hasFloat32ArraySupport", "require_main", "__commonJSMin", "exports", "module", "nativeClass", "hasFloat64Array", "isFloat64Array", "value", "require_lib", "__commonJSMin", "exports", "module", "isFloat64Array", "require_float64array", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isFloat64Array", "GlobalFloat64Array", "hasFloat64ArraySupport", "bool", "arr", "err", "require_lib", "__commonJSMin", "exports", "module", "hasFloat64ArraySupport", "require_foo", "__commonJSMin", "exports", "module", "foo", "require_main", "__commonJSMin", "exports", "module", "foo", "hasFunctionNameSupport", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "evil", "hasGeneratorSupport", "bool", "err", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "hasGlobalThisSupport", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "nativeClass", "hasInt8Array", "isInt8Array", "value", "require_lib", "__commonJSMin", "exports", "module", "isInt8Array", "require_int8array", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isInt8Array", "INT8_MAX", "INT8_MIN", "GlobalInt8Array", "hasInt8ArraySupport", "bool", "arr", "err", "require_lib", "__commonJSMin", "exports", "module", "hasInt8ArraySupport", "require_main", "__commonJSMin", "exports", "module", "nativeClass", "hasInt16Array", "isInt16Array", "value", "require_lib", "__commonJSMin", "exports", "module", "isInt16Array", "require_int16array", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isInt16Array", "INT16_MAX", "INT16_MIN", "GlobalInt16Array", "hasInt16ArraySupport", "bool", "arr", "err", "require_lib", "__commonJSMin", "exports", "module", "hasInt16ArraySupport", "require_main", "__commonJSMin", "exports", "module", "nativeClass", "hasInt32Array", "isInt32Array", "value", "require_lib", "__commonJSMin", "exports", "module", "isInt32Array", "require_int32array", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isInt32Array", "INT32_MAX", "INT32_MIN", "GlobalInt32Array", "hasInt32ArraySupport", "bool", "arr", "err", "require_lib", "__commonJSMin", "exports", "module", "hasInt32ArraySupport", "require_main", "__commonJSMin", "exports", "module", "hasOwnProp", "Symbol", "hasIteratorSymbolSupport", "require_lib", "__commonJSMin", "exports", "module", "main", "require_map", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "GlobalMap", "hasMapSupport", "bool", "key", "map", "err", "require_lib", "__commonJSMin", "exports", "module", "main", "require_buffer", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isBuffer", "GlobalBuffer", "hasNodeBufferSupport", "bool", "b", "err", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "evil", "hasProxySupport", "bool", "err", "require_lib", "__commonJSMin", "exports", "module", "main", "require_set", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "GlobalSet", "hasSetSupport", "bool", "val", "set", "err", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "nativeClass", "hasSharedArrayBuffer", "isSharedArrayBuffer", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_sharedarraybuffer", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isSharedArrayBuffer", "GlobalSharedArrayBuffer", "hasSharedArrayBufferSupport", "bool", "b1", "b2", "err", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "nativeClass", "hasUint8Array", "isUint8Array", "value", "require_lib", "__commonJSMin", "exports", "module", "isUint8Array", "require_uint8array", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isUint8Array", "UINT8_MAX", "GlobalUint8Array", "hasUint8ArraySupport", "bool", "arr", "err", "require_lib", "__commonJSMin", "exports", "module", "hasUint8ArraySupport", "require_main", "__commonJSMin", "exports", "module", "nativeClass", "hasUint8ClampedArray", "isUint8ClampedArray", "value", "require_lib", "__commonJSMin", "exports", "module", "isUint8ClampedArray", "require_uint8clampedarray", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isUint8ClampedArray", "GlobalUint8ClampedArray", "hasUint8ClampedArraySupport", "bool", "arr", "err", "require_lib", "__commonJSMin", "exports", "module", "hasUint8ClampedArraySupport", "require_main", "__commonJSMin", "exports", "module", "nativeClass", "hasUint16Array", "isUint16Array", "value", "require_lib", "__commonJSMin", "exports", "module", "isUint16Array", "require_uint16array", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isUint16Array", "UINT16_MAX", "GlobalUint16Array", "hasUint16ArraySupport", "bool", "arr", "err", "require_lib", "__commonJSMin", "exports", "module", "hasUint16ArraySupport", "require_main", "__commonJSMin", "exports", "module", "nativeClass", "hasUint32Array", "isUint32Array", "value", "require_lib", "__commonJSMin", "exports", "module", "isUint32Array", "require_uint32array", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isUint32Array", "UINT32_MAX", "GlobalUint32Array", "hasUint32ArraySupport", "bool", "arr", "err", "require_lib", "__commonJSMin", "exports", "module", "hasUint32ArraySupport", "require_primitive", "__commonJSMin", "exports", "module", "isInteger", "isNonNegativeInteger", "value", "require_object", "__commonJSMin", "exports", "module", "isInteger", "isNonNegativeInteger", "value", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isNonNegativeInteger", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_main", "__commonJSMin", "exports", "module", "isString", "isNonNegativeInteger", "format", "OxD800", "OxDBFF", "OxDC00", "OxDFFF", "hasUTF16SurrogatePairAt", "str", "pos", "ch1", "ch2", "require_lib", "__commonJSMin", "exports", "module", "hasUTF16SurrogatePairAt", "require_main", "__commonJSMin", "exports", "module", "hasWebAssemblySupport", "require_lib", "__commonJSMin", "exports", "module", "main", "require_weakmap", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "GlobalWeakMap", "hasWeakMapSupport", "bool", "key", "wm", "err", "require_lib", "__commonJSMin", "exports", "module", "main", "require_weakset", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "GlobalWeakSet", "hasWeakSetSupport", "bool", "val", "ws", "err", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "format", "instanceOf", "value", "constructor", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isString", "RE_URI", "RE_ILLEGALS", "RE_HEX1", "RE_HEX2", "RE_PATH", "RE_SCHEME", "isURI", "value", "authority", "scheme", "parts", "path", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isURI", "RE_HTTPS", "isAbsoluteHttpURI", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_lib", "__commonJSMin", "exports", "module", "PLATFORM", "IS_WINDOWS", "require_posix", "__commonJSMin", "exports", "module", "isString", "isAbsolutePath", "value", "require_win32", "__commonJSMin", "exports", "module", "isString", "isAbsolutePath", "value", "code", "len", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "IS_WINDOWS", "isAbsolutePathPosix", "isAbsolutePathWin32", "isAbsolutePath", "require_main", "__commonJSMin", "exports", "module", "isURI", "isAbsoluteURI", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isCollection", "isFunction", "isAccessorArray", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "propertyDescriptor", "isAccessorProperty", "value", "property", "desc", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "propertyDescriptorIn", "isAccessorPropertyIn", "value", "property", "desc", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isString", "isAlphagram", "x", "len", "i", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isString", "ZERO", "NINE", "A", "Z", "a", "z", "isAlphaNumeric", "x", "len", "ch", "i", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "lowercase", "replace", "isString", "format", "RE_NON_ALPHANUMERIC", "ascending", "a", "b", "isAnagram", "str", "x", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "nativeClass", "isArguments", "value", "require_detect", "__commonJSMin", "exports", "module", "isArguments", "bool", "detect", "require_native", "__commonJSMin", "exports", "module", "isEnumerableProperty", "require_has_string_enumerability_bug", "__commonJSMin", "exports", "module", "isEnum", "bool", "detect", "require_main", "__commonJSMin", "exports", "module", "isString", "isnan", "isInteger", "isEnum", "hasStringEnumBug", "isEnumerableProperty", "value", "property", "bool", "require_lib", "__commonJSMin", "exports", "module", "main", "require_polyfill", "__commonJSMin", "exports", "module", "hasOwnProp", "isEnumerableProperty", "isArray", "isInteger", "MAX_LENGTH", "isArguments", "value", "require_lib", "__commonJSMin", "exports", "module", "hasArgumentsClass", "main", "polyfill", "isArguments", "require_main", "__commonJSMin", "exports", "module", "arrayfun", "isArray", "isArrayArray", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isInteger", "MAX_ARRAY_LENGTH", "isArrayLength", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isInteger", "MAX_LENGTH", "isArrayLike", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isInteger", "MAX_LENGTH", "isArrayLikeObject", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_no_arraybuffer", "__commonJSMin", "exports", "module", "constantFunction", "isArrayBufferView", "require_ctors", "__commonJSMin", "exports", "module", "Int8Array", "Uint8Array", "Uint8ClampedArray", "Int16Array", "Uint16Array", "Int32Array", "Uint32Array", "Float32Array", "Float64Array", "CTORS", "require_names", "__commonJSMin", "exports", "module", "require_main", "__commonJSMin", "exports", "module", "ctorName", "fcnName", "getPrototypeOf", "hasFloat64ArraySupport", "Float64Array", "CTORS", "NAMES", "TypedArray", "Dummy", "isTypedArray", "value", "v", "i", "require_lib", "__commonJSMin", "exports", "module", "main", "require_polyfill", "__commonJSMin", "exports", "module", "isTypedArray", "isDataView", "isArrayBufferView", "value", "require_main", "__commonJSMin", "exports", "module", "ArrayBuffer", "isArrayBufferView", "value", "require_lib", "__commonJSMin", "exports", "module", "hasArrayBufferSupport", "isFunction", "ArrayBuffer", "noArraybuffer", "polyfill", "main", "isArrayBufferView", "require_main", "__commonJSMin", "exports", "module", "isFunction", "function2string", "RE_ARROW_FUNCTION", "isArrowFunction", "value", "str", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isString", "MAX_ASCII", "isASCII", "x", "len", "i", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "format", "isBetween", "value", "a", "b", "left", "right", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isCollection", "format", "isBetweenArray", "value", "a", "b", "left", "right", "len", "i", "require_lib", "__commonJSMin", "exports", "module", "main", "require_ctors", "__commonJSMin", "exports", "module", "Uint8Array", "Uint16Array", "ctors", "require_main", "__commonJSMin", "exports", "module", "ctors", "bool", "isBigEndian", "uint16view", "uint8view", "require_lib", "__commonJSMin", "exports", "module", "IS_BIG_ENDIAN", "require_main", "__commonJSMin", "exports", "module", "isString", "isBinaryString", "str", "ch", "i", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isString", "RE", "isBlankString", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_primitive", "__commonJSMin", "exports", "module", "isBoolean", "value", "require_tostring", "__commonJSMin", "exports", "module", "toString", "require_try2serialize", "__commonJSMin", "exports", "module", "toString", "test", "value", "err", "require_object", "__commonJSMin", "exports", "module", "hasToStringTag", "nativeClass", "Boolean", "test", "FLG", "isBoolean", "value", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isBoolean", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_main", "__commonJSMin", "exports", "module", "isArrayLike", "format", "arraylikefcn", "predicate", "every", "value", "len", "i", "require_lib", "__commonJSMin", "exports", "module", "main", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "arrayfun", "isBoolean", "isPrimitiveArray", "isObjectArray", "isBooleanArray", "require_primitive", "__commonJSMin", "exports", "module", "isSymbol", "value", "require_tostring", "__commonJSMin", "exports", "module", "toStr", "value", "require_try2tostring", "__commonJSMin", "exports", "module", "toStr", "RE", "test", "value", "err", "require_object", "__commonJSMin", "exports", "module", "nativeClass", "test", "isSymbol", "value", "require_generic", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isSymbol", "value", "require_main", "__commonJSMin", "exports", "module", "setReadOnly", "isSymbol", "isPrimitive", "isObject", "require_polyfill", "__commonJSMin", "exports", "module", "setReadOnly", "constantFunction", "isSymbol", "isPrimitive", "isObject", "require_lib", "__commonJSMin", "exports", "module", "hasSymbols", "main", "polyfill", "isSymbol", "require_main", "__commonJSMin", "exports", "module", "isBoolean", "isNumber", "isString", "isSymbol", "isBoxedPrimitive", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_to_string", "__commonJSMin", "exports", "module", "toStr", "toString", "value", "require_global_scope", "__commonJSMin", "exports", "module", "Global", "globalScope", "fcn", "require_main", "__commonJSMin", "exports", "module", "proc", "getGlobal", "nativeClass", "isObject", "isString", "toStr", "globalScope", "Global", "RE", "isNode", "require_lib", "__commonJSMin", "exports", "module", "main", "bool", "require_global_scope", "__commonJSMin", "exports", "module", "scope", "globalScope", "fcn", "require_main", "__commonJSMin", "exports", "module", "getGlobal", "IS_NODE", "globalScope", "Global", "isBrowser", "require_lib", "__commonJSMin", "exports", "module", "main", "bool", "require_main", "__commonJSMin", "exports", "module", "isString", "camelcase", "isCamelcase", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "lowercase", "uppercase", "isString", "isCapitalized", "value", "ch", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "ndarray", "isndarrayLike", "v", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isndarrayLike", "isMatrixLike", "v", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isMatrixLike", "isSquareMatrix", "v", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isSquareMatrix", "floor", "isOdd", "isCentrosymmetricMatrix", "v", "m1", "M", "N", "i", "j", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "objectKeys", "isObject", "value", "type", "contains", "seen", "searchValue", "i", "isCircObj", "obj", "keys", "val", "isCircular", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isArray", "isCircular", "isCircularArray", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isPlainObject", "isCircular", "isCircularPlainObject", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isFunction", "function2string", "RE_CLASS", "isClass", "value", "str", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "Complex128", "Complex64", "constructorName", "isComplex", "value", "type", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "Complex128", "Complex64", "isComplexLike", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_ctors", "__commonJSMin", "exports", "module", "Complex64Array", "Complex128Array", "CTORS", "require_names", "__commonJSMin", "exports", "module", "require_main", "__commonJSMin", "exports", "module", "ctorName", "getPrototypeOf", "CTORS", "NAMES", "isComplexTypedArray", "value", "v", "i", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isNonNegativeInteger", "MAX", "MAX_LENGTH", "isComplexTypedArrayLike", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "Complex64", "constructorName", "isComplex64", "value", "require_lib", "__commonJSMin", "exports", "module", "isComplex64", "require_main", "__commonJSMin", "exports", "module", "Complex64Array", "constructorName", "isComplex64Array", "value", "require_lib", "__commonJSMin", "exports", "module", "isComplex64Array", "require_main", "__commonJSMin", "exports", "module", "isMatrixLike", "isComplex64MatrixLike", "v", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isndarrayLike", "isComplex64ndarrayLike", "v", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isndarrayLike", "isVectorLike", "v", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isVectorLike", "isComplex64VectorLike", "v", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "Complex128", "constructorName", "isComplex128", "value", "require_lib", "__commonJSMin", "exports", "module", "isComplex128", "require_main", "__commonJSMin", "exports", "module", "Complex128Array", "constructorName", "isComplex128Array", "value", "require_lib", "__commonJSMin", "exports", "module", "isComplex128Array", "require_main", "__commonJSMin", "exports", "module", "isMatrixLike", "isComplex128MatrixLike", "v", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isndarrayLike", "isComplex128ndarrayLike", "v", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isVectorLike", "isComplex128VectorLike", "v", "require_lib", "__commonJSMin", "exports", "module", "main", "require_primitive", "__commonJSMin", "exports", "module", "isNumber", "iscomposite", "isComposite", "value", "require_object", "__commonJSMin", "exports", "module", "isNumber", "iscomposite", "isComposite", "value", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isComposite", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_main", "__commonJSMin", "exports", "module", "propertyDescriptor", "isConfigurableProperty", "value", "property", "desc", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "propertyDescriptorIn", "isConfigurablePropertyIn", "value", "property", "desc", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isString", "constantcase", "isConstantcase", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_primitive", "__commonJSMin", "exports", "module", "isInteger", "cbrt", "floor", "isCubeNumber", "value", "n", "require_object", "__commonJSMin", "exports", "module", "isInteger", "cbrt", "floor", "isCubeNumber", "value", "n", "x", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isCubeNumber", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_main", "__commonJSMin", "exports", "module", "isDateObject", "currentYear", "isCurrentYear", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_lib", "__commonJSMin", "exports", "module", "PLATFORM", "IS_DARWIN", "require_main", "__commonJSMin", "exports", "module", "propertyDescriptor", "isDataProperty", "value", "property", "desc", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "propertyDescriptorIn", "isDataPropertyIn", "value", "property", "desc", "require_lib", "__commonJSMin", "exports", "module", "main", "require_lib", "__commonJSMin", "exports", "module", "arrayfun", "isDateObject", "isDateObjectArray", "require_main", "__commonJSMin", "exports", "module", "isString", "ZERO", "NINE", "isDigitString", "x", "len", "ch", "i", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "readFile", "contains", "exists", "OPTS", "isDocker", "file", "require_lib", "__commonJSMin", "exports", "module", "main", "bool", "require_main", "__commonJSMin", "exports", "module", "isString", "RE_DOMAIN_NAME", "isDomainName", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isString", "RE_DURATION_STRING", "isDurationString", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_process", "__commonJSMin", "exports", "module", "require_main", "__commonJSMin", "exports", "module", "nativeClass", "isObject", "isString", "proc", "isElectron", "require_lib", "__commonJSMin", "exports", "module", "main", "bool", "require_process", "__commonJSMin", "exports", "module", "require_main", "__commonJSMin", "exports", "module", "isElectron", "proc", "isElectronMain", "require_lib", "__commonJSMin", "exports", "module", "main", "bool", "require_process", "__commonJSMin", "exports", "module", "process", "require_main", "__commonJSMin", "exports", "module", "isElectron", "proc", "isElectronRenderer", "require_lib", "__commonJSMin", "exports", "module", "main", "bool", "require_main", "__commonJSMin", "exports", "module", "isString", "RE", "isEmail", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isArray", "isEmptyArray", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isEmptyArrayLikeObject", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isEmptyCollection", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "objectKeys", "isPlainObject", "hasSymbolSupport", "FLG", "isEmptyObject", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_primitive", "__commonJSMin", "exports", "module", "isEmptyString", "value", "require_object", "__commonJSMin", "exports", "module", "isString", "isEmptyString", "value", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isEmptyString", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_main", "__commonJSMin", "exports", "module", "propertyDescriptorIn", "isEnumerablePropertyIn", "value", "property", "desc", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "getPrototypeOf", "typeOf", "isError", "isEvalError", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_primitive", "__commonJSMin", "exports", "module", "isInteger", "isEven", "value", "require_object", "__commonJSMin", "exports", "module", "isInteger", "isEven", "value", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isEven", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_main", "__commonJSMin", "exports", "module", "isFalsy", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_lib", "__commonJSMin", "exports", "module", "arrayfun", "isFalsy", "isFalsyArray", "require_primitive", "__commonJSMin", "exports", "module", "isNumber", "isfinite", "isFinite", "value", "require_object", "__commonJSMin", "exports", "module", "isNumber", "isfinite", "isFinite", "value", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isFinite", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_lib", "__commonJSMin", "exports", "module", "isFinite", "setReadOnly", "arrayfun", "isPrimitiveArray", "isObjectArray", "isFiniteArray", "require_main", "__commonJSMin", "exports", "module", "isMatrixLike", "isFloat32MatrixLike", "v", "require_lib", "__commonJSMin", "exports", "module", "isFloat32MatrixLike", "require_main", "__commonJSMin", "exports", "module", "isndarrayLike", "isFloat32ndarrayLike", "v", "require_lib", "__commonJSMin", "exports", "module", "isFloat32ndarrayLike", "require_main", "__commonJSMin", "exports", "module", "isVectorLike", "isFloat32VectorLike", "v", "require_lib", "__commonJSMin", "exports", "module", "isFloat32VectorLike", "require_main", "__commonJSMin", "exports", "module", "isMatrixLike", "isFloat64MatrixLike", "v", "require_lib", "__commonJSMin", "exports", "module", "isFloat64MatrixLike", "require_main", "__commonJSMin", "exports", "module", "isndarrayLike", "isFloat64ndarrayLike", "v", "require_lib", "__commonJSMin", "exports", "module", "isFloat64ndarrayLike", "require_main", "__commonJSMin", "exports", "module", "isVectorLike", "isFloat64VectorLike", "v", "require_lib", "__commonJSMin", "exports", "module", "isFloat64VectorLike", "require_lib", "__commonJSMin", "exports", "module", "arrayfun", "isFunction", "isFunctionArray", "require_main", "__commonJSMin", "exports", "module", "hasGeneratorSupport", "nativeClass", "hasGenerators", "isGeneratorObject", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isGeneratorObjectLike", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isUint8Array", "isBuffer", "isgzipBuffer", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isString", "ZERO", "NINE", "A", "F", "a", "f", "isHexString", "x", "len", "ch", "i", "require_lib", "__commonJSMin", "exports", "module", "main", "require_primitive", "__commonJSMin", "exports", "module", "isNumber", "isinf", "isInfinite", "value", "require_object", "__commonJSMin", "exports", "module", "isNumber", "isinf", "isInfinite", "value", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isInfinite", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_main", "__commonJSMin", "exports", "module", "hasOwnProp", "isInheritedProperty", "value", "property", "require_lib", "__commonJSMin", "exports", "module", "main", "require_lib", "__commonJSMin", "exports", "module", "isInteger", "setReadOnly", "arrayfun", "isPrimitiveArray", "isObjectArray", "isIntegerArray", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "value", "type", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isFunction", "isIteratorLike", "value", "t", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isFunction", "ITERATOR", "isIteratorLike", "isIterableLike", "value", "f", "require_lib", "__commonJSMin", "exports", "module", "hasIteratorSymbolSupport", "constantFunction", "main", "isIterable", "require_main", "__commonJSMin", "exports", "module", "re", "isJSON", "value", "err", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isString", "kebabcase", "isKebabcase", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isDateObject", "isInteger", "currentYear", "isLeapYear", "value", "yr", "require_lib", "__commonJSMin", "exports", "module", "main", "require_ctors", "__commonJSMin", "exports", "module", "Uint8Array", "Uint16Array", "ctors", "require_main", "__commonJSMin", "exports", "module", "ctors", "bool", "isLittleEndian", "uint16view", "uint8view", "require_lib", "__commonJSMin", "exports", "module", "IS_LITTLE_ENDIAN", "require_main", "__commonJSMin", "exports", "module", "isString", "RE_LOCALHOST_IPV4", "isLocalhost", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "lowercase", "uppercase", "isString", "isLowercase", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "hasOwnProp", "isFunction", "isMethod", "value", "property", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isFunction", "Object", "isMethodIn", "value", "property", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "constantFunction", "isMobile", "require_lib", "__commonJSMin", "exports", "module", "main", "bool", "require_main", "__commonJSMin", "exports", "module", "MultiSlice", "constructorName", "isMultiSlice", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isTypedArray", "hasOwnProp", "isNamedTypedTupleLike", "v", "require_lib", "__commonJSMin", "exports", "module", "main", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "arrayfun", "isnan", "isPrimitiveArray", "isObjectArray", "isNaNArray", "require_main", "__commonJSMin", "exports", "module", "isFunction", "reNativeFunction", "function2string", "isNativeFunction", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_primitive", "__commonJSMin", "exports", "module", "isInteger", "isNegativeInteger", "value", "require_object", "__commonJSMin", "exports", "module", "isInteger", "isNegativeInteger", "value", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isNegativeInteger", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_lib", "__commonJSMin", "exports", "module", "isNegativeInteger", "setReadOnly", "arrayfun", "isPrimitiveArray", "isObjectArray", "isNegativeIntegerArray", "require_primitive", "__commonJSMin", "exports", "module", "isNumber", "isNegativeNumber", "value", "require_object", "__commonJSMin", "exports", "module", "isNumber", "isNegativeNumber", "value", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isNegativeNumber", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_lib", "__commonJSMin", "exports", "module", "isNegativeNumber", "setReadOnly", "arrayfun", "isPrimitiveArray", "isObjectArray", "isNegativeNumberArray", "require_primitive", "__commonJSMin", "exports", "module", "isNumber", "NINF", "isNegativeZero", "value", "require_object", "__commonJSMin", "exports", "module", "isNumber", "NINF", "isNegativeZero", "value", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isNegativeZero", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_builtins", "__commonJSMin", "exports", "module", "require_main", "__commonJSMin", "exports", "module", "mod", "contains", "isString", "BUILTINS", "LIST", "isNodeBuiltin", "x", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isNodeStreamLike", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isNodeStreamLike", "isNodeWritableStreamLike", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isNodeStreamLike", "isNodeReadableStreamLike", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isNodeWritableStreamLike", "isNodeReadableStreamLike", "isNodeDuplexStreamLike", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_parent", "__commonJSMin", "exports", "module", "parent", "require_stacktrace", "__commonJSMin", "exports", "module", "stacktrace", "err", "require_main", "__commonJSMin", "exports", "module", "IS_NODE", "p", "stacktrace", "RE_MODULE_ID", "RE_ERROR_STACK", "isNodeREPL", "stack", "m", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isNodeDuplexStreamLike", "isNodeTransformStreamLike", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "propertyDescriptor", "isNonConfigurableProperty", "value", "property", "desc", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "propertyDescriptorIn", "isNonConfigurablePropertyIn", "value", "property", "desc", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "hasOwnProp", "isEnumerableProperty", "isNonEnumerableProperty", "value", "property", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "propertyDescriptorIn", "isNonEnumerablePropertyIn", "value", "property", "desc", "require_lib", "__commonJSMin", "exports", "module", "main", "require_lib", "__commonJSMin", "exports", "module", "isNonNegativeInteger", "setReadOnly", "arrayfun", "isPrimitiveArray", "isObjectArray", "isNonNegativeIntegerArray", "require_primitive", "__commonJSMin", "exports", "module", "isNumber", "isNonNegativeNumber", "value", "require_object", "__commonJSMin", "exports", "module", "isNumber", "isNonNegativeNumber", "value", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isNonNegativeNumber", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_lib", "__commonJSMin", "exports", "module", "isNonNegativeNumber", "setReadOnly", "arrayfun", "isPrimitiveArray", "isObjectArray", "isNonNegativeNumberArray", "require_primitive", "__commonJSMin", "exports", "module", "isInteger", "isNonPositiveInteger", "value", "require_object", "__commonJSMin", "exports", "module", "isInteger", "isNonPositiveInteger", "value", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isNonPositiveInteger", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_lib", "__commonJSMin", "exports", "module", "isNonPositiveInteger", "setReadOnly", "arrayfun", "isPrimitiveArray", "isObjectArray", "isNonPositiveIntegerArray", "require_primitive", "__commonJSMin", "exports", "module", "isNumber", "isNonPositiveNumber", "value", "require_object", "__commonJSMin", "exports", "module", "isNumber", "isNonPositiveNumber", "value", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isNonPositiveNumber", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_lib", "__commonJSMin", "exports", "module", "isNonPositiveNumber", "setReadOnly", "arrayfun", "isPrimitiveArray", "isObjectArray", "isNonPositiveNumberArray", "require_main", "__commonJSMin", "exports", "module", "isMatrixLike", "isNonSymmetricMatrix", "v", "M", "i", "j", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isNull", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "arrayfun", "isNull", "isNullArray", "require_lib", "__commonJSMin", "exports", "module", "main", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "arrayfun", "isNumber", "isPrimitiveArray", "isObjectArray", "isNumberArray", "require_main", "__commonJSMin", "exports", "module", "isTypedArray", "isNumberArray", "isBuffer", "isNumericArray", "v", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "arrayfun", "isObject", "isObjectArray", "require_lib", "__commonJSMin", "exports", "module", "main", "require_primitive", "__commonJSMin", "exports", "module", "isInteger", "isEven", "isOdd", "value", "require_object", "__commonJSMin", "exports", "module", "isInteger", "isEven", "isOdd", "value", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isOdd", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_main", "__commonJSMin", "exports", "module", "isString", "pascalcase", "isPascalcase", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isSquareMatrix", "isPersymmetricMatrix", "v", "M", "n", "i", "j", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "arrayfun", "isPlainObject", "isPlainObjectArray", "require_lib", "__commonJSMin", "exports", "module", "main", "require_primitive", "__commonJSMin", "exports", "module", "isInteger", "isPositiveInteger", "value", "require_object", "__commonJSMin", "exports", "module", "isInteger", "isPositiveInteger", "value", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isPositiveInteger", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_lib", "__commonJSMin", "exports", "module", "isPositiveInteger", "setReadOnly", "arrayfun", "isPrimitiveArray", "isObjectArray", "isPositiveIntegerArray", "require_primitive", "__commonJSMin", "exports", "module", "isNumber", "isPositiveNumber", "value", "require_object", "__commonJSMin", "exports", "module", "isNumber", "isPositiveNumber", "value", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isPositiveNumber", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_lib", "__commonJSMin", "exports", "module", "isPositiveNumber", "setReadOnly", "arrayfun", "isPrimitiveArray", "isObjectArray", "isPositiveNumberArray", "require_primitive", "__commonJSMin", "exports", "module", "isNumber", "PINF", "isPositiveZero", "value", "require_object", "__commonJSMin", "exports", "module", "isNumber", "PINF", "isPositiveZero", "value", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isPositiveZero", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_primitive", "__commonJSMin", "exports", "module", "isNumber", "isprime", "isPrime", "value", "require_object", "__commonJSMin", "exports", "module", "isNumber", "isprime", "isPrime", "value", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isPrime", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_main", "__commonJSMin", "exports", "module", "arrayfun", "isPrimitive", "isPrimitiveArray", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isFunction", "hasOwnProp", "isPRNGLike", "v", "require_lib", "__commonJSMin", "exports", "module", "main", "require_primitive", "__commonJSMin", "exports", "module", "isNumber", "isProbability", "value", "require_object", "__commonJSMin", "exports", "module", "isNumber", "isProbability", "value", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isProbability", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_lib", "__commonJSMin", "exports", "module", "isProbability", "setReadOnly", "arrayfun", "isPrimitiveArray", "isObjectArray", "isProbabilityArray", "require_main", "__commonJSMin", "exports", "module", "isString", "isSymbol", "isNonNegativeInteger", "isPropertyKey", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isProtoOf", "format", "isPrototypeOf", "value", "proto", "type", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "getPrototypeOf", "typeOf", "isError", "isRangeError", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "propertyDescriptor", "isReadOnlyProperty", "value", "property", "desc", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "propertyDescriptorIn", "isReadOnlyPropertyIn", "value", "property", "desc", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "propertyDescriptor", "isReadWriteProperty", "value", "property", "desc", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "propertyDescriptorIn", "isReadWritePropertyIn", "value", "property", "desc", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "propertyDescriptor", "isReadableProperty", "value", "property", "desc", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "propertyDescriptorIn", "isReadablePropertyIn", "value", "property", "desc", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "getPrototypeOf", "typeOf", "isError", "isReferenceError", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isString", "RE", "isRegExpString", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_posix", "__commonJSMin", "exports", "module", "isString", "isAbsolutePath", "isRelativePath", "value", "require_win32", "__commonJSMin", "exports", "module", "isString", "isAbsolutePath", "isRelativePath", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "IS_WINDOWS", "isRelativePathPosix", "isRelativePathWin32", "isRelativePath", "require_main", "__commonJSMin", "exports", "module", "isString", "RE_URI", "RE_ILLEGALS", "RE_HEX1", "RE_HEX2", "RE_PATH", "RE_SCHEME", "isRelativeURI", "value", "authority", "scheme", "parts", "path", "require_lib", "__commonJSMin", "exports", "module", "main", "require_primitive", "__commonJSMin", "exports", "module", "isNumber", "isSafeInt", "isSafeInteger", "value", "require_object", "__commonJSMin", "exports", "module", "isNumber", "isSafeInt", "isSafeInteger", "value", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isSafeInteger", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "arrayfun", "isSafeInteger", "isPrimitiveArray", "isObjectArray", "isSafeIntegerArray", "require_main", "__commonJSMin", "exports", "module", "isComplex64", "isSameValuef", "isSameComplex64", "v1", "v2", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isComplex64Array", "hasSameValues", "isSameComplex64Array", "v1", "v2", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isComplex128", "isSameValue", "isSameComplex128", "v1", "v2", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isComplex128Array", "hasSameValues", "isSameComplex128Array", "v1", "v2", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isFloat32Array", "hasSameValues", "isSameFloat32Array", "v1", "v2", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isFloat64Array", "hasSameValues", "isSameFloat64Array", "v1", "v2", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "nativeClass", "isSameNativeClass", "a", "b", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isSameType", "a", "b", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isSameComplexValue", "isComplexLike", "isSameValue", "a", "b", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isSameComplexValueZero", "isComplexLike", "isSameValueZero", "a", "b", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isString", "RE_SEMVER", "isSemVer", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isSquareMatrix", "floor", "isOdd", "isSkewCentrosymmetricMatrix", "v", "m1", "M", "N", "i", "j", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isSquareMatrix", "isSkewPersymmetricMatrix", "v", "M", "n", "i", "j", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isSquareMatrix", "isSkewSymmetricMatrix", "v", "M", "i", "j", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "Slice", "constructorName", "isSlice", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isString", "snakecase", "isSnakecase", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_primitive", "__commonJSMin", "exports", "module", "isInteger", "sqrt", "floor", "isSquareNumber", "value", "n", "require_object", "__commonJSMin", "exports", "module", "isInteger", "sqrt", "floor", "isSquareNumber", "value", "n", "x", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isSquareNumber", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_primitive", "__commonJSMin", "exports", "module", "isInteger", "sqrt", "floor", "isSquareTriangularNumber", "value", "n", "x", "require_object", "__commonJSMin", "exports", "module", "isInteger", "sqrt", "floor", "isSquareTriangularNumber", "value", "n", "x", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isSquareTriangularNumber", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_main", "__commonJSMin", "exports", "module", "isString", "startcase", "isStartcase", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isStrictEqual", "a", "b", "require_lib", "__commonJSMin", "exports", "module", "main", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "arrayfun", "isString", "isPrimitiveArray", "isObjectArray", "isStringArray", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "arrayfun", "isSymbol", "isPrimitiveArray", "isObjectArray", "isSymbolArray", "require_main", "__commonJSMin", "exports", "module", "isSquareMatrix", "isSymmetricMatrix", "v", "M", "i", "j", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "getPrototypeOf", "typeOf", "isError", "isSyntaxError", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "constantFunction", "isTouchDevice", "require_lib", "__commonJSMin", "exports", "module", "main", "bool", "require_primitive", "__commonJSMin", "exports", "module", "isInteger", "sqrt", "floor", "isTriangularNumber", "value", "n", "x", "require_object", "__commonJSMin", "exports", "module", "isInteger", "sqrt", "floor", "isTriangularNumber", "value", "n", "x", "require_main", "__commonJSMin", "exports", "module", "isPrimitive", "isObject", "isTriangularNumber", "value", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "main", "isPrimitive", "isObject", "require_main", "__commonJSMin", "exports", "module", "isTruthy", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "arrayfun", "isTruthy", "isTruthyArray", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "getPrototypeOf", "typeOf", "isError", "isTypeError", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isInteger", "MAX_LENGTH", "isTypedArrayLength", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isNonNegativeInteger", "MAX", "isTypedArrayLike", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isString", "RE_UNC_PATH", "isUNCPath", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isUndefined", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isUndefinedOrNull", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isTypedArray", "isArray", "isNumber", "absdiff", "FLOAT64_SQRT_EPS", "isUnityProbabilityArray", "v", "sum", "i", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "lowercase", "uppercase", "isString", "isUppercase", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "getPrototypeOf", "typeOf", "isError", "isURIError", "value", "require_lib", "__commonJSMin", "exports", "module", "main", "require_global_scope", "__commonJSMin", "exports", "module", "scope", "globalScope", "fcn", "require_main", "__commonJSMin", "exports", "module", "getGlobal", "IS_NODE", "isObject", "globalScope", "Global", "isWebWorker", "require_lib", "__commonJSMin", "exports", "module", "main", "bool", "require_main", "__commonJSMin", "exports", "module", "isString", "reWhitespace", "RE", "isWhitespace", "x", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "propertyDescriptor", "isWritableProperty", "value", "property", "desc", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "propertyDescriptorIn", "isWritablePropertyIn", "value", "property", "desc", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "propertyDescriptor", "isWriteOnlyProperty", "value", "property", "desc", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "propertyDescriptorIn", "isWriteOnlyPropertyIn", "value", "property", "desc", "require_lib", "__commonJSMin", "exports", "module", "main", "require_main", "__commonJSMin", "exports", "module", "isTypedArray", "format", "typedarrayfcn", "predicate", "every", "value", "len", "i", "require_lib", "__commonJSMin", "exports", "module", "main", "require_lib", "__commonJSMin", "exports", "module", "setReadOnly", "ns", "setReadOnly", "ns"] } diff --git a/is-same-complex64/README.md b/is-same-complex64/README.md new file mode 100644 index 00000000..1a023439 --- /dev/null +++ b/is-same-complex64/README.md @@ -0,0 +1,108 @@ + + +# isSameComplex64 + +> Test if two arguments are both [single-precision complex floating-point numbers][@stdlib/complex/float32] and have the [same value][@stdlib/assert/is-same-value]. + +
+ +## Usage + +```javascript +var isSameComplex64 = require( '@stdlib/assert/is-same-complex64' ); +``` + +#### isSameComplex64( v1, v2 ) + +Tests if two arguments are both [single-precision complex floating-point numbers][@stdlib/complex/float32] and have the [same value][@stdlib/assert/is-same-value]. + +```javascript +var Complex64 = require( '@stdlib/complex/float32' ); + +var x = new Complex64( 1.0, 2.0 ); +var y = new Complex64( 1.0, 2.0 ); +var bool = isSameComplex64( x, y ); +// returns true +``` + +
+ + + +
+ +## Notes + +- In contrast to the strict equality operator `===`, the function distinguishes between `+0` and `-0` and treats `NaNs` as the [same value][@stdlib/assert/is-same-value]. + +
+ + + +
+ +## Examples + + + +```javascript +var Complex64 = require( '@stdlib/complex/float32' ); +var isSameComplex64 = require( '@stdlib/assert/is-same-complex64' ); + +var x = new Complex64( 1.0, 2.0 ); +var y = new Complex64( 1.0, 2.0 ); +var out = isSameComplex64( x, y ); +// returns true + +x = new Complex64( 0.0, -0.0 ); +y = new Complex64( -0.0, 0.0 ); +out = isSameComplex64( x, y ); +// returns false + +x = new Complex64( NaN, NaN ); +y = new Complex64( NaN, NaN ); +out = isSameComplex64( x, y ); +// returns true +``` + +
+ + + + + + + + + + + + + + diff --git a/is-same-complex64/benchmark/benchmark.js b/is-same-complex64/benchmark/benchmark.js new file mode 100644 index 00000000..587e8eea --- /dev/null +++ b/is-same-complex64/benchmark/benchmark.js @@ -0,0 +1,98 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2024 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +'use strict'; + +// MODULES // + +var bench = require( '@stdlib/bench' ); +var Complex64 = require( '@stdlib/complex/float32' ); +var isBoolean = require( './../../is-boolean' ).isPrimitive; +var pkg = require( './../package.json' ).name; +var isSameComplex64 = require( './../lib' ); + + +// MAIN // + +bench( pkg+'::true', function benchmark( b ) { + var values; + var bool; + var v; + var i; + + values = [ + new Complex64( 5.0, 3.0 ), + new Complex64( NaN, NaN ), + new Complex64( 0.0, -0.0 ) + ]; + + b.tic(); + for ( i = 0; i < b.iterations; i++ ) { + v = values[ i%values.length ]; + bool = isSameComplex64( v, v ); + if ( typeof bool !== 'boolean' ) { + b.fail( 'should return a boolean' ); + } + } + b.toc(); + if ( !isBoolean( bool ) ) { + b.fail( 'should return a boolean' ); + } + b.pass( 'benchmark finished' ); + b.end(); +}); + +bench( pkg+'::false', function benchmark( b ) { + var values1; + var values2; + var bool; + var v1; + var v2; + var i; + + values1 = [ + new Complex64( 5.0, 3.0 ), + new Complex64( NaN, NaN ), + new Complex64( 0.0, -0.0 ), + 3.0, + NaN + ]; + values2 = [ + new Complex64( 5.0, -3.0 ), + new Complex64( NaN, 2.0 ), + new Complex64( 0.0, 10.0 ), + -3.0, + 5.0 + ]; + + b.tic(); + for ( i = 0; i < b.iterations; i++ ) { + v1 = values1[ i%values1.length ]; + v2 = values2[ i%values2.length ]; + bool = isSameComplex64( v1, v2 ); + if ( typeof bool !== 'boolean' ) { + b.fail( 'should return a boolean' ); + } + } + b.toc(); + if ( !isBoolean( bool ) ) { + b.fail( 'should return a boolean' ); + } + b.pass( 'benchmark finished' ); + b.end(); +}); diff --git a/is-same-complex64/docs/repl.txt b/is-same-complex64/docs/repl.txt new file mode 100644 index 00000000..4d52cffb --- /dev/null +++ b/is-same-complex64/docs/repl.txt @@ -0,0 +1,36 @@ + +{{alias}}( v1, v2 ) + Tests if two arguments are both single-precision complex floating-point + numbers and have the same value. + + The function differs from the `===` operator in that the function treats + `-0` and `+0` as distinct and `NaNs` as the same. + + Parameters + ---------- + v1: any + First input value. + + v2: any + Second input value. + + Returns + ------- + bool: boolean + Boolean indicating whether two arguments are the same. + + Examples + -------- + > var x = new {{alias:@stdlib/complex/float32}}( 1.0, 2.0 ); + > var y = new {{alias:@stdlib/complex/float32}}( 1.0, 2.0 ); + > var bool = {{alias}}( x, y ) + true + + > x = new {{alias:@stdlib/complex/float32}}( NaN, NaN ); + > y = new {{alias:@stdlib/complex/float32}}( NaN, NaN ); + > bool = {{alias}}( x, y ) + true + + See Also + -------- + diff --git a/is-same-complex64/docs/types/index.d.ts b/is-same-complex64/docs/types/index.d.ts new file mode 100644 index 00000000..901c3803 --- /dev/null +++ b/is-same-complex64/docs/types/index.d.ts @@ -0,0 +1,55 @@ +/* +* @license Apache-2.0 +* +* Copyright (c) 2024 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +// TypeScript Version: 4.1 + +/** +* Tests if two arguments are both single-precision complex floating-point numbers and have the same value. +* +* ## Notes +* +* - The function differs from the `===` operator in that the function treats `-0` and `+0` as distinct and `NaNs` as the same. +* +* @param v1 - first input value +* @param v2 - second input value +* @returns boolean indicating whether two arguments are the same +* +* @example +* var Complex64 = require( '@stdlib/complex/float32' ); +* +* var x = new Complex64( 1.0, 2.0 ); +* var y = new Complex64( 1.0, 2.0 ); +* +* var out = isSameComplex64( x, y ); +* // returns true +* +* @example +* var Complex64 = require( '@stdlib/complex/float32' ); +* +* var x = new Complex64( 1.0, 2.0 ); +* var y = new Complex64( -1.0, -2.0 ); +* +* var out = isSameComplex64( x, y ); +* // returns false +*/ +declare function isSameComplex64( v1: any, v2: any ): boolean; + + +// EXPORTS // + +export = isSameComplex64; diff --git a/is-same-complex64/docs/types/test.ts b/is-same-complex64/docs/types/test.ts new file mode 100644 index 00000000..ae465188 --- /dev/null +++ b/is-same-complex64/docs/types/test.ts @@ -0,0 +1,36 @@ +/* +* @license Apache-2.0 +* +* Copyright (c) 2024 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +import isSameComplex64 = require( './index' ); + + +// TESTS // + +// The function returns a boolean... +{ + isSameComplex64( 3.14, 3.14 ); // $ExpectType boolean + isSameComplex64( null, null ); // $ExpectType boolean + isSameComplex64( 'beep', 'boop' ); // $ExpectType boolean +} + +// The compiler throws an error if the function is provided an unsupported number of arguments... +{ + isSameComplex64(); // $ExpectError + isSameComplex64( 3.14 ); // $ExpectError + isSameComplex64( 'beep', 'beep', 3.14 ); // $ExpectError +} diff --git a/is-same-complex64/examples/index.js b/is-same-complex64/examples/index.js new file mode 100644 index 00000000..e34141fb --- /dev/null +++ b/is-same-complex64/examples/index.js @@ -0,0 +1,40 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2024 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +'use strict'; + +var Complex64 = require( '@stdlib/complex/float32' ); +var isSameComplex64 = require( './../lib' ); + +var x = new Complex64( 1.0, 2.0 ); +var y = new Complex64( 1.0, 2.0 ); +var out = isSameComplex64( x, y ); +console.log( out ); +// => true + +x = new Complex64( 0.0, -0.0 ); +y = new Complex64( -0.0, 0.0 ); +out = isSameComplex64( x, y ); +console.log( out ); +// => false + +x = new Complex64( NaN, NaN ); +y = new Complex64( NaN, NaN ); +out = isSameComplex64( x, y ); +console.log( out ); +// => true diff --git a/is-same-complex64/lib/index.js b/is-same-complex64/lib/index.js new file mode 100644 index 00000000..69b498ea --- /dev/null +++ b/is-same-complex64/lib/index.js @@ -0,0 +1,54 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2024 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +'use strict'; + +/** +* Test if two arguments are both single-precision complex floating-point numbers and have the same value. +* +* @module @stdlib/assert/is-same-complex64 +* +* @example +* var Complex64 = require( '@stdlib/complex/float32' ); +* var isSameComplex64 = require( '@stdlib/assert/is-same-complex64' ); +* +* var x = new Complex64( 1.0, 2.0 ); +* var y = new Complex64( 1.0, 2.0 ); +* +* var out = isSameComplex64( x, y ); +* // returns true +* +* @example +* var Complex64 = require( '@stdlib/complex/float32' ); +* var isSameComplex64 = require( '@stdlib/assert/is-same-complex64' ); +* +* var x = new Complex64( 1.0, 2.0 ); +* var y = new Complex64( -1.0, -2.0 ); +* +* var out = isSameComplex64( x, y ); +* // returns false +*/ + +// MODULES // + +var main = require( './main.js' ); + + +// EXPORTS // + +module.exports = main; diff --git a/is-same-complex64/lib/main.js b/is-same-complex64/lib/main.js new file mode 100644 index 00000000..46ade418 --- /dev/null +++ b/is-same-complex64/lib/main.js @@ -0,0 +1,64 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2024 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +'use strict'; + +// MODULES // + +var isComplex64 = require( './../../is-complex64' ); +var isSameValuef = require( '@stdlib/complex/base/assert/is-same-valuef' ); + + +// MAIN // + +/** +* Tests if two arguments are both single-precision complex floating-point numbers and have the same value. +* +* @param {*} v1 - first value +* @param {*} v2 - second value +* @returns {boolean} boolean result +* +* @example +* var Complex64 = require( '@stdlib/complex/float32' ); +* +* var x = new Complex64( 1.0, 2.0 ); +* var y = new Complex64( 1.0, 2.0 ); +* +* var out = isSameComplex64( x, y ); +* // returns true +* +* @example +* var Complex64 = require( '@stdlib/complex/float32' ); +* +* var x = new Complex64( 1.0, 2.0 ); +* var y = new Complex64( -1.0, -2.0 ); +* +* var out = isSameComplex64( x, y ); +* // returns false +*/ +function isSameComplex64( v1, v2 ) { + if ( isComplex64( v1 ) && isComplex64( v2 ) ) { + return isSameValuef( v1, v2 ); + } + return false; +} + + +// EXPORTS // + +module.exports = isSameComplex64; diff --git a/is-same-complex64/package.json b/is-same-complex64/package.json new file mode 100644 index 00000000..d6538cb0 --- /dev/null +++ b/is-same-complex64/package.json @@ -0,0 +1,78 @@ +{ + "name": "@stdlib/assert/is-same-complex64", + "version": "0.0.0", + "description": "Test if two arguments are both single-precision complex floating-point numbers and have the same value.", + "license": "Apache-2.0", + "author": { + "name": "The Stdlib Authors", + "url": "https://github.com/stdlib-js/stdlib/graphs/contributors" + }, + "contributors": [ + { + "name": "The Stdlib Authors", + "url": "https://github.com/stdlib-js/stdlib/graphs/contributors" + } + ], + "main": "./lib", + "directories": { + "benchmark": "./benchmark", + "doc": "./docs", + "example": "./examples", + "lib": "./lib", + "test": "./test" + }, + "types": "./docs/types", + "scripts": {}, + "homepage": "https://github.com/stdlib-js/stdlib", + "repository": { + "type": "git", + "url": "git://github.com/stdlib-js/stdlib.git" + }, + "bugs": { + "url": "https://github.com/stdlib-js/stdlib/issues" + }, + "dependencies": {}, + "devDependencies": {}, + "engines": { + "node": ">=0.10.0", + "npm": ">2.7.0" + }, + "os": [ + "aix", + "darwin", + "freebsd", + "linux", + "macos", + "openbsd", + "sunos", + "win32", + "windows" + ], + "keywords": [ + "stdlib", + "stdassert", + "assertion", + "assert", + "utilities", + "utility", + "utils", + "util", + "equal", + "same", + "strict", + "is", + "issame", + "issamevalue", + "isequal", + "isstrictequal", + "type", + "check", + "valid", + "validate", + "test", + "complex64", + "complex", + "number", + "cmplx" + ] +} diff --git a/is-same-complex64/test/test.js b/is-same-complex64/test/test.js new file mode 100644 index 00000000..cc77ecac --- /dev/null +++ b/is-same-complex64/test/test.js @@ -0,0 +1,105 @@ +/** +* @license Apache-2.0 +* +* Copyright (c) 2024 The Stdlib Authors. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ + +'use strict'; + +// MODULES // + +var tape = require( 'tape' ); +var Complex64 = require( '@stdlib/complex/float32' ); +var isSameComplex64 = require( './../lib' ); + + +// TESTS // + +tape( 'main export is a function', function test( t ) { + t.ok( true, __filename ); + t.strictEqual( typeof isSameComplex64, 'function', 'main export is a function' ); + t.end(); +}); + +tape( 'the function returns `true` if provided two single-precision complex floating-point numbers having the same value', function test( t ) { + var x; + var y; + + x = new Complex64( 1.0, 2.0 ); + t.strictEqual( isSameComplex64( x, x ), true, 'returns expected value' ); + + x = new Complex64( 3.0, 4.0 ); + y = new Complex64( 3.0, 4.0 ); + t.strictEqual( isSameComplex64( x, y ), true, 'returns expected value' ); + + x = new Complex64( 0.0, -0.0 ); + y = new Complex64( 0.0, -0.0 ); + t.strictEqual( isSameComplex64( x, y ), true, 'returns expected value' ); + + x = new Complex64( NaN, NaN ); + y = new Complex64( NaN, NaN ); + t.strictEqual( isSameComplex64( x, y ), true, 'returns expected value' ); + + t.end(); +}); + +tape( 'the function returns `false` if not provided two single-precision complex floating-point numbers having the same value', function test( t ) { + var x; + var y; + var i; + + x = [ + '', + 'beep', + 5, + 3.14, + -3.14, + 0.0, + -0.0, + true, + false, + null, + void 0, + [], + {}, + function noop() {}, + new Complex64( 1.0, 2.0 ), + new Complex64( 1.0, 2.0 ), + new Complex64( -0.0, 0.0 ) + ]; + y = [ + 'abc', + 'boop', + -5, + -3.14, + 3.14, + -0.0, + 0.0, + false, + true, + void 0, + null, + [], + {}, + function noop() {}, + 1.0, + new Complex64( 3.0, 4.0 ), + new Complex64( 0.0, -0.0 ) + ]; + for ( i = 0; i < x.length; i++ ) { + t.strictEqual( isSameComplex64( x[ i ], y[ i ] ), false, 'returns expected value when provided '+x[ i ]+' and '+y[ i ] ); + } + t.end(); +}); diff --git a/lib/index.js b/lib/index.js index 5c6c3ced..23e5b8a0 100644 --- a/lib/index.js +++ b/lib/index.js @@ -2151,6 +2151,15 @@ setReadOnly( ns, 'isSafeInteger', require( './../is-safe-integer' ) ); */ setReadOnly( ns, 'isSafeIntegerArray', require( './../is-safe-integer-array' ) ); +/** +* @name isSameComplex64 +* @memberof ns +* @readonly +* @type {Function} +* @see {@link module:@stdlib/assert/is-same-complex64} +*/ +setReadOnly( ns, 'isSameComplex64', require( './../is-same-complex64' ) ); + /** * @name isSameComplex64Array * @memberof ns