functype 0.0.8 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (85) hide show
  1. package/dist/chunk-377WQNCB.mjs +1 -0
  2. package/dist/chunk-3OHJLCSR.mjs +0 -0
  3. package/dist/chunk-3VJERXBP.js +1 -0
  4. package/dist/chunk-5VTXJIR3.js +1 -0
  5. package/dist/chunk-72IAI5F4.mjs +0 -0
  6. package/dist/chunk-7VFL33KH.js +1 -0
  7. package/dist/chunk-7XCWDOMW.js +1 -0
  8. package/dist/chunk-CZKHN2SM.mjs +1 -0
  9. package/dist/chunk-DOG6HMTN.js +1 -0
  10. package/dist/chunk-HA5XD5KC.mjs +1 -0
  11. package/dist/chunk-LBQXRIXP.mjs +0 -0
  12. package/dist/chunk-PKWOSOD7.mjs +1 -0
  13. package/dist/chunk-SSP26X5Y.js +1 -0
  14. package/dist/chunk-TVZBBVEV.js +1 -0
  15. package/dist/chunk-U237FVPP.mjs +1 -0
  16. package/dist/chunk-VM6KG6UB.mjs +1 -0
  17. package/dist/chunk-VWFTFPZB.mjs +1 -0
  18. package/dist/chunk-WY62QD3C.js +1 -0
  19. package/dist/chunk-XNAZ5QU3.js +1 -0
  20. package/dist/chunk-ZOH672YH.js +1 -0
  21. package/dist/either/Left.js +1 -1
  22. package/dist/either/Left.mjs +1 -1
  23. package/dist/either/Right.js +1 -1
  24. package/dist/either/Right.mjs +1 -1
  25. package/dist/either/index.js +1 -1
  26. package/dist/either/index.mjs +1 -1
  27. package/dist/index.d.mts +143 -48
  28. package/dist/index.d.ts +143 -48
  29. package/dist/index.js +1 -1
  30. package/dist/index.mjs +1 -1
  31. package/dist/list/List.js +1 -1
  32. package/dist/list/List.mjs +1 -1
  33. package/dist/list/index.js +1 -1
  34. package/dist/list/index.mjs +1 -1
  35. package/dist/map/Map.d.mts +2 -2
  36. package/dist/map/Map.d.ts +2 -2
  37. package/dist/map/Map.js +1 -1
  38. package/dist/map/Map.mjs +1 -1
  39. package/dist/map/index.d.mts +1 -8
  40. package/dist/map/index.d.ts +1 -8
  41. package/dist/map/index.js +1 -1
  42. package/dist/map/index.mjs +1 -0
  43. package/dist/map/shim.d.mts +4 -0
  44. package/dist/map/shim.d.ts +4 -0
  45. package/dist/map/shim.js +1 -0
  46. package/dist/map/shim.mjs +1 -0
  47. package/dist/option/None.js +1 -1
  48. package/dist/option/None.mjs +1 -1
  49. package/dist/option/Some.js +1 -1
  50. package/dist/option/Some.mjs +1 -1
  51. package/dist/option/index.js +1 -1
  52. package/dist/option/index.mjs +1 -1
  53. package/dist/set/Set.d.mts +2 -0
  54. package/dist/set/Set.d.ts +2 -0
  55. package/dist/set/Set.js +1 -0
  56. package/dist/set/Set.mjs +1 -0
  57. package/dist/set/index.d.mts +2 -0
  58. package/dist/set/index.d.ts +2 -0
  59. package/dist/set/index.js +1 -0
  60. package/dist/set/index.mjs +1 -0
  61. package/dist/set/shim.d.mts +4 -0
  62. package/dist/set/shim.d.ts +4 -0
  63. package/dist/set/shim.js +1 -0
  64. package/dist/set/shim.mjs +1 -0
  65. package/dist/tuple/Tuple.d.mts +2 -0
  66. package/dist/tuple/Tuple.d.ts +2 -0
  67. package/dist/tuple/Tuple.js +1 -0
  68. package/dist/tuple/Tuple.mjs +1 -0
  69. package/dist/tuple/index.d.mts +2 -0
  70. package/dist/tuple/index.d.ts +2 -0
  71. package/dist/tuple/index.js +1 -0
  72. package/dist/tuple/index.mjs +1 -0
  73. package/package.json +2 -2
  74. package/dist/chunk-3BACPU2L.mjs +0 -1
  75. package/dist/chunk-4BM7WJEY.js +0 -1
  76. package/dist/chunk-7F7OFOVC.mjs +0 -1
  77. package/dist/chunk-CMWFJ4NE.mjs +0 -1
  78. package/dist/chunk-ERJUPNUS.mjs +0 -1
  79. package/dist/chunk-IRUJTPRV.js +0 -1
  80. package/dist/chunk-QK32BSMQ.js +0 -1
  81. package/dist/chunk-RSJUG4F6.js +0 -1
  82. package/dist/chunk-SHAM4BB3.js +0 -1
  83. package/dist/chunk-T4ZDAXL2.mjs +0 -1
  84. package/dist/chunk-TAF2HXL3.mjs +0 -1
  85. package/dist/chunk-ZQN22FM6.js +0 -1
