effect 2.0.2 → 2.0.4
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.
- package/Cron/package.json +6 -0
- package/FiberMap/package.json +6 -0
- package/FiberSet/package.json +6 -0
- package/Trie/package.json +6 -0
- package/dist/cjs/Cron.js +457 -0
- package/dist/cjs/Cron.js.map +1 -0
- package/dist/cjs/Fiber.js.map +1 -1
- package/dist/cjs/FiberMap.js +176 -0
- package/dist/cjs/FiberMap.js.map +1 -0
- package/dist/cjs/FiberSet.js +150 -0
- package/dist/cjs/FiberSet.js.map +1 -0
- package/dist/cjs/MutableHashMap.js +11 -1
- package/dist/cjs/MutableHashMap.js.map +1 -1
- package/dist/cjs/MutableHashSet.js +7 -1
- package/dist/cjs/MutableHashSet.js.map +1 -1
- package/dist/cjs/MutableList.js +8 -11
- package/dist/cjs/MutableList.js.map +1 -1
- package/dist/cjs/Schedule.js +12 -1
- package/dist/cjs/Schedule.js.map +1 -1
- package/dist/cjs/Struct.js +16 -1
- package/dist/cjs/Struct.js.map +1 -1
- package/dist/cjs/Trie.js +680 -0
- package/dist/cjs/Trie.js.map +1 -0
- package/dist/cjs/index.js +10 -2
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/internal/hashMap/node.js +2 -2
- package/dist/cjs/internal/hashMap/node.js.map +1 -1
- package/dist/cjs/internal/pubsub.js +11 -17
- package/dist/cjs/internal/pubsub.js.map +1 -1
- package/dist/cjs/internal/redBlackTree/node.js +35 -30
- package/dist/cjs/internal/redBlackTree/node.js.map +1 -1
- package/dist/cjs/internal/redBlackTree.js +69 -13
- package/dist/cjs/internal/redBlackTree.js.map +1 -1
- package/dist/cjs/internal/schedule.js +29 -2
- package/dist/cjs/internal/schedule.js.map +1 -1
- package/dist/cjs/internal/stack.js +6 -11
- package/dist/cjs/internal/stack.js.map +1 -1
- package/dist/cjs/internal/trie.js +588 -0
- package/dist/cjs/internal/trie.js.map +1 -0
- package/dist/cjs/internal/version.js +1 -1
- package/dist/dts/Cron.d.ts +170 -0
- package/dist/dts/Cron.d.ts.map +1 -0
- package/dist/dts/Fiber.d.ts +6 -0
- package/dist/dts/Fiber.d.ts.map +1 -1
- package/dist/dts/FiberMap.d.ts +125 -0
- package/dist/dts/FiberMap.d.ts.map +1 -0
- package/dist/dts/FiberSet.d.ts +99 -0
- package/dist/dts/FiberSet.d.ts.map +1 -0
- package/dist/dts/MutableHashMap.d.ts +4 -0
- package/dist/dts/MutableHashMap.d.ts.map +1 -1
- package/dist/dts/MutableHashSet.d.ts +5 -0
- package/dist/dts/MutableHashSet.d.ts.map +1 -1
- package/dist/dts/MutableList.d.ts.map +1 -1
- package/dist/dts/Schedule.d.ts +12 -0
- package/dist/dts/Schedule.d.ts.map +1 -1
- package/dist/dts/Struct.d.ts +17 -3
- package/dist/dts/Struct.d.ts.map +1 -1
- package/dist/dts/Trie.d.ts +740 -0
- package/dist/dts/Trie.d.ts.map +1 -0
- package/dist/dts/Types.d.ts +4 -0
- package/dist/dts/Types.d.ts.map +1 -1
- package/dist/dts/index.d.ts +30 -0
- package/dist/dts/index.d.ts.map +1 -1
- package/dist/dts/internal/redBlackTree/node.d.ts +8 -0
- package/dist/dts/internal/redBlackTree/node.d.ts.map +1 -1
- package/dist/dts/internal/stack.d.ts +1 -1
- package/dist/dts/internal/stack.d.ts.map +1 -1
- package/dist/dts/internal/trie.d.ts +2 -0
- package/dist/dts/internal/trie.d.ts.map +1 -0
- package/dist/dts/internal/version.d.ts +1 -1
- package/dist/esm/Cron.js +418 -0
- package/dist/esm/Cron.js.map +1 -0
- package/dist/esm/Fiber.js.map +1 -1
- package/dist/esm/FiberMap.js +140 -0
- package/dist/esm/FiberMap.js.map +1 -0
- package/dist/esm/FiberSet.js +114 -0
- package/dist/esm/FiberSet.js.map +1 -0
- package/dist/esm/MutableHashMap.js +9 -0
- package/dist/esm/MutableHashMap.js.map +1 -1
- package/dist/esm/MutableHashSet.js +5 -0
- package/dist/esm/MutableHashSet.js.map +1 -1
- package/dist/esm/MutableList.js +8 -11
- package/dist/esm/MutableList.js.map +1 -1
- package/dist/esm/Schedule.js +11 -0
- package/dist/esm/Schedule.js.map +1 -1
- package/dist/esm/Struct.js +14 -0
- package/dist/esm/Struct.js.map +1 -1
- package/dist/esm/Trie.js +648 -0
- package/dist/esm/Trie.js.map +1 -0
- package/dist/esm/index.js +30 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/internal/hashMap/node.js +2 -2
- package/dist/esm/internal/hashMap/node.js.map +1 -1
- package/dist/esm/internal/pubsub.js +11 -17
- package/dist/esm/internal/pubsub.js.map +1 -1
- package/dist/esm/internal/redBlackTree/node.js +31 -25
- package/dist/esm/internal/redBlackTree/node.js.map +1 -1
- package/dist/esm/internal/redBlackTree.js +69 -13
- package/dist/esm/internal/redBlackTree.js.map +1 -1
- package/dist/esm/internal/schedule.js +26 -0
- package/dist/esm/internal/schedule.js.map +1 -1
- package/dist/esm/internal/stack.js +4 -9
- package/dist/esm/internal/stack.js.map +1 -1
- package/dist/esm/internal/trie.js +547 -0
- package/dist/esm/internal/trie.js.map +1 -0
- package/dist/esm/internal/version.js +1 -1
- package/package.json +33 -1
- package/src/Cron.ts +525 -0
- package/src/Fiber.ts +7 -0
- package/src/FiberMap.ts +269 -0
- package/src/FiberSet.ts +194 -0
- package/src/MutableHashMap.ts +10 -0
- package/src/MutableHashSet.ts +6 -0
- package/src/MutableList.ts +15 -7
- package/src/Schedule.ts +13 -0
- package/src/Struct.ts +24 -6
- package/src/Trie.ts +772 -0
- package/src/Types.ts +5 -0
- package/src/index.ts +34 -0
- package/src/internal/hashMap/node.ts +3 -3
- package/src/internal/pubsub.ts +15 -14
- package/src/internal/redBlackTree/node.ts +37 -17
- package/src/internal/redBlackTree.ts +73 -38
- package/src/internal/schedule.ts +42 -0
- package/src/internal/stack.ts +8 -2
- package/src/internal/trie.ts +721 -0
- package/src/internal/version.ts +1 -1
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @since 2.0.0
|
|
3
|
+
*/
|
|
4
|
+
import * as Effect from "effect/Effect";
|
|
5
|
+
import * as Fiber from "./Fiber.js";
|
|
6
|
+
import * as FiberId from "./FiberId.js";
|
|
7
|
+
import { dual } from "./Function.js";
|
|
8
|
+
import * as Inspectable from "./Inspectable.js";
|
|
9
|
+
import * as MutableHashMap from "./MutableHashMap.js";
|
|
10
|
+
import * as Option from "./Option.js";
|
|
11
|
+
import { pipeArguments } from "./Pipeable.js";
|
|
12
|
+
import * as Predicate from "./Predicate.js";
|
|
13
|
+
/**
|
|
14
|
+
* @since 2.0.0
|
|
15
|
+
* @categories type ids
|
|
16
|
+
*/
|
|
17
|
+
export const TypeId = /*#__PURE__*/Symbol.for("effect/FiberMap");
|
|
18
|
+
/**
|
|
19
|
+
* @since 2.0.0
|
|
20
|
+
* @categories refinements
|
|
21
|
+
*/
|
|
22
|
+
export const isFiberMap = u => Predicate.hasProperty(u, TypeId);
|
|
23
|
+
const Proto = {
|
|
24
|
+
[TypeId]: TypeId,
|
|
25
|
+
[Symbol.iterator]() {
|
|
26
|
+
return this.backing[Symbol.iterator]();
|
|
27
|
+
},
|
|
28
|
+
toString() {
|
|
29
|
+
return Inspectable.format(this.toJSON());
|
|
30
|
+
},
|
|
31
|
+
toJSON() {
|
|
32
|
+
return {
|
|
33
|
+
_id: "FiberMap",
|
|
34
|
+
backing: this.backing.toJSON()
|
|
35
|
+
};
|
|
36
|
+
},
|
|
37
|
+
[Inspectable.NodeInspectSymbol]() {
|
|
38
|
+
return this.toJSON();
|
|
39
|
+
},
|
|
40
|
+
pipe() {
|
|
41
|
+
return pipeArguments(this, arguments);
|
|
42
|
+
}
|
|
43
|
+
};
|
|
44
|
+
const unsafeMake = () => {
|
|
45
|
+
const self = Object.create(Proto);
|
|
46
|
+
self.backing = MutableHashMap.empty();
|
|
47
|
+
return self;
|
|
48
|
+
};
|
|
49
|
+
/**
|
|
50
|
+
* A FiberMap can be used to store a collection of fibers, indexed by some key.
|
|
51
|
+
* When the associated Scope is closed, all fibers in the map will be interrupted.
|
|
52
|
+
*
|
|
53
|
+
* You can add fibers to the map using `FiberMap.set` or `FiberMap.run`, and the fibers will
|
|
54
|
+
* be automatically removed from the FiberMap when they complete.
|
|
55
|
+
*
|
|
56
|
+
* @example
|
|
57
|
+
* import { Effect, FiberMap } from "effect"
|
|
58
|
+
*
|
|
59
|
+
* Effect.gen(function*(_) {
|
|
60
|
+
* const map = yield* _(FiberMap.make<string>())
|
|
61
|
+
*
|
|
62
|
+
* // run some effects and add the fibers to the map
|
|
63
|
+
* yield* _(FiberMap.run(map, "fiber a", Effect.never))
|
|
64
|
+
* yield* _(FiberMap.run(map, "fiber b", Effect.never))
|
|
65
|
+
*
|
|
66
|
+
* yield* _(Effect.sleep(1000))
|
|
67
|
+
* }).pipe(
|
|
68
|
+
* Effect.scoped // The fibers will be interrupted when the scope is closed
|
|
69
|
+
* )
|
|
70
|
+
*
|
|
71
|
+
* @since 2.0.0
|
|
72
|
+
* @categories constructors
|
|
73
|
+
*/
|
|
74
|
+
export const make = () => Effect.acquireRelease(Effect.sync(() => unsafeMake()), clear);
|
|
75
|
+
/**
|
|
76
|
+
* Add a fiber to the FiberMap. When the fiber completes, it will be removed from the FiberMap.
|
|
77
|
+
* If the key already exists in the FiberMap, the previous fiber will be interrupted.
|
|
78
|
+
*
|
|
79
|
+
* @since 2.0.0
|
|
80
|
+
* @categories combinators
|
|
81
|
+
*/
|
|
82
|
+
export const unsafeSet = /*#__PURE__*/dual(args => isFiberMap(args[0]), (self, key, fiber, interruptAs) => {
|
|
83
|
+
const previous = MutableHashMap.get(self.backing, key);
|
|
84
|
+
if (previous._tag === "Some") {
|
|
85
|
+
if (previous.value === fiber) {
|
|
86
|
+
return;
|
|
87
|
+
}
|
|
88
|
+
previous.value.unsafeInterruptAsFork(interruptAs ?? FiberId.none);
|
|
89
|
+
}
|
|
90
|
+
MutableHashMap.set(self.backing, key, fiber);
|
|
91
|
+
fiber.addObserver(_ => {
|
|
92
|
+
const current = MutableHashMap.get(self.backing, key);
|
|
93
|
+
if (Option.isSome(current) && fiber === current.value) {
|
|
94
|
+
MutableHashMap.remove(self.backing, key);
|
|
95
|
+
}
|
|
96
|
+
});
|
|
97
|
+
});
|
|
98
|
+
/**
|
|
99
|
+
* Add a fiber to the FiberMap. When the fiber completes, it will be removed from the FiberMap.
|
|
100
|
+
* If the key already exists in the FiberMap, the previous fiber will be interrupted.
|
|
101
|
+
*
|
|
102
|
+
* @since 2.0.0
|
|
103
|
+
* @categories combinators
|
|
104
|
+
*/
|
|
105
|
+
export const set = /*#__PURE__*/dual(3, (self, key, fiber) => Effect.fiberIdWith(fiberId => Effect.sync(() => unsafeSet(self, key, fiber, fiberId))));
|
|
106
|
+
/**
|
|
107
|
+
* Retrieve a fiber from the FiberMap.
|
|
108
|
+
*
|
|
109
|
+
* @since 2.0.0
|
|
110
|
+
* @categories combinators
|
|
111
|
+
*/
|
|
112
|
+
export const unsafeGet = /*#__PURE__*/dual(2, (self, key) => MutableHashMap.get(self.backing, key));
|
|
113
|
+
/**
|
|
114
|
+
* Retrieve a fiber from the FiberMap.
|
|
115
|
+
*
|
|
116
|
+
* @since 2.0.0
|
|
117
|
+
* @categories combinators
|
|
118
|
+
*/
|
|
119
|
+
export const get = /*#__PURE__*/dual(2, (self, key) => Effect.suspend(() => MutableHashMap.get(self.backing, key)));
|
|
120
|
+
/**
|
|
121
|
+
* @since 2.0.0
|
|
122
|
+
* @categories combinators
|
|
123
|
+
*/
|
|
124
|
+
export const clear = self => Effect.zipRight(Effect.forEach(self.backing, ([_, fiber]) => Fiber.interrupt(fiber)), Effect.sync(() => {
|
|
125
|
+
MutableHashMap.clear(self.backing);
|
|
126
|
+
}));
|
|
127
|
+
/**
|
|
128
|
+
* Run an Effect and add the forked fiber to the FiberMap.
|
|
129
|
+
* When the fiber completes, it will be removed from the FiberMap.
|
|
130
|
+
*
|
|
131
|
+
* @since 2.0.0
|
|
132
|
+
* @categories combinators
|
|
133
|
+
*/
|
|
134
|
+
export const run = /*#__PURE__*/dual(3, (self, key, effect) => Effect.tap(Effect.forkDaemon(effect), fiber => set(self, key, fiber)));
|
|
135
|
+
/**
|
|
136
|
+
* @since 2.0.0
|
|
137
|
+
* @categories combinators
|
|
138
|
+
*/
|
|
139
|
+
export const size = self => Effect.sync(() => MutableHashMap.size(self.backing));
|
|
140
|
+
//# sourceMappingURL=FiberMap.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FiberMap.js","names":["Effect","Fiber","FiberId","dual","Inspectable","MutableHashMap","Option","pipeArguments","Predicate","TypeId","Symbol","for","isFiberMap","u","hasProperty","Proto","iterator","backing","toString","format","toJSON","_id","NodeInspectSymbol","pipe","arguments","unsafeMake","self","Object","create","empty","make","acquireRelease","sync","clear","unsafeSet","args","key","fiber","interruptAs","previous","get","_tag","value","unsafeInterruptAsFork","none","set","addObserver","_","current","isSome","remove","fiberIdWith","fiberId","unsafeGet","suspend","zipRight","forEach","interrupt","run","effect","tap","forkDaemon","size"],"sources":["../../src/FiberMap.ts"],"sourcesContent":[null],"mappings":"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"}
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @since 2.0.0
|
|
3
|
+
*/
|
|
4
|
+
import * as Effect from "effect/Effect";
|
|
5
|
+
import * as Fiber from "./Fiber.js";
|
|
6
|
+
import { dual } from "./Function.js";
|
|
7
|
+
import * as Inspectable from "./Inspectable.js";
|
|
8
|
+
import { pipeArguments } from "./Pipeable.js";
|
|
9
|
+
import * as Predicate from "./Predicate.js";
|
|
10
|
+
/**
|
|
11
|
+
* @since 2.0.0
|
|
12
|
+
* @categories type ids
|
|
13
|
+
*/
|
|
14
|
+
export const TypeId = /*#__PURE__*/Symbol.for("effect/FiberSet");
|
|
15
|
+
/**
|
|
16
|
+
* @since 2.0.0
|
|
17
|
+
* @categories refinements
|
|
18
|
+
*/
|
|
19
|
+
export const isFiberSet = u => Predicate.hasProperty(u, TypeId);
|
|
20
|
+
const Proto = {
|
|
21
|
+
[TypeId]: TypeId,
|
|
22
|
+
[Symbol.iterator]() {
|
|
23
|
+
return this.backing[Symbol.iterator]();
|
|
24
|
+
},
|
|
25
|
+
toString() {
|
|
26
|
+
return Inspectable.format(this.toJSON());
|
|
27
|
+
},
|
|
28
|
+
toJSON() {
|
|
29
|
+
return {
|
|
30
|
+
_id: "FiberMap",
|
|
31
|
+
backing: Inspectable.toJSON(Array.from(this.backing))
|
|
32
|
+
};
|
|
33
|
+
},
|
|
34
|
+
[Inspectable.NodeInspectSymbol]() {
|
|
35
|
+
return this.toJSON();
|
|
36
|
+
},
|
|
37
|
+
pipe() {
|
|
38
|
+
return pipeArguments(this, arguments);
|
|
39
|
+
}
|
|
40
|
+
};
|
|
41
|
+
const unsafeMake = () => {
|
|
42
|
+
const self = Object.create(Proto);
|
|
43
|
+
self.backing = new Set();
|
|
44
|
+
return self;
|
|
45
|
+
};
|
|
46
|
+
/**
|
|
47
|
+
* A FiberSet can be used to store a collection of fibers.
|
|
48
|
+
* When the associated Scope is closed, all fibers in the set will be interrupted.
|
|
49
|
+
*
|
|
50
|
+
* You can add fibers to the set using `FiberSet.add` or `FiberSet.run`, and the fibers will
|
|
51
|
+
* be automatically removed from the FiberSet when they complete.
|
|
52
|
+
*
|
|
53
|
+
* @example
|
|
54
|
+
* import { Effect, FiberSet } from "effect"
|
|
55
|
+
*
|
|
56
|
+
* Effect.gen(function*(_) {
|
|
57
|
+
* const set = yield* _(FiberSet.make())
|
|
58
|
+
*
|
|
59
|
+
* // run some effects and add the fibers to the set
|
|
60
|
+
* yield* _(FiberSet.run(set, Effect.never))
|
|
61
|
+
* yield* _(FiberSet.run(set, Effect.never))
|
|
62
|
+
*
|
|
63
|
+
* yield* _(Effect.sleep(1000))
|
|
64
|
+
* }).pipe(
|
|
65
|
+
* Effect.scoped // The fibers will be interrupted when the scope is closed
|
|
66
|
+
* )
|
|
67
|
+
*
|
|
68
|
+
* @since 2.0.0
|
|
69
|
+
* @categories constructors
|
|
70
|
+
*/
|
|
71
|
+
export const make = () => Effect.acquireRelease(Effect.sync(() => unsafeMake()), clear);
|
|
72
|
+
/**
|
|
73
|
+
* Add a fiber to the FiberSet. When the fiber completes, it will be removed.
|
|
74
|
+
*
|
|
75
|
+
* @since 2.0.0
|
|
76
|
+
* @categories combinators
|
|
77
|
+
*/
|
|
78
|
+
export const unsafeAdd = /*#__PURE__*/dual(2, (self, fiber) => {
|
|
79
|
+
if (self.backing.has(fiber)) {
|
|
80
|
+
return;
|
|
81
|
+
}
|
|
82
|
+
self.backing.add(fiber);
|
|
83
|
+
fiber.addObserver(_ => {
|
|
84
|
+
self.backing.delete(fiber);
|
|
85
|
+
});
|
|
86
|
+
});
|
|
87
|
+
/**
|
|
88
|
+
* Add a fiber to the FiberSet. When the fiber completes, it will be removed.
|
|
89
|
+
*
|
|
90
|
+
* @since 2.0.0
|
|
91
|
+
* @categories combinators
|
|
92
|
+
*/
|
|
93
|
+
export const add = /*#__PURE__*/dual(2, (self, fiber) => Effect.sync(() => unsafeAdd(self, fiber)));
|
|
94
|
+
/**
|
|
95
|
+
* @since 2.0.0
|
|
96
|
+
* @categories combinators
|
|
97
|
+
*/
|
|
98
|
+
export const clear = self => Effect.zipRight(Effect.forEach(self.backing, fiber => Fiber.interrupt(fiber)), Effect.sync(() => {
|
|
99
|
+
self.backing.clear();
|
|
100
|
+
}));
|
|
101
|
+
/**
|
|
102
|
+
* Fork an Effect and add the forked fiber to the FiberSet.
|
|
103
|
+
* When the fiber completes, it will be removed from the FiberSet.
|
|
104
|
+
*
|
|
105
|
+
* @since 2.0.0
|
|
106
|
+
* @categories combinators
|
|
107
|
+
*/
|
|
108
|
+
export const run = /*#__PURE__*/dual(2, (self, effect) => Effect.tap(Effect.forkDaemon(effect), fiber => add(self, fiber)));
|
|
109
|
+
/**
|
|
110
|
+
* @since 2.0.0
|
|
111
|
+
* @categories combinators
|
|
112
|
+
*/
|
|
113
|
+
export const size = self => Effect.sync(() => self.backing.size);
|
|
114
|
+
//# sourceMappingURL=FiberSet.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FiberSet.js","names":["Effect","Fiber","dual","Inspectable","pipeArguments","Predicate","TypeId","Symbol","for","isFiberSet","u","hasProperty","Proto","iterator","backing","toString","format","toJSON","_id","Array","from","NodeInspectSymbol","pipe","arguments","unsafeMake","self","Object","create","Set","make","acquireRelease","sync","clear","unsafeAdd","fiber","has","add","addObserver","_","delete","zipRight","forEach","interrupt","run","effect","tap","forkDaemon","size"],"sources":["../../src/FiberSet.ts"],"sourcesContent":[null],"mappings":"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"}
|
|
@@ -242,6 +242,15 @@ export const remove = /*#__PURE__*/dual(2, (self, key) => {
|
|
|
242
242
|
}
|
|
243
243
|
return self;
|
|
244
244
|
});
|
|
245
|
+
/**
|
|
246
|
+
* @since 2.0.0
|
|
247
|
+
*/
|
|
248
|
+
export const clear = self => {
|
|
249
|
+
self.referential.clear();
|
|
250
|
+
self.buckets.clear();
|
|
251
|
+
self.bucketsSize = 0;
|
|
252
|
+
return self;
|
|
253
|
+
};
|
|
245
254
|
/**
|
|
246
255
|
* @since 2.0.0
|
|
247
256
|
* @category elements
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MutableHashMap.js","names":["Equal","dual","Hash","format","NodeInspectSymbol","toJSON","Option","pipeArguments","TypeId","Symbol","for","MutableHashMapProto","iterator","MutableHashMapIterator","toString","_id","values","Array","from","map","pipe","arguments","self","referentialIterator","bucketIterator","constructor","referential","next","undefined","result","done","BucketIterator","buckets","backing","currentBucket","value","empty","Object","create","Map","bucketsSize","make","entries","fromIterable","key","set","get","isEqual","has","some","none","hash","symbol","bucket","getFromBucket","remove","i","len","length","splice","isSome","removeFromBucket","push","modify","f","isNone","modifyAt","delete","size"],"sources":["../../src/MutableHashMap.ts"],"sourcesContent":[null],"mappings":"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
|
|
1
|
+
{"version":3,"file":"MutableHashMap.js","names":["Equal","dual","Hash","format","NodeInspectSymbol","toJSON","Option","pipeArguments","TypeId","Symbol","for","MutableHashMapProto","iterator","MutableHashMapIterator","toString","_id","values","Array","from","map","pipe","arguments","self","referentialIterator","bucketIterator","constructor","referential","next","undefined","result","done","BucketIterator","buckets","backing","currentBucket","value","empty","Object","create","Map","bucketsSize","make","entries","fromIterable","key","set","get","isEqual","has","some","none","hash","symbol","bucket","getFromBucket","remove","i","len","length","splice","isSome","removeFromBucket","push","modify","f","isNone","modifyAt","delete","clear","size"],"sources":["../../src/MutableHashMap.ts"],"sourcesContent":[null],"mappings":"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"}
|
|
@@ -69,4 +69,9 @@ export const remove = /*#__PURE__*/Dual.dual(2, (self, key) => (MutableHashMap.r
|
|
|
69
69
|
* @category elements
|
|
70
70
|
*/
|
|
71
71
|
export const size = self => MutableHashMap.size(self.keyMap);
|
|
72
|
+
/**
|
|
73
|
+
* @since 2.0.0
|
|
74
|
+
* @category elements
|
|
75
|
+
*/
|
|
76
|
+
export const clear = self => (MutableHashMap.clear(self.keyMap), self);
|
|
72
77
|
//# sourceMappingURL=MutableHashSet.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MutableHashSet.js","names":["Dual","format","NodeInspectSymbol","toJSON","MutableHashMap","pipeArguments","TypeId","Symbol","for","MutableHashSetProto","iterator","Array","from","keyMap","map","_","toString","_id","values","pipe","arguments","fromHashMap","set","Object","create","empty","fromIterable","keys","k","make","add","dual","self","key","has","remove","size"],"sources":["../../src/MutableHashSet.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAGA,OAAO,KAAKA,IAAI,MAAM,eAAe;AACrC,SAASC,MAAM,EAAoBC,iBAAiB,EAAEC,MAAM,QAAQ,kBAAkB;AACtF,OAAO,KAAKC,cAAc,MAAM,qBAAqB;AAErD,SAASC,aAAa,QAAQ,eAAe;AAE7C,MAAMC,MAAM,gBAAkBC,MAAM,CAACC,GAAG,CAAC,uBAAuB,CAAW;AAmB3E,MAAMC,mBAAmB,GAA4C;EACnE,CAACH,MAAM,GAAGA,MAAM;EAChB,CAACC,MAAM,CAACG,QAAQ,IAAC;IACf,OAAOC,KAAK,CAACC,IAAI,CAAC,IAAI,CAACC,MAAM,CAAC,CAACC,GAAG,CAAC,CAAC,CAACC,CAAC,CAAC,KAAKA,CAAC,CAAC,CAACR,MAAM,CAACG,QAAQ,CAAC,EAAE;EACnE,CAAC;EACDM,QAAQA,CAAA;IACN,OAAOf,MAAM,CAAC,IAAI,CAACE,MAAM,EAAE,CAAC;EAC9B,CAAC;EACDA,MAAMA,CAAA;IACJ,OAAO;MACLc,GAAG,EAAE,gBAAgB;MACrBC,MAAM,EAAEP,KAAK,CAACC,IAAI,CAAC,IAAI,CAAC,CAACE,GAAG,CAACX,MAAM;KACpC;EACH,CAAC;EACD,CAACD,iBAAiB,IAAC;IACjB,OAAO,IAAI,CAACC,MAAM,EAAE;EACtB,CAAC;EACDgB,IAAIA,CAAA;IACF,OAAOd,aAAa,CAAC,IAAI,EAAEe,SAAS,CAAC;EACvC;CACD;AAED,MAAMC,WAAW,GAAOR,MAAiD,IAAuB;EAC9F,MAAMS,GAAG,GAAGC,MAAM,CAACC,MAAM,CAACf,mBAAmB,CAAC;EAC9Ca,GAAG,CAACT,MAAM,GAAGA,MAAM;EACnB,OAAOS,GAAG;AACZ,CAAC;AAED;;;;AAIA,OAAO,MAAMG,KAAK,GAAGA,CAAA,KAAoCJ,WAAW,CAACjB,cAAc,CAACqB,KAAK,EAAE,CAAC;AAE5F;;;;;;AAMA,OAAO,MAAMC,YAAY,GAAeC,IAAiB,IACvDN,WAAW,CAACjB,cAAc,CAACsB,YAAY,CAACf,KAAK,CAACC,IAAI,CAACe,IAAI,CAAC,CAACb,GAAG,CAAEc,CAAC,IAAK,CAACA,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;AAElF;;;;AAIA,OAAO,MAAMC,IAAI,GAAGA,CAClB,GAAGF,IAAU,KACoBD,YAAY,CAACC,IAAI,CAAC;AAErD;;;;AAIA,OAAO,MAAMG,GAAG,gBAGZ9B,IAAI,CAAC+B,IAAI,CAGX,CAAC,EAAE,CAACC,IAAI,EAAEC,GAAG,MAAM7B,cAAc,CAACkB,GAAG,CAACU,IAAI,CAACnB,MAAM,EAAEoB,GAAG,EAAE,IAAI,CAAC,EAAED,IAAI,CAAC,CAAC;AAEvE;;;;AAIA,OAAO,MAAME,GAAG,gBAGZlC,IAAI,CAAC+B,IAAI,CAGX,CAAC,EAAE,CAACC,IAAI,EAAEC,GAAG,KAAK7B,cAAc,CAAC8B,GAAG,CAACF,IAAI,CAACnB,MAAM,EAAEoB,GAAG,CAAC,CAAC;AAEzD;;;;AAIA,OAAO,MAAME,MAAM,gBAGfnC,IAAI,CAAC+B,IAAI,CAGX,CAAC,EAAE,CAACC,IAAI,EAAEC,GAAG,MAAM7B,cAAc,CAAC+B,MAAM,CAACH,IAAI,CAACnB,MAAM,EAAEoB,GAAG,CAAC,EAAED,IAAI,CAAC,CAAC;AAEpE;;;;AAIA,OAAO,MAAMI,IAAI,GAAOJ,IAAuB,IAAa5B,cAAc,CAACgC,IAAI,CAACJ,IAAI,CAACnB,MAAM,CAAC"}
|
|
1
|
+
{"version":3,"file":"MutableHashSet.js","names":["Dual","format","NodeInspectSymbol","toJSON","MutableHashMap","pipeArguments","TypeId","Symbol","for","MutableHashSetProto","iterator","Array","from","keyMap","map","_","toString","_id","values","pipe","arguments","fromHashMap","set","Object","create","empty","fromIterable","keys","k","make","add","dual","self","key","has","remove","size","clear"],"sources":["../../src/MutableHashSet.ts"],"sourcesContent":[null],"mappings":"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"}
|
package/dist/esm/MutableList.js
CHANGED
|
@@ -54,15 +54,12 @@ const MutableListProto = {
|
|
|
54
54
|
}
|
|
55
55
|
};
|
|
56
56
|
/** @internal */
|
|
57
|
-
|
|
58
|
-
value
|
|
59
|
-
removed
|
|
60
|
-
prev
|
|
61
|
-
next
|
|
62
|
-
|
|
63
|
-
this.value = value;
|
|
64
|
-
}
|
|
65
|
-
}
|
|
57
|
+
const makeNode = value => ({
|
|
58
|
+
value,
|
|
59
|
+
removed: false,
|
|
60
|
+
prev: undefined,
|
|
61
|
+
next: undefined
|
|
62
|
+
});
|
|
66
63
|
/**
|
|
67
64
|
* Creates an empty `MutableList`.
|
|
68
65
|
*
|
|
@@ -156,7 +153,7 @@ export const reset = self => {
|
|
|
156
153
|
* @since 2.0.0
|
|
157
154
|
*/
|
|
158
155
|
export const append = /*#__PURE__*/Dual.dual(2, (self, value) => {
|
|
159
|
-
const node =
|
|
156
|
+
const node = makeNode(value);
|
|
160
157
|
if (self.head === undefined) {
|
|
161
158
|
self.head = node;
|
|
162
159
|
}
|
|
@@ -204,7 +201,7 @@ export const pop = self => {
|
|
|
204
201
|
* @since 2.0.0
|
|
205
202
|
*/
|
|
206
203
|
export const prepend = /*#__PURE__*/Dual.dual(2, (self, value) => {
|
|
207
|
-
const node =
|
|
204
|
+
const node = makeNode(value);
|
|
208
205
|
node.next = self.head;
|
|
209
206
|
if (self.head !== undefined) {
|
|
210
207
|
self.head.prev = node;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MutableList.js","names":["Dual","format","NodeInspectSymbol","toJSON","pipeArguments","TypeId","Symbol","for","MutableListProto","iterator","done","head","next","return","value","toString","_id","values","Array","from","map","pipe","arguments","
|
|
1
|
+
{"version":3,"file":"MutableList.js","names":["Dual","format","NodeInspectSymbol","toJSON","pipeArguments","TypeId","Symbol","for","MutableListProto","iterator","done","head","next","return","value","toString","_id","values","Array","from","map","pipe","arguments","makeNode","removed","prev","undefined","empty","list","Object","create","tail","_length","fromIterable","iterable","element","append","make","elements","isEmpty","self","length","forEach","dual","f","current","reset","node","shift","remove","pop","prepend"],"sources":["../../src/MutableList.ts"],"sourcesContent":[null],"mappings":"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"}
|
package/dist/esm/Schedule.js
CHANGED
|
@@ -175,6 +175,17 @@ export const mapInputEffect = internal.mapInputEffect;
|
|
|
175
175
|
* @category constructors
|
|
176
176
|
*/
|
|
177
177
|
export const count = internal.count;
|
|
178
|
+
/**
|
|
179
|
+
* Cron schedule that recurs every `minute` that matches the schedule.
|
|
180
|
+
*
|
|
181
|
+
* It triggers at zero second of the minute. Producing the timestamps of the cron window.
|
|
182
|
+
*
|
|
183
|
+
* NOTE: `expression` parameter is validated lazily. Must be a valid cron expression.
|
|
184
|
+
*
|
|
185
|
+
* @since 2.0.0
|
|
186
|
+
* @category constructors
|
|
187
|
+
*/
|
|
188
|
+
export const cron = internal.cron;
|
|
178
189
|
/**
|
|
179
190
|
* Cron-like schedule that recurs every specified `day` of month. Won't recur
|
|
180
191
|
* on months containing less days than specified in `day` param.
|
package/dist/esm/Schedule.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Schedule.js","names":["internal","ScheduleTypeId","ScheduleDriverTypeId","makeWithState","addDelay","addDelayEffect","andThen","andThenEither","as","asUnit","bothInOut","check","checkEffect","collectAllInputs","collectAllOutputs","collectUntil","collectUntilEffect","collectWhile","collectWhileEffect","compose","mapInput","mapInputContext","mapInputEffect","count","dayOfMonth","dayOfWeek","delayed","delayedEffect","delayedSchedule","delays","mapBoth","mapBothEffect","driver","duration","either","eitherWith","elapsed","ensuring","exponential","fibonacci","fixed","forever","fromDelay","fromDelays","fromFunction","hourOfDay","identity","intersect","intersectWith","jittered","jitteredWith","linear","map","mapEffect","minuteOfHour","modifyDelay","modifyDelayEffect","onDecision","once","passthrough","provideContext","provideService","recurUntil","recurUntilEffect","recurUntilOption","recurUpTo","recurWhile","recurWhileEffect","recurs","reduce","reduceEffect","repeatForever","repetitions","resetAfter","resetWhen","run","secondOfMinute","spaced","stop","succeed","sync","tapInput","tapOutput","unfold","union","unionWith","untilInput","untilInputEffect","untilOutput","untilOutputEffect","upTo","whileInput","whileInputEffect","whileOutput","whileOutputEffect","windowed","zipLeft","zipRight","zipWith"],"sources":["../../src/Schedule.ts"],"sourcesContent":[null],"mappings":"
|
|
1
|
+
{"version":3,"file":"Schedule.js","names":["internal","ScheduleTypeId","ScheduleDriverTypeId","makeWithState","addDelay","addDelayEffect","andThen","andThenEither","as","asUnit","bothInOut","check","checkEffect","collectAllInputs","collectAllOutputs","collectUntil","collectUntilEffect","collectWhile","collectWhileEffect","compose","mapInput","mapInputContext","mapInputEffect","count","cron","dayOfMonth","dayOfWeek","delayed","delayedEffect","delayedSchedule","delays","mapBoth","mapBothEffect","driver","duration","either","eitherWith","elapsed","ensuring","exponential","fibonacci","fixed","forever","fromDelay","fromDelays","fromFunction","hourOfDay","identity","intersect","intersectWith","jittered","jitteredWith","linear","map","mapEffect","minuteOfHour","modifyDelay","modifyDelayEffect","onDecision","once","passthrough","provideContext","provideService","recurUntil","recurUntilEffect","recurUntilOption","recurUpTo","recurWhile","recurWhileEffect","recurs","reduce","reduceEffect","repeatForever","repetitions","resetAfter","resetWhen","run","secondOfMinute","spaced","stop","succeed","sync","tapInput","tapOutput","unfold","union","unionWith","untilInput","untilInputEffect","untilOutput","untilOutputEffect","upTo","whileInput","whileInputEffect","whileOutput","whileOutputEffect","windowed","zipLeft","zipRight","zipWith"],"sources":["../../src/Schedule.ts"],"sourcesContent":[null],"mappings":"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"}
|
package/dist/esm/Struct.js
CHANGED
|
@@ -116,4 +116,18 @@ export const evolve = /*#__PURE__*/dual(2, (obj, t) => {
|
|
|
116
116
|
}
|
|
117
117
|
return out;
|
|
118
118
|
});
|
|
119
|
+
/**
|
|
120
|
+
* Retrieves the value associated with the specified key from a struct.
|
|
121
|
+
*
|
|
122
|
+
* @example
|
|
123
|
+
* import * as Struct from "effect/Struct"
|
|
124
|
+
* import { pipe } from "effect/Function"
|
|
125
|
+
*
|
|
126
|
+
* const value = pipe({ a: 1, b: 2 }, Struct.get("a"))
|
|
127
|
+
*
|
|
128
|
+
* assert.deepStrictEqual(value, 1)
|
|
129
|
+
*
|
|
130
|
+
* @since 2.0.0
|
|
131
|
+
*/
|
|
132
|
+
export const get = key => s => s[key];
|
|
119
133
|
//# sourceMappingURL=Struct.js.map
|
package/dist/esm/Struct.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Struct.js","names":["Equivalence","dual","order","pick","keys","s","out","k","omit","getEquivalence","struct","getOrder","evolve","obj","t","Object","prototype","hasOwnProperty","call"],"sources":["../../src/Struct.ts"],"sourcesContent":[null],"mappings":"AAAA;;;;;AAMA,OAAO,KAAKA,WAAW,MAAM,kBAAkB;AAC/C,SAASC,IAAI,QAAQ,eAAe;AACpC,OAAO,KAAKC,KAAK,MAAM,YAAY;AAGnC;;;;;;;;;;;AAWA,OAAO,MAAMC,IAAI,GAAGA,CAClB,GAAGC,IAAU,
|
|
1
|
+
{"version":3,"file":"Struct.js","names":["Equivalence","dual","order","pick","keys","s","out","k","omit","getEquivalence","struct","getOrder","evolve","obj","t","Object","prototype","hasOwnProperty","call","get","key"],"sources":["../../src/Struct.ts"],"sourcesContent":[null],"mappings":"AAAA;;;;;AAMA,OAAO,KAAKA,WAAW,MAAM,kBAAkB;AAC/C,SAASC,IAAI,QAAQ,eAAe;AACpC,OAAO,KAAKC,KAAK,MAAM,YAAY;AAGnC;;;;;;;;;;;AAWA,OAAO,MAAMC,IAAI,GAAGA,CAClB,GAAGC,IAAU,KAGbC,CAAI,IACwF;EAC5F,MAAMC,GAAG,GAAQ,EAAE;EACnB,KAAK,MAAMC,CAAC,IAAIH,IAAI,EAAE;IACpBE,GAAG,CAACC,CAAC,CAAC,GAAIF,CAAS,CAACE,CAAC,CAAC;EACxB;EACA,OAAOD,GAAG;AACZ,CAAC;AAED;;;;;;;;;;;AAWA,OAAO,MAAME,IAAI,GAAGA,CAClB,GAAGJ,IAAU,KAEuBC,CAAI,IAAqC;EAC7E,MAAMC,GAAG,GAAQ;IAAE,GAAGD;EAAC,CAAE;EACzB,KAAK,MAAME,CAAC,IAAIH,IAAI,EAAE;IACpB,OAAOE,GAAG,CAACC,CAAC,CAAC;EACf;EACA,OAAOD,GAAG;AACZ,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4BA,OAAO,MAAMG,cAAc,GAIvBT,WAAW,CAACU,MAAM;AAEtB;;;;;;;;;AASA,OAAO,MAAMC,QAAQ,GAEqET,KAAK,CAACQ,MAAM;AAUtG;;;;;;;;;;;;;;;;;;;;;AAqBA,OAAO,MAAME,MAAM,gBAKfX,IAAI,CACN,CAAC,EACD,CACEY,GAAM,EACNC,CAAI,KAC2B;EAC/B,MAAMR,GAAG,GAAG;IAAE,GAAGO;EAAG,CAAE;EACtB,KAAK,MAAMN,CAAC,IAAIO,CAAC,EAAE;IACjB,IAAIC,MAAM,CAACC,SAAS,CAACC,cAAc,CAACC,IAAI,CAACL,GAAG,EAAEN,CAAC,CAAC,EAAE;MAChD;MACAD,GAAG,CAACC,CAAC,CAAC,GAAGO,CAAC,CAACP,CAAC,CAAC,CAACM,GAAG,CAACN,CAAC,CAAC,CAAC;IACvB;EACF;EACA,OAAOD,GAAU;AACnB,CAAC,CACF;AAED;;;;;;;;;;;;;AAaA,OAAO,MAAMa,GAAG,GACUC,GAAM,IAAgCf,CAAI,IAA6CA,CAAC,CAACe,GAAG,CAAC"}
|