perlica
Version:
<h1 align="center">Perlica</h1>
4 lines (2 loc) • 8.75 kB
JavaScript
var F=Object.defineProperty;var a=(t)=>t;function f(t,n){this[t]=a.bind(null,n)}var E=(t,n)=>{for(var i in n)F(t,i,{get:n[i],enumerable:!0,configurable:!0,set:f.bind(n,i)})};var g={};E(g,{unwrapOrElse:()=>Ht,unwrapOr:()=>Dt,unwrapErr:()=>jt,unwrap:()=>Pt,tryPromise:()=>Lt,tryCatch:()=>Kt,ok:()=>o,isOk:()=>s,isErr:()=>e,fromOption:()=>Jt,fromNullable:()=>It,expectErr:()=>Mt,expect:()=>Ct,err:()=>r,bind:()=>Qt,andThen:()=>yt,and:()=>Gt,ResultProto:()=>S});var Q={};E(Q,{OnceIterator:()=>m});class m{value;done=!1;constructor(t){this.value=t}next(t){if(this.done)return{done:!0,value:t};return this.done=!0,{done:!1,value:this.value}}[Symbol.iterator](){return new m(this.value)}}var $={};E($,{or:()=>v,not:()=>l,ne:()=>ot,isUndefined:()=>W,isTruthy:()=>Tt,isSymbol:()=>mt,isString:()=>st,isSet:()=>Ut,isRegExp:()=>Et,isRecordOrArray:()=>Y,isPromise:()=>bt,isObject:()=>Z,isNumber:()=>rt,isNullable:()=>wt,isNull:()=>V,isNotUndefined:()=>X,isNotNullable:()=>w,isNotNull:()=>R,isMap:()=>xt,isIterable:()=>Rt,isInteger:()=>Ot,isFunction:()=>b,isError:()=>_t,isDate:()=>Bt,isBoolean:()=>pt,isBigInt:()=>ht,isAsyncIterable:()=>ut,isArray:()=>et,hasProperty:()=>_,eq:()=>it,any:()=>nt,and:()=>k,all:()=>tt});var l=(t)=>(n)=>!t(n),k=(t,n)=>(i)=>t(i)&&n(i),v=(t,n)=>(i)=>t(i)||n(i),tt=(t)=>{return(n)=>{for(let i of t)if(i(n)===!1)return!1;return!0}},nt=(t)=>{return(n)=>{for(let i of t)if(i(n)===!0)return!0;return!1}},it=(t)=>(n)=>n===t,ot=(t)=>(n)=>n!==t,Tt=(t)=>!!t,V=(t)=>t===null,R=(t)=>t!==null,W=(t)=>t===void 0,X=(t)=>t!==void 0,pt=(t)=>typeof t==="boolean",rt=(t)=>typeof t==="number",Ot=(t)=>Number.isInteger(t),ht=(t)=>typeof t==="bigint",st=(t)=>typeof t==="string",et=(t)=>Array.isArray(t),b=(t)=>typeof t==="function",mt=(t)=>typeof t==="symbol",Ut=(t)=>t instanceof Set,xt=(t)=>t instanceof Map,Et=(t)=>t instanceof RegExp,_t=(t)=>t instanceof Error,wt=(t)=>V(t)||W(t),w=(t)=>R(t)&&X(t),bt=(t)=>_(t,"then")&&_(t,"catch")&&b(t.then)&&b(t.catch),Bt=(t)=>t instanceof Date,Y=(t)=>typeof t==="object"&&R(t),Z=(t)=>Y(t)||b(t),_=(t,n)=>Z(t)&&(n in t),Rt=(t)=>_(t,Symbol.iterator),ut=(t)=>_(t,Symbol.asyncIterator);var A={};E(A,{tryPromise:()=>dt,tryCatch:()=>Nt,some:()=>h,none:()=>O,isSome:()=>p,isNone:()=>U,fromResult:()=>ct,fromNullable:()=>St,bind:()=>zt,OptionProto:()=>u});var p=(t)=>t.tag==="some",U=(t)=>t.tag==="none",u=()=>({and(t){return p(this)?t:O()},andThen(t){return p(this)?t(this.value):O()},expect(t){if(p(this))return this.value;else throw Error(t)},filter(t){return U(this)?O():t(this.value)?this:O()},flatten(){return p(this)?this.value:O()},inspect(t){if(p(this))return t(this.value),h(this.value);else return O()},isNone(){return U(this)},isNoneOr(t){return U(this)||t(this.value)},isSome(){return p(this)},isSomeAnd(t){return U(this)?!1:t(this.value)},map(t){return p(this)?h(t(this.value)):O()},mapOr(t,n){return p(this)?n(this.value):t},mapOrElse(t,n){return p(this)?n(this.value):t()},okOr(t){return p(this)?o(this.value):r(t)},okOrElse(t){return p(this)?o(this.value):r(t())},or(t){return p(this)?this:t},orElse(t){return p(this)?this:t()},transpose(){return U(this)?o(O()):e(this.value)?r(this.value.value):o(h(this.value.value))},unwrap(){if(p(this))return this.value;else throw Error("called `Option.unwrap()` on a `None` value")},unwrapOr(t){return p(this)?this.value:t},unwrapOrElse(t){return p(this)?this.value:t()},xor(t){return p(this)&&p(t)?this:U(this)&&p(t)?t:O()},[Symbol.iterator](){return new m(this)}}),St=(t)=>w(t)?h(t):O(),ct=(t)=>t.ok(),Nt=(t)=>{try{return h(t())}catch(n){return O()}},dt=async(t)=>t.then((n)=>h(n)).catch((n)=>O()),h=(t)=>{let n=Object.create(u());return n.value=t,n.tag="some",n},O=()=>{let t=Object.create(u());return t.tag="none",t},zt=(t)=>{let n=t(),i=n.next();while(!0){if(i.done)return h(i.value);if(p(i.value))i=n.next(i.value.value);else return i.value}};var Gt=(t,n)=>t.and(n),yt=(t,n)=>t.andThen(n),Ct=(t,n)=>t.expect(n),Mt=(t,n)=>t.expectErr(n),s=(t)=>t.tag==="ok",e=(t)=>t.tag==="err",Pt=(t)=>t.unwrap(),jt=(t)=>t.unwrapErr(),Dt=(t,n)=>t.unwrapOr(n),Ht=(t,n)=>t.unwrapOrElse(n),It=(t,n)=>w(t)?o(t):r(n()),Jt=(t,n)=>t.okOr(n()),Kt=(t)=>{try{return o(t())}catch(n){return r(n)}},Lt=async(t)=>t.then((n)=>o(n)).catch((n)=>r(n)),Qt=(t)=>{let n=t(),i=n.next();while(!0){if(i.done)return o(i.value);if(s(i.value))i=n.next(i.value.value);else return i.value}},o=(t)=>{let n=Object.create(S());return n.value=t,n.tag="ok",n},r=(t)=>{let n=Object.create(S());return n.value=t,n.tag="err",n},S=()=>({and(t){return s(this)?t:r(this.value)},andThen(t){return s(this)?t(this.value):r(this.value)},err(){return e(this)?h(this.value):O()},expect(t){if(s(this))return this.value;else throw Error(t)},expectErr(t){if(e(this))return this.value;else throw Error(t)},flatten(){return this.andThen((t)=>t)},inspect(t){if(s(this))return t(this.value),o(this.value);else return r(this.value)},inspectErr(t){if(e(this))return t(this.value),r(this.value);else return o(this.value)},isErr(){return e(this)},isErrAnd(t){return e(this)&&t(this.value)},isOk(){return s(this)},isOkAnd(t){return s(this)&&t(this.value)},map(t){return s(this)?o(t(this.value)):r(this.value)},mapErr(t){return e(this)?r(t(this.value)):o(this.value)},mapOr(t,n){return s(this)?n(this.value):t},mapOrElse(t,n){return s(this)?n(this.value):t(this.value)},ok(){return s(this)?h(this.value):O()},or(t){return e(this)?r(t(this.value)):o(this.value)},orElse(t){return e(this)?t(this.value):o(this.value)},transpose(){return e(this)?h(r(this.value)):U(this.value)?O():h(o(this.value.value))},unwrap(){if(s(this))return this.value;else throw Error(`called \`Result.unwrap()\` on an \`Err\` value: ${String(this.value)}`)},unwrapErr(){if(e(this))return this.value;else throw Error(`called \`Result.unwrapErr()\` on an \`Ok\` value: ${String(this.value)}`)},unwrapOr(t){return s(this)?this.value:t},unwrapOrElse(t){return s(this)?this.value:t(this.value)},[Symbol.iterator](){return new m(this)}});var q={};E(q,{unwrapOrElse:()=>K,unwrapOr:()=>J,unwrap:()=>I,toResult:()=>Xt,safeRun:()=>L,orElse:()=>H,or:()=>D,okOrElse:()=>z,okOr:()=>d,of:()=>Vt,mapOrElse:()=>j,mapOr:()=>P,map:()=>c,inspect:()=>M,flatten:()=>Wt,flatMap:()=>N,filter:()=>C,expect:()=>y,createTask:()=>T,bind:()=>Yt,and:()=>G,Task:()=>B});class B{f;constructor(t){this.f=t}unsafeRun(){return this.f()}map(t){return c(t)(this)}flatMap(t){return N(t)(this)}filter(t){return C(t)(this)}and(t){return G(t)(this)}expect(t){return y(t)(this)}inspect(t){return M(t)(this)}mapOr(t,n){return P(t,n)(this)}mapOrElse(t,n){return j(t,n)(this)}okOr(t){return d(t)(this)}okOrElse(t){return z(t)(this)}or(t){return D(t)(this)}orElse(t){return H(t)(this)}unwrap(){return I(this)}unwrapOr(t){return J(t)(this)}unwrapOrElse(t){return K(t)(this)}safeRun(){return L(this)}[Symbol.iterator](){return new m(this)}}var T=(t)=>{return new B(t)};var Vt=(t)=>T(async()=>t),c=(t)=>(n)=>{return T(async()=>{let i=await n.unsafeRun();return t(i)})},N=(t)=>(n)=>{return T(async()=>{let i=await n.unsafeRun();return await t(i).unsafeRun()})},Wt=(t)=>{return T(async()=>{return await(await t.unsafeRun()).unsafeRun()})},d=(t)=>(n)=>{return T(async()=>{try{let i=await n.unsafeRun();return o(i)}catch{return r(t)}})},z=(t)=>(n)=>{return T(async()=>{try{let i=await n.unsafeRun();return o(i)}catch{return r(t())}})},G=(t)=>(n)=>{return T(async()=>{return await n.unsafeRun(),await t.unsafeRun()})},y=(t)=>(n)=>{return T(async()=>{let i=await n.unsafeRun();if(i===null||i===void 0)throw Error(t);return i})},C=(t)=>(n)=>{return T(async()=>{let i=await n.unsafeRun();return t(i)?h(i):O()})},M=(t)=>(n)=>{return T(async()=>{let i=await n.unsafeRun();return t(i),i})},P=(t,n)=>(i)=>{return T(async()=>{try{let x=await i.unsafeRun();return n(x)}catch{return t}})},j=(t,n)=>(i)=>{return T(async()=>{try{let x=await i.unsafeRun();return n(x)}catch{return t()}})},D=(t)=>(n)=>{return T(async()=>{try{return await n.unsafeRun()}catch{return await t.unsafeRun()}})},H=(t)=>(n)=>{return T(async()=>{try{return await n.unsafeRun()}catch{return await t().unsafeRun()}})},I=(t)=>{return T(async()=>{let n=await t.unsafeRun();if(n===null||n===void 0)throw Error("called `Task.unwrap()` on a null value");return n})},J=(t)=>(n)=>{return T(async()=>{try{return await n.unsafeRun()}catch{return t}})},K=(t)=>(n)=>{return T(async()=>{try{return await n.unsafeRun()}catch{return t()}})},Xt=(t)=>{return T(async()=>{try{let n=await t.unsafeRun();return o(n)}catch(n){return r(n)}})},L=async(t)=>{try{let n=await t.unsafeRun();return o(n)}catch(n){return r(n)}},Yt=(t)=>{return T(async()=>{let n=t(),i=n.next();while(!0){if(i.done)return i.value;i=await i.value.map((x)=>n.next(x)).unsafeRun()}})};export{q as Task,g as Result,$ as Predicate,A as Option,Q as Iterator};
//# debugId=9FC8B96CAE80B19164756E2164756E21