semantic-typescript 0.5.3 → 0.6.0

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 (42) hide show
  1. package/dist/asynchronous/collector.d.ts +231 -0
  2. package/dist/asynchronous/collector.js +800 -0
  3. package/dist/asynchronous/semantic.d.ts +257 -0
  4. package/dist/asynchronous/semantic.js +1853 -0
  5. package/dist/factory.d.ts +71 -37
  6. package/dist/factory.js +443 -262
  7. package/dist/guard.d.ts +24 -14
  8. package/dist/guard.js +73 -19
  9. package/dist/hook.d.ts +6 -6
  10. package/dist/hook.js +2 -2
  11. package/dist/index.d.ts +2 -2
  12. package/dist/index.js +2 -2
  13. package/dist/optional.d.ts +2 -2
  14. package/dist/symbol.d.ts +19 -10
  15. package/dist/symbol.js +19 -10
  16. package/dist/synchronous/collector.d.ts +232 -0
  17. package/dist/{collector.js → synchronous/collector.js} +160 -151
  18. package/dist/{semantic.d.ts → synchronous/semantic.d.ts} +111 -120
  19. package/dist/{semantic.js → synchronous/semantic.js} +299 -337
  20. package/dist/utility.d.ts +7 -1
  21. package/dist/utility.js +1 -0
  22. package/package.json +1 -1
  23. package/readme.cn.md +158 -697
  24. package/readme.de.md +163 -432
  25. package/readme.es.md +163 -433
  26. package/readme.fr.md +162 -444
  27. package/readme.jp.md +162 -442
  28. package/readme.kr.md +161 -430
  29. package/readme.md +157 -1009
  30. package/readme.ru.md +161 -426
  31. package/readme.tw.md +161 -436
  32. package/dist/collector.d.ts +0 -236
  33. package/dist/main.d.ts +0 -1
  34. package/dist/main.js +0 -4
  35. package/dist/map.d.ts +0 -76
  36. package/dist/map.js +0 -245
  37. package/dist/node.d.ts +0 -182
  38. package/dist/node.js +0 -918
  39. package/dist/set.d.ts +0 -19
  40. package/dist/set.js +0 -65
  41. package/dist/tree.d.ts +0 -82
  42. package/dist/tree.js +0 -257
