@skipruntime/core 0.0.11 → 0.0.13

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.
@@ -25,7 +25,6 @@ export declare abstract class Frozen implements Managed {
25
25
  constructor();
26
26
  protected abstract freeze(): void;
27
27
  }
28
- export declare function sk_freeze<T extends object>(x: T): T & Managed;
29
28
  export declare function isSkManaged(x: any): x is Managed;
30
29
  export declare abstract class SkManaged extends Frozen {
31
30
  protected freeze(): void;
@@ -149,7 +148,6 @@ export interface JsonConverter {
149
148
  }): Pointer<T>;
150
149
  exportJSON(v: Nullable<Json>): Pointer<Internal.CJSON>;
151
150
  importOptJSON(value: Nullable<Pointer<Internal.CJSON>>, copy?: boolean): Exportable;
152
- is(v: Pointer<Internal.CJSON>, type: Type): boolean;
153
151
  clone<T>(v: T): T;
154
152
  }
155
153
  export declare class JsonConverterImpl implements JsonConverter {
@@ -158,7 +156,6 @@ export declare class JsonConverterImpl implements JsonConverter {
158
156
  importJSON(value: Pointer<Internal.CJSON>, copy?: boolean): Exportable;
159
157
  exportJSON(v: Exportable): Pointer<Internal.CJSON>;
160
158
  clone<T>(v: T): T;
161
- is(v: Pointer<Internal.CJSON>, type: Type): boolean;
162
159
  importOptJSON(value: Nullable<Pointer<Internal.CJSON>>, copy?: boolean): Exportable;
163
160
  }
164
161
  export declare function buildJsonConverter(binding: Binding): JsonConverter;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../skiplang-json/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../skiplang-json/index.ts"],"names":[],"mappings":"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"}
@@ -7,7 +7,7 @@ export class Frozen {
7
7
  this.freeze();
8
8
  }
9
9
  }