@@ -0,0 +1 @@
1
+ var p=Map;export{p as a};
File without changes
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var t=Set;exports.a = t;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var p=Map;exports.a = p;
File without changes
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunk5VTXJIR3js = require('./chunk-5VTXJIR3.js');var _chunkSSP26X5Yjs = require('./chunk-SSP26X5Y.js');var _chunkWY62QD3Cjs = require('./chunk-WY62QD3C.js');var _chunkVTKL7OQIjs = require('./chunk-VTKL7OQI.js');var p=class i{constructor(e=[]){_chunkVTKL7OQIjs.a.call(void 0, this,"internalMap");this.internalMap=new (0, _chunk5VTXJIR3js.a)(e)}add(e){return new i}remove(e){let n=new i([...this.internalMap.entries()]);return n.internalMap.delete(e[0]),n}contains(e){return this.internalMap.get(e[0])===e[1]}get size(){return this.internalMap.size}map(e){let n=[];for(let[t,r]of this.internalMap.entries())n.push([t,e(r)]);return new i(n)}flatMap(e){let n=[];for(let[t,r]of this.internalMap.entries()){let a=e(r);if(a instanceof i)for(let[c,K]of a.internalMap.entries())n.push([c,K])}return new i(n)}reduce(e){let n=Array.from(this.internalMap.entries());if(n.length===0)throw new Error("Cannot reduce empty map");{let t=new (0, _chunkSSP26X5Yjs.a)(n[0]);for(let r=1;r<n.length;r++){let a=n[r];t=e(t,new (0, _chunkSSP26X5Yjs.a)(a))}return t}}foldLeft(e,n){let t=e;for(let r of this.internalMap.entries())t=n(t,new (0, _chunkSSP26X5Yjs.a)(r));return t}foldRight(e,n){let t=e,r=Array.from(this.internalMap.entries()).reverse();for(let a of r)t=n(new (0, _chunkSSP26X5Yjs.a)(a),t);return t}get(e){return _chunkWY62QD3Cjs.c.call(void 0, this.internalMap.get(e))}getOrElse(e,n){return _chunkWY62QD3Cjs.c.call(void 0, this.internalMap.get(e)).getOrElse(n)}get isEmpty(){return this.internalMap.size===0}orElse(e,n){let t=_chunkWY62QD3Cjs.c.call(void 0, this.internalMap.get(e));return n}},w=new p([["a",1],["b",2],["c",3]]);exports.a = p;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkZTL76QDLjs = require('./chunk-ZTL76QDL.js');var _chunkWY62QD3Cjs = require('./chunk-WY62QD3C.js');var i=class t{constructor(e){this.value=e}isLeft(){return!1}isRight(){return!0}map(e){return new t(e(this.value))}flatMap(e){return e(this.value)}toOption(){return _chunkWY62QD3Cjs.d.call(void 0, this.value)}toList(){return new (0, _chunkWY62QD3Cjs.f)([this.value])}};var p=t=>new o(t),u= exports.d =t=>new i(t),h= exports.e =t=>{let e=parseInt(t,10);return isNaN(e)?p(new (0, _chunkZTL76QDLjs.a)(`${e}`)):u(e)};var o=class t{constructor(e){this.value=e}isLeft(){return!0}isRight(){return!1}map(e){return new t(this.value)}flatMap(e){return new t(this.value)}toOption(){return _chunkWY62QD3Cjs.e.call(void 0, )}toList(){return new _chunkWY62QD3Cjs.f}};exports.a = o; exports.b = i; exports.c = p; exports.d = u; exports.e = h;
@@ -0,0 +1 @@
1
+ import{a as T}from"./chunk-U5EUM74A.mjs";var o=class t{get isEmpty(){return!0}get(){throw new Error("Cannot call get() on a None")}getOrElse(e){return e}orElse(e){return e}map(e){return new t}flatMap(e){return new t}reduce(e){return e(void 0,void 0)}foldLeft(e,n){return e}foldRight(e,n){return e}toList(){return new r}contains(e){return!1}get size(){return 0}};var u=t=>t?l(t):p(),l=t=>new a(t),p=()=>new o;var r=class t{constructor(e){T(this,"items");this.items=e?[...e]:[]}remove(e){let i=new t().items.indexOf(e);return this.removeAt(i)}contains(e){return this.items.indexOf(e)!==-1}get size(){return this.items.length}get isEmpty(){return this.items.length===0}get length(){return this.items.length}add(e){return new t([...this.items,e])}removeAt(e){if(e<0||e>=this.items.length)return this;let n=[...this.items.slice(0,e),...this.items.slice(e+1)];return new t(n)}get(e){return u(this.items[e])}toArray(){return this.items}map(e){return new t(this.items.map(e))}flatMap(e){let n=[];for(let i of this.items){let s=e(i);s instanceof t&&n.push(...s.items)}return new t(n)}reduce(e){return this.items.reduce(e,void 0)}foldLeft(e,n){return this.items.reduce(n,e)}foldRight(e,n){return this.items.reduceRight((i,s)=>n(s,i),e)}concat(e){return new t([...this.items,...e.items])}toString(){return`List(${this.items.toString()})`}};var O=t=>new r(t);var a=class t{constructor(e){this.value=e}get isEmpty(){return!1}get(){return this.value}getOrElse(e){return this.value}orElse(e){return this}map(e){return new t(e(this.value))}flatMap(e){return e(this.value)}reduce(e){return e(void 0,this.value)}foldLeft(e,n){return n(e,this.value)}foldRight(e,n){return n(this.value,e)}toList(){return new r([this.value])}contains(e){return!1}get size(){return 0}};export{a,o as b,u as c,l as d,p as e,r as f,O as g};
@@ -0,0 +1 @@
1
+ "use strict";
@@ -0,0 +1 @@
1
+ var t=Set;export{t as a};
File without changes
@@ -0,0 +1 @@
1
+ import{a as u}from"./chunk-377WQNCB.mjs";import{a as s}from"./chunk-VM6KG6UB.mjs";import{c as o}from"./chunk-CZKHN2SM.mjs";import{a as l}from"./chunk-U5EUM74A.mjs";var p=class i{constructor(e=[]){l(this,"internalMap");this.internalMap=new u(e)}add(e){return new i}remove(e){let n=new i([...this.internalMap.entries()]);return n.internalMap.delete(e[0]),n}contains(e){return this.internalMap.get(e[0])===e[1]}get size(){return this.internalMap.size}map(e){let n=[];for(let[t,r]of this.internalMap.entries())n.push([t,e(r)]);return new i(n)}flatMap(e){let n=[];for(let[t,r]of this.internalMap.entries()){let a=e(r);if(a instanceof i)for(let[c,K]of a.internalMap.entries())n.push([c,K])}return new i(n)}reduce(e){let n=Array.from(this.internalMap.entries());if(n.length===0)throw new Error("Cannot reduce empty map");{let t=new s(n[0]);for(let r=1;r<n.length;r++){let a=n[r];t=e(t,new s(a))}return t}}foldLeft(e,n){let t=e;for(let r of this.internalMap.entries())t=n(t,new s(r));return t}foldRight(e,n){let t=e,r=Array.from(this.internalMap.entries()).reverse();for(let a of r)t=n(new s(a),t);return t}get(e){return o(this.internalMap.get(e))}getOrElse(e,n){return o(this.internalMap.get(e)).getOrElse(n)}get isEmpty(){return this.internalMap.size===0}orElse(e,n){let t=o(this.internalMap.get(e));return n}},w=new p([["a",1],["b",2],["c",3]]);export{p as a};
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var t=class s{constructor(e){this.values=e}map(e){let r=e(this.values);return new s(r)}flatMap(e){return e(this.values)}get(e){return this.values[e]}getAs(e,r){let a=this.values[e];if(r){if(r(this.values))return a;throw new Error("Cannot cast tuple value")}else return a}toArray(){return this.values}};exports.a = t;
@@ -0,0 +1 @@
1
+ "use strict";
@@ -0,0 +1 @@
1
+ import{a as i}from"./chunk-HA5XD5KC.mjs";import{a as l}from"./chunk-U5EUM74A.mjs";var s=class a{constructor(e){l(this,"internalSet");this.internalSet=new i(e)}add(e){return new a([...this.internalSet,e])}remove(e){let t=new a;return t.internalSet.delete(e)?t:this}contains(e){return this.internalSet.has(e)}get size(){return this.internalSet.size}get isEmpty(){return this.internalSet.size===0}map(e){let t=new a;for(let n of this.internalSet)t.internalSet.add(e(n));return t}flatMap(e){let t=new a;for(let n of this.internalSet){let r=e(n);if(r instanceof a)for(let o of r.internalSet)t.internalSet.add(o)}return t}reduce(e){let t=Array.from(this.internalSet);if(t.length===0)throw new Error("Cannot reduce empty set");{let n=t[0];for(let r=1;r<t.length;r++)n=e(n,t[r]);return n}}foldLeft(e,t){let n=e;for(let r of this.internalSet)n=t(n,r);return n}foldRight(e,t){let n=e,r=Array.from(this.internalSet).reverse();for(let o of r)n=t(o,n);return n}has(e){return this.internalSet.has(e)}};export{s as a};
@@ -0,0 +1 @@
1
+ var t=class s{constructor(e){this.values=e}map(e){let r=e(this.values);return new s(r)}flatMap(e){return e(this.values)}get(e){return this.values[e]}getAs(e,r){let a=this.values[e];if(r){if(r(this.values))return a;throw new Error("Cannot cast tuple value")}else return a}toArray(){return this.values}};export{t as a};
@@ -0,0 +1 @@
1
+ import{a as n}from"./chunk-CFYIJKWF.mjs";import{d as a,e as s,f as r}from"./chunk-CZKHN2SM.mjs";var i=class t{constructor(e){this.value=e}isLeft(){return!1}isRight(){return!0}map(e){return new t(e(this.value))}flatMap(e){return e(this.value)}toOption(){return a(this.value)}toList(){return new r([this.value])}};var p=t=>new o(t),u=t=>new i(t),h=t=>{let e=parseInt(t,10);return isNaN(e)?p(new n(`${e}`)):u(e)};var o=class t{constructor(e){this.value=e}isLeft(){return!0}isRight(){return!1}map(e){return new t(this.value)}flatMap(e){return new t(this.value)}toOption(){return s()}toList(){return new r}};export{o as a,i as b,p as c,u as d,h as e};
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkVTKL7OQIjs = require('./chunk-VTKL7OQI.js');var o=class t{get isEmpty(){return!0}get(){throw new Error("Cannot call get() on a None")}getOrElse(e){return e}orElse(e){return e}map(e){return new t}flatMap(e){return new t}reduce(e){return e(void 0,void 0)}foldLeft(e,n){return e}foldRight(e,n){return e}toList(){return new r}contains(e){return!1}get size(){return 0}};var u=t=>t?l(t):p(),l= exports.d =t=>new a(t),p= exports.e =()=>new o;var r=class t{constructor(e){_chunkVTKL7OQIjs.a.call(void 0, this,"items");this.items=e?[...e]:[]}remove(e){let i=new t().items.indexOf(e);return this.removeAt(i)}contains(e){return this.items.indexOf(e)!==-1}get size(){return this.items.length}get isEmpty(){return this.items.length===0}get length(){return this.items.length}add(e){return new t([...this.items,e])}removeAt(e){if(e<0||e>=this.items.length)return this;let n=[...this.items.slice(0,e),...this.items.slice(e+1)];return new t(n)}get(e){return u(this.items[e])}toArray(){return this.items}map(e){return new t(this.items.map(e))}flatMap(e){let n=[];for(let i of this.items){let s=e(i);s instanceof t&&n.push(...s.items)}return new t(n)}reduce(e){return this.items.reduce(e,void 0)}foldLeft(e,n){return this.items.reduce(n,e)}foldRight(e,n){return this.items.reduceRight((i,s)=>n(s,i),e)}concat(e){return new t([...this.items,...e.items])}toString(){return`List(${this.items.toString()})`}};var O=t=>new r(t);var a=class t{constructor(e){this.value=e}get isEmpty(){return!1}get(){return this.value}getOrElse(e){return this.value}orElse(e){return this}map(e){return new t(e(this.value))}flatMap(e){return e(this.value)}reduce(e){return e(void 0,this.value)}foldLeft(e,n){return n(e,this.value)}foldRight(e,n){return n(this.value,e)}toList(){return new r([this.value])}contains(e){return!1}get size(){return 0}};exports.a = a; exports.b = o; exports.c = u; exports.d = l; exports.e = p; exports.f = r; exports.g = O;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunk3VJERXBPjs = require('./chunk-3VJERXBP.js');var _chunkVTKL7OQIjs = require('./chunk-VTKL7OQI.js');var s=class a{constructor(e){_chunkVTKL7OQIjs.a.call(void 0, this,"internalSet");this.internalSet=new (0, _chunk3VJERXBPjs.a)(e)}add(e){return new a([...this.internalSet,e])}remove(e){let t=new a;return t.internalSet.delete(e)?t:this}contains(e){return this.internalSet.has(e)}get size(){return this.internalSet.size}get isEmpty(){return this.internalSet.size===0}map(e){let t=new a;for(let n of this.internalSet)t.internalSet.add(e(n));return t}flatMap(e){let t=new a;for(let n of this.internalSet){let r=e(n);if(r instanceof a)for(let o of r.internalSet)t.internalSet.add(o)}return t}reduce(e){let t=Array.from(this.internalSet);if(t.length===0)throw new Error("Cannot reduce empty set");{let n=t[0];for(let r=1;r<t.length;r++)n=e(n,t[r]);return n}}foldLeft(e,t){let n=e;for(let r of this.internalSet)n=t(n,r);return n}foldRight(e,t){let n=e,r=Array.from(this.internalSet).reverse();for(let o of r)n=t(o,n);return n}has(e){return this.internalSet.has(e)}};exports.a = s;
@@ -0,0 +1 @@
1
+ "use strict";
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkZQN22FM6js = require('../chunk-ZQN22FM6.js');require('../chunk-RSJUG4F6.js');require('../chunk-IRUJTPRV.js');require('../chunk-QK32BSMQ.js');require('../chunk-ZTL76QDL.js');require('../chunk-SHAM4BB3.js');require('../chunk-4BM7WJEY.js');require('../chunk-VTKL7OQI.js');exports.Left = _chunkZQN22FM6js.a;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunk7XCWDOMWjs = require('../chunk-7XCWDOMW.js');require('../chunk-DOG6HMTN.js');require('../chunk-XNAZ5QU3.js');require('../chunk-3VJERXBP.js');require('../chunk-ZTL76QDL.js');require('../chunk-ZOH672YH.js');require('../chunk-7VFL33KH.js');require('../chunk-5VTXJIR3.js');require('../chunk-TVZBBVEV.js');require('../chunk-SSP26X5Y.js');require('../chunk-WY62QD3C.js');require('../chunk-VTKL7OQI.js');exports.Left = _chunk7XCWDOMWjs.a;
@@ -1 +1 @@
1
- import{a}from"../chunk-CMWFJ4NE.mjs";import"../chunk-7F7OFOVC.mjs";import"../chunk-TAF2HXL3.mjs";import"../chunk-ERJUPNUS.mjs";import"../chunk-CFYIJKWF.mjs";import"../chunk-T4ZDAXL2.mjs";import"../chunk-3BACPU2L.mjs";import"../chunk-U5EUM74A.mjs";export{a as Left};
1
+ import{a}from"../chunk-VWFTFPZB.mjs";import"../chunk-72IAI5F4.mjs";import"../chunk-U237FVPP.mjs";import"../chunk-HA5XD5KC.mjs";import"../chunk-CFYIJKWF.mjs";import"../chunk-3OHJLCSR.mjs";import"../chunk-PKWOSOD7.mjs";import"../chunk-377WQNCB.mjs";import"../chunk-LBQXRIXP.mjs";import"../chunk-VM6KG6UB.mjs";import"../chunk-CZKHN2SM.mjs";import"../chunk-U5EUM74A.mjs";export{a as Left};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkZQN22FM6js = require('../chunk-ZQN22FM6.js');require('../chunk-RSJUG4F6.js');require('../chunk-IRUJTPRV.js');require('../chunk-QK32BSMQ.js');require('../chunk-ZTL76QDL.js');require('../chunk-SHAM4BB3.js');require('../chunk-4BM7WJEY.js');require('../chunk-VTKL7OQI.js');exports.Right = _chunkZQN22FM6js.b;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunk7XCWDOMWjs = require('../chunk-7XCWDOMW.js');require('../chunk-DOG6HMTN.js');require('../chunk-XNAZ5QU3.js');require('../chunk-3VJERXBP.js');require('../chunk-ZTL76QDL.js');require('../chunk-ZOH672YH.js');require('../chunk-7VFL33KH.js');require('../chunk-5VTXJIR3.js');require('../chunk-TVZBBVEV.js');require('../chunk-SSP26X5Y.js');require('../chunk-WY62QD3C.js');require('../chunk-VTKL7OQI.js');exports.Right = _chunk7XCWDOMWjs.b;
@@ -1 +1 @@
1
- import{b as a}from"../chunk-CMWFJ4NE.mjs";import"../chunk-7F7OFOVC.mjs";import"../chunk-TAF2HXL3.mjs";import"../chunk-ERJUPNUS.mjs";import"../chunk-CFYIJKWF.mjs";import"../chunk-T4ZDAXL2.mjs";import"../chunk-3BACPU2L.mjs";import"../chunk-U5EUM74A.mjs";export{a as Right};
1
+ import{b as a}from"../chunk-VWFTFPZB.mjs";import"../chunk-72IAI5F4.mjs";import"../chunk-U237FVPP.mjs";import"../chunk-HA5XD5KC.mjs";import"../chunk-CFYIJKWF.mjs";import"../chunk-3OHJLCSR.mjs";import"../chunk-PKWOSOD7.mjs";import"../chunk-377WQNCB.mjs";import"../chunk-LBQXRIXP.mjs";import"../chunk-VM6KG6UB.mjs";import"../chunk-CZKHN2SM.mjs";import"../chunk-U5EUM74A.mjs";export{a as Right};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkZQN22FM6js = require('../chunk-ZQN22FM6.js');require('../chunk-RSJUG4F6.js');require('../chunk-IRUJTPRV.js');require('../chunk-QK32BSMQ.js');require('../chunk-ZTL76QDL.js');require('../chunk-SHAM4BB3.js');require('../chunk-4BM7WJEY.js');require('../chunk-VTKL7OQI.js');exports.Left = _chunkZQN22FM6js.a; exports.Right = _chunkZQN22FM6js.b; exports.left = _chunkZQN22FM6js.c; exports.parseNumber = _chunkZQN22FM6js.e; exports.right = _chunkZQN22FM6js.d;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunk7XCWDOMWjs = require('../chunk-7XCWDOMW.js');require('../chunk-DOG6HMTN.js');require('../chunk-XNAZ5QU3.js');require('../chunk-3VJERXBP.js');require('../chunk-ZTL76QDL.js');require('../chunk-ZOH672YH.js');require('../chunk-7VFL33KH.js');require('../chunk-5VTXJIR3.js');require('../chunk-TVZBBVEV.js');require('../chunk-SSP26X5Y.js');require('../chunk-WY62QD3C.js');require('../chunk-VTKL7OQI.js');exports.Left = _chunk7XCWDOMWjs.a; exports.Right = _chunk7XCWDOMWjs.b; exports.left = _chunk7XCWDOMWjs.c; exports.parseNumber = _chunk7XCWDOMWjs.e; exports.right = _chunk7XCWDOMWjs.d;
@@ -1 +1 @@
1
- import{a,b,c,d,e}from"../chunk-CMWFJ4NE.mjs";import"../chunk-7F7OFOVC.mjs";import"../chunk-TAF2HXL3.mjs";import"../chunk-ERJUPNUS.mjs";import"../chunk-CFYIJKWF.mjs";import"../chunk-T4ZDAXL2.mjs";import"../chunk-3BACPU2L.mjs";import"../chunk-U5EUM74A.mjs";export{a as Left,b as Right,c as left,e as parseNumber,d as right};
1
+ import{a,b,c,d,e}from"../chunk-VWFTFPZB.mjs";import"../chunk-72IAI5F4.mjs";import"../chunk-U237FVPP.mjs";import"../chunk-HA5XD5KC.mjs";import"../chunk-CFYIJKWF.mjs";import"../chunk-3OHJLCSR.mjs";import"../chunk-PKWOSOD7.mjs";import"../chunk-377WQNCB.mjs";import"../chunk-LBQXRIXP.mjs";import"../chunk-VM6KG6UB.mjs";import"../chunk-CZKHN2SM.mjs";import"../chunk-U5EUM74A.mjs";export{a as Left,b as Right,c as left,e as parseNumber,d as right};
package/dist/index.d.mts CHANGED
@@ -35,83 +35,178 @@ declare const left: <L, R>(value: L) => Either<L, R>;
35
35
  declare const right: <L, R>(value: R) => Either<L, R>;
