liminal 0.4.0 → 1.0.0-beta.2
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/LICENSE +201 -15
- package/README.md +96 -81
- package/esm/client/Client.d.ts +39 -0
- package/esm/client/Client.d.ts.map +1 -0
- package/esm/client/Client.js +9 -0
- package/esm/client/Client.js.map +1 -0
- package/esm/client/Store.d.ts +3 -0
- package/esm/client/Store.d.ts.map +1 -0
- package/esm/client/Store.js +3 -0
- package/esm/client/Store.js.map +1 -0
- package/esm/client/Tx.d.ts +40 -0
- package/esm/client/Tx.d.ts.map +1 -0
- package/esm/client/Tx.js +36 -0
- package/esm/client/Tx.js.map +1 -0
- package/esm/client/mod.d.ts +4 -0
- package/esm/client/mod.d.ts.map +1 -0
- package/esm/client/mod.js +5 -0
- package/esm/client/mod.js.map +1 -0
- package/esm/core/Bool.d.ts +104 -0
- package/esm/core/Bool.d.ts.map +1 -0
- package/esm/core/Bool.js +73 -0
- package/esm/core/Bool.js.map +1 -0
- package/esm/core/Bytes.d.ts +39 -0
- package/esm/core/Bytes.d.ts.map +1 -0
- package/esm/core/Bytes.js +7 -0
- package/esm/core/Bytes.js.map +1 -0
- package/esm/core/Call.d.ts +11 -0
- package/esm/core/Call.d.ts.map +1 -0
- package/esm/core/Call.js +23 -0
- package/esm/core/Call.js.map +1 -0
- package/esm/core/Effect.d.ts +20 -0
- package/esm/core/Effect.d.ts.map +1 -0
- package/esm/core/Effect.js +37 -0
- package/esm/core/Effect.js.map +1 -0
- package/esm/core/Hash.d.ts +41 -0
- package/esm/core/Hash.d.ts.map +1 -0
- package/esm/core/Hash.js +8 -0
- package/esm/core/Hash.js.map +1 -0
- package/esm/core/Id.d.ts +198 -0
- package/esm/core/Id.d.ts.map +1 -0
- package/esm/core/Id.js +69 -0
- package/esm/core/Id.js.map +1 -0
- package/esm/core/Int.d.ts +768 -0
- package/esm/core/Int.d.ts.map +1 -0
- package/esm/core/Int.js +201 -0
- package/esm/core/Int.js.map +1 -0
- package/esm/core/Key.d.ts +40 -0
- package/esm/core/Key.d.ts.map +1 -0
- package/esm/core/Key.js +7 -0
- package/esm/core/Key.js.map +1 -0
- package/esm/core/MerkleList.d.ts +105 -0
- package/esm/core/MerkleList.d.ts.map +1 -0
- package/esm/core/MerkleList.js +82 -0
- package/esm/core/MerkleList.js.map +1 -0
- package/esm/core/MerkleMap.d.ts +87 -0
- package/esm/core/MerkleMap.d.ts.map +1 -0
- package/esm/core/MerkleMap.js +67 -0
- package/esm/core/MerkleMap.js.map +1 -0
- package/esm/core/None.d.ts +52 -0
- package/esm/core/None.d.ts.map +1 -0
- package/esm/core/None.js +12 -0
- package/esm/core/None.js.map +1 -0
- package/esm/core/State.d.ts +16 -0
- package/esm/core/State.d.ts.map +1 -0
- package/esm/core/State.js +22 -0
- package/esm/core/State.js.map +1 -0
- package/esm/core/String.d.ts +41 -0
- package/esm/core/String.d.ts.map +1 -0
- package/esm/core/String.js +4 -0
- package/esm/core/String.js.map +1 -0
- package/esm/core/Struct.d.ts +58 -0
- package/esm/core/Struct.d.ts.map +1 -0
- package/esm/core/Struct.js +13 -0
- package/esm/core/Struct.js.map +1 -0
- package/esm/core/Type.d.ts +78 -0
- package/esm/core/Type.d.ts.map +1 -0
- package/esm/core/Type.js +71 -0
- package/esm/core/Type.js.map +1 -0
- package/esm/core/Union.d.ts +43 -0
- package/esm/core/Union.d.ts.map +1 -0
- package/esm/core/Union.js +7 -0
- package/esm/core/Union.js.map +1 -0
- package/esm/core/Use.d.ts +62 -0
- package/esm/core/Use.d.ts.map +1 -0
- package/esm/core/Use.js +16 -0
- package/esm/core/Use.js.map +1 -0
- package/esm/core/mod.d.ts +18 -0
- package/esm/core/mod.d.ts.map +1 -0
- package/esm/core/mod.js +19 -0
- package/esm/core/mod.js.map +1 -0
- package/esm/lib/MerkleList.d.ts +4 -0
- package/esm/lib/MerkleList.d.ts.map +1 -0
- package/esm/lib/MerkleList.js +4 -0
- package/esm/lib/MerkleList.js.map +1 -0
- package/esm/lib/MerkleMap.d.ts +4 -0
- package/esm/lib/MerkleMap.d.ts.map +1 -0
- package/esm/lib/MerkleMap.js +4 -0
- package/esm/lib/MerkleMap.js.map +1 -0
- package/esm/lib/mod.d.ts +3 -0
- package/esm/lib/mod.d.ts.map +1 -0
- package/esm/lib/mod.js +3 -0
- package/esm/lib/mod.js.map +1 -0
- package/esm/mod.d.ts +3 -0
- package/esm/mod.d.ts.map +1 -0
- package/esm/mod.js +4 -0
- package/esm/mod.js.map +1 -0
- package/esm/package.json +3 -0
- package/esm/test/Signer.d.ts +10 -0
- package/esm/test/Signer.d.ts.map +1 -0
- package/esm/test/Signer.js +13 -0
- package/esm/test/Signer.js.map +1 -0
- package/esm/test/mod.d.ts +2 -0
- package/esm/test/mod.d.ts.map +1 -0
- package/esm/test/mod.js +2 -0
- package/esm/test/mod.js.map +1 -0
- package/esm/util/AbortController.d.ts +4 -0
- package/esm/util/AbortController.d.ts.map +1 -0
- package/esm/util/AbortController.js +2 -0
- package/esm/util/AbortController.js.map +1 -0
- package/esm/util/ArrayOfLength.d.ts +2 -0
- package/esm/util/ArrayOfLength.d.ts.map +1 -0
- package/esm/util/ArrayOfLength.js +2 -0
- package/esm/util/ArrayOfLength.js.map +1 -0
- package/esm/util/Flatten.d.ts +4 -0
- package/esm/util/Flatten.d.ts.map +1 -0
- package/esm/util/Flatten.js +2 -0
- package/esm/util/Flatten.js.map +1 -0
- package/esm/util/Rest.d.ts +2 -0
- package/esm/util/Rest.d.ts.map +1 -0
- package/esm/util/Rest.js +2 -0
- package/esm/util/Rest.js.map +1 -0
- package/esm/util/Subscription.d.ts +5 -0
- package/esm/util/Subscription.d.ts.map +1 -0
- package/esm/util/Subscription.js +2 -0
- package/esm/util/Subscription.js.map +1 -0
- package/esm/util/Tagged.d.ts +6 -0
- package/esm/util/Tagged.d.ts.map +1 -0
- package/esm/util/Tagged.js +6 -0
- package/esm/util/Tagged.js.map +1 -0
- package/esm/util/U2I.d.ts +2 -0
- package/esm/util/U2I.d.ts.map +1 -0
- package/esm/util/U2I.js +2 -0
- package/esm/util/U2I.js.map +1 -0
- package/esm/util/generator/collect.d.ts +3 -0
- package/esm/util/generator/collect.d.ts.map +1 -0
- package/esm/util/generator/collect.js +16 -0
- package/esm/util/generator/collect.js.map +1 -0
- package/esm/util/isKey.d.ts +2 -0
- package/esm/util/isKey.d.ts.map +1 -0
- package/esm/util/isKey.js +8 -0
- package/esm/util/isKey.js.map +1 -0
- package/esm/util/unimplemented.d.ts +2 -0
- package/esm/util/unimplemented.d.ts.map +1 -0
- package/esm/util/unimplemented.js +6 -0
- package/esm/util/unimplemented.js.map +1 -0
- package/package.json +21 -21
- package/src/client/Client.ts +49 -0
- package/src/client/Store.ts +1 -0
- package/src/client/Tx.ts +62 -0
- package/src/client/mod.ts +5 -0
- package/src/core/Bool.ts +75 -0
- package/src/core/Bytes.ts +9 -0
- package/src/core/Call.ts +38 -0
- package/src/core/Effect.ts +87 -0
- package/src/core/Hash.ts +23 -0
- package/src/core/Id.ts +97 -0
- package/src/core/Int.ts +177 -0
- package/src/core/Key.ts +9 -0
- package/src/core/MerkleList.ts +92 -0
- package/src/core/MerkleMap.ts +86 -0
- package/src/core/None.ts +11 -0
- package/src/core/State.ts +31 -0
- package/src/core/String.ts +5 -0
- package/src/core/Struct.ts +49 -0
- package/src/core/Type.ts +120 -0
- package/src/core/Union.ts +17 -0
- package/src/core/Use.ts +33 -0
- package/src/core/mod.ts +19 -0
- package/src/lib/MerkleList.ts +4 -0
- package/src/lib/MerkleMap.ts +4 -0
- package/src/lib/mod.ts +2 -0
- package/src/mod.ts +4 -0
- package/src/test/Signer.ts +22 -0
- package/src/test/mod.ts +1 -0
- package/src/util/AbortController.ts +3 -0
- package/src/util/ArrayOfLength.ts +5 -0
- package/src/util/Flatten.ts +2 -0
- package/src/util/Rest.ts +1 -0
- package/src/util/Subscription.ts +5 -0
- package/src/util/Tagged.ts +5 -0
- package/src/util/U2I.ts +1 -0
- package/src/util/generator/collect.ts +16 -0
- package/src/util/isKey.ts +7 -0
- package/src/util/unimplemented.ts +4 -0
- package/jest.config.js +0 -4
- package/lib/array/array.d.ts +0 -6
- package/lib/array/array.js +0 -21
- package/lib/array/index.d.ts +0 -11
- package/lib/array/index.js +0 -17
- package/lib/composition/composition.d.ts +0 -6
- package/lib/composition/composition.js +0 -37
- package/lib/composition/index.d.ts +0 -9
- package/lib/composition/index.js +0 -13
- package/lib/composition/types.d.ts +0 -2
- package/lib/composition/types.js +0 -2
- package/lib/dispatch/getType.d.ts +0 -2
- package/lib/dispatch/getType.js +0 -15
- package/lib/dispatch/identity.d.ts +0 -2
- package/lib/dispatch/identity.js +0 -4
- package/lib/dispatch/index.d.ts +0 -22
- package/lib/dispatch/index.js +0 -13
- package/lib/dispatch/types.d.ts +0 -14
- package/lib/dispatch/types.js +0 -16
- package/lib/error/error.d.ts +0 -24
- package/lib/error/error.js +0 -25
- package/lib/error/index.d.ts +0 -2
- package/lib/error/index.js +0 -4
- package/lib/index.d.ts +0 -67
- package/lib/index.js +0 -19
- package/lib/multimethod/index.d.ts +0 -7
- package/lib/multimethod/index.js +0 -9
- package/lib/multimethod/multimethod.d.ts +0 -3
- package/lib/multimethod/multimethod.js +0 -101
- package/src/array/array.ts +0 -29
- package/src/array/index.ts +0 -12
- package/src/composition/composition.ts +0 -45
- package/src/composition/index.ts +0 -10
- package/src/composition/types.ts +0 -6
- package/src/dispatch/getType.ts +0 -17
- package/src/dispatch/identity.ts +0 -3
- package/src/dispatch/index.ts +0 -11
- package/src/dispatch/types.ts +0 -15
- package/src/error/error.ts +0 -26
- package/src/error/index.ts +0 -3
- package/src/index.ts +0 -15
- package/src/multimethod/index.ts +0 -8
- package/src/multimethod/multimethod.test.ts +0 -10
- package/src/multimethod/multimethod.ts +0 -148
- package/tsconfig.json +0 -12
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Int.d.ts","sourceRoot":"","sources":["../../src/core/Int.ts"],"names":[],"mappings":"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"}
|
package/esm/core/Int.js
ADDED
|
@@ -0,0 +1,201 @@
|
|
|
1
|
+
import { Tagged } from "../util/Tagged.js";
|
|
2
|
+
import { Type } from "./Type.js";
|
|
3
|
+
// TODO: allow from/into from opposite-signed types (effectively enabling an `absolute` method)
|
|
4
|
+
export class u8 extends Int(false, 8) {
|
|
5
|
+
}
|
|
6
|
+
export class u16 extends Int(false, 16) {
|
|
7
|
+
}
|
|
8
|
+
export class u32 extends Int(false, 32) {
|
|
9
|
+
}
|
|
10
|
+
export class u64 extends Int(false, 64) {
|
|
11
|
+
}
|
|
12
|
+
export class u128 extends Int(false, 128) {
|
|
13
|
+
}
|
|
14
|
+
export class u256 extends Int(false, 256) {
|
|
15
|
+
}
|
|
16
|
+
export class i8 extends Int(true, 8) {
|
|
17
|
+
}
|
|
18
|
+
export class i16 extends Int(true, 16) {
|
|
19
|
+
}
|
|
20
|
+
export class i32 extends Int(true, 32) {
|
|
21
|
+
}
|
|
22
|
+
export class i64 extends Int(true, 64) {
|
|
23
|
+
}
|
|
24
|
+
export class i128 extends Int(true, 128) {
|
|
25
|
+
}
|
|
26
|
+
export class i256 extends Int(true, 256) {
|
|
27
|
+
}
|
|
28
|
+
function Int(signed, size) {
|
|
29
|
+
return class extends Type.make(`${signed ? "i" : "u"}${size}`) {
|
|
30
|
+
signed = signed;
|
|
31
|
+
static min() {
|
|
32
|
+
return new this(new IntSource.Min());
|
|
33
|
+
}
|
|
34
|
+
static max() {
|
|
35
|
+
return new this(new IntSource.Max());
|
|
36
|
+
}
|
|
37
|
+
static random() {
|
|
38
|
+
return new this(new IntSource.Random());
|
|
39
|
+
}
|
|
40
|
+
add(value) {
|
|
41
|
+
return new this.ctor(new IntSource.Add(this, value));
|
|
42
|
+
}
|
|
43
|
+
subtract(value) {
|
|
44
|
+
return new this.ctor(new IntSource.Subtract(this, value));
|
|
45
|
+
}
|
|
46
|
+
multiply(value) {
|
|
47
|
+
return new this.ctor(new IntSource.Multiply(this, value));
|
|
48
|
+
}
|
|
49
|
+
divide(value) {
|
|
50
|
+
return new this.ctor(new IntSource.Divide(this, value));
|
|
51
|
+
}
|
|
52
|
+
square() {
|
|
53
|
+
return new this.ctor(new IntSource.Square(this));
|
|
54
|
+
}
|
|
55
|
+
logarithm(value) {
|
|
56
|
+
return new this.ctor(new IntSource.Logarithm(this, value));
|
|
57
|
+
}
|
|
58
|
+
gt(value) {
|
|
59
|
+
return new this.ctor(new IntSource.Gt(this, value));
|
|
60
|
+
}
|
|
61
|
+
gte(value) {
|
|
62
|
+
return new this.ctor(new IntSource.Gte(this, value));
|
|
63
|
+
}
|
|
64
|
+
lt(value) {
|
|
65
|
+
return new this.ctor(new IntSource.Lt(this, value));
|
|
66
|
+
}
|
|
67
|
+
lte(value) {
|
|
68
|
+
return new this.ctor(new IntSource.Lte(this, value));
|
|
69
|
+
}
|
|
70
|
+
};
|
|
71
|
+
}
|
|
72
|
+
export var IntSource;
|
|
73
|
+
(function (IntSource) {
|
|
74
|
+
class Random extends Tagged("Random") {
|
|
75
|
+
}
|
|
76
|
+
IntSource.Random = Random;
|
|
77
|
+
class Min extends Tagged("Min") {
|
|
78
|
+
}
|
|
79
|
+
IntSource.Min = Min;
|
|
80
|
+
class Max extends Tagged("Max") {
|
|
81
|
+
}
|
|
82
|
+
IntSource.Max = Max;
|
|
83
|
+
class Add extends Tagged("Add") {
|
|
84
|
+
left;
|
|
85
|
+
right;
|
|
86
|
+
constructor(left, right) {
|
|
87
|
+
super();
|
|
88
|
+
this.left = left;
|
|
89
|
+
this.right = right;
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
IntSource.Add = Add;
|
|
93
|
+
class Subtract extends Tagged("Subtract") {
|
|
94
|
+
left;
|
|
95
|
+
right;
|
|
96
|
+
constructor(left, right) {
|
|
97
|
+
super();
|
|
98
|
+
this.left = left;
|
|
99
|
+
this.right = right;
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
IntSource.Subtract = Subtract;
|
|
103
|
+
class Multiply extends Tagged("Multiply") {
|
|
104
|
+
left;
|
|
105
|
+
right;
|
|
106
|
+
constructor(left, right) {
|
|
107
|
+
super();
|
|
108
|
+
this.left = left;
|
|
109
|
+
this.right = right;
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
IntSource.Multiply = Multiply;
|
|
113
|
+
class Divide extends Tagged("Divide") {
|
|
114
|
+
left;
|
|
115
|
+
right;
|
|
116
|
+
constructor(left, right) {
|
|
117
|
+
super();
|
|
118
|
+
this.left = left;
|
|
119
|
+
this.right = right;
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
IntSource.Divide = Divide;
|
|
123
|
+
class Square extends Tagged("Square") {
|
|
124
|
+
self;
|
|
125
|
+
constructor(self) {
|
|
126
|
+
super();
|
|
127
|
+
this.self = self;
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
IntSource.Square = Square;
|
|
131
|
+
class Logarithm extends Tagged("Logarithm") {
|
|
132
|
+
left;
|
|
133
|
+
right;
|
|
134
|
+
constructor(left, right) {
|
|
135
|
+
super();
|
|
136
|
+
this.left = left;
|
|
137
|
+
this.right = right;
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
IntSource.Logarithm = Logarithm;
|
|
141
|
+
class Gt extends Tagged("Gt") {
|
|
142
|
+
left;
|
|
143
|
+
right;
|
|
144
|
+
constructor(left, right) {
|
|
145
|
+
super();
|
|
146
|
+
this.left = left;
|
|
147
|
+
this.right = right;
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
IntSource.Gt = Gt;
|
|
151
|
+
class Gte extends Tagged("Gte") {
|
|
152
|
+
left;
|
|
153
|
+
right;
|
|
154
|
+
constructor(left, right) {
|
|
155
|
+
super();
|
|
156
|
+
this.left = left;
|
|
157
|
+
this.right = right;
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
IntSource.Gte = Gte;
|
|
161
|
+
class Lt extends Tagged("Lt") {
|
|
162
|
+
left;
|
|
163
|
+
right;
|
|
164
|
+
constructor(left, right) {
|
|
165
|
+
super();
|
|
166
|
+
this.left = left;
|
|
167
|
+
this.right = right;
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
IntSource.Lt = Lt;
|
|
171
|
+
class Lte extends Tagged("Lte") {
|
|
172
|
+
left;
|
|
173
|
+
right;
|
|
174
|
+
constructor(left, right) {
|
|
175
|
+
super();
|
|
176
|
+
this.left = left;
|
|
177
|
+
this.right = right;
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
IntSource.Lte = Lte;
|
|
181
|
+
})(IntSource || (IntSource = {}));
|
|
182
|
+
export var U256Source;
|
|
183
|
+
(function (U256Source) {
|
|
184
|
+
class MerkleMapSize extends Tagged("MerkleMapSize") {
|
|
185
|
+
self;
|
|
186
|
+
constructor(self) {
|
|
187
|
+
super();
|
|
188
|
+
this.self = self;
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
U256Source.MerkleMapSize = MerkleMapSize;
|
|
192
|
+
class MerkleListSize extends Tagged("MerkleMapSize") {
|
|
193
|
+
self;
|
|
194
|
+
constructor(self) {
|
|
195
|
+
super();
|
|
196
|
+
this.self = self;
|
|
197
|
+
}
|
|
198
|
+
}
|
|
199
|
+
U256Source.MerkleListSize = MerkleListSize;
|
|
200
|
+
})(U256Source || (U256Source = {}));
|
|
201
|
+
//# sourceMappingURL=Int.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Int.js","sourceRoot":"","sources":["../../src/core/Int.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { Type } from "./Type.js";
|
|
2
|
+
export interface Key<T extends keyof any> extends InstanceType<ReturnType<typeof Key<T>>> {
|
|
3
|
+
}
|
|
4
|
+
export declare function Key<T extends keyof any>(value: T): {
|
|
5
|
+
new (source: import("./Type.js").TypeSource): {
|
|
6
|
+
value: T;
|
|
7
|
+
""?: [T, T, never] | undefined;
|
|
8
|
+
readonly typeName: "Key";
|
|
9
|
+
readonly source: import("./Type.js").TypeSource;
|
|
10
|
+
ctor: new (source: import("./Type.js").TypeSource) => any;
|
|
11
|
+
into<O extends never>(into: import("./Type.js").Factory<O>): O;
|
|
12
|
+
equals<T extends Type<any, any, any, any, any>>(this: T, inQuestion: T): import("./Bool.js").bool;
|
|
13
|
+
is<T_1 extends Type<any, any, any, any, any>, M extends import("./Type.js").Factory<T_1>>(this: T_1, match: M): import("./Bool.js").bool;
|
|
14
|
+
case<T_2 extends Type<any, any, any, any, any>, M_1 extends import("./Type.js").Factory<T_2>, R extends import("./Call.js").Result, U extends R | Exclude<T_2, InstanceType<M_1>>>(this: T_2, match: M_1, f: import("./Call.js").ValueCall<R, [InstanceType<M_1>]>): U;
|
|
15
|
+
case<T_3 extends Type<any, any, any, any, any>, M_2 extends import("./Type.js").Factory<T_3>, Y extends import("./Call.js").Yield, R_1 extends import("./Call.js").Result, U_1 extends R_1 | Exclude<T_3, InstanceType<M_2>>>(this: T_3, match: M_2, f: import("./Call.js").GenCall<Y, R_1, [InstanceType<M_2>]>): import("./Effect.js").Effect<Y, U_1>;
|
|
16
|
+
"?"<T_4 extends Type<any, any, any, any, any>, M_3 extends import("./Type.js").Factory<T_4>>(this: T_4, match: M_3): import("./Effect.js").Effect<InstanceType<M_3>, Exclude<T_4, InstanceType<M_3>>>;
|
|
17
|
+
"?"<T_5 extends Type<any, any, any, any, any>, M_4 extends import("./Type.js").Factory<T_5>, W extends Type<any, any, any, any, any>>(this: T_5, match: M_4, with_: W): import("./Effect.js").Effect<W, Exclude<T_5, InstanceType<M_4>>>;
|
|
18
|
+
};
|
|
19
|
+
make<Name extends string>(name: Name): {
|
|
20
|
+
new <Source, Native = never, From = Native, Into extends Type<any, any, any, any, any> = never>(source: Source | import("./Type.js").TypeSource): {
|
|
21
|
+
""?: [Native, From, Into] | undefined;
|
|
22
|
+
readonly typeName: Name;
|
|
23
|
+
readonly source: Source | import("./Type.js").TypeSource;
|
|
24
|
+
ctor: new (source: Source | import("./Type.js").TypeSource) => any;
|
|
25
|
+
into<O_1 extends Into>(into: import("./Type.js").Factory<O_1>): O_1;
|
|
26
|
+
equals<T_6 extends Type<any, any, any, any, any>>(this: T_6, inQuestion: T_6): import("./Bool.js").bool;
|
|
27
|
+
is<T_7 extends Type<any, any, any, any, any>, M_5 extends import("./Type.js").Factory<T_7>>(this: T_7, match: M_5): import("./Bool.js").bool;
|
|
28
|
+
case<T_8 extends Type<any, any, any, any, any>, M_6 extends import("./Type.js").Factory<T_8>, R_2 extends import("./Call.js").Result, U_2 extends R_2 | Exclude<T_8, InstanceType<M_6>>>(this: T_8, match: M_6, f: import("./Call.js").ValueCall<R_2, [InstanceType<M_6>]>): U_2;
|
|
29
|
+
case<T_9 extends Type<any, any, any, any, any>, M_7 extends import("./Type.js").Factory<T_9>, Y_1 extends import("./Call.js").Yield, R_3 extends import("./Call.js").Result, U_3 extends R_3 | Exclude<T_9, InstanceType<M_7>>>(this: T_9, match: M_7, f: import("./Call.js").GenCall<Y_1, R_3, [InstanceType<M_7>]>): import("./Effect.js").Effect<Y_1, U_3>;
|
|
30
|
+
"?"<T_10 extends Type<any, any, any, any, any>, M_8 extends import("./Type.js").Factory<T_10>>(this: T_10, match: M_8): import("./Effect.js").Effect<InstanceType<M_8>, Exclude<T_10, InstanceType<M_8>>>;
|
|
31
|
+
"?"<T_11 extends Type<any, any, any, any, any>, M_9 extends import("./Type.js").Factory<T_11>, W_1 extends Type<any, any, any, any, any>>(this: T_11, match: M_9, with_: W_1): import("./Effect.js").Effect<W_1, Exclude<T_11, InstanceType<M_9>>>;
|
|
32
|
+
};
|
|
33
|
+
make<Name extends string>(name: Name): any;
|
|
34
|
+
"new"<T_12 extends Type<any, any, any, any, any>>(this: import("./Type.js").Factory<T_12>, ...[value]: import("../util/Rest.js").Rest<Type.From<T_12>>): T_12;
|
|
35
|
+
state<T_13 extends Type<any, any, any, any, any>>(this: import("./Type.js").Factory<T_13>): import("./State.js").State<T_13>;
|
|
36
|
+
};
|
|
37
|
+
"new"<T_12 extends Type<any, any, any, any, any>>(this: import("./Type.js").Factory<T_12>, ...[value]: import("../util/Rest.js").Rest<Type.From<T_12>>): T_12;
|
|
38
|
+
state<T_13 extends Type<any, any, any, any, any>>(this: import("./Type.js").Factory<T_13>): import("./State.js").State<T_13>;
|
|
39
|
+
};
|
|
40
|
+
//# sourceMappingURL=Key.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Key.d.ts","sourceRoot":"","sources":["../../src/core/Key.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAEhC,MAAM,WAAW,GAAG,CAAC,CAAC,SAAS,MAAM,GAAG,CAAE,SAAQ,YAAY,CAAC,UAAU,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;CAAG;AAE5F,wBAAgB,GAAG,CAAC,CAAC,SAAS,MAAM,GAAG,EAAE,KAAK,EAAE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAIhD"}
|
package/esm/core/Key.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Key.js","sourceRoot":"","sources":["../../src/core/Key.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAIhC,MAAM,UAAU,GAAG,CAAsB,KAAQ;IAC/C,OAAO,MAAM,GAAI,SAAQ,IAAI,CAAC,IAAI,CAAC,KAAK,CAAW;QACjD,KAAK,GAAG,KAAK,CAAA;KACd,CAAA;AACH,CAAC"}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
import { MerkleList as MerkleListNative } from "../lib/mod.js";
|
|
2
|
+
import { Effect } from "./Effect.js";
|
|
3
|
+
import { u256 } from "./Int.js";
|
|
4
|
+
import { None } from "./None.js";
|
|
5
|
+
import { Factory, Type } from "./Type.js";
|
|
6
|
+
export interface MerkleList<T extends Type = Type> extends InstanceType<ReturnType<typeof MerkleList<T>>> {
|
|
7
|
+
}
|
|
8
|
+
export declare function MerkleList<T extends Type>(elementType: Factory<T>): {
|
|
9
|
+
new (source: import("./Type.js").TypeSource | MerkleListSource): {
|
|
10
|
+
elementType: Factory<T>;
|
|
11
|
+
length: u256;
|
|
12
|
+
first: None | T;
|
|
13
|
+
last: None | T;
|
|
14
|
+
prepend(value: T): MerkleList<T>;
|
|
15
|
+
append(value: T): MerkleList<T>;
|
|
16
|
+
shift(): MerkleList<T>;
|
|
17
|
+
pop(): MerkleList<T>;
|
|
18
|
+
at(index: u256): T | None;
|
|
19
|
+
reduceKeys<R extends Type<any, any, any, any, any>, Y extends Type<any, any, any, any, any>>(_initial: R, _f: (acc: R, cur: T) => Generator<Y, R, unknown>): Effect<R, Y>;
|
|
20
|
+
""?: [MerkleListNative<Type.Native<T>>, undefined, never] | undefined;
|
|
21
|
+
readonly typeName: "MerkleList";
|
|
22
|
+
readonly source: import("./Type.js").TypeSource | MerkleListSource;
|
|
23
|
+
ctor: new (source: import("./Type.js").TypeSource | MerkleListSource) => any;
|
|
24
|
+
into<O extends never>(into: Factory<O>): O;
|
|
25
|
+
equals<T extends Type<any, any, any, any, any>>(this: T, inQuestion: T): import("./Bool.js").bool;
|
|
26
|
+
is<T_1 extends Type<any, any, any, any, any>, M extends Factory<T_1>>(this: T_1, match: M): import("./Bool.js").bool;
|
|
27
|
+
case<T_2 extends Type<any, any, any, any, any>, M_1 extends Factory<T_2>, R_1 extends import("./Call.js").Result, U extends R_1 | Exclude<T_2, InstanceType<M_1>>>(this: T_2, match: M_1, f: import("./Call.js").ValueCall<R_1, [InstanceType<M_1>]>): U;
|
|
28
|
+
case<T_3 extends Type<any, any, any, any, any>, M_2 extends Factory<T_3>, Y_1 extends import("./Call.js").Yield, R_2 extends import("./Call.js").Result, U_1 extends R_2 | Exclude<T_3, InstanceType<M_2>>>(this: T_3, match: M_2, f: import("./Call.js").GenCall<Y_1, R_2, [InstanceType<M_2>]>): Effect<Y_1, U_1>;
|
|
29
|
+
"?"<T_4 extends Type<any, any, any, any, any>, M_3 extends Factory<T_4>>(this: T_4, match: M_3): Effect<InstanceType<M_3>, Exclude<T_4, InstanceType<M_3>>>;
|
|
30
|
+
"?"<T_5 extends Type<any, any, any, any, any>, M_4 extends Factory<T_5>, W extends Type<any, any, any, any, any>>(this: T_5, match: M_4, with_: W): Effect<W, Exclude<T_5, InstanceType<M_4>>>;
|
|
31
|
+
};
|
|
32
|
+
make<Name extends string>(name: Name): {
|
|
33
|
+
new <Source, Native = never, From = Native, Into extends Type<any, any, any, any, any> = never>(source: Source | import("./Type.js").TypeSource): {
|
|
34
|
+
""?: [Native, From, Into] | undefined;
|
|
35
|
+
readonly typeName: Name;
|
|
36
|
+
readonly source: Source | import("./Type.js").TypeSource;
|
|
37
|
+
ctor: new (source: Source | import("./Type.js").TypeSource) => any;
|
|
38
|
+
into<O_1 extends Into>(into: Factory<O_1>): O_1;
|
|
39
|
+
equals<T_6 extends Type<any, any, any, any, any>>(this: T_6, inQuestion: T_6): import("./Bool.js").bool;
|
|
40
|
+
is<T_7 extends Type<any, any, any, any, any>, M_5 extends Factory<T_7>>(this: T_7, match: M_5): import("./Bool.js").bool;
|
|
41
|
+
case<T_8 extends Type<any, any, any, any, any>, M_6 extends Factory<T_8>, R_3 extends import("./Call.js").Result, U_2 extends R_3 | Exclude<T_8, InstanceType<M_6>>>(this: T_8, match: M_6, f: import("./Call.js").ValueCall<R_3, [InstanceType<M_6>]>): U_2;
|
|
42
|
+
case<T_9 extends Type<any, any, any, any, any>, M_7 extends Factory<T_9>, Y_2 extends import("./Call.js").Yield, R_4 extends import("./Call.js").Result, U_3 extends R_4 | Exclude<T_9, InstanceType<M_7>>>(this: T_9, match: M_7, f: import("./Call.js").GenCall<Y_2, R_4, [InstanceType<M_7>]>): Effect<Y_2, U_3>;
|
|
43
|
+
"?"<T_10 extends Type<any, any, any, any, any>, M_8 extends Factory<T_10>>(this: T_10, match: M_8): Effect<InstanceType<M_8>, Exclude<T_10, InstanceType<M_8>>>;
|
|
44
|
+
"?"<T_11 extends Type<any, any, any, any, any>, M_9 extends Factory<T_11>, W_1 extends Type<any, any, any, any, any>>(this: T_11, match: M_9, with_: W_1): Effect<W_1, Exclude<T_11, InstanceType<M_9>>>;
|
|
45
|
+
};
|
|
46
|
+
make<Name extends string>(name: Name): any;
|
|
47
|
+
"new"<T_12 extends Type<any, any, any, any, any>>(this: Factory<T_12>, ...[value]: import("../util/Rest.js").Rest<Type.From<T_12>>): T_12;
|
|
48
|
+
state<T_13 extends Type<any, any, any, any, any>>(this: Factory<T_13>): import("./State.js").State<T_13>;
|
|
49
|
+
};
|
|
50
|
+
"new"<T_12 extends Type<any, any, any, any, any>>(this: Factory<T_12>, ...[value]: import("../util/Rest.js").Rest<Type.From<T_12>>): T_12;
|
|
51
|
+
state<T_13 extends Type<any, any, any, any, any>>(this: Factory<T_13>): import("./State.js").State<T_13>;
|
|
52
|
+
};
|
|
53
|
+
export type MerkleListSource = MerkleListSource.Prepend | MerkleListSource.Append | MerkleListSource.Shift | MerkleListSource.Pop | MerkleListSource.At;
|
|
54
|
+
export declare namespace MerkleListSource {
|
|
55
|
+
const Prepend_base: {
|
|
56
|
+
new (): {
|
|
57
|
+
readonly tag: "Prepend";
|
|
58
|
+
};
|
|
59
|
+
};
|
|
60
|
+
export class Prepend extends Prepend_base {
|
|
61
|
+
readonly self: MerkleList;
|
|
62
|
+
readonly value: Type;
|
|
63
|
+
constructor(self: MerkleList, value: Type);
|
|
64
|
+
}
|
|
65
|
+
const Append_base: {
|
|
66
|
+
new (): {
|
|
67
|
+
readonly tag: "Append";
|
|
68
|
+
};
|
|
69
|
+
};
|
|
70
|
+
export class Append extends Append_base {
|
|
71
|
+
readonly self: MerkleList;
|
|
72
|
+
readonly value: Type;
|
|
73
|
+
constructor(self: MerkleList, value: Type);
|
|
74
|
+
}
|
|
75
|
+
const Shift_base: {
|
|
76
|
+
new (): {
|
|
77
|
+
readonly tag: "Shift";
|
|
78
|
+
};
|
|
79
|
+
};
|
|
80
|
+
export class Shift extends Shift_base {
|
|
81
|
+
readonly self: MerkleList;
|
|
82
|
+
constructor(self: MerkleList);
|
|
83
|
+
}
|
|
84
|
+
const Pop_base: {
|
|
85
|
+
new (): {
|
|
86
|
+
readonly tag: "Pop";
|
|
87
|
+
};
|
|
88
|
+
};
|
|
89
|
+
export class Pop extends Pop_base {
|
|
90
|
+
readonly self: MerkleList;
|
|
91
|
+
constructor(self: MerkleList);
|
|
92
|
+
}
|
|
93
|
+
const At_base: {
|
|
94
|
+
new (): {
|
|
95
|
+
readonly tag: "At";
|
|
96
|
+
};
|
|
97
|
+
};
|
|
98
|
+
export class At extends At_base {
|
|
99
|
+
readonly list: MerkleList;
|
|
100
|
+
readonly index: u256;
|
|
101
|
+
constructor(list: MerkleList, index: u256);
|
|
102
|
+
}
|
|
103
|
+
export {};
|
|
104
|
+
}
|
|
105
|
+
//# sourceMappingURL=MerkleList.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MerkleList.d.ts","sourceRoot":"","sources":["../../src/core/MerkleList.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,IAAI,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAG9D,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,IAAI,EAAc,MAAM,UAAU,CAAA;AAC3C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAGzC,MAAM,WAAW,UAAU,CAAC,CAAC,SAAS,IAAI,GAAG,IAAI,CAC/C,SAAQ,YAAY,CAAC,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;CACtD;AAEF,wBAAgB,UAAU,CAAC,CAAC,SAAS,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC;;;gBAStD,IAAI;;;uBAMG,CAAC,GAAG,WAAW,CAAC,CAAC;sBAIlB,CAAC,GAAG,WAAW,CAAC,CAAC;iBAItB,WAAW,CAAC,CAAC;eAIf,WAAW,CAAC,CAAC;kBAIV,IAAI,GAAG,CAAC,GAAG,IAAI;oIAQL,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAKxB;AAED,MAAM,MAAM,gBAAgB,GACxB,gBAAgB,CAAC,OAAO,GACxB,gBAAgB,CAAC,MAAM,GACvB,gBAAgB,CAAC,KAAK,GACtB,gBAAgB,CAAC,GAAG,GACpB,gBAAgB,CAAC,EAAE,CAAA;AACvB,yBAAiB,gBAAgB,CAAC;;;;;;IAChC,MAAM,OAAO,OAAQ,SAAQ,YAAiB;QAChC,QAAQ,CAAC,IAAI,EAAE,UAAU;QAAE,QAAQ,CAAC,KAAK,EAAE,IAAI;oBAAtC,IAAI,EAAE,UAAU,EAAW,KAAK,EAAE,IAAI;KAG5D;;;;;;IACD,MAAM,OAAO,MAAO,SAAQ,WAAgB;QAC9B,QAAQ,CAAC,IAAI,EAAE,UAAU;QAAE,QAAQ,CAAC,KAAK,EAAE,IAAI;oBAAtC,IAAI,EAAE,UAAU,EAAW,KAAK,EAAE,IAAI;KAG5D;;;;;;IACD,MAAM,OAAO,KAAM,SAAQ,UAAe;QAC5B,QAAQ,CAAC,IAAI,EAAE,UAAU;oBAAhB,IAAI,EAAE,UAAU;KAGtC;;;;;;IACD,MAAM,OAAO,GAAI,SAAQ,QAAa;QACxB,QAAQ,CAAC,IAAI,EAAE,UAAU;oBAAhB,IAAI,EAAE,UAAU;KAGtC;;;;;;IACD,MAAM,OAAO,EAAG,SAAQ,OAAY;QACtB,QAAQ,CAAC,IAAI,EAAE,UAAU;QAAE,QAAQ,CAAC,KAAK,EAAE,IAAI;oBAAtC,IAAI,EAAE,UAAU,EAAW,KAAK,EAAE,IAAI;KAG5D;;CACF"}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import { Tagged } from "../util/Tagged.js";
|
|
2
|
+
import { unimplemented } from "../util/unimplemented.js";
|
|
3
|
+
import { u256, U256Source } from "./Int.js";
|
|
4
|
+
import { None } from "./None.js";
|
|
5
|
+
import { Type } from "./Type.js";
|
|
6
|
+
import { Union } from "./Union.js";
|
|
7
|
+
export function MerkleList(elementType) {
|
|
8
|
+
return class extends Type.make("MerkleList") {
|
|
9
|
+
elementType = elementType;
|
|
10
|
+
length = new u256(new U256Source.MerkleListSize(this));
|
|
11
|
+
first = this.at(u256.new(1));
|
|
12
|
+
last = this.at(this.length.subtract(u256.new(1)));
|
|
13
|
+
prepend(value) {
|
|
14
|
+
return new this.ctor(new MerkleListSource.Prepend(this, value));
|
|
15
|
+
}
|
|
16
|
+
append(value) {
|
|
17
|
+
return new this.ctor(new MerkleListSource.Append(this, value));
|
|
18
|
+
}
|
|
19
|
+
shift() {
|
|
20
|
+
return new this.ctor(new MerkleListSource.Shift(this));
|
|
21
|
+
}
|
|
22
|
+
pop() {
|
|
23
|
+
return new this.ctor(new MerkleListSource.Pop(this));
|
|
24
|
+
}
|
|
25
|
+
at(index) {
|
|
26
|
+
return new (Union(None, this.elementType))(new MerkleListSource.At(this, index));
|
|
27
|
+
}
|
|
28
|
+
reduceKeys(_initial, _f) {
|
|
29
|
+
unimplemented();
|
|
30
|
+
}
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
export var MerkleListSource;
|
|
34
|
+
(function (MerkleListSource) {
|
|
35
|
+
class Prepend extends Tagged("Prepend") {
|
|
36
|
+
self;
|
|
37
|
+
value;
|
|
38
|
+
constructor(self, value) {
|
|
39
|
+
super();
|
|
40
|
+
this.self = self;
|
|
41
|
+
this.value = value;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
MerkleListSource.Prepend = Prepend;
|
|
45
|
+
class Append extends Tagged("Append") {
|
|
46
|
+
self;
|
|
47
|
+
value;
|
|
48
|
+
constructor(self, value) {
|
|
49
|
+
super();
|
|
50
|
+
this.self = self;
|
|
51
|
+
this.value = value;
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
MerkleListSource.Append = Append;
|
|
55
|
+
class Shift extends Tagged("Shift") {
|
|
56
|
+
self;
|
|
57
|
+
constructor(self) {
|
|
58
|
+
super();
|
|
59
|
+
this.self = self;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
MerkleListSource.Shift = Shift;
|
|
63
|
+
class Pop extends Tagged("Pop") {
|
|
64
|
+
self;
|
|
65
|
+
constructor(self) {
|
|
66
|
+
super();
|
|
67
|
+
this.self = self;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
MerkleListSource.Pop = Pop;
|
|
71
|
+
class At extends Tagged("At") {
|
|
72
|
+
list;
|
|
73
|
+
index;
|
|
74
|
+
constructor(list, index) {
|
|
75
|
+
super();
|
|
76
|
+
this.list = list;
|
|
77
|
+
this.index = index;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
MerkleListSource.At = At;
|
|
81
|
+
})(MerkleListSource || (MerkleListSource = {}));
|
|
82
|
+
//# sourceMappingURL=MerkleList.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MerkleList.js","sourceRoot":"","sources":["../../src/core/MerkleList.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import { MerkleMap as MerkleMapNative } from "../lib/mod.js";
|
|
2
|
+
import { Effect } from "./Effect.js";
|
|
3
|
+
import { u256 } from "./Int.js";
|
|
4
|
+
import { None } from "./None.js";
|
|
5
|
+
import { Factory, Type } from "./Type.js";
|
|
6
|
+
export interface MerkleMap<K extends Type = Type, V extends Type = Type> extends InstanceType<ReturnType<typeof MerkleMap<K, V>>> {
|
|
7
|
+
}
|
|
8
|
+
export declare function MerkleMap<K extends Type, V extends Type>(keyType: Factory<K>, valueType: Factory<V>): {
|
|
9
|
+
new (source: import("./Type.js").TypeSource | MerkleMapSource): {
|
|
10
|
+
keyType: Factory<K>;
|
|
11
|
+
valueType: Factory<V>;
|
|
12
|
+
size: u256;
|
|
13
|
+
set(key: K, value: V): MerkleMap<K, V>;
|
|
14
|
+
delete(key: K): MerkleMap<K, V>;
|
|
15
|
+
get(key: K): V | None;
|
|
16
|
+
reduceKeys<R extends Type<any, any, any, any, any>, Y extends Type<any, any, any, any, any>>(_initial: R, _f: (acc: R, cur: K) => Generator<Y, R, unknown>): Effect<R, Y>;
|
|
17
|
+
reduceValues<R_1 extends Type<any, any, any, any, any>, Y_1 extends Type<any, any, any, any, any>>(_initial: R_1, _f: (acc: R_1, cur: V) => Generator<Y_1, R_1, unknown>): Effect<R_1, Y_1>;
|
|
18
|
+
reduceEntries<R_2 extends Type<any, any, any, any, any>, Y_2 extends Type<any, any, any, any, any>>(_initial: R_2, _f: (acc: R_2, cur: [K, V]) => Generator<Y_2, R_2, unknown>): Effect<R_2, Y_2>;
|
|
19
|
+
""?: [MerkleMapNative<Type.Native<K>, Type.Native<V>>, undefined, never] | undefined;
|
|
20
|
+
readonly typeName: "MerkleMap";
|
|
21
|
+
readonly source: import("./Type.js").TypeSource | MerkleMapSource;
|
|
22
|
+
ctor: new (source: import("./Type.js").TypeSource | MerkleMapSource) => any;
|
|
23
|
+
into<O extends never>(into: Factory<O>): O;
|
|
24
|
+
equals<T extends Type<any, any, any, any, any>>(this: T, inQuestion: T): import("./Bool.js").bool;
|
|
25
|
+
is<T_1 extends Type<any, any, any, any, any>, M extends Factory<T_1>>(this: T_1, match: M): import("./Bool.js").bool;
|
|
26
|
+
case<T_2 extends Type<any, any, any, any, any>, M_1 extends Factory<T_2>, R_3 extends import("./Call.js").Result, U extends R_3 | Exclude<T_2, InstanceType<M_1>>>(this: T_2, match: M_1, f: import("./Call.js").ValueCall<R_3, [InstanceType<M_1>]>): U;
|
|
27
|
+
case<T_3 extends Type<any, any, any, any, any>, M_2 extends Factory<T_3>, Y_3 extends import("./Call.js").Yield, R_4 extends import("./Call.js").Result, U_1 extends R_4 | Exclude<T_3, InstanceType<M_2>>>(this: T_3, match: M_2, f: import("./Call.js").GenCall<Y_3, R_4, [InstanceType<M_2>]>): Effect<Y_3, U_1>;
|
|
28
|
+
"?"<T_4 extends Type<any, any, any, any, any>, M_3 extends Factory<T_4>>(this: T_4, match: M_3): Effect<InstanceType<M_3>, Exclude<T_4, InstanceType<M_3>>>;
|
|
29
|
+
"?"<T_5 extends Type<any, any, any, any, any>, M_4 extends Factory<T_5>, W extends Type<any, any, any, any, any>>(this: T_5, match: M_4, with_: W): Effect<W, Exclude<T_5, InstanceType<M_4>>>;
|
|
30
|
+
};
|
|
31
|
+
make<Name extends string>(name: Name): {
|
|
32
|
+
new <Source, Native = never, From = Native, Into extends Type<any, any, any, any, any> = never>(source: Source | import("./Type.js").TypeSource): {
|
|
33
|
+
""?: [Native, From, Into] | undefined;
|
|
34
|
+
readonly typeName: Name;
|
|
35
|
+
readonly source: Source | import("./Type.js").TypeSource;
|
|
36
|
+
ctor: new (source: Source | import("./Type.js").TypeSource) => any;
|
|
37
|
+
into<O_1 extends Into>(into: Factory<O_1>): O_1;
|
|
38
|
+
equals<T_6 extends Type<any, any, any, any, any>>(this: T_6, inQuestion: T_6): import("./Bool.js").bool;
|
|
39
|
+
is<T_7 extends Type<any, any, any, any, any>, M_5 extends Factory<T_7>>(this: T_7, match: M_5): import("./Bool.js").bool;
|
|
40
|
+
case<T_8 extends Type<any, any, any, any, any>, M_6 extends Factory<T_8>, R_5 extends import("./Call.js").Result, U_2 extends R_5 | Exclude<T_8, InstanceType<M_6>>>(this: T_8, match: M_6, f: import("./Call.js").ValueCall<R_5, [InstanceType<M_6>]>): U_2;
|
|
41
|
+
case<T_9 extends Type<any, any, any, any, any>, M_7 extends Factory<T_9>, Y_4 extends import("./Call.js").Yield, R_6 extends import("./Call.js").Result, U_3 extends R_6 | Exclude<T_9, InstanceType<M_7>>>(this: T_9, match: M_7, f: import("./Call.js").GenCall<Y_4, R_6, [InstanceType<M_7>]>): Effect<Y_4, U_3>;
|
|
42
|
+
"?"<T_10 extends Type<any, any, any, any, any>, M_8 extends Factory<T_10>>(this: T_10, match: M_8): Effect<InstanceType<M_8>, Exclude<T_10, InstanceType<M_8>>>;
|
|
43
|
+
"?"<T_11 extends Type<any, any, any, any, any>, M_9 extends Factory<T_11>, W_1 extends Type<any, any, any, any, any>>(this: T_11, match: M_9, with_: W_1): Effect<W_1, Exclude<T_11, InstanceType<M_9>>>;
|
|
44
|
+
};
|
|
45
|
+
make<Name extends string>(name: Name): any;
|
|
46
|
+
"new"<T_12 extends Type<any, any, any, any, any>>(this: Factory<T_12>, ...[value]: import("../util/Rest.js").Rest<Type.From<T_12>>): T_12;
|
|
47
|
+
state<T_13 extends Type<any, any, any, any, any>>(this: Factory<T_13>): import("./State.js").State<T_13>;
|
|
48
|
+
};
|
|
49
|
+
"new"<T_12 extends Type<any, any, any, any, any>>(this: Factory<T_12>, ...[value]: import("../util/Rest.js").Rest<Type.From<T_12>>): T_12;
|
|
50
|
+
state<T_13 extends Type<any, any, any, any, any>>(this: Factory<T_13>): import("./State.js").State<T_13>;
|
|
51
|
+
};
|
|
52
|
+
export type MerkleMapSource = MerkleMapSource.Get | MerkleMapSource.Set | MerkleMapSource.Delete;
|
|
53
|
+
export declare namespace MerkleMapSource {
|
|
54
|
+
const Get_base: {
|
|
55
|
+
new (): {
|
|
56
|
+
readonly tag: "Get";
|
|
57
|
+
};
|
|
58
|
+
};
|
|
59
|
+
export class Get extends Get_base {
|
|
60
|
+
readonly map: MerkleMap;
|
|
61
|
+
readonly key: Type;
|
|
62
|
+
constructor(map: MerkleMap, key: Type);
|
|
63
|
+
}
|
|
64
|
+
const Delete_base: {
|
|
65
|
+
new (): {
|
|
66
|
+
readonly tag: "Delete";
|
|
67
|
+
};
|
|
68
|
+
};
|
|
69
|
+
export class Delete extends Delete_base {
|
|
70
|
+
readonly map: MerkleMap;
|
|
71
|
+
readonly key: Type;
|
|
72
|
+
constructor(map: MerkleMap, key: Type);
|
|
73
|
+
}
|
|
74
|
+
const Set_base: {
|
|
75
|
+
new (): {
|
|
76
|
+
readonly tag: "Set";
|
|
77
|
+
};
|
|
78
|
+
};
|
|
79
|
+
export class Set extends Set_base {
|
|
80
|
+
readonly map: MerkleMap;
|
|
81
|
+
readonly key: Type;
|
|
82
|
+
readonly value: Type;
|
|
83
|
+
constructor(map: MerkleMap, key: Type, value: Type);
|
|
84
|
+
}
|
|
85
|
+
export {};
|
|
86
|
+
}
|
|
87
|
+
//# sourceMappingURL=MerkleMap.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MerkleMap.d.ts","sourceRoot":"","sources":["../../src/core/MerkleMap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,IAAI,eAAe,EAAE,MAAM,eAAe,CAAA;AAG5D,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,IAAI,EAAc,MAAM,UAAU,CAAA;AAC3C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAGzC,MAAM,WAAW,SAAS,CAAC,CAAC,SAAS,IAAI,GAAG,IAAI,EAAE,CAAC,SAAS,IAAI,GAAG,IAAI,CACrE,SAAQ,YAAY,CAAC,UAAU,CAAC,OAAO,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;CACxD;AAEF,wBAAgB,SAAS,CAAC,CAAC,SAAS,IAAI,EAAE,CAAC,SAAS,IAAI,EACtD,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,EACnB,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;;;;cAUb,IAAI;iBAED,CAAC,SAAS,CAAC,GAAG,UAAU,CAAC,EAAE,CAAC,CAAC;oBAI1B,CAAC,GAAG,UAAU,CAAC,EAAE,CAAC,CAAC;iBAItB,CAAC,GAAG,CAAC,GAAG,IAAI;oIAQD,CAAC;8IAOD,CAAC;+IAOD,CAAC,CAAC,EAAE,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAK7B;AAED,MAAM,MAAM,eAAe,GAAG,eAAe,CAAC,GAAG,GAAG,eAAe,CAAC,GAAG,GAAG,eAAe,CAAC,MAAM,CAAA;AAChG,yBAAiB,eAAe,CAAC;;;;;;IAC/B,MAAM,OAAO,GAAI,SAAQ,QAAa;QACxB,QAAQ,CAAC,GAAG,EAAE,SAAS;QAAE,QAAQ,CAAC,GAAG,EAAE,IAAI;oBAAlC,GAAG,EAAE,SAAS,EAAW,GAAG,EAAE,IAAI;KAGxD;;;;;;IACD,MAAM,OAAO,MAAO,SAAQ,WAAgB;QAC9B,QAAQ,CAAC,GAAG,EAAE,SAAS;QAAE,QAAQ,CAAC,GAAG,EAAE,IAAI;oBAAlC,GAAG,EAAE,SAAS,EAAW,GAAG,EAAE,IAAI;KAGxD;;;;;;IACD,MAAM,OAAO,GAAI,SAAQ,QAAa;QAElC,QAAQ,CAAC,GAAG,EAAE,SAAS;QACvB,QAAQ,CAAC,GAAG,EAAE,IAAI;QAClB,QAAQ,CAAC,KAAK,EAAE,IAAI;oBAFX,GAAG,EAAE,SAAS,EACd,GAAG,EAAE,IAAI,EACT,KAAK,EAAE,IAAI;KAIvB;;CACF"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { Tagged } from "../util/Tagged.js";
|
|
2
|
+
import { unimplemented } from "../util/unimplemented.js";
|
|
3
|
+
import { u256, U256Source } from "./Int.js";
|
|
4
|
+
import { None } from "./None.js";
|
|
5
|
+
import { Type } from "./Type.js";
|
|
6
|
+
import { Union } from "./Union.js";
|
|
7
|
+
export function MerkleMap(keyType, valueType) {
|
|
8
|
+
return class extends Type.make("MerkleMap") {
|
|
9
|
+
keyType = keyType;
|
|
10
|
+
valueType = valueType;
|
|
11
|
+
size = new u256(new U256Source.MerkleMapSize(this));
|
|
12
|
+
set(key, value) {
|
|
13
|
+
return new this.ctor(new MerkleMapSource.Set(this, key, value));
|
|
14
|
+
}
|
|
15
|
+
delete(key) {
|
|
16
|
+
return new this.ctor(new MerkleMapSource.Delete(this, key));
|
|
17
|
+
}
|
|
18
|
+
get(key) {
|
|
19
|
+
return new (Union(None, this.valueType))(new MerkleMapSource.Get(this, key));
|
|
20
|
+
}
|
|
21
|
+
reduceKeys(_initial, _f) {
|
|
22
|
+
unimplemented();
|
|
23
|
+
}
|
|
24
|
+
reduceValues(_initial, _f) {
|
|
25
|
+
unimplemented();
|
|
26
|
+
}
|
|
27
|
+
reduceEntries(_initial, _f) {
|
|
28
|
+
unimplemented();
|
|
29
|
+
}
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
export var MerkleMapSource;
|
|
33
|
+
(function (MerkleMapSource) {
|
|
34
|
+
class Get extends Tagged("Get") {
|
|
35
|
+
map;
|
|
36
|
+
key;
|
|
37
|
+
constructor(map, key) {
|
|
38
|
+
super();
|
|
39
|
+
this.map = map;
|
|
40
|
+
this.key = key;
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
MerkleMapSource.Get = Get;
|
|
44
|
+
class Delete extends Tagged("Delete") {
|
|
45
|
+
map;
|
|
46
|
+
key;
|
|
47
|
+
constructor(map, key) {
|
|
48
|
+
super();
|
|
49
|
+
this.map = map;
|
|
50
|
+
this.key = key;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
MerkleMapSource.Delete = Delete;
|
|
54
|
+
class Set extends Tagged("Set") {
|
|
55
|
+
map;
|
|
56
|
+
key;
|
|
57
|
+
value;
|
|
58
|
+
constructor(map, key, value) {
|
|
59
|
+
super();
|
|
60
|
+
this.map = map;
|
|
61
|
+
this.key = key;
|
|
62
|
+
this.value = value;
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
MerkleMapSource.Set = Set;
|
|
66
|
+
})(MerkleMapSource || (MerkleMapSource = {}));
|
|
67
|
+
//# sourceMappingURL=MerkleMap.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MerkleMap.js","sourceRoot":"","sources":["../../src/core/MerkleMap.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAA;AAExD,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AAC3C,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAW,IAAI,EAAE,MAAM,WAAW,CAAA;AACzC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAMlC,MAAM,UAAU,SAAS,CACvB,OAAmB,EACnB,SAAqB;IAErB,OAAO,KAAM,SAAQ,IAAI,CAAC,IAAI,CAAC,WAAW,CAIzC;QACC,OAAO,GAAG,OAAO,CAAA;QACjB,SAAS,GAAG,SAAS,CAAA;QAErB,IAAI,GAAS,IAAI,IAAI,CAAC,IAAI,UAAU,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAA;QAEzD,GAAG,CAAC,GAAM,EAAE,KAAQ;YAClB,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,eAAe,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC,CAAA;QACjE,CAAC;QAED,MAAM,CAAC,GAAM;YACX,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,eAAe,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAA;QAC7D,CAAC;QAED,GAAG,CAAC,GAAM;YACR,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CACtC,IAAI,eAAe,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,CACd,CAAA;QACxB,CAAC;QAED,UAAU,CACR,QAAW,EACX,EAAuC;YAEvC,aAAa,EAAE,CAAA;QACjB,CAAC;QAED,YAAY,CACV,QAAW,EACX,EAAuC;YAEvC,aAAa,EAAE,CAAA;QACjB,CAAC;QAED,aAAa,CACX,QAAW,EACX,EAA4C;YAE5C,aAAa,EAAE,CAAA;QACjB,CAAC;KACF,CAAA;AACH,CAAC;AAGD,MAAM,KAAW,eAAe,CAoB/B;AApBD,WAAiB,eAAe;IAC9B,MAAa,GAAI,SAAQ,MAAM,CAAC,KAAK,CAAC;QACf;QAAyB;QAA9C,YAAqB,GAAc,EAAW,GAAS;YACrD,KAAK,EAAE,CAAA;YADY,QAAG,GAAH,GAAG,CAAW;YAAW,QAAG,GAAH,GAAG,CAAM;QAEvD,CAAC;KACF;IAJY,mBAAG,MAIf,CAAA;IACD,MAAa,MAAO,SAAQ,MAAM,CAAC,QAAQ,CAAC;QACrB;QAAyB;QAA9C,YAAqB,GAAc,EAAW,GAAS;YACrD,KAAK,EAAE,CAAA;YADY,QAAG,GAAH,GAAG,CAAW;YAAW,QAAG,GAAH,GAAG,CAAM;QAEvD,CAAC;KACF;IAJY,sBAAM,SAIlB,CAAA;IACD,MAAa,GAAI,SAAQ,MAAM,CAAC,KAAK,CAAC;QAEzB;QACA;QACA;QAHX,YACW,GAAc,EACd,GAAS,EACT,KAAW;YAEpB,KAAK,EAAE,CAAA;YAJE,QAAG,GAAH,GAAG,CAAW;YACd,QAAG,GAAH,GAAG,CAAM;YACT,UAAK,GAAL,KAAK,CAAM;QAGtB,CAAC;KACF;IARY,mBAAG,MAQf,CAAA;AACH,CAAC,EApBgB,eAAe,KAAf,eAAe,QAoB/B"}
|