10
- export function sk_freeze(x) {
10
+ function tagSkManaged(x) {
11
11
  return Object.defineProperty(x, sk_managed, {
12
12
  enumerable: false,
13
13
  writable: false,
@@ -19,7 +19,7 @@ export function isSkManaged(x) {
19
19
  }
20
20
  export class SkManaged extends Frozen {
21
21
  freeze() {
22
- sk_freeze(this);
22
+ tagSkManaged(this);
23
23
  }
24
24
  }
25
25
  export function checkOrCloneParam(value) {
@@ -76,13 +76,13 @@ export function deepFreeze(value) {
76
76
  for (const elt of value) {
77
77
  deepFreeze(elt);
78
78
  }
79
- return Object.freeze(sk_freeze(value));
79
+ return Object.freeze(tagSkManaged(value));
80
80
  }
81
81
  else {
82
82
  for (const val of Object.values(value)) {
83
83
  deepFreeze(val);
84
84
  }
85
- return Object.freeze(sk_freeze(value));
85
+ return Object.freeze(tagSkManaged(value));
86
86
  }
87
87
  }
88
88
  else {
@@ -178,7 +178,7 @@ function interpretPointer(binding, pointer) {
178
178
  const aPtr = binding.SKIP_SKJSON_asArray(pointer);
179
179
  const length = binding.SKIP_SKJSON_arraySize(aPtr);
180
180
  const array = Array.from({ length }, (_, idx) => interpretPointer(binding, binding.SKIP_SKJSON_at(aPtr, idx)));
181
- return sk_freeze(array);
181
+ return tagSkManaged(array);
182
182
  }
183
183
  case Type.Object: {
184
184
  const oPtr = binding.SKIP_SKJSON_asObject(pointer);
@@ -306,9 +306,6 @@ export class JsonConverterImpl {
306
306
  clone(v) {
307
307
  return clone(v);
308
308
  }
309
- is(v, type) {
310
- return this.binding.SKIP_SKJSON_typeOf(v) == type;
311
- }
312
309
  importOptJSON(value, copy) {
313
310
  if (value === null) {
314
311
  return null;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../skiplang-json/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../skiplang-json/index.ts"],"names":[],"mappings":"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"}
package/dist/src/api.d.ts CHANGED
@@ -26,9 +26,10 @@ export interface Mapper<K1 extends Json, V1 extends Json, K2 extends Json, V2 ex
26
26
  *
27
27
  * @param key - A key found in the input collection.
28
28
  * @param values - The values associated with `key` in the input collection.
29
+ * @param context - The Skip runtime context, which can be used to create/access new collections during the map
29
30
  * @returns Key-value pairs to associate in the output collection.
30
31
  */
31
- mapEntry(key: K1, values: Values<V1>): Iterable<[K2, V2]>;
32
+ mapEntry(key: K1, values: Values<V1>, context: Context): Iterable<[K2, V2]>;
32
33
  }
33
34
  /**
34
35
  * Reactive function that can be used to accumulate each key's values.
@@ -67,14 +68,18 @@ export interface Reducer<V extends Json, A extends Json> {
67
68
  remove(accum: A, value: V & DepSafe): Nullable<A>;
68
69
  }
69
70
  /**
70
- * An iterable collection of dependency-safe values.
71
+ * A non-empty iterable sequence of dependency-safe values.
71
72
  */
72
73
  export interface Values<T> extends Iterable<T & DepSafe> {
73
74
  /**
74
75
  * Return the first value, if there is exactly one.
75
- * @throws {@link SkipNonUniqueValueError} if this iterable contains either zero or multiple values.
76
+ * @param _default
77
+ * @param _default.ifMany - Default value to use instead of throwing if there are multiple values.
78
+ * @throws {@link SkipNonUniqueValueError} if this iterable contains multiple values.
76
79
  */
77
- getUnique(): T & DepSafe;
80
+ getUnique(_default?: {
81
+ ifMany?: T;
82
+ }): T & DepSafe;
78
83
  /**
79
84
  * Return all the values.
80
85
  */
@@ -102,10 +107,16 @@ export interface LazyCollection<K extends Json, V extends Json> extends Managed
102
107
  * For collections that do not use the generality of associating multiple values to a key, `getUnique` saves some boilerplate over `getArray`.
103
108
  *
104
109
  * @param key - The key to query.
110
+ * @param _default
111
+ * @param _default.ifNone - Default value for the case where **zero** values are associated to the given key
112
+ * @param _default.ifMany - Default value for the case where **multiple** values are associated to the given key
105
113
  * @returns The value associated to `key`.
106
- * @throws {@link SkipNonUniqueValueError} if `key` is associated to either zero or multiple values.
114
+ * @throws {@link SkipNonUniqueValueError} if `key` is associated to either zero or multiple values and no suitable default is provided.
107
115
  */
108
- getUnique(key: K): V & DepSafe;
116
+ getUnique(key: K, _default?: {
117
+ ifNone?: V;
118
+ ifMany?: V;
119
+ }): V & DepSafe;
109
120
  }
110
121
  /**
111
122
  * A reactive collection eagerly kept up-to-date.
@@ -129,10 +140,16 @@ export interface EagerCollection<K extends Json, V extends Json> extends Managed
129
140
  * For collections that do not use the generality of associating multiple values to a key, `getUnique` saves some boilerplate over `getArray`.
130
141
  *
131
142
  * @param key - The key to query.
143
+ * @param _default
144
+ * @param _default.ifNone - Default value for the case where **zero** values are associated to the given key
145
+ * @param _default.ifMany - Default value for the case where **multiple** values are associated to the given key
132
146
  * @returns The value associated to `key`.
133
- * @throws {@link SkipNonUniqueValueError} if `key` is associated to either zero or multiple values.
147
+ * @throws {@link SkipNonUniqueValueError} if `key` is associated to either zero or multiple values and no suitable default is provided.
134
148
  */
135
- getUnique(key: K): V & DepSafe;
149
+ getUnique(key: K, _default?: {
150
+ ifNone?: V;
151
+ ifMany?: V;
152
+ }): V & DepSafe;
136
153
  /**
137
154
  * Create a new eager collection by mapping a function over the values in this one.
138
155
  *
@@ -340,12 +357,12 @@ export type CollectionUpdate<K extends Json, V extends Json> = {
340
357
  *
341
358
  * `Context.useExternalResource` accepts the name of an external service, which must be associated to an instance of this `ExternalService` interface by `SkipService.externalServices`.
342
359
  *
343
- * There are two main implementations of `ExternalService`, depending on whether the external data source is a reactive Skip service or not.
360
+ * Custom implementations of the `ExternalService` interface can be defined as needed, and the Skip framework provides several out of the box: `SkipExternalService` and `PolledExternalService` in the `@skipruntime/helpers` package, and integrations with other systems such as PostgreSQL and Kafka in `@skip-adapter/*` packages.
344
361
  *
345
362
  * If it _is_ a Skip service, then `SkipExternalService` can be used, specifying an entrypoint.
346
363
  * The external Skip service will update its resources reactively and those changes will propagate through this service.
347
364
  *
348
- * If it is _not_ a Skip service, then `GenericExternalService` and `Polled` can be used to specify the external source and desired polling frequency.
365
+ * If it is _not_ a Skip service, then `PolledExternalService` can be used to specify the external source and desired polling frequency.
349
366
  */
350
367
  export interface ExternalService {
351
368
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/api.ts"],"names":[],"mappings":"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"}
@@ -18,10 +18,7 @@ export interface Checker {
18
18
  check(request: string): void;
19
19
  }
20
20
  export interface FromBinding {
21
- SkipRuntime_NonEmptyIterator__first(values: Pointer<Internal.NonEmptyIterator>): Pointer<Internal.CJSON>;
22
- SkipRuntime_NonEmptyIterator__uniqueValue(values: Pointer<Internal.NonEmptyIterator>): Nullable<Pointer<Internal.CJSON>>;
23
21
  SkipRuntime_NonEmptyIterator__next(values: Pointer<Internal.NonEmptyIterator>): Nullable<Pointer<Internal.CJSON>>;
24
- SkipRuntime_NonEmptyIterator__clone(values: Pointer<Internal.NonEmptyIterator>): Pointer<Internal.NonEmptyIterator>;
25
22
  SkipRuntime_createMapper<K1 extends Json, V1 extends Json, K2 extends Json, V2 extends Json>(ref: Handle<Mapper<K1, V1, K2, V2>>): Pointer<Internal.Mapper>;
26
23
  SkipRuntime_createLazyCompute<K extends Json, V extends Json>(ref: Handle<LazyCompute<K, V>>): Pointer<Internal.LazyCompute>;
27
24
  SkipRuntime_createExternalService(ref: Handle<ExternalService>): Pointer<Internal.ExternalService>;
@@ -36,7 +33,6 @@ export interface FromBinding {
36
33
  SkipRuntime_ExternalServiceMap__create(): Pointer<Internal.ExternalServiceMap>;
37
34
  SkipRuntime_ExternalServiceMap__add(map: Pointer<Internal.ExternalServiceMap>, key: string, collection: Pointer<Internal.ExternalService>): void;
38
35
  SkipRuntime_Collection__getArray(collection: string, key: Pointer<Internal.CJSON>): Pointer<Internal.CJArray<Internal.CJSON>>;
39
- SkipRuntime_Collection__getUnique(collection: string, key: Pointer<Internal.CJSON>): Nullable<Pointer<Internal.CJSON>>;
40
36
  SkipRuntime_Collection__map(collection: string, mapper: Pointer<Internal.Mapper>): string;
41
37
  SkipRuntime_Collection__mapReduce(collection: string, mapper: Pointer<Internal.Mapper>, reducer: Pointer<Internal.Reducer>): string;
42
38
  SkipRuntime_Collection__nativeMapReduce(collection: string, mapper: Pointer<Internal.Mapper>, reducer: string): string;
@@ -47,7 +43,6 @@ export interface FromBinding {
47
43
  SkipRuntime_Collection__merge(collection: string, others: Pointer<Internal.CJArray<Internal.CJString>>): string;
48
44
  SkipRuntime_Collection__size(collection: string): bigint;
49
45
  SkipRuntime_LazyCollection__getArray(collection: string, key: Pointer<Internal.CJSON>): Pointer<Internal.CJArray<Internal.CJSON>>;
50
- SkipRuntime_LazyCollection__getUnique(collection: string, key: Pointer<Internal.CJSON>): Pointer<Internal.CJSON>;
51
46
  SkipRuntime_createNotifier<K extends Json, V extends Json>(ref: Handle<Notifier<K, V>>): Pointer<Internal.Notifier>;
52
47
  SkipRuntime_Runtime__createResource(identifier: string, resource: string, jsonParams: Pointer<Internal.CJObject>): Handle<Error>;
53
48
  SkipRuntime_Runtime__getAll(resource: string, jsonParams: Pointer<Internal.CJObject>, request: Pointer<Internal.Request> | null): Pointer<Internal.CJObject | Internal.CJFloat>;
@@ -1 +1 @@
1
- {"version":3,"file":"binding.d.ts","sourceRoot":"","sources":["../../src/binding.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"binding.d.ts","sourceRoot":"","sources":["../../src/binding.ts"],"names":[],"mappings":"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"}
@@ -5,11 +5,9 @@
5
5
  */
6
6
  import type { Opaque } from "../skiplang-std/index.js";
7
7
  import type { Pointer, Nullable, Json, JsonConverter } from "../skiplang-json/index.js";
8
- import { sk_freeze, isSkManaged } from "../skiplang-json/index.js";
9
8
  import type * as Internal from "./internal.js";
10
9
  import { type CollectionUpdate, type Entry, type ExternalService, type LazyCompute, type Mapper, type Reducer, type Resource, type SkipService, type Watermark } from "./api.js";
11
10
  import { ResourceBuilder, type Notifier, type Checker, type Handle, type FromBinding } from "./binding.js";
12
- export { sk_freeze, isSkManaged };
13
11
  export * from "./api.js";
14
12
  export * from "./errors.js";
15
13
  export type JSONMapper = Mapper<Json, Json, Json, Json>;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
package/dist/src/index.js CHANGED
@@ -3,14 +3,22 @@
3
3
  *
4
4
  * @packageDocumentation
5
5
  */
6
- import { sk_freeze, isSkManaged, SkManaged, checkOrCloneParam, } from "../skiplang-json/index.js";
6
+ import { deepFreeze, SkManaged, checkOrCloneParam, } from "../skiplang-json/index.js";
7
7
  import { sknative } from "../skiplang-std/index.js";
8
8
  import {} from "./api.js";
9
9
  import { SkipClassNameError, SkipNonUniqueValueError, SkipResourceInstanceInUseError, SkipUnknownCollectionError, } from "./errors.js";
10
10
  import { ResourceBuilder, } from "./binding.js";
11
- export { sk_freeze, isSkManaged };
12
11
  export * from "./api.js";
13
12
  export * from "./errors.js";
13
+ function instantiateUserObject(what, ctor, params) {
14
+ const checkedParams = params.map(checkOrCloneParam);
15
+ const obj = new ctor(...checkedParams);
16
+ Object.freeze(obj);
17
+ if (!obj.constructor.name) {
18
+ throw new SkipClassNameError(`${what} classes must be defined at top-level.`);
19
+ }
20
+ return obj;
21
+ }
14
22
  class Handles {
15
23
  constructor() {
16
24
  this.nextID = 1;
@@ -72,11 +80,20 @@ class LazyCollectionImpl extends SkManaged {
72
80
  getArray(key) {
73
81
  return this.refs.skjson.importJSON(this.refs.binding.SkipRuntime_LazyCollection__getArray(this.lazyCollection, this.refs.skjson.exportJSON(key)));
74
82
  }
75
- getUnique(key) {
76
- const v = this.refs.skjson.importOptJSON(this.refs.binding.SkipRuntime_LazyCollection__getUnique(this.lazyCollection, this.refs.skjson.exportJSON(key)));
77
- if (v == null)
78
- throw new SkipNonUniqueValueError();
79
- return v;
83
+ getUnique(key, _default) {
84
+ const values = this.getArray(key);
85
+ switch (values.length) {
86
+ case 1:
87
+ return values[0];
88
+ case 0:
89
+ if (_default?.ifNone !== undefined)
90
+ return deepFreeze(_default.ifNone);
91
+ throw new SkipNonUniqueValueError();
92
+ default:
93
+ if (_default?.ifMany !== undefined)
94
+ return deepFreeze(_default.ifMany);
95
+ throw new SkipNonUniqueValueError();
96
+ }
80
97
  }
81
98
  }
82
99
  class EagerCollectionImpl extends SkManaged {
@@ -92,11 +109,20 @@ class EagerCollectionImpl extends SkManaged {
92
109
  getArray(key) {
93
110
  return this.refs.skjson.importJSON(this.refs.binding.SkipRuntime_Collection__getArray(this.collection, this.refs.skjson.exportJSON(key)));
94
111
  }
95
- getUnique(key) {
96
- const v = this.refs.skjson.importOptJSON(this.refs.binding.SkipRuntime_Collection__getUnique(this.collection, this.refs.skjson.exportJSON(key)));
97
- if (v == null)
98
- throw new SkipNonUniqueValueError();
99
- return v;
112
+ getUnique(key, _default) {
113
+ const values = this.getArray(key);
114
+ switch (values.length) {
115
+ case 1:
116
+ return values[0];
117
+ case 0:
118
+ if (_default?.ifNone !== undefined)
119
+ return deepFreeze(_default.ifNone);
120
+ throw new SkipNonUniqueValueError();
121
+ default:
122
+ if (_default?.ifMany !== undefined)
123
+ return deepFreeze(_default.ifMany);
124
+ throw new SkipNonUniqueValueError();
125
+ }
100
126
  }
101
127
  slice(start, end) {
102
128
  return this.slices([start, end]);
@@ -110,30 +136,15 @@ class EagerCollectionImpl extends SkManaged {
110
136
  return this.derive(skcollection);
111
137
  }
112
138
  map(mapper, ...params) {
113
- const mapperParams = params.map(checkOrCloneParam);
114
- const mapperObj = new mapper(...mapperParams);
115
- Object.freeze(mapperObj);
116
- if (!mapperObj.constructor.name) {
117
- throw new SkipClassNameError("Mapper classes must be defined at top-level.");
118
- }
139
+ const mapperObj = instantiateUserObject("Mapper", mapper, params);
119
140
  const skmapper = this.refs.binding.SkipRuntime_createMapper(this.refs.handles.register(mapperObj));
120
141
  const mapped = this.refs.binding.SkipRuntime_Collection__map(this.collection, skmapper);
121
142
  return this.derive(mapped);
122
143
  }
123
144
  mapReduce(mapper, ...mapperParams) {
124
145
  return (reducer, ...reducerParams) => {
125
- const mParams = mapperParams.map(checkOrCloneParam);
126
- const rParams = reducerParams.map(checkOrCloneParam);
127
- const mapperObj = new mapper(...mParams);
128
- const reducerObj = new reducer(...rParams);
129
- Object.freeze(mapperObj);
130
- Object.freeze(reducerObj);
131
- if (!mapperObj.constructor.name) {
132
- throw new SkipClassNameError("Mapper classes must be defined at top-level.");
133
- }
134
- if (!reducerObj.constructor.name) {
135
- throw new SkipClassNameError("Reducer classes must be defined at top-level.");
136
- }
146
+ const mapperObj = instantiateUserObject("Mapper", mapper, mapperParams);
147
+ const reducerObj = instantiateUserObject("Reducer", reducer, reducerParams);
137
148
  const skmapper = this.refs.binding.SkipRuntime_createMapper(this.refs.handles.register(mapperObj));
138
149
  if (sknative in reducerObj && typeof reducerObj[sknative] == "string") {
139
150
  return this.derive(this.refs.binding.SkipRuntime_Collection__nativeMapReduce(this.collection, skmapper, reducerObj[sknative]));
@@ -145,12 +156,7 @@ class EagerCollectionImpl extends SkManaged {
145
156
  };
146
157
  }
147
158
  reduce(reducer, ...params) {
148
- const reducerParams = params.map(checkOrCloneParam);
149
- const reducerObj = new reducer(...reducerParams);
150
- Object.freeze(reducerObj);
151
- if (!reducerObj.constructor.name) {
152
- throw new SkipClassNameError("Reducer classes must be defined at top-level.");
153
- }
159
+ const reducerObj = instantiateUserObject("Reducer", reducer, params);
154
160
  if (sknative in reducerObj && typeof reducerObj[sknative] == "string") {
155
161
  return this.derive(this.refs.binding.SkipRuntime_Collection__nativeReduce(this.collection, reducerObj[sknative]));
156
162
  }
@@ -160,13 +166,16 @@ class EagerCollectionImpl extends SkManaged {
160
166
  }
161
167
  }
162
168
  merge(...others) {
163
- const otherNames = others.map((other) => other.collection);
169
+ const otherNames = others.map((other) => EagerCollectionImpl.getName(other));
164
170
  const mapped = this.refs.binding.SkipRuntime_Collection__merge(this.collection, this.refs.skjson.exportJSON(otherNames));
165
171
  return this.derive(mapped);
166
172
  }
167
173
  derive(collection) {
168
174
  return new EagerCollectionImpl(collection, this.refs);
169
175
  }
176
+ static getName(coll) {
177
+ return coll.collection;
178
+ }
170
179
  }
171
180
  class CollectionWriter {
172
181
  constructor(collection, refs) {
@@ -211,12 +220,7 @@ class ContextImpl extends SkManaged {
211
220
  Object.freeze(this);
212
221
  }
213
222
  createLazyCollection(compute, ...params) {
214
- const mapperParams = params.map(checkOrCloneParam);
215
- const computeObj = new compute(...mapperParams);
216
- Object.freeze(computeObj);
217
- if (!computeObj.constructor.name) {
218
- throw new SkipClassNameError("LazyCompute classes must be defined at top-level.");
219
- }
223
+ const computeObj = instantiateUserObject("LazyCompute", compute, params);
220
224
  const skcompute = this.refs.binding.SkipRuntime_createLazyCompute(this.refs.handles.register(computeObj));
221
225
  const lazyCollection = this.refs.binding.SkipRuntime_Context__createLazyCollection(skcompute);
222
226
  return new LazyCollectionImpl(lazyCollection, this.refs);
@@ -430,30 +434,60 @@ class ValuesImpl {
430
434
  this.skjson = skjson;
431
435
  this.binding = binding;
432
436
  this.pointer = pointer;
433
- this.toArray = () => {
434
- return Array.from(this);
435
- };
436
- this.skjson = skjson;
437
- this.binding = binding;
437
+ /* Lazy Iterable/Sequence: values are generated from
438
+ the Iterator pointer and stored in materialized.
439
+ Once finished the pointer is nullified. */
440
+ this.materialized = [];
438
441
  this.pointer = pointer;
439
442
  }
440
443
  next() {
441
- return this.skjson.importOptJSON(this.binding.SkipRuntime_NonEmptyIterator__next(this.pointer));
444
+ if (this.pointer === null) {
445
+ return null;
446
+ }
447
+ const v = this.skjson.importOptJSON(this.binding.SkipRuntime_NonEmptyIterator__next(this.pointer));
448
+ if (v === null) {
449
+ this.pointer = null;
450
+ }
451
+ else {
452
+ this.materialized.push(v);
453
+ }
454
+ return v;
442
455
  }
443
- getUnique() {
444
- const value = this.skjson.importOptJSON(this.binding.SkipRuntime_NonEmptyIterator__uniqueValue(this.pointer));
445
- if (value == null)
456
+ getUnique(_default) {
457
+ if (this.materialized.length < 1) {
458
+ this.next();
459
+ }
460
+ const first = this.materialized[0];
461
+ if (first === undefined /* i.e. this.materialized.length == 0 */ ||
462
+ this.materialized.length >= 2 ||
463
+ this.next() !== null) {
464
+ if (_default?.ifMany !== undefined)
465
+ return deepFreeze(_default.ifMany);
446
466
  throw new SkipNonUniqueValueError();
447
- return value;
467
+ }
468
+ return first;
469
+ }
470
+ toArray() {
471
+ while (this.next() !== null)
472
+ ;
473
+ return this.materialized;
448
474
  }
449
475
  [Symbol.iterator]() {
450
- const cloned_iter = new ValuesImpl(this.skjson, this.binding, this.binding.SkipRuntime_NonEmptyIterator__clone(this.pointer));
451
- return {
452
- next() {
453
- const value = cloned_iter.next();
454
- return { value, done: value == null };
455
- },
476
+ let i = 0;
477
+ const next = () => {
478
+ // Invariant: this.materialized.length >= i
479
+ let value = this.materialized[i];
480
+ if (value === undefined /* i.e. this.materialized.length == i */) {
481
+ const next = this.next();
482
+ if (next === null) {
483
+ return { value: null, done: true };
484
+ }
485
+ value = next;
486
+ }
487
+ i++;
488
+ return { value };
456
489
  };
490
+ return { next };
457
491
  }
458
492
  }
459
493
  export class ToBinding {
@@ -487,8 +521,16 @@ export class ToBinding {
487
521
  SkipRuntime_Mapper__mapEntry(skmapper, key, values) {
488
522
  const skjson = this.getJsonConverter();
489
523
  const mapper = this.handles.get(skmapper);
490
- const result = mapper.mapEntry(skjson.importJSON(key), new ValuesImpl(skjson, this.binding, values));
491
- return skjson.exportJSON(Array.from(result));
524
+ const context = new ContextImpl(this.refs());
525
+ try {
526
+ const result = mapper.mapEntry(skjson.importJSON(key), new ValuesImpl(skjson, this.binding, values), context);
527
+ return skjson.exportJSON(Array.from(result));
528
+ }
529
+ catch (e) {
530
+ console.error("Uncaught error during Skip runtime reactive update: ", e);
531
+ // Exception in async context will be dropped -- this `throw` is just to appease typechecker
532
+ throw e;
533
+ }
492
534
  }
493
535
  SkipRuntime_deleteMapper(mapper) {
494
536
  this.handles.deleteHandle(mapper);
@@ -514,7 +556,7 @@ export class ToBinding {
514
556
  collections[key] = new EagerCollectionImpl(name, refs);
515
557
  }
516
558
  const collection = resource.instantiate(collections, new ContextImpl(refs));
517
- return collection.collection;
559
+ return EagerCollectionImpl.getName(collection);
518
560
  }
519
561
  SkipRuntime_deleteResource(resource) {
520
562
  this.handles.deleteHandle(resource);
@@ -542,7 +584,7 @@ export class ToBinding {
542
584
  const result = service.createGraph(collections, new ContextImpl(refs));
543
585
  const collectionsNames = {};
544
586
  for (const [name, collection] of Object.entries(result)) {
545
- collectionsNames[name] = collection.collection;
587
+ collectionsNames[name] = EagerCollectionImpl.getName(collection);
546
588
  }
547
589
  return skjson.exportJSON(collectionsNames);
548
590
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@skipruntime/core",
3
- "version": "0.0.11",
3
+ "version": "0.0.13",
4
4
  "type": "module",
5
5
  "exports": {
6
6
  ".": "./dist/src/index.js",
package/src/api.ts CHANGED
@@ -39,9 +39,10 @@ export interface Mapper<
39
39
  *
40
40
  * @param key - A key found in the input collection.
41
41
  * @param values - The values associated with `key` in the input collection.
42
+ * @param context - The Skip runtime context, which can be used to create/access new collections during the map
42
43
  * @returns Key-value pairs to associate in the output collection.
43
44
  */
44
- mapEntry(key: K1, values: Values<V1>): Iterable<[K2, V2]>;
45
+ mapEntry(key: K1, values: Values<V1>, context: Context): Iterable<[K2, V2]>;
45
46
  }
46
47
 
47
48
  /**
@@ -84,14 +85,16 @@ export interface Reducer<V extends Json, A extends Json> {
84
85
  }
85
86
 
86
87
  /**
87
- * An iterable collection of dependency-safe values.
88
+ * A non-empty iterable sequence of dependency-safe values.
88
89
  */
89
90
  export interface Values<T> extends Iterable<T & DepSafe> {
90
91
  /**
91
92
  * Return the first value, if there is exactly one.
92
- * @throws {@link SkipNonUniqueValueError} if this iterable contains either zero or multiple values.
93
+ * @param _default
94
+ * @param _default.ifMany - Default value to use instead of throwing if there are multiple values.
95
+ * @throws {@link SkipNonUniqueValueError} if this iterable contains multiple values.
93
96
  */
94
- getUnique(): T & DepSafe;
97
+ getUnique(_default?: { ifMany?: T }): T & DepSafe;
95
98
 
96
99
  /**
97
100
  * Return all the values.
@@ -123,10 +126,13 @@ export interface LazyCollection<K extends Json, V extends Json>
123
126
  * For collections that do not use the generality of associating multiple values to a key, `getUnique` saves some boilerplate over `getArray`.
124
127
  *
125
128
  * @param key - The key to query.
129
+ * @param _default
130
+ * @param _default.ifNone - Default value for the case where **zero** values are associated to the given key
131
+ * @param _default.ifMany - Default value for the case where **multiple** values are associated to the given key
126
132
  * @returns The value associated to `key`.
127
- * @throws {@link SkipNonUniqueValueError} if `key` is associated to either zero or multiple values.
133
+ * @throws {@link SkipNonUniqueValueError} if `key` is associated to either zero or multiple values and no suitable default is provided.
128
134
  */
129
- getUnique(key: K): V & DepSafe;
135
+ getUnique(key: K, _default?: { ifNone?: V; ifMany?: V }): V & DepSafe;
130
136
  }
131
137
 
132
138
  /**
@@ -153,10 +159,13 @@ export interface EagerCollection<K extends Json, V extends Json>
153
159
  * For collections that do not use the generality of associating multiple values to a key, `getUnique` saves some boilerplate over `getArray`.
154
160
  *
155
161
  * @param key - The key to query.
162
+ * @param _default
163
+ * @param _default.ifNone - Default value for the case where **zero** values are associated to the given key
164
+ * @param _default.ifMany - Default value for the case where **multiple** values are associated to the given key
156
165
  * @returns The value associated to `key`.
157
- * @throws {@link SkipNonUniqueValueError} if `key` is associated to either zero or multiple values.
166
+ * @throws {@link SkipNonUniqueValueError} if `key` is associated to either zero or multiple values and no suitable default is provided.
158
167
  */
159
- getUnique(key: K): V & DepSafe;
168
+ getUnique(key: K, _default?: { ifNone?: V; ifMany?: V }): V & DepSafe;
160
169
 
161
170
  /**
162
171
  * Create a new eager collection by mapping a function over the values in this one.
@@ -401,12 +410,12 @@ export type CollectionUpdate<K extends Json, V extends Json> = {
401
410
  *
402
411
  * `Context.useExternalResource` accepts the name of an external service, which must be associated to an instance of this `ExternalService` interface by `SkipService.externalServices`.
403
412
  *
404
- * There are two main implementations of `ExternalService`, depending on whether the external data source is a reactive Skip service or not.
413
+ * Custom implementations of the `ExternalService` interface can be defined as needed, and the Skip framework provides several out of the box: `SkipExternalService` and `PolledExternalService` in the `@skipruntime/helpers` package, and integrations with other systems such as PostgreSQL and Kafka in `@skip-adapter/*` packages.
405
414
  *
406
415
  * If it _is_ a Skip service, then `SkipExternalService` can be used, specifying an entrypoint.
407
416
  * The external Skip service will update its resources reactively and those changes will propagate through this service.
408
417
  *
409
- * If it is _not_ a Skip service, then `GenericExternalService` and `Polled` can be used to specify the external source and desired polling frequency.
418
+ * If it is _not_ a Skip service, then `PolledExternalService` can be used to specify the external source and desired polling frequency.
410
419
  */
411
420
  export interface ExternalService {
412
421
  /**
package/src/binding.ts CHANGED
@@ -34,18 +34,9 @@ export interface Checker {
34
34
 
35
35
  export interface FromBinding {
36
36
  // NonEmptyIterator
37
- SkipRuntime_NonEmptyIterator__first(
38
- values: Pointer<Internal.NonEmptyIterator>,
39
- ): Pointer<Internal.CJSON>;
40
- SkipRuntime_NonEmptyIterator__uniqueValue(
41
- values: Pointer<Internal.NonEmptyIterator>,
42
- ): Nullable<Pointer<Internal.CJSON>>;
43
37
  SkipRuntime_NonEmptyIterator__next(
44
38
  values: Pointer<Internal.NonEmptyIterator>,
45
39
  ): Nullable<Pointer<Internal.CJSON>>;
46
- SkipRuntime_NonEmptyIterator__clone(
47
- values: Pointer<Internal.NonEmptyIterator>,
48
- ): Pointer<Internal.NonEmptyIterator>;
49
40
 
50
41
  // Mapper
51
42
  SkipRuntime_createMapper<
@@ -127,11 +118,6 @@ export interface FromBinding {
127
118
  key: Pointer<Internal.CJSON>,
128
119
  ): Pointer<Internal.CJArray<Internal.CJSON>>;
129
120
 
130
- SkipRuntime_Collection__getUnique(
131
- collection: string,
132
- key: Pointer<Internal.CJSON>,
133
- ): Nullable<Pointer<Internal.CJSON>>;
134
-
135
121
  SkipRuntime_Collection__map(
136
122
  collection: string,
137
123
  mapper: Pointer<Internal.Mapper>,
@@ -178,11 +164,6 @@ export interface FromBinding {
178
164
  key: Pointer<Internal.CJSON>,
179
165
  ): Pointer<Internal.CJArray<Internal.CJSON>>;
180
166
 
181
- SkipRuntime_LazyCollection__getUnique(
182
- collection: string,
183
- key: Pointer<Internal.CJSON>,
184
- ): Pointer<Internal.CJSON>;
185
-
186
167
  // Notifier
187
168
 
188
169
  SkipRuntime_createNotifier<K extends Json, V extends Json>(
package/src/index.ts CHANGED
@@ -13,8 +13,7 @@ import type {
13
13
  JsonObject,
14
14
  } from "../skiplang-json/index.js";
15
15
  import {
16
- sk_freeze,
17
- isSkManaged,
16
+ deepFreeze,
18
17
  SkManaged,
19
18
  checkOrCloneParam,
20
19
  } from "../skiplang-json/index.js";
@@ -54,13 +53,28 @@ import {
54
53
  type FromBinding,
55
54
  } from "./binding.js";
56
55
 
57
- export { sk_freeze, isSkManaged };
58
56
  export * from "./api.js";
59
57
  export * from "./errors.js";
60
58
 
61
59
  export type JSONMapper = Mapper<Json, Json, Json, Json>;
62
60
  export type JSONLazyCompute = LazyCompute<Json, Json>;
63
61
 
62
+ function instantiateUserObject<Params extends DepSafe[], Result extends object>(
63
+ what: string,
64
+ ctor: new (...params: Params) => Result,
65
+ params: Params,
66
+ ): Result {
67
+ const checkedParams = params.map(checkOrCloneParam) as Params;
68
+ const obj = new ctor(...checkedParams);
69
+ Object.freeze(obj);
70
+ if (!obj.constructor.name) {
71
+ throw new SkipClassNameError(
72
+ `${what} classes must be defined at top-level.`,
73
+ );
74
+ }
75
+ return obj;
76
+ }
77
+
64
78
  class Handles {
65
79
  private nextID: number = 1;
66
80
  private readonly objects: any[] = [];
@@ -138,15 +152,18 @@ class LazyCollectionImpl<K extends Json, V extends Json>
138
152
  ) as (V & DepSafe)[];
139
153
  }
140
154
 
141
- getUnique(key: K): V & DepSafe {
142
- const v = this.refs.skjson.importOptJSON(
143
- this.refs.binding.SkipRuntime_LazyCollection__getUnique(
144
- this.lazyCollection,
145
- this.refs.skjson.exportJSON(key),
146
- ),
147
- ) as Nullable<V & DepSafe>;
148
- if (v == null) throw new SkipNonUniqueValueError();
149
- return v;
155
+ getUnique(key: K, _default?: { ifNone?: V; ifMany?: V }): V & DepSafe {
156
+ const values = this.getArray(key);
157
+ switch (values.length) {
158
+ case 1:
159
+ return values[0]!;
160
+ case 0:
161
+ if (_default?.ifNone !== undefined) return deepFreeze(_default.ifNone);
162
+ throw new SkipNonUniqueValueError();
163
+ default:
164
+ if (_default?.ifMany !== undefined) return deepFreeze(_default.ifMany);
165
+ throw new SkipNonUniqueValueError();
166
+ }
150
167
  }
151
168
  }
152
169
 
@@ -171,15 +188,18 @@ class EagerCollectionImpl<K extends Json, V extends Json>
171
188
  ) as (V & DepSafe)[];
172
189
  }
173
190
 
174
- getUnique(key: K): V & DepSafe {
175
- const v = this.refs.skjson.importOptJSON(
176
- this.refs.binding.SkipRuntime_Collection__getUnique(
177
- this.collection,
178
- this.refs.skjson.exportJSON(key),
179
- ),
180
- ) as Nullable<V & DepSafe>;
181
- if (v == null) throw new SkipNonUniqueValueError();
182
- return v;
191
+ getUnique(key: K, _default?: { ifNone?: V; ifMany?: V }): V & DepSafe {
192
+ const values = this.getArray(key);
193
+ switch (values.length) {
194
+ case 1:
195
+ return values[0]!;
196
+ case 0:
197
+ if (_default?.ifNone !== undefined) return deepFreeze(_default.ifNone);
198
+ throw new SkipNonUniqueValueError();
199
+ default:
200
+ if (_default?.ifMany !== undefined) return deepFreeze(_default.ifMany);
201
+ throw new SkipNonUniqueValueError();
202
+ }
183
203
  }
184
204
 
185
205
  size = () => {
@@ -212,14 +232,7 @@ class EagerCollectionImpl<K extends Json, V extends Json>
212
232
  mapper: new (...params: Params) => Mapper<K, V, K2, V2>,
213
233
  ...params: Params
214
234
  ): EagerCollection<K2, V2> {
215
- const mapperParams = params.map(checkOrCloneParam) as Params;
216
- const mapperObj = new mapper(...mapperParams);
217
- Object.freeze(mapperObj);
218
- if (!mapperObj.constructor.name) {
219
- throw new SkipClassNameError(
220
- "Mapper classes must be defined at top-level.",
221
- );
222
- }
235
+ const mapperObj = instantiateUserObject("Mapper", mapper, params);
223
236
  const skmapper = this.refs.binding.SkipRuntime_createMapper(
224
237
  this.refs.handles.register(mapperObj),
225
238
  );
@@ -238,25 +251,12 @@ class EagerCollectionImpl<K extends Json, V extends Json>
238
251
  reducer: new (...params: ReducerParams) => Reducer<V2, Accum>,
239
252
  ...reducerParams: ReducerParams
240
253
  ) => {
241
- const mParams = mapperParams.map(checkOrCloneParam) as MapperParams;
242
- const rParams = reducerParams.map(checkOrCloneParam) as ReducerParams;
243
-
244
- const mapperObj = new mapper(...mParams);
245
- const reducerObj = new reducer(...rParams);
246
-
247
- Object.freeze(mapperObj);
248
- Object.freeze(reducerObj);
249
-
250
- if (!mapperObj.constructor.name) {
251
- throw new SkipClassNameError(
252
- "Mapper classes must be defined at top-level.",
253
- );
254
- }
255
- if (!reducerObj.constructor.name) {
256
- throw new SkipClassNameError(
257
- "Reducer classes must be defined at top-level.",
258
- );
259
- }
254
+ const mapperObj = instantiateUserObject("Mapper", mapper, mapperParams);
255
+ const reducerObj = instantiateUserObject(
256
+ "Reducer",
257
+ reducer,
258
+ reducerParams,
259
+ );
260
260
 
261
261
  const skmapper = this.refs.binding.SkipRuntime_createMapper(
262
262
  this.refs.handles.register(mapperObj),
@@ -290,14 +290,7 @@ class EagerCollectionImpl<K extends Json, V extends Json>
290
290
  reducer: new (...params: Params) => Reducer<V, Accum>,
291
291
  ...params: Params
292
292
  ): EagerCollection<K, Accum> {
293
- const reducerParams = params.map(checkOrCloneParam) as Params;
294
- const reducerObj = new reducer(...reducerParams);
295
- Object.freeze(reducerObj);
296
- if (!reducerObj.constructor.name) {
297
- throw new SkipClassNameError(
298
- "Reducer classes must be defined at top-level.",
299
- );
300
- }
293
+ const reducerObj = instantiateUserObject("Reducer", reducer, params);
301
294
  if (sknative in reducerObj && typeof reducerObj[sknative] == "string") {
302
295
  return this.derive<K, Accum>(
303
296
  this.refs.binding.SkipRuntime_Collection__nativeReduce(
@@ -320,8 +313,8 @@ class EagerCollectionImpl<K extends Json, V extends Json>
320
313
  }
321
314
 
322
315
  merge(...others: EagerCollection<K, V>[]): EagerCollection<K, V> {
323
- const otherNames = others.map(
324
- (other) => (other as EagerCollectionImpl<K, V>).collection,
316
+ const otherNames = others.map((other) =>
317
+ EagerCollectionImpl.getName(other),
325
318
  );
326
319
  const mapped = this.refs.binding.SkipRuntime_Collection__merge(
327
320
  this.collection,
@@ -335,6 +328,12 @@ class EagerCollectionImpl<K extends Json, V extends Json>
335
328
  ): EagerCollection<K2, V2> {
336
329
  return new EagerCollectionImpl<K2, V2>(collection, this.refs);
337
330
  }
331
+
332
+ static getName<K extends Json, V extends Json>(
333
+ coll: EagerCollection<K, V>,
334
+ ): string {
335
+ return (coll as EagerCollectionImpl<K, V>).collection;
336
+ }
338
337
  }
339
338
 
340
339
  class CollectionWriter<K extends Json, V extends Json> {
@@ -398,14 +397,7 @@ class ContextImpl extends SkManaged implements Context {
398
397
  compute: new (...params: Params) => LazyCompute<K, V>,
399
398
  ...params: Params
400
399
  ): LazyCollection<K, V> {
401
- const mapperParams = params.map(checkOrCloneParam) as Params;
402
- const computeObj = new compute(...mapperParams);
403
- Object.freeze(computeObj);
404
- if (!computeObj.constructor.name) {
405
- throw new SkipClassNameError(
406
- "LazyCompute classes must be defined at top-level.",
407
- );
408
- }
400
+ const computeObj = instantiateUserObject("LazyCompute", compute, params);
409
401
  const skcompute = this.refs.binding.SkipRuntime_createLazyCompute(
410
402
  this.refs.handles.register(computeObj),
411
403
  );
@@ -728,47 +720,74 @@ export class ServiceInstance {
728
720
  }
729
721
 
730
722
  class ValuesImpl<T> implements Values<T> {
723
+ /* Lazy Iterable/Sequence: values are generated from
724
+ the Iterator pointer and stored in materialized.
725
+ Once finished the pointer is nullified. */
726
+ private readonly materialized: (T & DepSafe)[] = [];
727
+
731
728
  constructor(
732
729
  private readonly skjson: JsonConverter,
733
730
  private readonly binding: FromBinding,
734
- private readonly pointer: Pointer<Internal.NonEmptyIterator>,
731
+ private pointer: Pointer<Internal.NonEmptyIterator> | null,
735
732
  ) {
736
- this.skjson = skjson;
737
- this.binding = binding;
738
733
  this.pointer = pointer;
739
734
  }
740
735
 
741
- next(): Nullable<T & DepSafe> {
742
- return this.skjson.importOptJSON(
736
+ private next(): Nullable<T & DepSafe> {
737
+ if (this.pointer === null) {
738
+ return null;
739
+ }
740
+
741
+ const v = this.skjson.importOptJSON(
743
742
  this.binding.SkipRuntime_NonEmptyIterator__next(this.pointer),
744
743
  ) as Nullable<T & DepSafe>;
744
+
745
+ if (v === null) {
746
+ this.pointer = null;
747
+ } else {
748
+ this.materialized.push(v);
749
+ }
750
+ return v;
745
751
  }
746
752
 
747
- getUnique(): T & DepSafe {
748
- const value = this.skjson.importOptJSON(
749
- this.binding.SkipRuntime_NonEmptyIterator__uniqueValue(this.pointer),
750
- ) as Nullable<T & DepSafe>;
751
- if (value == null) throw new SkipNonUniqueValueError();
752
- return value;
753
+ getUnique(_default?: { ifMany?: T }): T & DepSafe {
754
+ if (this.materialized.length < 1) {
755
+ this.next();
756
+ }
757
+ const first = this.materialized[0];
758
+ if (
759
+ first === undefined /* i.e. this.materialized.length == 0 */ ||
760
+ this.materialized.length >= 2 ||
761
+ this.next() !== null
762
+ ) {
763
+ if (_default?.ifMany !== undefined) return deepFreeze(_default.ifMany);
764
+ throw new SkipNonUniqueValueError();
765
+ }
766
+ return first;
753
767
  }
754
768
 
755
- toArray: () => (T & DepSafe)[] = () => {
756
- return Array.from(this);
757
- };
769
+ toArray(): (T & DepSafe)[] {
770
+ while (this.next() !== null);
771
+ return this.materialized;
772
+ }
758
773
 
759
774
  [Symbol.iterator](): Iterator<T & DepSafe> {
760
- const cloned_iter = new ValuesImpl<T & DepSafe>(
761
- this.skjson,
762
- this.binding,
763
- this.binding.SkipRuntime_NonEmptyIterator__clone(this.pointer),
764
- );
765
-
766
- return {
767
- next() {
768
- const value = cloned_iter.next();
769
- return { value, done: value == null } as IteratorResult<T & DepSafe>;
770
- },
775
+ let i = 0;
776
+ const next = (): IteratorResult<T & DepSafe> => {
777
+ // Invariant: this.materialized.length >= i
778
+ let value = this.materialized[i];
779
+ if (value === undefined /* i.e. this.materialized.length == i */) {
780
+ const next = this.next();
781
+ if (next === null) {
782
+ return { value: null, done: true };
783
+ }
784
+ value = next;
785
+ }
786
+ i++;
787
+ return { value };
771
788
  };
789
+
790
+ return { next };
772
791
  }
773
792
  }
774
793
 
@@ -820,11 +839,19 @@ export class ToBinding {
820
839
  ): Pointer<Internal.CJArray> {
821
840
  const skjson = this.getJsonConverter();
822
841
  const mapper = this.handles.get(skmapper);
823
- const result = mapper.mapEntry(
824
- skjson.importJSON(key) as Json,
825
- new ValuesImpl<Json>(skjson, this.binding, values),
826
- );
827
- return skjson.exportJSON(Array.from(result) as [[Json, Json]]);
842
+ const context = new ContextImpl(this.refs());
843
+ try {
844
+ const result = mapper.mapEntry(
845
+ skjson.importJSON(key) as Json,
846
+ new ValuesImpl<Json>(skjson, this.binding, values),
847
+ context,
848
+ );
849
+ return skjson.exportJSON(Array.from(result));
850
+ } catch (e: unknown) {
851
+ console.error("Uncaught error during Skip runtime reactive update: ", e);
852
+ // Exception in async context will be dropped -- this `throw` is just to appease typechecker
853
+ throw e;
854
+ }
828
855
  }
829
856
 
830
857
  SkipRuntime_deleteMapper(mapper: Handle<JSONMapper>): void {
@@ -868,7 +895,7 @@ export class ToBinding {
868
895
  collections[key] = new EagerCollectionImpl<Json, Json>(name, refs);
869
896
  }
870
897
  const collection = resource.instantiate(collections, new ContextImpl(refs));
871
- return (collection as EagerCollectionImpl<Json, Json>).collection;
898
+ return EagerCollectionImpl.getName(collection);
872
899
  }
873
900
 
874
901
  SkipRuntime_deleteResource(resource: Handle<Resource>): void {
@@ -912,9 +939,7 @@ export class ToBinding {
912
939
  const result = service.createGraph(collections, new ContextImpl(refs));
913
940
  const collectionsNames: { [name: string]: string } = {};
914
941
  for (const [name, collection] of Object.entries(result)) {
915
- collectionsNames[name] = (
916
- collection as EagerCollectionImpl<Json, Json>
917
- ).collection;
942
+ collectionsNames[name] = EagerCollectionImpl.getName(collection);
918
943
  }
919
944
  return skjson.exportJSON(collectionsNames);
920
945
  }