@@ -0,0 +1,231 @@
1
+ import type { BiFunctional, BiPredicate, Functional, Predicate, Supplier, TriFunctional, TriPredicate, Consumer, BiConsumer, Comparator, AsynchronousGenerator } from "../utility";
2
+ export declare class AsynchronousCollector<E, A, R> {
3
+ protected identity: Supplier<A>;
4
+ protected interrupt: Predicate<E> | BiPredicate<E, bigint> | TriPredicate<E, bigint, A>;
5
+ protected accumulator: BiFunctional<A, E, A> | TriFunctional<A, E, bigint, A>;
6
+ protected finisher: Functional<A, R>;
7
+ protected readonly AsynchronousCollector: symbol;
8
+ protected constructor(identity: Supplier<A>, interrupt: Predicate<E>, accumulator: BiFunctional<A, E, A>, finisher: Functional<A, R>);
9
+ protected constructor(identity: Supplier<A>, interrupt: BiPredicate<E, bigint>, accumulator: BiFunctional<A, E, A>, finisher: Functional<A, R>);
10
+ protected constructor(identity: Supplier<A>, interrupt: Predicate<E>, accumulator: TriFunctional<A, E, bigint, A>, finisher: Functional<A, R>);
11
+ protected constructor(identity: Supplier<A>, interrupt: BiPredicate<E, bigint>, accumulator: TriFunctional<A, E, bigint, A>, finisher: Functional<A, R>);
12
+ collect(generator: AsynchronousGenerator<E>): Promise<R>;
13
+ collect(iterable: AsyncIterable<E>): Promise<R>;
14
+ collect(start: number, end: number): Promise<R>;
15
+ collect(start: bigint, end: bigint): Promise<R>;
16
+ static full<E, A, R>(identity: Supplier<A>, accumulator: BiFunctional<A, E, A>, finisher: Functional<A, R>): AsynchronousCollector<E, A, R>;
17
+ static full<E, A, R>(identity: Supplier<A>, accumulator: TriFunctional<A, E, bigint, A>, finisher: Functional<A, R>): AsynchronousCollector<E, A, R>;
18
+ static shortable<E, A, R>(identity: Supplier<A>, interrupt: Predicate<E>, accumulator: BiFunctional<A, E, A>, finisher: Functional<A, R>): AsynchronousCollector<E, A, R>;
19
+ static shortable<E, A, R>(identity: Supplier<A>, interrupt: Predicate<E>, accumulator: TriFunctional<A, E, bigint, A>, finisher: Functional<A, R>): AsynchronousCollector<E, A, R>;
20
+ static shortable<E, A, R>(identity: Supplier<A>, interrupt: BiPredicate<E, bigint>, accumulator: BiFunctional<A, E, A>, finisher: Functional<A, R>): AsynchronousCollector<E, A, R>;
21
+ static shortable<E, A, R>(identity: Supplier<A>, interrupt: BiPredicate<E, bigint>, accumulator: TriFunctional<A, E, bigint, A>, finisher: Functional<A, R>): AsynchronousCollector<E, A, R>;
22
+ static shortable<E, A, R>(identity: Supplier<A>, interrupt: TriPredicate<E, bigint, A>, accumulator: BiFunctional<A, E, A>, finisher: Functional<A, R>): AsynchronousCollector<E, A, R>;
23
+ static shortable<E, A, R>(identity: Supplier<A>, interrupt: TriPredicate<E, bigint, A>, accumulator: TriFunctional<A, E, bigint, A>, finisher: Functional<A, R>): AsynchronousCollector<E, A, R>;
24
+ }
25
+ interface UseSynchronousAnyMatch {
26
+ <E>(predicate: Predicate<E>): AsynchronousCollector<E, boolean, boolean>;
27
+ <E>(predicate: BiPredicate<E, bigint>): AsynchronousCollector<E, boolean, boolean>;
28
+ }
29
+ export declare let useAsynchronousAnyMatch: UseSynchronousAnyMatch;
30
+ interface UseSynchronousAllMatch {
31
+ <E>(predicate: Predicate<E>): AsynchronousCollector<E, boolean, boolean>;
32
+ <E>(predicate: BiPredicate<E, bigint>): AsynchronousCollector<E, boolean, boolean>;
33
+ }
34
+ export declare let useAsynchronousAllMatch: UseSynchronousAllMatch;
35
+ interface UseSynchronousCollect {
36
+ <E, A, R>(identity: Supplier<A>, accumulator: BiFunctional<A, E, A>, finisher: Functional<A, R>): AsynchronousCollector<E, A, R>;
37
+ <E, A, R>(identity: Supplier<A>, accumulator: TriFunctional<A, E, bigint, A>, finisher: Functional<A, R>): AsynchronousCollector<E, A, R>;
38
+ <E, A, R>(identity: Supplier<A>, accumulator: BiFunctional<A, E, A> | TriFunctional<A, E, bigint, A>, finisher: Functional<A, R>): AsynchronousCollector<E, A, R>;
39
+ <E, A, R>(identity: Supplier<A>, interrupt: Predicate<E>, accumulator: BiFunctional<A, E, A>, finisher: Functional<A, R>): AsynchronousCollector<E, A, R>;
40
+ <E, A, R>(identity: Supplier<A>, interrupt: Predicate<E>, accumulator: TriFunctional<A, E, bigint, A>, finisher: Functional<A, R>): AsynchronousCollector<E, A, R>;
41
+ <E, A, R>(identity: Supplier<A>, interrupt: BiPredicate<E, bigint>, accumulator: BiFunctional<A, E, A>, finisher: Functional<A, R>): AsynchronousCollector<E, A, R>;
42
+ <E, A, R>(identity: Supplier<A>, interrupt: BiPredicate<E, bigint>, accumulator: TriFunctional<A, E, bigint, A>, finisher: Functional<A, R>): AsynchronousCollector<E, A, R>;
43
+ <E, A, R>(identity: Supplier<A>, interrupt: TriPredicate<E, bigint, A>, accumulator: BiFunctional<A, E, A>, finisher: Functional<A, R>): AsynchronousCollector<E, A, R>;
44
+ <E, A, R>(identity: Supplier<A>, interrupt: TriPredicate<E, bigint, A>, accumulator: TriFunctional<A, E, bigint, A>, finisher: Functional<A, R>): AsynchronousCollector<E, A, R>;
45
+ }
46
+ export declare let useAsynchronousCollect: UseSynchronousCollect;
47
+ export declare let useAsynchronousCount: <E = unknown>() => AsynchronousCollector<E, bigint, bigint>;
48
+ interface UseSynchronousError {
49
+ <E = unknown>(): AsynchronousCollector<E, string, string>;
50
+ <E = unknown>(accumulator: BiFunctional<string, E, string>): AsynchronousCollector<E, string, string>;
51
+ <E = unknown>(accumulator: TriFunctional<string, E, bigint, string>): AsynchronousCollector<E, string, string>;
52
+ <E = unknown>(prefix: string, accumulator: BiFunctional<string, E, string>, suffix: string): AsynchronousCollector<E, string, string>;
53
+ <E = unknown>(prefix: string, accumulator: TriFunctional<string, E, bigint, string>, suffix: string): AsynchronousCollector<E, string, string>;
54
+ }
55
+ export declare let useAsynchronousError: UseSynchronousError;
56
+ interface UseSynchronousFindAt {
57
+ <E>(index: number): AsynchronousCollector<E, Array<E>, Promise<E>>;
58
+ <E>(index: bigint): AsynchronousCollector<E, Array<E>, Promise<E>>;
59
+ }
60
+ export declare let useAsynchronousFindAt: UseSynchronousFindAt;
61
+ export declare let useAsynchronousFindFirst: <E>() => AsynchronousCollector<E, Array<E>, Promise<E>>;
62
+ export declare let useAsynchronousFindAny: <E>() => AsynchronousCollector<E, Array<E>, Promise<E>>;
63
+ export declare let useAsynchronousFindLast: <E>() => AsynchronousCollector<E, Array<E>, Promise<E>>;
64
+ interface UseSynchronousFindMaximum {
65
+ <E>(): AsynchronousCollector<E, Promise<E>, Promise<E>>;
66
+ <E>(comparator: Comparator<E>): AsynchronousCollector<E, Promise<E>, Promise<E>>;
67
+ }
68
+ export declare let useAsynchronousFindMaximum: UseSynchronousFindMaximum;
69
+ interface UseSynchronousFindMinimum {
70
+ <E>(): AsynchronousCollector<E, Promise<E>, Promise<E>>;
71
+ <E>(comparator: Comparator<E>): AsynchronousCollector<E, Promise<E>, Promise<E>>;
72
+ }
73
+ export declare let useAsynchronousFindMinimum: UseSynchronousFindMinimum;
74
+ interface UseSynchronousForEach {
75
+ <E>(action: Consumer<E>): AsynchronousCollector<E, bigint, bigint>;
76
+ <E>(action: BiConsumer<E, bigint>): AsynchronousCollector<E, bigint, bigint>;
77
+ }
78
+ export declare let useAsynchronousForEach: UseSynchronousForEach;
79
+ interface UseSynchronousNonMatch {
80
+ <E>(predicate: Predicate<E>): AsynchronousCollector<E, boolean, boolean>;
81
+ <E>(predicate: BiPredicate<E, bigint>): AsynchronousCollector<E, boolean, boolean>;
82
+ }
83
+ export declare let useAsynchronousNoneMatch: UseSynchronousNonMatch;
84
+ interface UseSynchronousGroup {
85
+ <E, K>(classifier: Functional<E, K>): AsynchronousCollector<E, Map<K, E[]>, Map<K, E[]>>;
86
+ <E, K>(classifier: BiFunctional<E, bigint, K>): AsynchronousCollector<E, Map<K, E[]>, Map<K, E[]>>;
87
+ }
88
+ export declare let useAsynchronousGroup: UseSynchronousGroup;
89
+ interface UseSynchronousGroupBy {
90
+ <E, K>(keyExtractor: Functional<E, K>): AsynchronousCollector<E, Map<K, E[]>, Map<K, E[]>>;
91
+ <E, K, V>(keyExtractor: Functional<E, K>, valueExtractor: Functional<E, V>): AsynchronousCollector<E, Map<K, V[]>, Map<K, V[]>>;
92
+ <E, K, V>(keyExtractor: BiFunctional<E, bigint, K>, valueExtractor: BiFunctional<E, bigint, V>): AsynchronousCollector<E, Map<K, V[]>, Map<K, V[]>>;
93
+ }
94
+ export declare let useAsynchronousGroupBy: UseSynchronousGroupBy;
95
+ interface UseSynchronousJoin {
96
+ <E = unknown>(): AsynchronousCollector<E, string, string>;
97
+ <E = unknown>(delimiter: string): AsynchronousCollector<E, string, string>;
98
+ <E = unknown>(prefix: string, delimiter: string, suffix: string): AsynchronousCollector<E, string, string>;
99
+ <E = unknown>(prefiex: string, accumulator: BiFunctional<string, E, string>, suffix: string): AsynchronousCollector<E, string, string>;
100
+ <E = unknown>(prefiex: string, accumulator: TriFunctional<string, E, bigint, string>, suffix: string): AsynchronousCollector<E, string, string>;
101
+ }
102
+ export declare let useAsynchronousJoin: UseSynchronousJoin;
103
+ interface UseSynchronousLog {
104
+ <E = unknown>(): AsynchronousCollector<E, string, string>;
105
+ <E = unknown>(accumulator: BiFunctional<string, E, string>): AsynchronousCollector<E, string, string>;
106
+ <E = unknown>(accumulator: TriFunctional<string, E, bigint, string>): AsynchronousCollector<E, string, string>;
107
+ <E = unknown>(prefix: string, accumulator: BiFunctional<string, E, string>, suffix: string): AsynchronousCollector<E, string, string>;
108
+ <E = unknown>(prefix: string, accumulator: TriFunctional<string, E, bigint, string>, suffix: string): AsynchronousCollector<E, string, string>;
109
+ }
110
+ export declare let useAsynchronousLog: UseSynchronousLog;
111
+ export declare let useAsynchronousPartition: <E>(count: bigint) => AsynchronousCollector<E, Array<Array<E>>, Array<Array<E>>>;
112
+ interface UseSynchronousPartitionBy {
113
+ <E>(classifier: Functional<E, bigint>): AsynchronousCollector<E, Array<E[]>, Array<E[]>>;
114
+ <E>(classifier: BiFunctional<E, bigint, bigint>): AsynchronousCollector<E, Array<E[]>, Array<E[]>>;
115
+ }
116
+ export declare let useAsynchronousPartitionBy: UseSynchronousPartitionBy;
117
+ interface UseSynchronousReduce {
118
+ <E>(accumulator: BiFunctional<E, E, E>): AsynchronousCollector<E, Promise<E>, Promise<E>>;
119
+ <E>(accumulator: TriFunctional<E, E, bigint, E>): AsynchronousCollector<E, Promise<E>, Promise<E>>;
120
+ <E>(identity: E, accumulator: BiFunctional<E, E, E>): AsynchronousCollector<E, E, E>;
121
+ <E>(identity: E, accumulator: TriFunctional<E, E, bigint, E>): AsynchronousCollector<E, E, E>;
122
+ <E, R>(identity: R, accumulator: BiFunctional<R, E, R>, finisher: Functional<R, R>): AsynchronousCollector<E, R, R>;
123
+ <E, R>(identity: R, accumulator: TriFunctional<R, E, bigint, R>, finisher: Functional<R, R>): AsynchronousCollector<E, R, R>;
124
+ }
125
+ export declare let useAsynchronousReduce: UseSynchronousReduce;
126
+ export declare let useAsynchronousToArray: <E>() => AsynchronousCollector<E, E[], E[]>;
127
+ interface UseSynchronousToMap {
128
+ <E, K>(keyExtractor: Functional<E, K>): AsynchronousCollector<E, Map<K, E>, Map<K, E>>;
129
+ <E, K, V>(keyExtractor: Functional<E, K>, valueExtractor: Functional<E, V>): AsynchronousCollector<E, Map<K, V>, Map<K, V>>;
130
+ <E, K, V>(keyExtractor: BiFunctional<E, bigint, K>, valueExtractor: BiFunctional<E, bigint, V>): AsynchronousCollector<E, Map<K, V>, Map<K, V>>;
131
+ }
132
+ export declare let useAsynchronousToMap: UseSynchronousToMap;
133
+ export declare let useAsynchronousToSet: <E>() => AsynchronousCollector<E, Set<E>, Set<E>>;
134
+ interface UseSynchronousWrite {
135
+ <E, S = string>(stream: WritableStream<S>): AsynchronousCollector<E, Promise<WritableStream<S>>, Promise<WritableStream<S>>>;
136
+ <E, S = string>(stream: WritableStream<S>, accumulator: BiFunctional<WritableStream<S>, E, WritableStream<S>>): AsynchronousCollector<E, Promise<WritableStream<S>>, Promise<WritableStream<S>>>;
137
+ <E, S = string>(stream: WritableStream<S>, accumulator: TriFunctional<WritableStream<S>, E, bigint, WritableStream<S>>): AsynchronousCollector<E, Promise<WritableStream<S>>, Promise<WritableStream<S>>>;
138
+ }
139
+ export declare let useAsynchronousWrite: UseSynchronousWrite;
140
+ interface UseSynchronousNumericSummate {
141
+ <E>(): AsynchronousCollector<E, number, number>;
142
+ <E>(mapper: Functional<E, number>): AsynchronousCollector<number, number, number>;
143
+ }
144
+ export declare let useAsynchronousNumericSummate: UseSynchronousNumericSummate;
145
+ interface UseSynchronousBigIntSummate {
146
+ <E>(): AsynchronousCollector<E, bigint, bigint>;
147
+ <E>(mapper: Functional<E, bigint>): AsynchronousCollector<bigint, bigint, bigint>;
148
+ }
149
+ export declare let useAsynchronousBigIntSummate: UseSynchronousBigIntSummate;
150
+ interface UseSynchronousNumericAverage {
151
+ <E>(): AsynchronousCollector<E, NumericAverageAccumulator, number>;
152
+ <E>(mapper: Functional<E, number>): AsynchronousCollector<number, NumericAverageAccumulator, number>;
153
+ }
154
+ interface NumericAverageAccumulator {
155
+ summate: number;
156
+ count: number;
157
+ }
158
+ export declare let useAsynchronousNumericAverage: UseSynchronousNumericAverage;
159
+ interface UseSynchronousBigIntAverage {
160
+ <E>(): AsynchronousCollector<E, BigIntAverageAccumulator, bigint>;
161
+ <E>(mapper: Functional<E, bigint>): AsynchronousCollector<E, BigIntAverageAccumulator, bigint>;
162
+ }
163
+ interface BigIntAverageAccumulator {
164
+ summate: bigint;
165
+ count: bigint;
166
+ }
167
+ export declare let useAsynchronousBigIntAverage: UseSynchronousBigIntAverage;
168
+ export declare let useAsynchronousFrequency: <E>() => AsynchronousCollector<E, Map<E, bigint>, Map<E, bigint>>;
169
+ interface UseSynchronousNumericMode {
170
+ <E>(): AsynchronousCollector<E, Map<number, bigint>, number>;
171
+ <E>(mapper: Functional<E, number>): AsynchronousCollector<E, Map<number, bigint>, number>;
172
+ }
173
+ export declare let useAsynchronousNumericMode: UseSynchronousNumericMode;
174
+ interface UseSynchronousBigIntMode {
175
+ <E>(): AsynchronousCollector<E, Map<bigint, bigint>, bigint>;
176
+ <E>(mapper: Functional<E, bigint>): AsynchronousCollector<E, Map<bigint, bigint>, bigint>;
177
+ }
178
+ export declare let useAsynchronousBigIntMode: UseSynchronousBigIntMode;
179
+ interface UseSynchronousNumericVariance {
180
+ <E>(): AsynchronousCollector<E, VarianceAccumulator, number>;
181
+ <E>(mapper: Functional<E, number>): AsynchronousCollector<E, VarianceAccumulator, number>;
182
+ }
183
+ interface VarianceAccumulator {
184
+ summate: number;
185
+ summateOfSquares: number;
186
+ count: number;
187
+ }
188
+ export declare let useAsynchronousNumericVariance: UseSynchronousNumericVariance;
189
+ interface UseSynchronousBigIntVariance {
190
+ <E>(): AsynchronousCollector<E, BigIntVarianceAccumulator, bigint>;
191
+ <E>(mapper: Functional<E, bigint>): AsynchronousCollector<E, BigIntVarianceAccumulator, bigint>;
192
+ }
193
+ interface BigIntVarianceAccumulator {
194
+ summate: bigint;
195
+ summateOfSquares: bigint;
196
+ count: bigint;
197
+ }
198
+ export declare let useAsynchronousBigIntVariance: UseSynchronousBigIntVariance;
199
+ interface UseSynchronousNumericStandardDeviation {
200
+ <E>(): AsynchronousCollector<E, StandardDeviationAccumulator, number>;
201
+ <E>(mapper: Functional<E, number>): AsynchronousCollector<E, StandardDeviationAccumulator, number>;
202
+ }
203
+ interface StandardDeviationAccumulator {
204
+ summate: number;
205
+ summateOfSquares: number;
206
+ count: number;
207
+ }
208
+ export declare let useAsynchronousNumericStandardDeviation: UseSynchronousNumericStandardDeviation;
209
+ interface UseSynchronousBigIntStandardDeviation {
210
+ <E>(): AsynchronousCollector<E, BigIntStandardDeviationAccumulator, bigint>;
211
+ <E>(mapper: Functional<E, bigint>): AsynchronousCollector<E, BigIntStandardDeviationAccumulator, bigint>;
212
+ }
213
+ interface BigIntStandardDeviationAccumulator {
214
+ summate: bigint;
215
+ summateOfSquares: bigint;
216
+ count: bigint;
217
+ }
218
+ export declare let useAsynchronousBigIntStandardDeviation: UseSynchronousBigIntStandardDeviation;
219
+ interface UseSynchronousNumericMedian {
220
+ <E>(): AsynchronousCollector<E, number[], number>;
221
+ <E>(mapper: Functional<E, number>): AsynchronousCollector<E, number[], number>;
222
+ }
223
+ export declare let useAsynchronousNumericMedian: UseSynchronousNumericMedian;
224
+ interface UseSynchronousBigIntMedian {
225
+ <E>(): AsynchronousCollector<E, bigint[], bigint>;
226
+ <E>(mapper: Functional<E, bigint>): AsynchronousCollector<E, bigint[], bigint>;
227
+ }
228
+ export declare let useAsynchronousBigIntMedian: UseSynchronousBigIntMedian;
229
+ export declare let useAsynchronousToGeneratorFunction: <E>() => AsynchronousCollector<E, Array<E>, globalThis.Generator<E, void, undefined>>;
230
+ export declare let useAsynchronousToAsyncGeneratorFunction: <E>() => AsynchronousCollector<E, Array<E>, globalThis.AsyncGenerator<E, void, undefined>>;
231
+ export {};