36
36
  declare const parseNumber: (input: string) => Either<ParseError, number>;
37
37
 
38
- declare class List<T> implements IList<T> {
39
- private readonly items;
40
- constructor(items?: T[]);
41
- readonly [n: number]: T;
42
- isEmpty(): boolean;
43
- get length(): number;
44
- add(item: T): List<T>;
45
- removeAt(index: number): List<T>;
46
- get(index: number): T | undefined;
47
- toArray(): readonly T[];
48
- map<U>(f: (value: T) => U): List<U>;
49
- flatMap<U>(f: (value: T) => List<U>): List<U>;
50
- reduce<U>(f: (acc: U, value: T) => U): U;
51
- foldLeft<U>(initialValue: U, f: (acc: U, value: T) => U): U;
52
- foldRight<U>(initialValue: U, f: (value: T, acc: U) => U): U;
53
- concat(other: List<T>): List<T>;
54
- toString(): string;
55
- }
56
-
57
- interface IList<T> extends IFunctor<T>, ITraversable<T>, ArrayLike<T> {
58
- map<U>(f: (value: T) => U): IList<U>;
59
- flatMap<U>(f: (value: T) => IList<U>): IList<U>;
60
- reduce<U>(f: (acc: U, value: T) => U): U;
61
- foldLeft<U>(initialValue: U, f: (acc: U, value: T) => U): U;
62
- foldRight<U>(initialValue: U, f: (value: T, acc: U) => U): U;
63
- }
64
- declare const list: <T>(items: T[] | undefined) => List<T>;
65
-
66
- declare class Some<T> implements Option<T> {
38
+ declare class Some<T extends Type> implements Option<T> {
67
39
  private value;
68
40
  constructor(value: T);
69
- isEmpty(): boolean;
41
+ get isEmpty(): boolean;
70
42
  get(): T;
71
43
  getOrElse(defaultValue: T): T;
72
44
  orElse(alternative: Option<T>): Option<T>;
73
- map<U>(f: (value: T) => U): Option<U>;
74
- flatMap<U>(f: (value: T) => Option<U>): Option<U>;
45
+ map<U extends Type>(f: (value: T) => U): Option<U>;
46
+ flatMap<U extends Type>(f: (value: T) => Option<U>): Option<U>;
75
47
  reduce<U>(f: (acc: U, value: T) => U): U;
76
48
  foldLeft<U>(initialValue: U, f: (acc: U, value: T) => U): U;
77
49
  foldRight<U>(initialValue: U, f: (value: T, acc: U) => U): U;
78
50
  toList(): List<T>;
51
+ contains(value: T): boolean;
52
+ get size(): number;
79
53
  }
80
54
 
81
- declare class None<T> implements Option<T> {
82
- isEmpty(): boolean;
55
+ declare class None<T extends Type> implements Option<T> {
56
+ get isEmpty(): boolean;
83
57
  get(): T;
84
58
  getOrElse(defaultValue: T): T;
85
59
  orElse(alternative: Option<T>): Option<T>;
86
- map<U>(f: (value: T) => U): Option<U>;
87
- flatMap<U>(f: (value: T) => Option<U>): Option<U>;
60
+ map<U extends Type>(f: (value: T) => U): Option<U>;
61
+ flatMap<U extends Type>(f: (value: T) => Option<U>): Option<U>;
88
62
  reduce<U>(f: (acc: U, value: T) => U): U;
89
63
  foldLeft<U>(initialValue: U, f: (acc: U, value: T) => U): U;
90
64
  foldRight<U>(initialValue: U, f: (value: T, acc: U) => U): U;
91
65
  toList(): List<T>;
66
+ contains(value: T): boolean;
67
+ get size(): number;
92
68
  }
93
69
 
94
- interface Option<T> extends IFunctor<T>, ITraversable<T> {
70
+ interface Option<T extends Type> extends IFunctor<T>, ITraversable<T> {
95
71
  get(): T;
96
72
  getOrElse(defaultValue: T): T;
97
73
  orElse(alternative: Option<T>): Option<T>;
98
- map<U>(f: (value: T) => U): Option<U>;
99
- flatMap<U>(f: (value: T) => Option<U>): Option<U>;
74
+ map<U extends Type>(f: (value: T) => U): Option<U>;
75
+ flatMap<U extends Type>(f: (value: T) => Option<U>): Option<U>;
100
76
  toList(): List<T>;
101
77
  }
102
- declare const option: <T>(value?: T | undefined) => Option<T>;
103
- declare const some: <T>(value: T) => Option<T>;
104
- declare const none: <T>() => Option<T>;
78
+ declare const option: <T extends unknown>(value?: T | undefined) => Option<T>;
79
+ declare const some: <T extends unknown>(value: T) => Option<T>;
80
+ declare const none: <T extends unknown>() => Option<T>;
105
81
 
106
- interface IFunctor<T> {
107
- map<U>(f: (value: T) => U): IFunctor<U>;
108
- flatMap<U>(f: (value: T) => IFunctor<U>): IFunctor<U>;
82
+ declare class List<T> implements IList<T> {
83
+ private readonly items;
84
+ constructor(iterable?: Iterable<T>);
85
+ readonly [n: number]: T;
86
+ remove(value: T): List<T>;
87
+ contains(value: T): boolean;
88
+ get size(): number;
89
+ get isEmpty(): boolean;
90
+ get length(): number;
91
+ add(item: T): List<T>;
92
+ removeAt(index: number): List<T>;
93
+ get(index: number): Option<T>;
94
+ toArray(): readonly T[];
95
+ map<U>(f: (value: T) => U): List<U>;
96
+ flatMap<U>(f: (value: T) => List<U>): List<U>;
97
+ reduce<U>(f: (acc: U, value: T) => U): U;
98
+ foldLeft<U>(initialValue: U, f: (acc: U, value: T) => U): U;
99
+ foldRight<U>(initialValue: U, f: (value: T, acc: U) => U): U;
100
+ concat(other: List<T>): List<T>;
101
+ toString(): string;
102
+ }
103
+
104
+ interface IList<T extends Type> extends IFunctor<T>, ICollection<T>, ArrayLike<T> {
105
+ map<U extends Type>(f: (value: T) => U): IList<U>;
106
+ flatMap<U extends Type>(f: (value: T) => IList<U>): IList<U>;
107
+ reduce<U extends Type>(f: (acc: U, value: T) => U): U;
108
+ foldLeft<U extends Type>(initialValue: U, f: (acc: U, value: T) => U): U;
109
+ foldRight<U extends Type>(initialValue: U, f: (value: T, acc: U) => U): U;
110
+ }
111
+ declare const list: <T extends unknown>(items: T[] | undefined) => List<T>;
112
+
113
+ declare class Tuple<T extends ArrayType> implements ITuple<T> {
114
+ private readonly values;
115
+ constructor(values: T);
116
+ map<U extends ArrayType>(f: (value: T) => U): Tuple<U>;
117
+ flatMap<U extends ArrayType>(f: (value: T) => Tuple<U>): Tuple<U>;
118
+ get(index: number): T[number];
119
+ getAs<U>(index: number, f?: (item: T) => boolean): U;
120
+ toArray(): T;
121
+ }
122
+
123
+ interface ITuple<T extends ArrayType> extends IArrayFunctor<T> {
124
+ get(index: number): T[number];
125
+ getAs<U>(index: number, f?: (item: T) => boolean): U;
126
+ map<U extends any[]>(f: (value: T) => U): ITuple<U>;
127
+ flatMap<U extends any[]>(f: (value: T) => ITuple<U>): ITuple<U>;
128
+ }
129
+
130
+ declare class Map<K, V> implements IMap<K, V> {
131
+ private internalMap;
132
+ constructor(entries?: [K, V][]);
133
+ add(item: K): Map<K, V>;
134
+ remove(value: ITuple<[K, V]>): Map<K, V>;
135
+ contains(value: ITuple<[K, V]>): boolean;
136
+ get size(): number;
137
+ map<U extends Type>(f: (value: V) => U): IMap<K, U>;
138
+ flatMap<U extends Type>(f: (value: V) => IMap<K, U>): IMap<K, U>;
139
+ reduce<U extends ITuple<[K, V]>>(f: (acc: U, value: ITuple<[K, V]>) => U): U;
140
+ foldLeft<U>(initialValue: U, f: (acc: U, value: ITuple<[K, V]>) => U): U;
141
+ foldRight<U>(initialValue: U, f: (value: ITuple<[K, V]>, acc: U) => U): U;
142
+ get(key: K): Option<V>;
143
+ getOrElse(key: K, defaultValue: V): V;
144
+ get isEmpty(): boolean;
145
+ orElse(key: K, alternative: Option<V>): Option<V>;
109
146
  }
110
- interface ITraversable<T> {
111
- isEmpty(): boolean;
147
+
148
+ interface IMap<K, V> extends IFunctor<ITuple<[K, V]>>, ITraversable<ITuple<[K, V]>> {
149
+ map<U>(f: (value: any) => U): IMap<K, U>;
150
+ flatMap<U>(f: (value: any) => IMap<K, U>): IMap<K, U>;
151
+ reduce<U extends ITuple<[K, V]>>(f: (acc: U, value: ITuple<[K, V]>) => U): U;
152
+ foldLeft<U>(initialValue: U, f: (acc: U, value: ITuple<[K, V]>) => U): U;
153
+ foldRight<U>(initialValue: U, f: (value: ITuple<[K, V]>, acc: U) => U): U;
154
+ get(key: K): Option<V>;
155
+ getOrElse(key: K, defaultValue: V): V;
156
+ orElse(key: K, alternative: Option<V>): Option<V>;
157
+ }
158
+
159
+ declare class Set<T> implements ISet<T>, ICollection<T> {
160
+ private readonly internalSet;
161
+ constructor(iterable?: Iterable<T>);
162
+ add(value: T): Set<T>;
163
+ remove(value: T): Set<T>;
164
+ contains(value: T): boolean;
165
+ get size(): number;
166
+ get isEmpty(): boolean;
167
+ map<U>(f: (value: T) => U): ISet<U>;
168
+ flatMap<U>(f: (value: T) => ISet<U>): ISet<U>;
169
+ reduce<U>(f: (acc: U, value: T) => U): U;
170
+ foldLeft<U>(initialValue: U, f: (acc: U, value: T) => U): U;
171
+ foldRight<U>(initialValue: U, f: (value: T, acc: U) => U): U;
172
+ has(value: T): boolean;
173
+ }
174
+
175
+ interface ISet<T> extends IFunctor<T> {
176
+ map<U>(f: (value: T) => U): ISet<U>;
177
+ flatMap<U>(f: (value: T) => ISet<U>): ISet<U>;
112
178
  reduce<U>(f: (acc: U, value: T) => U): U;
113
179
  foldLeft<U>(initialValue: U, f: (acc: U, value: T) => U): U;
114
180
  foldRight<U>(initialValue: U, f: (value: T, acc: U) => U): U;
181
+ has(value: T): boolean;
182
+ }
183
+
184
+ type SingleType = any;
185
+ type ArrayType = SingleType[];
186
+ type Type = SingleType | ArrayType;
187
+ interface AbstractFunctor<T extends Type> {
188
+ map(f: (value: T) => Type): AbstractFunctor<Type>;
189
+ flatMap(f: (value: T) => AbstractFunctor<Type>): AbstractFunctor<Type>;
190
+ }
191
+ interface IFunctor<T extends Type> extends AbstractFunctor<T> {
192
+ map<U extends Type>(f: (value: T) => U): IFunctor<U>;
193
+ flatMap<U extends Type>(f: (value: T) => IFunctor<U>): IFunctor<U>;
194
+ }
195
+ interface IArrayFunctor<T extends ArrayType> extends AbstractFunctor<T> {
196
+ map<U extends ArrayType>(f: (value: T) => U): IArrayFunctor<U>;
197
+ flatMap<U extends ArrayType>(f: (value: T) => IArrayFunctor<U>): IArrayFunctor<U>;
198
+ }
199
+ interface ITraversable<T extends Type> extends IFunctor<T> {
200
+ get size(): number;
201
+ get isEmpty(): boolean;
202
+ contains(value: T): boolean;
203
+ reduce<U extends T>(f: (acc: U, value: T) => U): U;
204
+ foldLeft<U extends Type>(initialValue: U, f: (acc: U, value: T) => U): U;
205
+ foldRight<U extends Type>(initialValue: U, f: (value: T, acc: U) => U): U;
206
+ }
207
+ interface ICollection<T extends Type> extends ITraversable<T> {
208
+ add(value: T): ITraversable<T>;
209
+ remove(value: T): ITraversable<T>;
115
210
  }
116
211
 
117
- export { Either, IFunctor, IList, ITraversable, Left, List, None, Option, Right, Some, left, list, none, option, parseNumber, right, some };
212
+ export { AbstractFunctor, ArrayType, Either, IArrayFunctor, ICollection, IFunctor, IList, IMap, ISet, ITraversable, ITuple, Left, List, Map, None, Option, Right, Set, SingleType, Some, Tuple, Type, left, list, none, option, parseNumber, right, some };
package/dist/index.d.ts CHANGED
@@ -35,83 +35,178 @@ declare const left: <L, R>(value: L) => Either<L, R>;
35
35
  declare const right: <L, R>(value: R) => Either<L, R>;
36
36
  declare const parseNumber: (input: string) => Either<ParseError, number>;
37
37
 
38
- declare class List<T> implements IList<T> {
39
- private readonly items;
40
- constructor(items?: T[]);
41
- readonly [n: number]: T;
42
- isEmpty(): boolean;
43
- get length(): number;
44
- add(item: T): List<T>;
45
- removeAt(index: number): List<T>;
46
- get(index: number): T | undefined;
47
- toArray(): readonly T[];
48
- map<U>(f: (value: T) => U): List<U>;
49
- flatMap<U>(f: (value: T) => List<U>): List<U>;
50
- reduce<U>(f: (acc: U, value: T) => U): U;
51
- foldLeft<U>(initialValue: U, f: (acc: U, value: T) => U): U;
52
- foldRight<U>(initialValue: U, f: (value: T, acc: U) => U): U;
53
- concat(other: List<T>): List<T>;
54
- toString(): string;
55
- }
56
-
57
- interface IList<T> extends IFunctor<T>, ITraversable<T>, ArrayLike<T> {
58
- map<U>(f: (value: T) => U): IList<U>;
59
- flatMap<U>(f: (value: T) => IList<U>): IList<U>;
60
- reduce<U>(f: (acc: U, value: T) => U): U;
61
- foldLeft<U>(initialValue: U, f: (acc: U, value: T) => U): U;
62
- foldRight<U>(initialValue: U, f: (value: T, acc: U) => U): U;
63
- }
64
- declare const list: <T>(items: T[] | undefined) => List<T>;
65
-
66
- declare class Some<T> implements Option<T> {
38
+ declare class Some<T extends Type> implements Option<T> {
67
39
  private value;
68
40
  constructor(value: T);
69
- isEmpty(): boolean;
41
+ get isEmpty(): boolean;
70
42
  get(): T;
71
43
  getOrElse(defaultValue: T): T;
72
44
  orElse(alternative: Option<T>): Option<T>;
73
- map<U>(f: (value: T) => U): Option<U>;
74
- flatMap<U>(f: (value: T) => Option<U>): Option<U>;
45
+ map<U extends Type>(f: (value: T) => U): Option<U>;
46
+ flatMap<U extends Type>(f: (value: T) => Option<U>): Option<U>;
75
47
  reduce<U>(f: (acc: U, value: T) => U): U;
76
48
  foldLeft<U>(initialValue: U, f: (acc: U, value: T) => U): U;
77
49
  foldRight<U>(initialValue: U, f: (value: T, acc: U) => U): U;
78
50
  toList(): List<T>;
51
+ contains(value: T): boolean;
52
+ get size(): number;
79
53
  }
80
54
 
81
- declare class None<T> implements Option<T> {
82
- isEmpty(): boolean;
55
+ declare class None<T extends Type> implements Option<T> {
56
+ get isEmpty(): boolean;
83
57
  get(): T;
84
58
  getOrElse(defaultValue: T): T;
85
59
  orElse(alternative: Option<T>): Option<T>;
86
- map<U>(f: (value: T) => U): Option<U>;
87
- flatMap<U>(f: (value: T) => Option<U>): Option<U>;
60
+ map<U extends Type>(f: (value: T) => U): Option<U>;
61
+ flatMap<U extends Type>(f: (value: T) => Option<U>): Option<U>;
88
62
  reduce<U>(f: (acc: U, value: T) => U): U;
89
63
  foldLeft<U>(initialValue: U, f: (acc: U, value: T) => U): U;
90
64
  foldRight<U>(initialValue: U, f: (value: T, acc: U) => U): U;
91
65
  toList(): List<T>;
66
+ contains(value: T): boolean;
67
+ get size(): number;
92
68
  }
93
69
 
94
- interface Option<T> extends IFunctor<T>, ITraversable<T> {
70
+ interface Option<T extends Type> extends IFunctor<T>, ITraversable<T> {
95
71
  get(): T;
96
72
  getOrElse(defaultValue: T): T;
97
73
  orElse(alternative: Option<T>): Option<T>;
98
- map<U>(f: (value: T) => U): Option<U>;
99
- flatMap<U>(f: (value: T) => Option<U>): Option<U>;
74
+ map<U extends Type>(f: (value: T) => U): Option<U>;
75
+ flatMap<U extends Type>(f: (value: T) => Option<U>): Option<U>;
100
76
  toList(): List<T>;
101
77
  }
102
- declare const option: <T>(value?: T | undefined) => Option<T>;
103
- declare const some: <T>(value: T) => Option<T>;
104
- declare const none: <T>() => Option<T>;
78
+ declare const option: <T extends unknown>(value?: T | undefined) => Option<T>;
79
+ declare const some: <T extends unknown>(value: T) => Option<T>;
80
+ declare const none: <T extends unknown>() => Option<T>;
105
81
 
106
- interface IFunctor<T> {
107
- map<U>(f: (value: T) => U): IFunctor<U>;
108
- flatMap<U>(f: (value: T) => IFunctor<U>): IFunctor<U>;
82
+ declare class List<T> implements IList<T> {
83
+ private readonly items;
84
+ constructor(iterable?: Iterable<T>);
85
+ readonly [n: number]: T;
86
+ remove(value: T): List<T>;
87
+ contains(value: T): boolean;
88
+ get size(): number;
89
+ get isEmpty(): boolean;
90
+ get length(): number;
91
+ add(item: T): List<T>;
92
+ removeAt(index: number): List<T>;
93
+ get(index: number): Option<T>;
94
+ toArray(): readonly T[];
95
+ map<U>(f: (value: T) => U): List<U>;
96
+ flatMap<U>(f: (value: T) => List<U>): List<U>;
97
+ reduce<U>(f: (acc: U, value: T) => U): U;
98
+ foldLeft<U>(initialValue: U, f: (acc: U, value: T) => U): U;
99
+ foldRight<U>(initialValue: U, f: (value: T, acc: U) => U): U;
100
+ concat(other: List<T>): List<T>;
101
+ toString(): string;
102
+ }
103
+
104
+ interface IList<T extends Type> extends IFunctor<T>, ICollection<T>, ArrayLike<T> {
105
+ map<U extends Type>(f: (value: T) => U): IList<U>;
106
+ flatMap<U extends Type>(f: (value: T) => IList<U>): IList<U>;
107
+ reduce<U extends Type>(f: (acc: U, value: T) => U): U;
108
+ foldLeft<U extends Type>(initialValue: U, f: (acc: U, value: T) => U): U;
109
+ foldRight<U extends Type>(initialValue: U, f: (value: T, acc: U) => U): U;
110
+ }
111
+ declare const list: <T extends unknown>(items: T[] | undefined) => List<T>;
112
+
113
+ declare class Tuple<T extends ArrayType> implements ITuple<T> {
114
+ private readonly values;
115
+ constructor(values: T);
116
+ map<U extends ArrayType>(f: (value: T) => U): Tuple<U>;
117
+ flatMap<U extends ArrayType>(f: (value: T) => Tuple<U>): Tuple<U>;
118
+ get(index: number): T[number];
119
+ getAs<U>(index: number, f?: (item: T) => boolean): U;
120
+ toArray(): T;
121
+ }
122
+
123
+ interface ITuple<T extends ArrayType> extends IArrayFunctor<T> {
124
+ get(index: number): T[number];
125
+ getAs<U>(index: number, f?: (item: T) => boolean): U;
126
+ map<U extends any[]>(f: (value: T) => U): ITuple<U>;
127
+ flatMap<U extends any[]>(f: (value: T) => ITuple<U>): ITuple<U>;
128
+ }
129
+
130
+ declare class Map<K, V> implements IMap<K, V> {
131
+ private internalMap;
132
+ constructor(entries?: [K, V][]);
133
+ add(item: K): Map<K, V>;
134
+ remove(value: ITuple<[K, V]>): Map<K, V>;
135
+ contains(value: ITuple<[K, V]>): boolean;
136
+ get size(): number;
137
+ map<U extends Type>(f: (value: V) => U): IMap<K, U>;
138
+ flatMap<U extends Type>(f: (value: V) => IMap<K, U>): IMap<K, U>;
139
+ reduce<U extends ITuple<[K, V]>>(f: (acc: U, value: ITuple<[K, V]>) => U): U;
140
+ foldLeft<U>(initialValue: U, f: (acc: U, value: ITuple<[K, V]>) => U): U;
141
+ foldRight<U>(initialValue: U, f: (value: ITuple<[K, V]>, acc: U) => U): U;
142
+ get(key: K): Option<V>;
143
+ getOrElse(key: K, defaultValue: V): V;
144
+ get isEmpty(): boolean;
145
+ orElse(key: K, alternative: Option<V>): Option<V>;
109
146
  }
110
- interface ITraversable<T> {
111
- isEmpty(): boolean;
147
+
148
+ interface IMap<K, V> extends IFunctor<ITuple<[K, V]>>, ITraversable<ITuple<[K, V]>> {
149
+ map<U>(f: (value: any) => U): IMap<K, U>;
150
+ flatMap<U>(f: (value: any) => IMap<K, U>): IMap<K, U>;
151
+ reduce<U extends ITuple<[K, V]>>(f: (acc: U, value: ITuple<[K, V]>) => U): U;
152
+ foldLeft<U>(initialValue: U, f: (acc: U, value: ITuple<[K, V]>) => U): U;
153
+ foldRight<U>(initialValue: U, f: (value: ITuple<[K, V]>, acc: U) => U): U;
154
+ get(key: K): Option<V>;
155
+ getOrElse(key: K, defaultValue: V): V;
156
+ orElse(key: K, alternative: Option<V>): Option<V>;
157
+ }
158
+
159
+ declare class Set<T> implements ISet<T>, ICollection<T> {
160
+ private readonly internalSet;
161
+ constructor(iterable?: Iterable<T>);
162
+ add(value: T): Set<T>;
163
+ remove(value: T): Set<T>;
164
+ contains(value: T): boolean;
165
+ get size(): number;
166
+ get isEmpty(): boolean;
167
+ map<U>(f: (value: T) => U): ISet<U>;
168
+ flatMap<U>(f: (value: T) => ISet<U>): ISet<U>;
169
+ reduce<U>(f: (acc: U, value: T) => U): U;
170
+ foldLeft<U>(initialValue: U, f: (acc: U, value: T) => U): U;
171
+ foldRight<U>(initialValue: U, f: (value: T, acc: U) => U): U;
172
+ has(value: T): boolean;
173
+ }
174
+
175
+ interface ISet<T> extends IFunctor<T> {
176
+ map<U>(f: (value: T) => U): ISet<U>;
177
+ flatMap<U>(f: (value: T) => ISet<U>): ISet<U>;
112
178
  reduce<U>(f: (acc: U, value: T) => U): U;
113
179
  foldLeft<U>(initialValue: U, f: (acc: U, value: T) => U): U;
114
180
  foldRight<U>(initialValue: U, f: (value: T, acc: U) => U): U;
181
+ has(value: T): boolean;
182
+ }
183
+
184
+ type SingleType = any;
185
+ type ArrayType = SingleType[];
186
+ type Type = SingleType | ArrayType;
187
+ interface AbstractFunctor<T extends Type> {
188
+ map(f: (value: T) => Type): AbstractFunctor<Type>;
189
+ flatMap(f: (value: T) => AbstractFunctor<Type>): AbstractFunctor<Type>;
190
+ }
191
+ interface IFunctor<T extends Type> extends AbstractFunctor<T> {
192
+ map<U extends Type>(f: (value: T) => U): IFunctor<U>;
193
+ flatMap<U extends Type>(f: (value: T) => IFunctor<U>): IFunctor<U>;
194
+ }
195
+ interface IArrayFunctor<T extends ArrayType> extends AbstractFunctor<T> {
196
+ map<U extends ArrayType>(f: (value: T) => U): IArrayFunctor<U>;
197
+ flatMap<U extends ArrayType>(f: (value: T) => IArrayFunctor<U>): IArrayFunctor<U>;
198
+ }
199
+ interface ITraversable<T extends Type> extends IFunctor<T> {
200
+ get size(): number;
201
+ get isEmpty(): boolean;
202
+ contains(value: T): boolean;
203
+ reduce<U extends T>(f: (acc: U, value: T) => U): U;
204
+ foldLeft<U extends Type>(initialValue: U, f: (acc: U, value: T) => U): U;
205
+ foldRight<U extends Type>(initialValue: U, f: (value: T, acc: U) => U): U;
206
+ }
207
+ interface ICollection<T extends Type> extends ITraversable<T> {
208
+ add(value: T): ITraversable<T>;
209
+ remove(value: T): ITraversable<T>;
115
210
  }
116
211
 
117
- export { Either, IFunctor, IList, ITraversable, Left, List, None, Option, Right, Some, left, list, none, option, parseNumber, right, some };
212
+ export { AbstractFunctor, ArrayType, Either, IArrayFunctor, ICollection, IFunctor, IList, IMap, ISet, ITraversable, ITuple, Left, List, Map, None, Option, Right, Set, SingleType, Some, Tuple, Type, left, list, none, option, parseNumber, right, some };
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkZQN22FM6js = require('./chunk-ZQN22FM6.js');var _chunkRSJUG4F6js = require('./chunk-RSJUG4F6.js');var _chunkIRUJTPRVjs = require('./chunk-IRUJTPRV.js');var _chunkQK32BSMQjs = require('./chunk-QK32BSMQ.js');require('./chunk-ZTL76QDL.js');var _chunkSHAM4BB3js = require('./chunk-SHAM4BB3.js');var _chunk4BM7WJEYjs = require('./chunk-4BM7WJEY.js');require('./chunk-VTKL7OQI.js');exports.Left = _chunkZQN22FM6js.a; exports.List = _chunk4BM7WJEYjs.a; exports.None = _chunkIRUJTPRVjs.a; exports.Right = _chunkZQN22FM6js.b; exports.Some = _chunkQK32BSMQjs.a; exports.left = _chunkZQN22FM6js.c; exports.list = _chunkSHAM4BB3js.a; exports.none = _chunkRSJUG4F6js.c; exports.option = _chunkRSJUG4F6js.a; exports.parseNumber = _chunkZQN22FM6js.e; exports.right = _chunkZQN22FM6js.d; exports.some = _chunkRSJUG4F6js.b;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunk7XCWDOMWjs = require('./chunk-7XCWDOMW.js');require('./chunk-DOG6HMTN.js');var _chunkXNAZ5QU3js = require('./chunk-XNAZ5QU3.js');require('./chunk-3VJERXBP.js');require('./chunk-ZTL76QDL.js');require('./chunk-ZOH672YH.js');var _chunk7VFL33KHjs = require('./chunk-7VFL33KH.js');require('./chunk-5VTXJIR3.js');require('./chunk-TVZBBVEV.js');var _chunkSSP26X5Yjs = require('./chunk-SSP26X5Y.js');var _chunkWY62QD3Cjs = require('./chunk-WY62QD3C.js');require('./chunk-VTKL7OQI.js');exports.Left = _chunk7XCWDOMWjs.a; exports.List = _chunkWY62QD3Cjs.f; exports.Map = _chunk7VFL33KHjs.a; exports.None = _chunkWY62QD3Cjs.b; exports.Right = _chunk7XCWDOMWjs.b; exports.Set = _chunkXNAZ5QU3js.a; exports.Some = _chunkWY62QD3Cjs.a; exports.Tuple = _chunkSSP26X5Yjs.a; exports.left = _chunk7XCWDOMWjs.c; exports.list = _chunkWY62QD3Cjs.g; exports.none = _chunkWY62QD3Cjs.e; exports.option = _chunkWY62QD3Cjs.c; exports.parseNumber = _chunk7XCWDOMWjs.e; exports.right = _chunk7XCWDOMWjs.d; exports.some = _chunkWY62QD3Cjs.d;
package/dist/index.mjs CHANGED
@@ -1 +1 @@
1
- import{a,b,c,d,e}from"./chunk-CMWFJ4NE.mjs";import{a as j,b as k,c as l}from"./chunk-7F7OFOVC.mjs";import{a as i}from"./chunk-TAF2HXL3.mjs";import{a as h}from"./chunk-ERJUPNUS.mjs";import"./chunk-CFYIJKWF.mjs";import{a as g}from"./chunk-T4ZDAXL2.mjs";import{a as f}from"./chunk-3BACPU2L.mjs";import"./chunk-U5EUM74A.mjs";export{a as Left,f as List,i as None,b as Right,h as Some,c as left,g as list,l as none,j as option,e as parseNumber,d as right,k as some};
1
+ import{a,b,c,d,e}from"./chunk-VWFTFPZB.mjs";import"./chunk-72IAI5F4.mjs";import{a as o}from"./chunk-U237FVPP.mjs";import"./chunk-HA5XD5KC.mjs";import"./chunk-CFYIJKWF.mjs";import"./chunk-3OHJLCSR.mjs";import{a as n}from"./chunk-PKWOSOD7.mjs";import"./chunk-377WQNCB.mjs";import"./chunk-LBQXRIXP.mjs";import{a as m}from"./chunk-VM6KG6UB.mjs";import{a as f,b as g,c as h,d as i,e as j,f as k,g as l}from"./chunk-CZKHN2SM.mjs";import"./chunk-U5EUM74A.mjs";export{a as Left,k as List,n as Map,g as None,b as Right,o as Set,f as Some,m as Tuple,c as left,l as list,j as none,h as option,e as parseNumber,d as right,i as some};
package/dist/list/List.js CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunk4BM7WJEYjs = require('../chunk-4BM7WJEY.js');require('../chunk-VTKL7OQI.js');exports.List = _chunk4BM7WJEYjs.a;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkWY62QD3Cjs = require('../chunk-WY62QD3C.js');require('../chunk-VTKL7OQI.js');exports.List = _chunkWY62QD3Cjs.f;
@@ -1 +1 @@
1
- import{a}from"../chunk-3BACPU2L.mjs";import"../chunk-U5EUM74A.mjs";export{a as List};
1
+ import{f as a}from"../chunk-CZKHN2SM.mjs";import"../chunk-U5EUM74A.mjs";export{a as List};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkSHAM4BB3js = require('../chunk-SHAM4BB3.js');var _chunk4BM7WJEYjs = require('../chunk-4BM7WJEY.js');require('../chunk-VTKL7OQI.js');exports.List = _chunk4BM7WJEYjs.a; exports.list = _chunkSHAM4BB3js.a;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkWY62QD3Cjs = require('../chunk-WY62QD3C.js');require('../chunk-VTKL7OQI.js');exports.List = _chunkWY62QD3Cjs.f; exports.list = _chunkWY62QD3Cjs.g;
@@ -1 +1 @@
1
- import{a as b}from"../chunk-T4ZDAXL2.mjs";import{a}from"../chunk-3BACPU2L.mjs";import"../chunk-U5EUM74A.mjs";export{a as List,b as list};
1
+ import{f as a,g as b}from"../chunk-CZKHN2SM.mjs";import"../chunk-U5EUM74A.mjs";export{a as List,b as list};
@@ -1,2 +1,2 @@
1
-
2
- export { }
1
+ export { Map } from '../index.mjs';
2
+ import '../error/ParseError.mjs';
package/dist/map/Map.d.ts CHANGED
@@ -1,2 +1,2 @@
1
-
2
- export { }
1
+ export { Map } from '../index.js';
2
+ import '../error/ParseError.js';
package/dist/map/Map.js CHANGED
@@ -1 +1 @@
1
- "use strict";require('../chunk-RSJUG4F6.js');require('../chunk-IRUJTPRV.js');require('../chunk-QK32BSMQ.js');require('../chunk-SHAM4BB3.js');require('../chunk-4BM7WJEY.js');require('../chunk-VTKL7OQI.js');
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunk7VFL33KHjs = require('../chunk-7VFL33KH.js');require('../chunk-5VTXJIR3.js');require('../chunk-TVZBBVEV.js');require('../chunk-SSP26X5Y.js');require('../chunk-WY62QD3C.js');require('../chunk-VTKL7OQI.js');exports.Map = _chunk7VFL33KHjs.a;
package/dist/map/Map.mjs CHANGED
@@ -1 +1 @@
1
- import"../chunk-7F7OFOVC.mjs";import"../chunk-TAF2HXL3.mjs";import"../chunk-ERJUPNUS.mjs";import"../chunk-T4ZDAXL2.mjs";import"../chunk-3BACPU2L.mjs";import"../chunk-U5EUM74A.mjs";
1
+ import{a}from"../chunk-PKWOSOD7.mjs";import"../chunk-377WQNCB.mjs";import"../chunk-LBQXRIXP.mjs";import"../chunk-VM6KG6UB.mjs";import"../chunk-CZKHN2SM.mjs";import"../chunk-U5EUM74A.mjs";export{a as Map};
@@ -1,9 +1,2 @@
1
- import { IFunctor, ITraversable } from '../index.mjs';
1
+ export { IMap, Map } from '../index.mjs';
2
2
  import '../error/ParseError.mjs';
3
-
4
- interface IMap<K, T> extends IFunctor<T>, ITraversable<T> {
5
- map<U>(f: (value: T) => U): IMap<K, U>;
6
- flatMap<U>(f: (value: T) => IMap<K, U>): IMap<K, U>;
7
- }
8
-
9
- export { IMap };
@@ -1,9 +1,2 @@
1
- import { IFunctor, ITraversable } from '../index.js';
1
+ export { IMap, Map } from '../index.js';
2
2
  import '../error/ParseError.js';
3
-
4
- interface IMap<K, T> extends IFunctor<T>, ITraversable<T> {
5
- map<U>(f: (value: T) => U): IMap<K, U>;
6
- flatMap<U>(f: (value: T) => IMap<K, U>): IMap<K, U>;
7
- }
8
-
9
- export { IMap };
package/dist/map/index.js CHANGED
@@ -1 +1 @@
1
- "use strict";
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});require('../chunk-ZOH672YH.js');var _chunk7VFL33KHjs = require('../chunk-7VFL33KH.js');require('../chunk-5VTXJIR3.js');require('../chunk-TVZBBVEV.js');require('../chunk-SSP26X5Y.js');require('../chunk-WY62QD3C.js');require('../chunk-VTKL7OQI.js');exports.Map = _chunk7VFL33KHjs.a;
@@ -0,0 +1 @@
1
+ import"../chunk-3OHJLCSR.mjs";import{a}from"../chunk-PKWOSOD7.mjs";import"../chunk-377WQNCB.mjs";import"../chunk-LBQXRIXP.mjs";import"../chunk-VM6KG6UB.mjs";import"../chunk-CZKHN2SM.mjs";import"../chunk-U5EUM74A.mjs";export{a as Map};
@@ -0,0 +1,4 @@
1
+ type IESMap<K, V> = Map<K, V>;
2
+ declare const ESMap: MapConstructor;
3
+
4
+ export { ESMap, IESMap };
@@ -0,0 +1,4 @@
1
+ type IESMap<K, V> = Map<K, V>;
2
+ declare const ESMap: MapConstructor;
3
+
4
+ export { ESMap, IESMap };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunk5VTXJIR3js = require('../chunk-5VTXJIR3.js');require('../chunk-VTKL7OQI.js');exports.ESMap = _chunk5VTXJIR3js.a;
@@ -0,0 +1 @@
1
+ import{a}from"../chunk-377WQNCB.mjs";import"../chunk-U5EUM74A.mjs";export{a as ESMap};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkIRUJTPRVjs = require('../chunk-IRUJTPRV.js');require('../chunk-SHAM4BB3.js');require('../chunk-4BM7WJEY.js');require('../chunk-VTKL7OQI.js');exports.None = _chunkIRUJTPRVjs.a;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkWY62QD3Cjs = require('../chunk-WY62QD3C.js');require('../chunk-VTKL7OQI.js');exports.None = _chunkWY62QD3Cjs.b;
@@ -1 +1 @@
1
- import{a}from"../chunk-TAF2HXL3.mjs";import"../chunk-T4ZDAXL2.mjs";import"../chunk-3BACPU2L.mjs";import"../chunk-U5EUM74A.mjs";export{a as None};
1
+ import{b as a}from"../chunk-CZKHN2SM.mjs";import"../chunk-U5EUM74A.mjs";export{a as None};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkQK32BSMQjs = require('../chunk-QK32BSMQ.js');require('../chunk-SHAM4BB3.js');require('../chunk-4BM7WJEY.js');require('../chunk-VTKL7OQI.js');exports.Some = _chunkQK32BSMQjs.a;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkWY62QD3Cjs = require('../chunk-WY62QD3C.js');require('../chunk-VTKL7OQI.js');exports.Some = _chunkWY62QD3Cjs.a;
@@ -1 +1 @@
1
- import{a}from"../chunk-ERJUPNUS.mjs";import"../chunk-T4ZDAXL2.mjs";import"../chunk-3BACPU2L.mjs";import"../chunk-U5EUM74A.mjs";export{a as Some};
1
+ import{a}from"../chunk-CZKHN2SM.mjs";import"../chunk-U5EUM74A.mjs";export{a as Some};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkRSJUG4F6js = require('../chunk-RSJUG4F6.js');var _chunkIRUJTPRVjs = require('../chunk-IRUJTPRV.js');var _chunkQK32BSMQjs = require('../chunk-QK32BSMQ.js');require('../chunk-SHAM4BB3.js');require('../chunk-4BM7WJEY.js');require('../chunk-VTKL7OQI.js');exports.None = _chunkIRUJTPRVjs.a; exports.Some = _chunkQK32BSMQjs.a; exports.none = _chunkRSJUG4F6js.c; exports.option = _chunkRSJUG4F6js.a; exports.some = _chunkRSJUG4F6js.b;
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkWY62QD3Cjs = require('../chunk-WY62QD3C.js');require('../chunk-VTKL7OQI.js');exports.None = _chunkWY62QD3Cjs.b; exports.Some = _chunkWY62QD3Cjs.a; exports.none = _chunkWY62QD3Cjs.e; exports.option = _chunkWY62QD3Cjs.c; exports.some = _chunkWY62QD3Cjs.d;
@@ -1 +1 @@
1
- import{a as c,b as d,c as e}from"../chunk-7F7OFOVC.mjs";import{a as b}from"../chunk-TAF2HXL3.mjs";import{a}from"../chunk-ERJUPNUS.mjs";import"../chunk-T4ZDAXL2.mjs";import"../chunk-3BACPU2L.mjs";import"../chunk-U5EUM74A.mjs";export{b as None,a as Some,e as none,c as option,d as some};
1
+ import{a,b,c,d,e}from"../chunk-CZKHN2SM.mjs";import"../chunk-U5EUM74A.mjs";export{b as None,a as Some,e as none,c as option,d as some};
@@ -0,0 +1,2 @@
1
+ export { Set } from '../index.mjs';
2
+ import '../error/ParseError.mjs';
@@ -0,0 +1,2 @@
1
+ export { Set } from '../index.js';
2
+ import '../error/ParseError.js';
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkXNAZ5QU3js = require('../chunk-XNAZ5QU3.js');require('../chunk-3VJERXBP.js');require('../chunk-VTKL7OQI.js');exports.Set = _chunkXNAZ5QU3js.a;
@@ -0,0 +1 @@
1
+ import{a}from"../chunk-U237FVPP.mjs";import"../chunk-HA5XD5KC.mjs";import"../chunk-U5EUM74A.mjs";export{a as Set};
@@ -0,0 +1,2 @@
1
+ export { ISet, Set } from '../index.mjs';
2
+ import '../error/ParseError.mjs';
@@ -0,0 +1,2 @@
1
+ export { ISet, Set } from '../index.js';
2
+ import '../error/ParseError.js';
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});require('../chunk-DOG6HMTN.js');var _chunkXNAZ5QU3js = require('../chunk-XNAZ5QU3.js');require('../chunk-3VJERXBP.js');require('../chunk-VTKL7OQI.js');exports.Set = _chunkXNAZ5QU3js.a;
@@ -0,0 +1 @@
1
+ import"../chunk-72IAI5F4.mjs";import{a}from"../chunk-U237FVPP.mjs";import"../chunk-HA5XD5KC.mjs";import"../chunk-U5EUM74A.mjs";export{a as Set};
@@ -0,0 +1,4 @@
1
+ type IESSet<T> = Set<T>;
2
+ declare const ESSet: SetConstructor;
3
+
4
+ export { ESSet, IESSet };
@@ -0,0 +1,4 @@
1
+ type IESSet<T> = Set<T>;
2
+ declare const ESSet: SetConstructor;
3
+
4
+ export { ESSet, IESSet };
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunk3VJERXBPjs = require('../chunk-3VJERXBP.js');require('../chunk-VTKL7OQI.js');exports.ESSet = _chunk3VJERXBPjs.a;
@@ -0,0 +1 @@
1
+ import{a}from"../chunk-HA5XD5KC.mjs";import"../chunk-U5EUM74A.mjs";export{a as ESSet};
@@ -0,0 +1,2 @@
1
+ export { Tuple } from '../index.mjs';
2
+ import '../error/ParseError.mjs';
@@ -0,0 +1,2 @@
1
+ export { Tuple } from '../index.js';
2
+ import '../error/ParseError.js';
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkSSP26X5Yjs = require('../chunk-SSP26X5Y.js');require('../chunk-VTKL7OQI.js');exports.Tuple = _chunkSSP26X5Yjs.a;
@@ -0,0 +1 @@
1
+ import{a}from"../chunk-VM6KG6UB.mjs";import"../chunk-U5EUM74A.mjs";export{a as Tuple};
@@ -0,0 +1,2 @@
1
+ export { ITuple, Tuple } from '../index.mjs';
2
+ import '../error/ParseError.mjs';
@@ -0,0 +1,2 @@
1
+ export { ITuple, Tuple } from '../index.js';
2
+ import '../error/ParseError.js';
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});require('../chunk-TVZBBVEV.js');var _chunkSSP26X5Yjs = require('../chunk-SSP26X5Y.js');require('../chunk-VTKL7OQI.js');exports.Tuple = _chunkSSP26X5Yjs.a;
@@ -0,0 +1 @@
1
+ import"../chunk-LBQXRIXP.mjs";import{a}from"../chunk-VM6KG6UB.mjs";import"../chunk-U5EUM74A.mjs";export{a as Tuple};
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "functype",
3
- "version": "0.0.8",
4
- "description": "A small functional library for TypeScript",
3
+ "version": "0.1.1",
4
+ "description": "A smallish functional library for TypeScript",
5
5
  "author": "jordan.burke@gmail.com",
6
6
  "license": "MIT",
7
7
  "url": "https://github.com/jordanburke/TypeScript/tree/main/functype",
@@ -1 +0,0 @@
1
- import{a as n}from"./chunk-U5EUM74A.mjs";var m=class s{constructor(t){n(this,"items");this.items=t?[...t]:[]}isEmpty(){return this.items.length===0}get length(){return this.items.length}add(t){let e=new Map;return new s([...this.items,t])}removeAt(t){if(t<0||t>=this.items.length)return this;let e=[...this.items.slice(0,t),...this.items.slice(t+1)];return new s(e)}get(t){return this.items[t]}toArray(){return this.items}map(t){return new s(this.items.map(t))}flatMap(t){let e=[];for(let r of this.items){let i=t(r);i instanceof s&&e.push(...i.items)}return new s(e)}reduce(t){return this.items.reduce(t,void 0)}foldLeft(t,e){return this.items.reduce(e,t)}foldRight(t,e){return this.items.reduceRight((r,i)=>e(i,r),t)}concat(t){return new s([...this.items,...t.items])}toString(){return`List(${this.items.toString()})`}};export{m as a};
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkVTKL7OQIjs = require('./chunk-VTKL7OQI.js');var m=class s{constructor(t){_chunkVTKL7OQIjs.a.call(void 0, this,"items");this.items=t?[...t]:[]}isEmpty(){return this.items.length===0}get length(){return this.items.length}add(t){let e=new Map;return new s([...this.items,t])}removeAt(t){if(t<0||t>=this.items.length)return this;let e=[...this.items.slice(0,t),...this.items.slice(t+1)];return new s(e)}get(t){return this.items[t]}toArray(){return this.items}map(t){return new s(this.items.map(t))}flatMap(t){let e=[];for(let r of this.items){let i=t(r);i instanceof s&&e.push(...i.items)}return new s(e)}reduce(t){return this.items.reduce(t,void 0)}foldLeft(t,e){return this.items.reduce(e,t)}foldRight(t,e){return this.items.reduceRight((r,i)=>e(i,r),t)}concat(t){return new s([...this.items,...t.items])}toString(){return`List(${this.items.toString()})`}};exports.a = m;
@@ -1 +0,0 @@
1
- import{a as e}from"./chunk-TAF2HXL3.mjs";import{a as o}from"./chunk-ERJUPNUS.mjs";var i=t=>t?n(t):T(),n=t=>new o(t),T=()=>new e;export{i as a,n as b,T as c};
@@ -1 +0,0 @@
1
- import{b as s,c as a}from"./chunk-7F7OFOVC.mjs";import{a as n}from"./chunk-CFYIJKWF.mjs";import{a as r}from"./chunk-3BACPU2L.mjs";var i=class e{constructor(t){this.value=t}isLeft(){return!1}isRight(){return!0}map(t){return new e(t(this.value))}flatMap(t){return t(this.value)}toOption(){return s(this.value)}toList(){return new r([this.value])}};var u=e=>new o(e),L=e=>new i(e),c=e=>{let t=parseInt(e,10);return isNaN(t)?u(new n(`${t}`)):L(t)};var o=class e{constructor(t){this.value=t}isLeft(){return!0}isRight(){return!1}map(t){return new e(this.value)}flatMap(t){return new e(this.value)}toOption(){return a()}toList(){return new r}};export{o as a,i as b,u as c,L as d,c as e};
@@ -1 +0,0 @@
1
- import{a as r}from"./chunk-3BACPU2L.mjs";var a=class u{constructor(t){this.value=t}isEmpty(){return!1}get(){return this.value}getOrElse(t){return this.value}orElse(t){return this}map(t){return new u(t(this.value))}flatMap(t){return t(this.value)}reduce(t){return t(void 0,this.value)}foldLeft(t,e){return e(t,this.value)}foldRight(t,e){return e(this.value,t)}toList(){return new r([this.value])}};export{a};
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunk4BM7WJEYjs = require('./chunk-4BM7WJEY.js');var r=class t{isEmpty(){return!0}get(){throw new Error("Cannot call get() on a None")}getOrElse(e){return e}orElse(e){return e}map(e){return new t}flatMap(e){return new t}reduce(e){return e(void 0,void 0)}foldLeft(e,o){return e}foldRight(e,o){return e}toList(){return new _chunk4BM7WJEYjs.a}};exports.a = r;
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunk4BM7WJEYjs = require('./chunk-4BM7WJEY.js');var a=class u{constructor(t){this.value=t}isEmpty(){return!1}get(){return this.value}getOrElse(t){return this.value}orElse(t){return this}map(t){return new u(t(this.value))}flatMap(t){return t(this.value)}reduce(t){return t(void 0,this.value)}foldLeft(t,e){return e(t,this.value)}foldRight(t,e){return e(this.value,t)}toList(){return new (0, _chunk4BM7WJEYjs.a)([this.value])}};exports.a = a;
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkIRUJTPRVjs = require('./chunk-IRUJTPRV.js');var _chunkQK32BSMQjs = require('./chunk-QK32BSMQ.js');var i=t=>t?n(t):T(),n= exports.b =t=>new (0, _chunkQK32BSMQjs.a)(t),T= exports.c =()=>new _chunkIRUJTPRVjs.a;exports.a = i; exports.b = n; exports.c = T;
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunk4BM7WJEYjs = require('./chunk-4BM7WJEY.js');var U=a=>new (0, _chunk4BM7WJEYjs.a)(a);exports.a = U;
@@ -1 +0,0 @@
1
- import{a as e}from"./chunk-3BACPU2L.mjs";var U=a=>new e(a);export{U as a};
@@ -1 +0,0 @@
1
- import{a as n}from"./chunk-3BACPU2L.mjs";var r=class t{isEmpty(){return!0}get(){throw new Error("Cannot call get() on a None")}getOrElse(e){return e}orElse(e){return e}map(e){return new t}flatMap(e){return new t}reduce(e){return e(void 0,void 0)}foldLeft(e,o){return e}foldRight(e,o){return e}toList(){return new n}};export{r as a};
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});var _chunkRSJUG4F6js = require('./chunk-RSJUG4F6.js');var _chunkZTL76QDLjs = require('./chunk-ZTL76QDL.js');var _chunk4BM7WJEYjs = require('./chunk-4BM7WJEY.js');var i=class e{constructor(t){this.value=t}isLeft(){return!1}isRight(){return!0}map(t){return new e(t(this.value))}flatMap(t){return t(this.value)}toOption(){return _chunkRSJUG4F6js.b.call(void 0, this.value)}toList(){return new (0, _chunk4BM7WJEYjs.a)([this.value])}};var u=e=>new o(e),L= exports.d =e=>new i(e),c= exports.e =e=>{let t=parseInt(e,10);return isNaN(t)?u(new (0, _chunkZTL76QDLjs.a)(`${t}`)):L(t)};var o=class e{constructor(t){this.value=t}isLeft(){return!0}isRight(){return!1}map(t){return new e(this.value)}flatMap(t){return new e(this.value)}toOption(){return _chunkRSJUG4F6js.c.call(void 0, )}toList(){return new _chunk4BM7WJEYjs.a}};exports.a = o; exports.b = i; exports.c = u; exports.d = L; exports.e = c;