@gtkx/runtime 2.0.0-beta.1 → 2.0.0-beta.3
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/dist/descriptors.d.ts +2 -1
- package/dist/descriptors.d.ts.map +1 -1
- package/dist/descriptors.js +5 -1
- package/dist/descriptors.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/internal.d.ts +17 -0
- package/dist/internal.d.ts.map +1 -1
- package/dist/internal.js +13 -0
- package/dist/internal.js.map +1 -1
- package/dist/listeners.d.ts +3 -13
- package/dist/listeners.d.ts.map +1 -1
- package/dist/listeners.js +12 -12
- package/dist/listeners.js.map +1 -1
- package/dist/mixin.d.ts +5 -3
- package/dist/mixin.d.ts.map +1 -1
- package/dist/mixin.js +36 -9
- package/dist/mixin.js.map +1 -1
- package/dist/object.d.ts +14 -3
- package/dist/object.d.ts.map +1 -1
- package/dist/object.js +20 -27
- package/dist/object.js.map +1 -1
- package/dist/properties.d.ts +4 -2
- package/dist/properties.d.ts.map +1 -1
- package/dist/properties.js +69 -16
- package/dist/properties.js.map +1 -1
- package/dist/property-brand.d.ts +5 -0
- package/dist/property-brand.d.ts.map +1 -0
- package/dist/property-brand.js +5 -0
- package/dist/property-brand.js.map +1 -0
- package/dist/register-class.d.ts +102 -20
- package/dist/register-class.d.ts.map +1 -1
- package/dist/register-class.js +19 -37
- package/dist/register-class.js.map +1 -1
- package/dist/registry.d.ts +1 -1
- package/dist/registry.d.ts.map +1 -1
- package/dist/registry.js +4 -4
- package/dist/registry.js.map +1 -1
- package/dist/signal-brand.d.ts +12 -0
- package/dist/signal-brand.d.ts.map +1 -0
- package/dist/signal-brand.js +6 -0
- package/dist/signal-brand.js.map +1 -0
- package/dist/signal.d.ts +39 -2
- package/dist/signal.d.ts.map +1 -1
- package/dist/signal.js +75 -5
- package/dist/signal.js.map +1 -1
- package/dist/type.d.ts.map +1 -1
- package/dist/type.js +1 -1
- package/dist/type.js.map +1 -1
- package/dist/value.d.ts +2 -1
- package/dist/value.d.ts.map +1 -1
- package/dist/value.js +28 -7
- package/dist/value.js.map +1 -1
- package/package.json +4 -4
- package/src/descriptors.ts +7 -0
- package/src/index.ts +2 -2
- package/src/internal.ts +42 -0
- package/src/listeners.ts +21 -26
- package/src/mixin.ts +55 -9
- package/src/object.ts +57 -7
- package/src/properties.ts +94 -17
- package/src/property-brand.ts +5 -0
- package/src/register-class.ts +296 -95
- package/src/registry.ts +4 -4
- package/src/signal-brand.ts +29 -0
- package/src/signal.ts +177 -6
- package/src/type.ts +1 -1
- package/src/value.ts +40 -5
package/dist/descriptors.d.ts
CHANGED
|
@@ -278,6 +278,7 @@ declare const fundamentalLifecycleFor: (typeName: string) => FundamentalLifecycl
|
|
|
278
278
|
declare const fundamentalT: (sharedLibrary: string, refFnName: string, unrefFnName: string, options?: FundamentalOptions) => FundamentalDescriptor;
|
|
279
279
|
/** Builds a descriptor for an array of items in one of the supported container layouts. */
|
|
280
280
|
declare const arrayT: (itemDescriptor: Descriptor, arrayKind?: ArrayKind, ownership?: Ownership, options?: ArrayOptions) => ArrayDescriptor;
|
|
281
|
+
declare const preserveArrayNull: (descriptor: ArrayDescriptor) => ArrayDescriptor;
|
|
281
282
|
/** Builds a descriptor for a `GList` of items. */
|
|
282
283
|
declare const listT: (itemDescriptor: Descriptor, ownership?: Ownership, options?: ArrayOptions) => ArrayDescriptor;
|
|
283
284
|
/** Builds a descriptor for a `GSList` of items. */
|
|
@@ -296,5 +297,5 @@ declare const cursorArrayT: (itemDescriptor: Descriptor, bounds: CursorBounds, o
|
|
|
296
297
|
declare const fixedArrayT: (itemDescriptor: Descriptor, fixedSize: number, ownership?: Ownership, options?: ArrayOptions) => ArrayDescriptor;
|
|
297
298
|
/** Builds a descriptor for a function pointer, marshalling a JavaScript function into a native closure. */
|
|
298
299
|
declare const callbackT: (argDescriptors: Descriptor[], returnDescriptor: Descriptor, options?: CallbackOptions) => CallbackDescriptor;
|
|
299
|
-
export { int8T, uint8T, int16T, uint16T, int32T, uint32T, int64T, uint64T, bigint64T, biguint64T, gtypeT, isGtypeDescriptor, float32T, float64T, booleanT, voidT, unicharT, bufferT, stringT, objectT, refT, hashTableT, enumT, flagsT, boxedT, structT, fundamentalLifecycleFor, fundamentalT, arrayT, listT, slistT, ptrArrayT, gArrayT, byteArrayT, sizedArrayT, fixedArrayT, cursorArrayT, callbackT, type BoxedDescriptor, type ObjectDescriptor, type StructDescriptor, type FundamentalDescriptor, type ArrayDescriptor, type HashTableDescriptor, type CallbackDescriptor, type RefDescriptor, };
|
|
300
|
+
export { int8T, uint8T, int16T, uint16T, int32T, uint32T, int64T, uint64T, bigint64T, biguint64T, gtypeT, isGtypeDescriptor, float32T, float64T, booleanT, voidT, unicharT, bufferT, stringT, objectT, refT, hashTableT, enumT, flagsT, boxedT, structT, fundamentalLifecycleFor, fundamentalT, arrayT, preserveArrayNull, listT, slistT, ptrArrayT, gArrayT, byteArrayT, sizedArrayT, fixedArrayT, cursorArrayT, callbackT, type BoxedDescriptor, type ObjectDescriptor, type StructDescriptor, type FundamentalDescriptor, type ArrayDescriptor, type HashTableDescriptor, type CallbackDescriptor, type RefDescriptor, };
|
|
300
301
|
//# sourceMappingURL=descriptors.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"descriptors.d.ts","sourceRoot":"","sources":["../src/descriptors.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"descriptors.d.ts","sourceRoot":"","sources":["../src/descriptors.ts"],"names":[],"mappings":"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"}
|
package/dist/descriptors.js
CHANGED
|
@@ -220,6 +220,10 @@ const arrayT = (itemDescriptor, arrayKind = "array", ownership = "borrowed", opt
|
|
|
220
220
|
}
|
|
221
221
|
return result;
|
|
222
222
|
};
|
|
223
|
+
const preserveArrayNull = (descriptor) => {
|
|
224
|
+
Reflect.set(descriptor, "preserveNull", true);
|
|
225
|
+
return descriptor;
|
|
226
|
+
};
|
|
223
227
|
/** Builds a descriptor for a `GList` of items. */
|
|
224
228
|
const listT = (itemDescriptor, ownership = "borrowed", options = {}) => arrayT(itemDescriptor, "glist", ownership, options);
|
|
225
229
|
/** Builds a descriptor for a `GSList` of items. */
|
|
@@ -268,5 +272,5 @@ const callbackT = (argDescriptors, returnDescriptor, options) => {
|
|
|
268
272
|
applyClosureOptions(result, options);
|
|
269
273
|
return result;
|
|
270
274
|
};
|
|
271
|
-
export { int8T, uint8T, int16T, uint16T, int32T, uint32T, int64T, uint64T, bigint64T, biguint64T, gtypeT, isGtypeDescriptor, float32T, float64T, booleanT, voidT, unicharT, bufferT, stringT, objectT, refT, hashTableT, enumT, flagsT, boxedT, structT, fundamentalLifecycleFor, fundamentalT, arrayT, listT, slistT, ptrArrayT, gArrayT, byteArrayT, sizedArrayT, fixedArrayT, cursorArrayT, callbackT, };
|
|
275
|
+
export { int8T, uint8T, int16T, uint16T, int32T, uint32T, int64T, uint64T, bigint64T, biguint64T, gtypeT, isGtypeDescriptor, float32T, float64T, booleanT, voidT, unicharT, bufferT, stringT, objectT, refT, hashTableT, enumT, flagsT, boxedT, structT, fundamentalLifecycleFor, fundamentalT, arrayT, preserveArrayNull, listT, slistT, ptrArrayT, gArrayT, byteArrayT, sizedArrayT, fixedArrayT, cursorArrayT, callbackT, };
|
|
272
276
|
//# sourceMappingURL=descriptors.js.map
|
package/dist/descriptors.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"descriptors.js","sourceRoot":"","sources":["../src/descriptors.ts"],"names":[],"mappings":"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","sourcesContent":["import type { ArrayKind, Descriptor, Ownership } from \"@gtkx/native\";\nimport type { AnyClass } from \"@gtkx/utils\";\n\n/** Descriptor variant for a `gint8`. */\ntype Int8Descriptor = Extract<Descriptor, { kind: \"int8\" }>;\n/** Descriptor variant for a `guint8`. */\ntype Uint8Descriptor = Extract<Descriptor, { kind: \"uint8\" }>;\n/** Descriptor variant for a `gint16`. */\ntype Int16Descriptor = Extract<Descriptor, { kind: \"int16\" }>;\n/** Descriptor variant for a `guint16`. */\ntype Uint16Descriptor = Extract<Descriptor, { kind: \"uint16\" }>;\n/** Descriptor variant for a `gint32`. */\ntype Int32Descriptor = Extract<Descriptor, { kind: \"int32\" }>;\n/** Descriptor variant for a `guint32`. */\ntype Uint32Descriptor = Extract<Descriptor, { kind: \"uint32\" }>;\n/** Descriptor variant for a `gint64` marshalled as a number. */\ntype Int64Descriptor = Extract<Descriptor, { kind: \"int64\" }>;\n/** Descriptor variant for a `guint64` marshalled as a number. */\ntype Uint64Descriptor = Extract<Descriptor, { kind: \"uint64\" }>;\n/** Descriptor variant for a `gint64` marshalled as a bigint. */\ntype BigInt64Descriptor = Extract<Descriptor, { kind: \"bigint64\" }>;\n/** Descriptor variant for a `guint64` marshalled as a bigint. */\ntype BigUint64Descriptor = Extract<Descriptor, { kind: \"biguint64\" }>;\n/** Descriptor variant for a `gfloat`. */\ntype Float32Descriptor = Extract<Descriptor, { kind: \"float32\" }>;\n/** Descriptor variant for a `gdouble`. */\ntype Float64Descriptor = Extract<Descriptor, { kind: \"float64\" }>;\n/** Descriptor variant for an enumeration, carrying the library and `get_type` symbol its GType comes from. */\ntype EnumDescriptor = Extract<Descriptor, { kind: \"enum\" }>;\n/** Descriptor variant for a flags type, carrying the library and `get_type` symbol its GType comes from. */\ntype FlagsDescriptor = Extract<Descriptor, { kind: \"flags\" }>;\n/** Descriptor variant for a `gboolean`. */\ntype BooleanDescriptor = Extract<Descriptor, { kind: \"boolean\" }>;\n/** Descriptor variant for a C string. */\ntype StringDescriptor = Extract<Descriptor, { kind: \"string\" }>;\n\n/** Descriptor variant for a `GObject`, extended with the statically declared type of its value. */\ntype ObjectDescriptor = Extract<Descriptor, { kind: \"object\" }> & {\n /** Retains and supplies the declared wrapper when no more-derived wrapper is registered. */\n fallbackClass?: () => AnyClass;\n};\n\n/** Descriptor variant for a `gunichar`. */\ntype UnicharDescriptor = Extract<Descriptor, { kind: \"unichar\" }>;\n/** Descriptor variant for the absence of a value. */\ntype VoidDescriptor = Extract<Descriptor, { kind: \"void\" }>;\n/** Descriptor variant for an opaque `gpointer`. */\ntype BufferDescriptor = Extract<Descriptor, { kind: \"buffer\" }>;\n\n/** Descriptor variant for a `GBoxed` value, extended with the statically declared type of its value. */\ntype BoxedDescriptor = Extract<Descriptor, { kind: \"boxed\" }> & {\n /** Retains and supplies the declared wrapper when none is registered. */\n fallbackClass?: () => AnyClass;\n};\n\n/** Descriptor variant for a plain C struct, extended with the class its decoded value is wrapped in. */\ntype StructDescriptor = Extract<Descriptor, { kind: \"struct\" }> & {\n /** Class a decoded value is wrapped in; without it the wrapper comes from the value's own GType. */\n wrapperClass?: AnyClass;\n};\n\n/** Descriptor variant for a ref-counted fundamental type, extended with the class its decoded value is wrapped in. */\ntype FundamentalDescriptor = Extract<Descriptor, { kind: \"fundamental\" }> & {\n /** Class a decoded value is wrapped in; without it the wrapper comes from the type named by `typeName`. */\n wrapperClass?: AnyClass;\n /** Retains and supplies the declared wrapper after checking the runtime-type registry. */\n fallbackClass?: () => AnyClass;\n};\n\n/** Descriptor variant for an array of items in one of the supported container layouts. */\ntype ArrayDescriptor = Extract<Descriptor, { kind: \"array\" }>;\n/** Descriptor variant for a `GHashTable`, marshalled as an array of key/value pairs. */\ntype HashTableDescriptor = Extract<Descriptor, { kind: \"hashtable\" }>;\n/** Descriptor variant for a function pointer a JavaScript function is marshalled into. */\ntype CallbackDescriptor = Extract<Descriptor, { kind: \"callback\" }>;\n/** Descriptor variant for a pointer to another descriptor's value, for an output or inout argument. */\ntype RefDescriptor = Extract<Descriptor, { kind: \"ref\" }>;\n\n/** Descriptor for a `GType`: a `guint64` marked so it resolves to `G_TYPE_GTYPE` rather than an integer. */\ntype TypeDescriptor = BigUint64Descriptor & {\n /** Distinguishes a GType from a plain `guint64` when the GLib type and the GValue type are resolved. */\n type: true;\n};\n\n/** How a boxed value is stored, and where its GType and free function are resolved from. */\ntype BoxedOptions = {\n /** The caller owns the storage the callee fills, so a decoded value is borrowed instead of copied. */\n isCallerAllocated?: boolean;\n /** The value is embedded in the containing struct rather than reached through a pointer. */\n isInline?: boolean;\n /** Whether a decoded value is owned by the caller; defaults to `\"borrowed\"`. */\n ownership?: Ownership;\n /** Library `getTypeFnName` and `freeFnName` are resolved in. */\n sharedLibrary?: string;\n /** Symbol returning the boxed GType, used when the type is not already registered under its name. */\n getTypeFnName?: string;\n /** Symbol that frees the value, for a boxed type with no GType of its own. */\n freeFnName?: string;\n /** Byte size of the value, needed to copy it into an inline field. */\n size?: number;\n /** Returns the wrapper class of the declared type, used when none is registered for the GType. */\n fallbackClass?: () => AnyClass;\n};\n\n/** Callback result, closure ownership, and lifetime options. */\ntype CallbackOptions = {\n /** The callee also takes a destroy notify, which frees the closure once it is done with it. */\n hasDestroy?: boolean;\n /** Signature of that destroy notify; defaults to `destroyNotify`, a one-argument `GDestroyNotify`. */\n destroyKind?: CallbackDescriptor[\"destroyKind\"];\n /** The callee also takes a `user_data` pointer; without one the closure can never be freed. */\n hasUserData?: boolean;\n /** Position of `user_data` among the callback's own arguments, dropped before the closure is called. */\n userDataIndex?: number;\n /** Converts a thrown value to the callback's trailing `GError**`. */\n canThrow?: boolean;\n /** Lifetime of the closure; defaults to `notified` when `hasDestroy` is set and `call` otherwise. */\n scope?: CallbackDescriptor[\"scope\"];\n};\n\n/** The lengths and strides a C array layout needs beyond its element type. */\ntype ArrayOptions = {\n /** Stride in bytes between elements stored inline in the array. */\n elementSize?: number | undefined;\n /** Position of the argument whose buffer a cursor array points into. */\n baseParamIndex?: number | undefined;\n /** Position of the argument carrying the element count, for a length-bounded array. */\n sizeParamIndex?: number | undefined;\n /** Element count of a fixed-length array. */\n fixedSize?: number | undefined;\n /** Whether the array carries raw bytes, and so decodes to a `Uint8Array` rather than to numbers. */\n isBytes?: boolean | undefined;\n /** Allocates and decodes caller-owned storage for a fixed-length out array. */\n isCallerAllocated?: boolean | undefined;\n /** Adds a zero element after the declared length. */\n isZeroTerminated?: boolean | undefined;\n};\n\n/** Where a cursor array's base buffer and total length come from. */\ntype CursorBounds = {\n /** Position of the argument holding the buffer the cursor points into. */\n baseParamIndex: number;\n /** Position of the argument carrying that buffer's element count. */\n sizeParamIndex: number;\n};\n\n/** How a ref-counted fundamental value is named, wrapped and stored. */\ntype FundamentalOptions = {\n /** Whether a decoded value is owned by the caller; defaults to `\"borrowed\"`. */\n ownership?: Ownership;\n /** GLib type name the wrapper class is looked up by. */\n typeName?: string;\n /** Class a decoded value is wrapped in, instead of the one registered for `typeName`. */\n wrapperClass?: AnyClass;\n /** Returns the wrapper class of the declared type, used when none is registered for the value's type. */\n fallbackClass?: () => AnyClass;\n /** The caller owns the storage the callee fills, so a decoded value is borrowed instead of acquired. */\n isCallerAllocated?: boolean;\n /** The value is embedded in the containing struct rather than reached through a pointer. */\n isInline?: boolean;\n};\n\ntype FundamentalLifecycle = {\n sharedLibrary: string;\n refFnName: string;\n unrefFnName: string;\n};\n\n/** How a plain C struct is stored and wrapped. */\ntype StructOptions = {\n /** The caller owns the storage the callee fills, so a decoded value is borrowed instead of copied. */\n isCallerAllocated?: boolean;\n /** The value is embedded in the containing struct rather than reached through a pointer. */\n isInline?: boolean;\n /** Byte size of the struct, needed to copy it rather than borrow the pointer. */\n size?: number;\n /** Class a decoded value is wrapped in, instead of the one registered for its GType. */\n wrapperClass?: AnyClass;\n /** Library the struct's declared copy and free functions are resolved from; without it neither is used. */\n sharedLibrary?: string;\n /** Function duplicating an instance, used instead of a byte copy when the struct declares one. */\n copyFnName?: string;\n /** Function releasing an instance, used instead of `g_free` when the struct declares one. */\n freeFnName?: string;\n};\n\n/** Descriptor for a `gint8`, marshalled as a number. */\nconst int8T: Int8Descriptor = { kind: \"int8\" };\n/** Descriptor for a `guint8`, marshalled as a number. */\nconst uint8T: Uint8Descriptor = { kind: \"uint8\" };\n/** Descriptor for a `gint16`, marshalled as a number. */\nconst int16T: Int16Descriptor = { kind: \"int16\" };\n/** Descriptor for a `guint16`, marshalled as a number. */\nconst uint16T: Uint16Descriptor = { kind: \"uint16\" };\n/** Descriptor for a `gint32`, marshalled as a number. */\nconst int32T: Int32Descriptor = { kind: \"int32\" };\n/** Descriptor for a `guint32`, marshalled as a number. */\nconst uint32T: Uint32Descriptor = { kind: \"uint32\" };\n/** Descriptor for a `gint64`, marshalled as a number and rejected outside the 2^53 safe range. */\nconst int64T: Int64Descriptor = { kind: \"int64\" };\n/** Descriptor for a `guint64`, marshalled as a number and rejected outside the 2^53 safe range. */\nconst uint64T: Uint64Descriptor = { kind: \"uint64\" };\n/** Descriptor for a `gint64`, marshalled as a bigint so the full 64-bit range survives. */\nconst bigint64T: BigInt64Descriptor = { kind: \"bigint64\" };\n/** Descriptor for a `guint64`, marshalled as a bigint so the full 64-bit range survives. */\nconst biguint64T: BigUint64Descriptor = { kind: \"biguint64\" };\n/** Descriptor for a `GType`, marshalled as a bigint and recognized as a GType by GValue conversion. */\nconst gtypeT: TypeDescriptor = { kind: \"biguint64\", type: true };\n/** Descriptor for a `gfloat`. */\nconst float32T: Float32Descriptor = { kind: \"float32\" };\n/** Descriptor for a `gdouble`. */\nconst float64T: Float64Descriptor = { kind: \"float64\" };\n/** Descriptor for a `gboolean`, marshalled as a JavaScript boolean. */\nconst booleanT: BooleanDescriptor = { kind: \"boolean\" };\n/** Descriptor for the absence of a value, used as the return descriptor of a `void` function. */\nconst voidT: VoidDescriptor = { kind: \"void\" };\n/** Descriptor for a `gunichar`, marshalled as a single-character string or a codepoint number. */\nconst unicharT: UnicharDescriptor = { kind: \"unichar\" };\n/** Descriptor for an opaque `gpointer`, taken from a typed array's memory or a numeric address. */\nconst bufferT: BufferDescriptor = { kind: \"buffer\" };\nconst fundamentalLifecycles: Map<string, FundamentalLifecycle> = new Map();\n\nconst isGtypeDescriptor = (descriptor: Descriptor): descriptor is TypeDescriptor =>\n descriptor.kind === \"biguint64\" && \"type\" in descriptor;\n\n/** Builds a C-string descriptor, including optional buffer length and record-owned storage. */\nconst stringT = (\n ownership: Ownership = \"borrowed\",\n length?: number,\n hasOwnedStorage?: boolean,\n): StringDescriptor => {\n const result: StringDescriptor = { kind: \"string\", ownership };\n\n if (length !== undefined) {\n result.length = length;\n }\n\n if (hasOwnedStorage === true) {\n result.hasOwnedStorage = true;\n }\n\n return result;\n};\n\n/** Builds a runtime-typed `GObject` descriptor with an optional retained fallback class. */\nconst objectT = (\n ownership: Ownership = \"borrowed\",\n fallbackClass?: () => AnyClass,\n typeName?: string,\n): ObjectDescriptor => {\n const result: ObjectDescriptor = { kind: \"object\", ownership };\n\n if (fallbackClass !== undefined) {\n result.fallbackClass = fallbackClass;\n }\n\n if (typeName !== undefined) {\n result.typeName = typeName;\n }\n\n return result;\n};\n\n/** Wraps a descriptor in a pointer to it, for an output or inout argument. */\nconst refT = (innerDescriptor: Descriptor, isInout = false): RefDescriptor =>\n isInout ? { kind: \"ref\", innerDescriptor, inout: true } : { kind: \"ref\", innerDescriptor };\n\n/** Builds a descriptor for a `GHashTable`, marshalled as an array of key/value pairs. */\nconst hashTableT = (\n keyDescriptor: Descriptor,\n valueDescriptor: Descriptor,\n ownership: Ownership = \"borrowed\",\n): HashTableDescriptor => ({\n kind: \"hashtable\",\n keyDescriptor,\n valueDescriptor,\n ownership,\n});\n\n/** Builds an enum descriptor from a GType function or an explicit set of members. */\nconst enumT = (\n sharedLibrary: string,\n typeFnName: string,\n isSigned: boolean,\n members?: number[],\n): EnumDescriptor => {\n const result: EnumDescriptor = {\n kind: \"enum\",\n sharedLibrary,\n getTypeFnName: typeFnName,\n isSigned,\n };\n\n if (members !== undefined) {\n result.members = members;\n }\n\n return result;\n};\n\n/** Builds a flags descriptor from a GType function or an explicit bit mask. */\nconst flagsT = (sharedLibrary: string, typeFnName: string, isSigned: boolean, mask?: number): FlagsDescriptor => {\n const result: FlagsDescriptor = {\n kind: \"flags\",\n sharedLibrary,\n getTypeFnName: typeFnName,\n isSigned,\n };\n\n if (mask !== undefined) {\n result.mask = mask;\n }\n\n return result;\n};\n\nconst applyBoxedNames = (result: BoxedDescriptor, options: BoxedOptions): void => {\n if (options.sharedLibrary !== undefined) {\n result.sharedLibrary = options.sharedLibrary;\n }\n\n if (options.getTypeFnName !== undefined) {\n result.getTypeFnName = options.getTypeFnName;\n }\n\n if (options.freeFnName !== undefined) {\n result.freeFnName = options.freeFnName;\n }\n};\n\nconst applyBoxedOptions = (result: BoxedDescriptor, options: BoxedOptions): void => {\n applyBoxedNames(result, options);\n\n if (options.fallbackClass !== undefined) {\n result.fallbackClass = options.fallbackClass;\n }\n\n if (options.isCallerAllocated) {\n result.isCallerAllocated = true;\n }\n\n if (options.isInline) {\n result.isInline = true;\n }\n\n if (options.size !== undefined) {\n result.size = options.size;\n }\n};\n\n/** Builds a descriptor for a `GBoxed` value of the named type. */\nconst boxedT = (typeName: string, options: BoxedOptions = {}): BoxedDescriptor => {\n const result: BoxedDescriptor = {\n kind: \"boxed\",\n ownership: options.ownership ?? \"borrowed\",\n typeName,\n };\n\n applyBoxedOptions(result, options);\n\n return result;\n};\n\nconst applyStructLifecycle = (result: StructDescriptor, options: StructOptions): void => {\n if (options.sharedLibrary === undefined) {\n return;\n }\n\n result.sharedLibrary = options.sharedLibrary;\n\n if (options.copyFnName !== undefined) {\n result.copyFnName = options.copyFnName;\n }\n\n if (options.freeFnName !== undefined) {\n result.freeFnName = options.freeFnName;\n }\n};\n\n/** Builds a descriptor for a plain C struct. */\nconst structT = (ownership: Ownership = \"borrowed\", options: StructOptions = {}): StructDescriptor => {\n const result: StructDescriptor = { kind: \"struct\", ownership };\n\n if (options.size !== undefined) {\n result.size = options.size;\n }\n\n if (options.wrapperClass !== undefined) {\n result.wrapperClass = options.wrapperClass;\n }\n\n if (options.isCallerAllocated) {\n result.isCallerAllocated = true;\n }\n\n if (options.isInline) {\n result.isInline = true;\n }\n\n applyStructLifecycle(result, options);\n\n return result;\n};\n\nconst recordFundamentalLifecycle = (typeName: string, lifecycle: FundamentalLifecycle): void => {\n if (!fundamentalLifecycles.has(typeName)) {\n fundamentalLifecycles.set(typeName, lifecycle);\n }\n};\n\nconst fundamentalLifecycleFor = (typeName: string): FundamentalLifecycle | undefined =>\n fundamentalLifecycles.get(typeName);\n\nconst applyFundamentalClasses = (result: FundamentalDescriptor, options: FundamentalOptions): void => {\n if (options.wrapperClass !== undefined) {\n result.wrapperClass = options.wrapperClass;\n }\n\n if (options.fallbackClass !== undefined) {\n result.fallbackClass = options.fallbackClass;\n }\n};\n\n/** Builds a descriptor for a fundamental type whose lifetime is managed by named ref and unref functions. */\nconst fundamentalT = (\n sharedLibrary: string,\n refFnName: string,\n unrefFnName: string,\n options: FundamentalOptions = {},\n): FundamentalDescriptor => {\n const ownership = options.ownership ?? \"borrowed\";\n const result: FundamentalDescriptor = { kind: \"fundamental\", ownership, sharedLibrary, refFnName, unrefFnName };\n\n if (options.typeName !== undefined) {\n result.typeName = options.typeName;\n recordFundamentalLifecycle(options.typeName, { sharedLibrary, refFnName, unrefFnName });\n }\n\n applyFundamentalClasses(result, options);\n\n if (options.isCallerAllocated) {\n result.isCallerAllocated = true;\n }\n\n if (options.isInline) {\n result.isInline = true;\n }\n\n return result;\n};\n\nconst applyArrayBounds = (result: ArrayDescriptor, options: ArrayOptions): void => {\n if (options.baseParamIndex !== undefined) {\n result.baseParamIndex = options.baseParamIndex;\n }\n\n if (options.sizeParamIndex !== undefined) {\n result.sizeParamIndex = options.sizeParamIndex;\n }\n\n if (options.fixedSize !== undefined) {\n result.fixedSize = options.fixedSize;\n }\n};\n\n/** Builds a descriptor for an array of items in one of the supported container layouts. */\nconst arrayT = (\n itemDescriptor: Descriptor,\n arrayKind: ArrayKind = \"array\",\n ownership: Ownership = \"borrowed\",\n options?: ArrayOptions,\n): ArrayDescriptor => {\n const result: ArrayDescriptor = { kind: \"array\", itemDescriptor, arrayKind, ownership };\n\n if (options === undefined) {\n return result;\n }\n\n applyArrayBounds(result, options);\n\n if (options.elementSize !== undefined) {\n result.elementSize = options.elementSize;\n }\n\n if (options.isBytes === true) {\n result.isBytes = true;\n }\n\n if (options.isCallerAllocated === true) {\n result.isCallerAllocated = true;\n }\n\n if (options.isZeroTerminated === true) {\n result.isZeroTerminated = true;\n }\n\n return result;\n};\n\n/** Builds a descriptor for a `GList` of items. */\nconst listT = (\n itemDescriptor: Descriptor,\n ownership: Ownership = \"borrowed\",\n options: ArrayOptions = {},\n): ArrayDescriptor => arrayT(itemDescriptor, \"glist\", ownership, options);\n\n/** Builds a descriptor for a `GSList` of items. */\nconst slistT = (\n itemDescriptor: Descriptor,\n ownership: Ownership = \"borrowed\",\n options: ArrayOptions = {},\n): ArrayDescriptor => arrayT(itemDescriptor, \"gslist\", ownership, options);\n\n/** Builds a descriptor for a `GPtrArray` of items. */\nconst ptrArrayT = (\n itemDescriptor: Descriptor,\n ownership: Ownership = \"borrowed\",\n options: ArrayOptions = {},\n): ArrayDescriptor => arrayT(itemDescriptor, \"gptrarray\", ownership, options);\n\n/** Builds a descriptor for a `GArray` of items. */\nconst gArrayT = (\n itemDescriptor: Descriptor,\n ownership: Ownership = \"borrowed\",\n options: ArrayOptions = {},\n): ArrayDescriptor => arrayT(itemDescriptor, \"garray\", ownership, options);\n\n/** Builds a descriptor for a `GByteArray`. */\nconst byteArrayT = (ownership: Ownership = \"borrowed\"): ArrayDescriptor =>\n arrayT(uint8T, \"gbytearray\", ownership, { isBytes: true });\n\n/** Builds a descriptor for a C array whose length is carried by another argument. */\nconst sizedArrayT = (\n itemDescriptor: Descriptor,\n sizeParamIndex: number,\n ownership: Ownership = \"borrowed\",\n options: ArrayOptions = {},\n): ArrayDescriptor => arrayT(itemDescriptor, \"sized\", ownership, { ...options, sizeParamIndex });\n\n/** Builds an out-array cursor into another argument's buffer. */\nconst cursorArrayT = (\n itemDescriptor: Descriptor,\n bounds: CursorBounds,\n ownership: Ownership = \"borrowed\",\n options: ArrayOptions = {},\n): ArrayDescriptor => arrayT(itemDescriptor, \"cursor\", ownership, { ...options, ...bounds });\n\n/** Builds a descriptor for a C array of a fixed length. */\nconst fixedArrayT = (\n itemDescriptor: Descriptor,\n fixedSize: number,\n ownership: Ownership = \"borrowed\",\n options: ArrayOptions = {},\n): ArrayDescriptor => arrayT(itemDescriptor, \"fixed\", ownership, { ...options, fixedSize });\n\nconst applyClosureLifetimeOptions = (result: CallbackDescriptor, options: CallbackOptions): void => {\n if (options.hasDestroy !== undefined) {\n result.hasDestroy = options.hasDestroy;\n }\n\n if (options.destroyKind !== undefined) {\n result.destroyKind = options.destroyKind;\n }\n\n if (options.scope !== undefined) {\n result.scope = options.scope;\n }\n};\n\nconst applyClosureOptions = (result: CallbackDescriptor, options: CallbackOptions): void => {\n applyClosureLifetimeOptions(result, options);\n\n if (options.hasUserData !== undefined) {\n result.hasUserData = options.hasUserData;\n }\n\n if (options.userDataIndex !== undefined) {\n result.userDataIndex = options.userDataIndex;\n }\n\n if (options.canThrow !== undefined) {\n result.canThrow = options.canThrow;\n }\n};\n\n/** Builds a descriptor for a function pointer, marshalling a JavaScript function into a native closure. */\nconst callbackT = (\n argDescriptors: Descriptor[],\n returnDescriptor: Descriptor,\n options?: CallbackOptions,\n): CallbackDescriptor => {\n const result: CallbackDescriptor = { kind: \"callback\", argDescriptors, returnDescriptor };\n\n if (options === undefined) {\n return result;\n }\n\n applyClosureOptions(result, options);\n\n return result;\n};\n\nexport {\n int8T,\n uint8T,\n int16T,\n uint16T,\n int32T,\n uint32T,\n int64T,\n uint64T,\n bigint64T,\n biguint64T,\n gtypeT,\n isGtypeDescriptor,\n float32T,\n float64T,\n booleanT,\n voidT,\n unicharT,\n bufferT,\n stringT,\n objectT,\n refT,\n hashTableT,\n enumT,\n flagsT,\n boxedT,\n structT,\n fundamentalLifecycleFor,\n fundamentalT,\n arrayT,\n listT,\n slistT,\n ptrArrayT,\n gArrayT,\n byteArrayT,\n sizedArrayT,\n fixedArrayT,\n cursorArrayT,\n callbackT,\n type BoxedDescriptor,\n type ObjectDescriptor,\n type StructDescriptor,\n type FundamentalDescriptor,\n type ArrayDescriptor,\n type HashTableDescriptor,\n type CallbackDescriptor,\n type RefDescriptor,\n};\n"]}
|
|
1
|
+
{"version":3,"file":"descriptors.js","sourceRoot":"","sources":["../src/descriptors.ts"],"names":[],"mappings":"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","sourcesContent":["import type { ArrayKind, Descriptor, Ownership } from \"@gtkx/native\";\nimport type { AnyClass } from \"@gtkx/utils\";\n\n/** Descriptor variant for a `gint8`. */\ntype Int8Descriptor = Extract<Descriptor, { kind: \"int8\" }>;\n/** Descriptor variant for a `guint8`. */\ntype Uint8Descriptor = Extract<Descriptor, { kind: \"uint8\" }>;\n/** Descriptor variant for a `gint16`. */\ntype Int16Descriptor = Extract<Descriptor, { kind: \"int16\" }>;\n/** Descriptor variant for a `guint16`. */\ntype Uint16Descriptor = Extract<Descriptor, { kind: \"uint16\" }>;\n/** Descriptor variant for a `gint32`. */\ntype Int32Descriptor = Extract<Descriptor, { kind: \"int32\" }>;\n/** Descriptor variant for a `guint32`. */\ntype Uint32Descriptor = Extract<Descriptor, { kind: \"uint32\" }>;\n/** Descriptor variant for a `gint64` marshalled as a number. */\ntype Int64Descriptor = Extract<Descriptor, { kind: \"int64\" }>;\n/** Descriptor variant for a `guint64` marshalled as a number. */\ntype Uint64Descriptor = Extract<Descriptor, { kind: \"uint64\" }>;\n/** Descriptor variant for a `gint64` marshalled as a bigint. */\ntype BigInt64Descriptor = Extract<Descriptor, { kind: \"bigint64\" }>;\n/** Descriptor variant for a `guint64` marshalled as a bigint. */\ntype BigUint64Descriptor = Extract<Descriptor, { kind: \"biguint64\" }>;\n/** Descriptor variant for a `gfloat`. */\ntype Float32Descriptor = Extract<Descriptor, { kind: \"float32\" }>;\n/** Descriptor variant for a `gdouble`. */\ntype Float64Descriptor = Extract<Descriptor, { kind: \"float64\" }>;\n/** Descriptor variant for an enumeration, carrying the library and `get_type` symbol its GType comes from. */\ntype EnumDescriptor = Extract<Descriptor, { kind: \"enum\" }>;\n/** Descriptor variant for a flags type, carrying the library and `get_type` symbol its GType comes from. */\ntype FlagsDescriptor = Extract<Descriptor, { kind: \"flags\" }>;\n/** Descriptor variant for a `gboolean`. */\ntype BooleanDescriptor = Extract<Descriptor, { kind: \"boolean\" }>;\n/** Descriptor variant for a C string. */\ntype StringDescriptor = Extract<Descriptor, { kind: \"string\" }>;\n\n/** Descriptor variant for a `GObject`, extended with the statically declared type of its value. */\ntype ObjectDescriptor = Extract<Descriptor, { kind: \"object\" }> & {\n /** Retains and supplies the declared wrapper when no more-derived wrapper is registered. */\n fallbackClass?: () => AnyClass;\n};\n\n/** Descriptor variant for a `gunichar`. */\ntype UnicharDescriptor = Extract<Descriptor, { kind: \"unichar\" }>;\n/** Descriptor variant for the absence of a value. */\ntype VoidDescriptor = Extract<Descriptor, { kind: \"void\" }>;\n/** Descriptor variant for an opaque `gpointer`. */\ntype BufferDescriptor = Extract<Descriptor, { kind: \"buffer\" }>;\n\n/** Descriptor variant for a `GBoxed` value, extended with the statically declared type of its value. */\ntype BoxedDescriptor = Extract<Descriptor, { kind: \"boxed\" }> & {\n /** Retains and supplies the declared wrapper when none is registered. */\n fallbackClass?: () => AnyClass;\n};\n\n/** Descriptor variant for a plain C struct, extended with the class its decoded value is wrapped in. */\ntype StructDescriptor = Extract<Descriptor, { kind: \"struct\" }> & {\n /** Class a decoded value is wrapped in; without it the wrapper comes from the value's own GType. */\n wrapperClass?: AnyClass;\n};\n\n/** Descriptor variant for a ref-counted fundamental type, extended with the class its decoded value is wrapped in. */\ntype FundamentalDescriptor = Extract<Descriptor, { kind: \"fundamental\" }> & {\n /** Class a decoded value is wrapped in; without it the wrapper comes from the type named by `typeName`. */\n wrapperClass?: AnyClass;\n /** Retains and supplies the declared wrapper after checking the runtime-type registry. */\n fallbackClass?: () => AnyClass;\n};\n\n/** Descriptor variant for an array of items in one of the supported container layouts. */\ntype ArrayDescriptor = Extract<Descriptor, { kind: \"array\" }>;\n/** Descriptor variant for a `GHashTable`, marshalled as an array of key/value pairs. */\ntype HashTableDescriptor = Extract<Descriptor, { kind: \"hashtable\" }>;\n/** Descriptor variant for a function pointer a JavaScript function is marshalled into. */\ntype CallbackDescriptor = Extract<Descriptor, { kind: \"callback\" }>;\n/** Descriptor variant for a pointer to another descriptor's value, for an output or inout argument. */\ntype RefDescriptor = Extract<Descriptor, { kind: \"ref\" }>;\n\n/** Descriptor for a `GType`: a `guint64` marked so it resolves to `G_TYPE_GTYPE` rather than an integer. */\ntype TypeDescriptor = BigUint64Descriptor & {\n /** Distinguishes a GType from a plain `guint64` when the GLib type and the GValue type are resolved. */\n type: true;\n};\n\n/** How a boxed value is stored, and where its GType and free function are resolved from. */\ntype BoxedOptions = {\n /** The caller owns the storage the callee fills, so a decoded value is borrowed instead of copied. */\n isCallerAllocated?: boolean;\n /** The value is embedded in the containing struct rather than reached through a pointer. */\n isInline?: boolean;\n /** Whether a decoded value is owned by the caller; defaults to `\"borrowed\"`. */\n ownership?: Ownership;\n /** Library `getTypeFnName` and `freeFnName` are resolved in. */\n sharedLibrary?: string;\n /** Symbol returning the boxed GType, used when the type is not already registered under its name. */\n getTypeFnName?: string;\n /** Symbol that frees the value, for a boxed type with no GType of its own. */\n freeFnName?: string;\n /** Byte size of the value, needed to copy it into an inline field. */\n size?: number;\n /** Returns the wrapper class of the declared type, used when none is registered for the GType. */\n fallbackClass?: () => AnyClass;\n};\n\n/** Callback result, closure ownership, and lifetime options. */\ntype CallbackOptions = {\n /** The callee also takes a destroy notify, which frees the closure once it is done with it. */\n hasDestroy?: boolean;\n /** Signature of that destroy notify; defaults to `destroyNotify`, a one-argument `GDestroyNotify`. */\n destroyKind?: CallbackDescriptor[\"destroyKind\"];\n /** The callee also takes a `user_data` pointer; without one the closure can never be freed. */\n hasUserData?: boolean;\n /** Position of `user_data` among the callback's own arguments, dropped before the closure is called. */\n userDataIndex?: number;\n /** Converts a thrown value to the callback's trailing `GError**`. */\n canThrow?: boolean;\n /** Lifetime of the closure; defaults to `notified` when `hasDestroy` is set and `call` otherwise. */\n scope?: CallbackDescriptor[\"scope\"];\n};\n\n/** The lengths and strides a C array layout needs beyond its element type. */\ntype ArrayOptions = {\n /** Stride in bytes between elements stored inline in the array. */\n elementSize?: number | undefined;\n /** Position of the argument whose buffer a cursor array points into. */\n baseParamIndex?: number | undefined;\n /** Position of the argument carrying the element count, for a length-bounded array. */\n sizeParamIndex?: number | undefined;\n /** Element count of a fixed-length array. */\n fixedSize?: number | undefined;\n /** Whether the array carries raw bytes, and so decodes to a `Uint8Array` rather than to numbers. */\n isBytes?: boolean | undefined;\n /** Allocates and decodes caller-owned storage for a fixed-length out array. */\n isCallerAllocated?: boolean | undefined;\n /** Adds a zero element after the declared length. */\n isZeroTerminated?: boolean | undefined;\n};\n\n/** Where a cursor array's base buffer and total length come from. */\ntype CursorBounds = {\n /** Position of the argument holding the buffer the cursor points into. */\n baseParamIndex: number;\n /** Position of the argument carrying that buffer's element count. */\n sizeParamIndex: number;\n};\n\n/** How a ref-counted fundamental value is named, wrapped and stored. */\ntype FundamentalOptions = {\n /** Whether a decoded value is owned by the caller; defaults to `\"borrowed\"`. */\n ownership?: Ownership;\n /** GLib type name the wrapper class is looked up by. */\n typeName?: string;\n /** Class a decoded value is wrapped in, instead of the one registered for `typeName`. */\n wrapperClass?: AnyClass;\n /** Returns the wrapper class of the declared type, used when none is registered for the value's type. */\n fallbackClass?: () => AnyClass;\n /** The caller owns the storage the callee fills, so a decoded value is borrowed instead of acquired. */\n isCallerAllocated?: boolean;\n /** The value is embedded in the containing struct rather than reached through a pointer. */\n isInline?: boolean;\n};\n\ntype FundamentalLifecycle = {\n sharedLibrary: string;\n refFnName: string;\n unrefFnName: string;\n};\n\n/** How a plain C struct is stored and wrapped. */\ntype StructOptions = {\n /** The caller owns the storage the callee fills, so a decoded value is borrowed instead of copied. */\n isCallerAllocated?: boolean;\n /** The value is embedded in the containing struct rather than reached through a pointer. */\n isInline?: boolean;\n /** Byte size of the struct, needed to copy it rather than borrow the pointer. */\n size?: number;\n /** Class a decoded value is wrapped in, instead of the one registered for its GType. */\n wrapperClass?: AnyClass;\n /** Library the struct's declared copy and free functions are resolved from; without it neither is used. */\n sharedLibrary?: string;\n /** Function duplicating an instance, used instead of a byte copy when the struct declares one. */\n copyFnName?: string;\n /** Function releasing an instance, used instead of `g_free` when the struct declares one. */\n freeFnName?: string;\n};\n\n/** Descriptor for a `gint8`, marshalled as a number. */\nconst int8T: Int8Descriptor = { kind: \"int8\" };\n/** Descriptor for a `guint8`, marshalled as a number. */\nconst uint8T: Uint8Descriptor = { kind: \"uint8\" };\n/** Descriptor for a `gint16`, marshalled as a number. */\nconst int16T: Int16Descriptor = { kind: \"int16\" };\n/** Descriptor for a `guint16`, marshalled as a number. */\nconst uint16T: Uint16Descriptor = { kind: \"uint16\" };\n/** Descriptor for a `gint32`, marshalled as a number. */\nconst int32T: Int32Descriptor = { kind: \"int32\" };\n/** Descriptor for a `guint32`, marshalled as a number. */\nconst uint32T: Uint32Descriptor = { kind: \"uint32\" };\n/** Descriptor for a `gint64`, marshalled as a number and rejected outside the 2^53 safe range. */\nconst int64T: Int64Descriptor = { kind: \"int64\" };\n/** Descriptor for a `guint64`, marshalled as a number and rejected outside the 2^53 safe range. */\nconst uint64T: Uint64Descriptor = { kind: \"uint64\" };\n/** Descriptor for a `gint64`, marshalled as a bigint so the full 64-bit range survives. */\nconst bigint64T: BigInt64Descriptor = { kind: \"bigint64\" };\n/** Descriptor for a `guint64`, marshalled as a bigint so the full 64-bit range survives. */\nconst biguint64T: BigUint64Descriptor = { kind: \"biguint64\" };\n/** Descriptor for a `GType`, marshalled as a bigint and recognized as a GType by GValue conversion. */\nconst gtypeT: TypeDescriptor = { kind: \"biguint64\", type: true };\n/** Descriptor for a `gfloat`. */\nconst float32T: Float32Descriptor = { kind: \"float32\" };\n/** Descriptor for a `gdouble`. */\nconst float64T: Float64Descriptor = { kind: \"float64\" };\n/** Descriptor for a `gboolean`, marshalled as a JavaScript boolean. */\nconst booleanT: BooleanDescriptor = { kind: \"boolean\" };\n/** Descriptor for the absence of a value, used as the return descriptor of a `void` function. */\nconst voidT: VoidDescriptor = { kind: \"void\" };\n/** Descriptor for a `gunichar`, marshalled as a single-character string or a codepoint number. */\nconst unicharT: UnicharDescriptor = { kind: \"unichar\" };\n/** Descriptor for an opaque `gpointer`, taken from a typed array's memory or a numeric address. */\nconst bufferT: BufferDescriptor = { kind: \"buffer\" };\nconst fundamentalLifecycles: Map<string, FundamentalLifecycle> = new Map();\n\nconst isGtypeDescriptor = (descriptor: Descriptor): descriptor is TypeDescriptor =>\n descriptor.kind === \"biguint64\" && \"type\" in descriptor;\n\n/** Builds a C-string descriptor, including optional buffer length and record-owned storage. */\nconst stringT = (\n ownership: Ownership = \"borrowed\",\n length?: number,\n hasOwnedStorage?: boolean,\n): StringDescriptor => {\n const result: StringDescriptor = { kind: \"string\", ownership };\n\n if (length !== undefined) {\n result.length = length;\n }\n\n if (hasOwnedStorage === true) {\n result.hasOwnedStorage = true;\n }\n\n return result;\n};\n\n/** Builds a runtime-typed `GObject` descriptor with an optional retained fallback class. */\nconst objectT = (\n ownership: Ownership = \"borrowed\",\n fallbackClass?: () => AnyClass,\n typeName?: string,\n): ObjectDescriptor => {\n const result: ObjectDescriptor = { kind: \"object\", ownership };\n\n if (fallbackClass !== undefined) {\n result.fallbackClass = fallbackClass;\n }\n\n if (typeName !== undefined) {\n result.typeName = typeName;\n }\n\n return result;\n};\n\n/** Wraps a descriptor in a pointer to it, for an output or inout argument. */\nconst refT = (innerDescriptor: Descriptor, isInout = false): RefDescriptor =>\n isInout ? { kind: \"ref\", innerDescriptor, inout: true } : { kind: \"ref\", innerDescriptor };\n\n/** Builds a descriptor for a `GHashTable`, marshalled as an array of key/value pairs. */\nconst hashTableT = (\n keyDescriptor: Descriptor,\n valueDescriptor: Descriptor,\n ownership: Ownership = \"borrowed\",\n): HashTableDescriptor => ({\n kind: \"hashtable\",\n keyDescriptor,\n valueDescriptor,\n ownership,\n});\n\n/** Builds an enum descriptor from a GType function or an explicit set of members. */\nconst enumT = (\n sharedLibrary: string,\n typeFnName: string,\n isSigned: boolean,\n members?: number[],\n): EnumDescriptor => {\n const result: EnumDescriptor = {\n kind: \"enum\",\n sharedLibrary,\n getTypeFnName: typeFnName,\n isSigned,\n };\n\n if (members !== undefined) {\n result.members = members;\n }\n\n return result;\n};\n\n/** Builds a flags descriptor from a GType function or an explicit bit mask. */\nconst flagsT = (sharedLibrary: string, typeFnName: string, isSigned: boolean, mask?: number): FlagsDescriptor => {\n const result: FlagsDescriptor = {\n kind: \"flags\",\n sharedLibrary,\n getTypeFnName: typeFnName,\n isSigned,\n };\n\n if (mask !== undefined) {\n result.mask = mask;\n }\n\n return result;\n};\n\nconst applyBoxedNames = (result: BoxedDescriptor, options: BoxedOptions): void => {\n if (options.sharedLibrary !== undefined) {\n result.sharedLibrary = options.sharedLibrary;\n }\n\n if (options.getTypeFnName !== undefined) {\n result.getTypeFnName = options.getTypeFnName;\n }\n\n if (options.freeFnName !== undefined) {\n result.freeFnName = options.freeFnName;\n }\n};\n\nconst applyBoxedOptions = (result: BoxedDescriptor, options: BoxedOptions): void => {\n applyBoxedNames(result, options);\n\n if (options.fallbackClass !== undefined) {\n result.fallbackClass = options.fallbackClass;\n }\n\n if (options.isCallerAllocated) {\n result.isCallerAllocated = true;\n }\n\n if (options.isInline) {\n result.isInline = true;\n }\n\n if (options.size !== undefined) {\n result.size = options.size;\n }\n};\n\n/** Builds a descriptor for a `GBoxed` value of the named type. */\nconst boxedT = (typeName: string, options: BoxedOptions = {}): BoxedDescriptor => {\n const result: BoxedDescriptor = {\n kind: \"boxed\",\n ownership: options.ownership ?? \"borrowed\",\n typeName,\n };\n\n applyBoxedOptions(result, options);\n\n return result;\n};\n\nconst applyStructLifecycle = (result: StructDescriptor, options: StructOptions): void => {\n if (options.sharedLibrary === undefined) {\n return;\n }\n\n result.sharedLibrary = options.sharedLibrary;\n\n if (options.copyFnName !== undefined) {\n result.copyFnName = options.copyFnName;\n }\n\n if (options.freeFnName !== undefined) {\n result.freeFnName = options.freeFnName;\n }\n};\n\n/** Builds a descriptor for a plain C struct. */\nconst structT = (ownership: Ownership = \"borrowed\", options: StructOptions = {}): StructDescriptor => {\n const result: StructDescriptor = { kind: \"struct\", ownership };\n\n if (options.size !== undefined) {\n result.size = options.size;\n }\n\n if (options.wrapperClass !== undefined) {\n result.wrapperClass = options.wrapperClass;\n }\n\n if (options.isCallerAllocated) {\n result.isCallerAllocated = true;\n }\n\n if (options.isInline) {\n result.isInline = true;\n }\n\n applyStructLifecycle(result, options);\n\n return result;\n};\n\nconst recordFundamentalLifecycle = (typeName: string, lifecycle: FundamentalLifecycle): void => {\n if (!fundamentalLifecycles.has(typeName)) {\n fundamentalLifecycles.set(typeName, lifecycle);\n }\n};\n\nconst fundamentalLifecycleFor = (typeName: string): FundamentalLifecycle | undefined =>\n fundamentalLifecycles.get(typeName);\n\nconst applyFundamentalClasses = (result: FundamentalDescriptor, options: FundamentalOptions): void => {\n if (options.wrapperClass !== undefined) {\n result.wrapperClass = options.wrapperClass;\n }\n\n if (options.fallbackClass !== undefined) {\n result.fallbackClass = options.fallbackClass;\n }\n};\n\n/** Builds a descriptor for a fundamental type whose lifetime is managed by named ref and unref functions. */\nconst fundamentalT = (\n sharedLibrary: string,\n refFnName: string,\n unrefFnName: string,\n options: FundamentalOptions = {},\n): FundamentalDescriptor => {\n const ownership = options.ownership ?? \"borrowed\";\n const result: FundamentalDescriptor = { kind: \"fundamental\", ownership, sharedLibrary, refFnName, unrefFnName };\n\n if (options.typeName !== undefined) {\n result.typeName = options.typeName;\n recordFundamentalLifecycle(options.typeName, { sharedLibrary, refFnName, unrefFnName });\n }\n\n applyFundamentalClasses(result, options);\n\n if (options.isCallerAllocated) {\n result.isCallerAllocated = true;\n }\n\n if (options.isInline) {\n result.isInline = true;\n }\n\n return result;\n};\n\nconst applyArrayBounds = (result: ArrayDescriptor, options: ArrayOptions): void => {\n if (options.baseParamIndex !== undefined) {\n result.baseParamIndex = options.baseParamIndex;\n }\n\n if (options.sizeParamIndex !== undefined) {\n result.sizeParamIndex = options.sizeParamIndex;\n }\n\n if (options.fixedSize !== undefined) {\n result.fixedSize = options.fixedSize;\n }\n};\n\n/** Builds a descriptor for an array of items in one of the supported container layouts. */\nconst arrayT = (\n itemDescriptor: Descriptor,\n arrayKind: ArrayKind = \"array\",\n ownership: Ownership = \"borrowed\",\n options?: ArrayOptions,\n): ArrayDescriptor => {\n const result: ArrayDescriptor = { kind: \"array\", itemDescriptor, arrayKind, ownership };\n\n if (options === undefined) {\n return result;\n }\n\n applyArrayBounds(result, options);\n\n if (options.elementSize !== undefined) {\n result.elementSize = options.elementSize;\n }\n\n if (options.isBytes === true) {\n result.isBytes = true;\n }\n\n if (options.isCallerAllocated === true) {\n result.isCallerAllocated = true;\n }\n\n if (options.isZeroTerminated === true) {\n result.isZeroTerminated = true;\n }\n\n return result;\n};\n\nconst preserveArrayNull = (descriptor: ArrayDescriptor): ArrayDescriptor => {\n Reflect.set(descriptor, \"preserveNull\", true);\n\n return descriptor;\n};\n\n/** Builds a descriptor for a `GList` of items. */\nconst listT = (\n itemDescriptor: Descriptor,\n ownership: Ownership = \"borrowed\",\n options: ArrayOptions = {},\n): ArrayDescriptor => arrayT(itemDescriptor, \"glist\", ownership, options);\n\n/** Builds a descriptor for a `GSList` of items. */\nconst slistT = (\n itemDescriptor: Descriptor,\n ownership: Ownership = \"borrowed\",\n options: ArrayOptions = {},\n): ArrayDescriptor => arrayT(itemDescriptor, \"gslist\", ownership, options);\n\n/** Builds a descriptor for a `GPtrArray` of items. */\nconst ptrArrayT = (\n itemDescriptor: Descriptor,\n ownership: Ownership = \"borrowed\",\n options: ArrayOptions = {},\n): ArrayDescriptor => arrayT(itemDescriptor, \"gptrarray\", ownership, options);\n\n/** Builds a descriptor for a `GArray` of items. */\nconst gArrayT = (\n itemDescriptor: Descriptor,\n ownership: Ownership = \"borrowed\",\n options: ArrayOptions = {},\n): ArrayDescriptor => arrayT(itemDescriptor, \"garray\", ownership, options);\n\n/** Builds a descriptor for a `GByteArray`. */\nconst byteArrayT = (ownership: Ownership = \"borrowed\"): ArrayDescriptor =>\n arrayT(uint8T, \"gbytearray\", ownership, { isBytes: true });\n\n/** Builds a descriptor for a C array whose length is carried by another argument. */\nconst sizedArrayT = (\n itemDescriptor: Descriptor,\n sizeParamIndex: number,\n ownership: Ownership = \"borrowed\",\n options: ArrayOptions = {},\n): ArrayDescriptor => arrayT(itemDescriptor, \"sized\", ownership, { ...options, sizeParamIndex });\n\n/** Builds an out-array cursor into another argument's buffer. */\nconst cursorArrayT = (\n itemDescriptor: Descriptor,\n bounds: CursorBounds,\n ownership: Ownership = \"borrowed\",\n options: ArrayOptions = {},\n): ArrayDescriptor => arrayT(itemDescriptor, \"cursor\", ownership, { ...options, ...bounds });\n\n/** Builds a descriptor for a C array of a fixed length. */\nconst fixedArrayT = (\n itemDescriptor: Descriptor,\n fixedSize: number,\n ownership: Ownership = \"borrowed\",\n options: ArrayOptions = {},\n): ArrayDescriptor => arrayT(itemDescriptor, \"fixed\", ownership, { ...options, fixedSize });\n\nconst applyClosureLifetimeOptions = (result: CallbackDescriptor, options: CallbackOptions): void => {\n if (options.hasDestroy !== undefined) {\n result.hasDestroy = options.hasDestroy;\n }\n\n if (options.destroyKind !== undefined) {\n result.destroyKind = options.destroyKind;\n }\n\n if (options.scope !== undefined) {\n result.scope = options.scope;\n }\n};\n\nconst applyClosureOptions = (result: CallbackDescriptor, options: CallbackOptions): void => {\n applyClosureLifetimeOptions(result, options);\n\n if (options.hasUserData !== undefined) {\n result.hasUserData = options.hasUserData;\n }\n\n if (options.userDataIndex !== undefined) {\n result.userDataIndex = options.userDataIndex;\n }\n\n if (options.canThrow !== undefined) {\n result.canThrow = options.canThrow;\n }\n};\n\n/** Builds a descriptor for a function pointer, marshalling a JavaScript function into a native closure. */\nconst callbackT = (\n argDescriptors: Descriptor[],\n returnDescriptor: Descriptor,\n options?: CallbackOptions,\n): CallbackDescriptor => {\n const result: CallbackDescriptor = { kind: \"callback\", argDescriptors, returnDescriptor };\n\n if (options === undefined) {\n return result;\n }\n\n applyClosureOptions(result, options);\n\n return result;\n};\n\nexport {\n int8T,\n uint8T,\n int16T,\n uint16T,\n int32T,\n uint32T,\n int64T,\n uint64T,\n bigint64T,\n biguint64T,\n gtypeT,\n isGtypeDescriptor,\n float32T,\n float64T,\n booleanT,\n voidT,\n unicharT,\n bufferT,\n stringT,\n objectT,\n refT,\n hashTableT,\n enumT,\n flagsT,\n boxedT,\n structT,\n fundamentalLifecycleFor,\n fundamentalT,\n arrayT,\n preserveArrayNull,\n listT,\n slistT,\n ptrArrayT,\n gArrayT,\n byteArrayT,\n sizedArrayT,\n fixedArrayT,\n cursorArrayT,\n callbackT,\n type BoxedDescriptor,\n type ObjectDescriptor,\n type StructDescriptor,\n type FundamentalDescriptor,\n type ArrayDescriptor,\n type HashTableDescriptor,\n type CallbackDescriptor,\n type RefDescriptor,\n};\n"]}
|
package/dist/index.d.ts
CHANGED
|
@@ -8,7 +8,7 @@ export { onExit, quit, quitApplication, runApplication, type RunApplicationResul
|
|
|
8
8
|
export { offSignal, onceSignal, onSignal } from "./listeners.js";
|
|
9
9
|
export { installMixins, type Mixin } from "./mixin.js";
|
|
10
10
|
export { fromNative, toHashTableEntries, toNative } from "./native-value.js";
|
|
11
|
-
export { type ConstructBinding, type ConstructBindings,
|
|
11
|
+
export { type ConstructBinding, type ConstructBindings, getProperty, newObjectWithProperties, registerConstructProperties, setProperty, } from "./object.js";
|
|
12
12
|
export { getParamSpecFlags, getParamSpecOwnerType, getParamSpecValueType } from "./param-spec.js";
|
|
13
13
|
export { promisify, trimFinish } from "./promisify.js";
|
|
14
14
|
export { coerceObjectProperty, getDeclaredPropertyName, isReadableProperty, newParamSpecOverride, } from "./properties.js";
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,gBAAgB,CAAC;AAExB,OAAO,EAAE,KAAK,gBAAgB,EAAE,KAAK,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC/G,OAAO,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,EAAE,KAAK,eAAe,EAAE,mBAAmB,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAClG,OAAO,EAAE,iBAAiB,EAAE,KAAK,WAAW,EAAE,MAAM,YAAY,CAAC;AACjE,OAAO,EAAE,KAAK,KAAK,EAAE,KAAK,YAAY,EAAE,MAAM,YAAY,CAAC;AAC3D,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,EAAE,cAAc,EAAE,KAAK,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAC1G,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,KAAK,KAAK,EAAE,MAAM,YAAY,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7E,OAAO,EACH,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -8,7 +8,7 @@ export { onExit, quit, quitApplication, runApplication } from "./lifecycle.js";
|
|
|
8
8
|
export { offSignal, onceSignal, onSignal } from "./listeners.js";
|
|
9
9
|
export { installMixins } from "./mixin.js";
|
|
10
10
|
export { fromNative, toHashTableEntries, toNative } from "./native-value.js";
|
|
11
|
-
export {
|
|
11
|
+
export { getProperty, newObjectWithProperties, registerConstructProperties, setProperty, } from "./object.js";
|
|
12
12
|
export { getParamSpecFlags, getParamSpecOwnerType, getParamSpecValueType } from "./param-spec.js";
|
|
13
13
|
export { promisify, trimFinish } from "./promisify.js";
|
|
14
14
|
export { coerceObjectProperty, getDeclaredPropertyName, isReadableProperty, newParamSpecOverride, } from "./properties.js";
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,gBAAgB,CAAC;AAExB,OAAO,EAAsD,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC/G,OAAO,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,EAAwB,mBAAmB,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAClG,OAAO,EAAE,iBAAiB,EAAoB,MAAM,YAAY,CAAC;AACjE,OAAO,EAAiC,MAAM,YAAY,CAAC;AAC3D,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,EAAE,cAAc,EAA6B,MAAM,gBAAgB,CAAC;AAC1G,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AACjE,OAAO,EAAE,aAAa,EAAc,MAAM,YAAY,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7E,OAAO,EAGH,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,gBAAgB,CAAC;AAExB,OAAO,EAAsD,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC/G,OAAO,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,EAAwB,mBAAmB,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAClG,OAAO,EAAE,iBAAiB,EAAoB,MAAM,YAAY,CAAC;AACjE,OAAO,EAAiC,MAAM,YAAY,CAAC;AAC3D,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,EAAE,cAAc,EAA6B,MAAM,gBAAgB,CAAC;AAC1G,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AACjE,OAAO,EAAE,aAAa,EAAc,MAAM,YAAY,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7E,OAAO,EAGH,WAAW,EACX,uBAAuB,EACvB,2BAA2B,EAC3B,WAAW,GACd,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAClG,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,EACH,oBAAoB,EACpB,uBAAuB,EACvB,kBAAkB,EAClB,oBAAoB,GACvB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACvD,OAAO,EAAkB,aAAa,EAAqC,MAAM,qBAAqB,CAAC;AACvG,OAAO,EACH,YAAY,EACZ,SAAS,EACT,eAAe,EACf,eAAe,EACf,iBAAiB,EACjB,aAAa,EACb,mBAAmB,EACnB,iBAAiB,EACjB,oBAAoB,EACpB,4BAA4B,EAE5B,SAAS,EACT,UAAU,GAGb,MAAM,eAAe,CAAC;AACvB,OAAO,EACH,aAAa,EACb,gBAAgB,EAChB,UAAU,EACV,iBAAiB,EAEjB,oBAAoB,GACvB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAC3B,OAAO,EACH,WAAW,EACX,YAAY,EACZ,UAAU,EACV,SAAS,EACT,WAAW,EACX,SAAS,EACT,UAAU,EACV,UAAU,EACV,UAAU,EACV,QAAQ,EACR,UAAU,EACV,cAAc,EACd,YAAY,EACZ,SAAS,EACT,SAAS,EACT,WAAW,EACX,UAAU,EACV,YAAY,EACZ,WAAW,EACX,UAAU,EACV,SAAS,EACT,WAAW,EACX,UAAU,EACV,YAAY,EACZ,YAAY,EAEZ,oBAAoB,EACpB,YAAY,EACZ,cAAc,EACd,OAAO,EACP,QAAQ,EACR,UAAU,EACV,QAAQ,GACX,MAAM,WAAW,CAAC;AACnB,OAAO,EACH,SAAS,EACT,aAAa,EAEb,aAAa,EACb,aAAa,EACb,gBAAgB,EAChB,iBAAiB,GACpB,MAAM,YAAY,CAAC;AACpB,OAAO,EAGH,WAAW,EAGX,SAAS,GAGZ,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,KAAK,EAAoC,IAAI,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AACpF,OAAO,EAAiB,MAAM,aAAa,CAAC","sourcesContent":["import \"./exit-hook.js\";\n\nexport { type ApplicationClass, type CommandLineApplication, createApplication } from \"./application-class.js\";\nexport { CallbackMarshalError } from \"./callback.js\";\nexport { type ClosureCallback, ClosureMarshalError, toClosure, tryToClosure } from \"./closure.js\";\nexport { createErrorDomain, type ErrorDomain } from \"./error.js\";\nexport { type Field, type StridedField } from \"./field.js\";\nexport { onExit, quit, quitApplication, runApplication, type RunApplicationResult } from \"./lifecycle.js\";\nexport { offSignal, onceSignal, onSignal } from \"./listeners.js\";\nexport { installMixins, type Mixin } from \"./mixin.js\";\nexport { fromNative, toHashTableEntries, toNative } from \"./native-value.js\";\nexport {\n type ConstructBinding,\n type ConstructBindings,\n getProperty,\n newObjectWithProperties,\n registerConstructProperties,\n setProperty,\n} from \"./object.js\";\nexport { getParamSpecFlags, getParamSpecOwnerType, getParamSpecValueType } from \"./param-spec.js\";\nexport { promisify, trimFinish } from \"./promisify.js\";\nexport {\n coerceObjectProperty,\n getDeclaredPropertyName,\n isReadableProperty,\n newParamSpecOverride,\n} from \"./properties.js\";\nexport { matchAllRegex, matchRegex } from \"./regex.js\";\nexport { type Interface, registerClass, type SignalGType, type SignalSpec } from \"./register-class.js\";\nexport {\n getClassType,\n getHandle,\n getInstanceType,\n getWrapperClass,\n installInterfaces,\n peekTypeClass,\n registerClassStruct,\n registerInterface,\n registerWrapperClass,\n registerWrapperClassResolver,\n type StaticBase,\n setHandle,\n wrapHandle,\n type WrapperClass,\n type WrapperClassResolver,\n} from \"./registry.js\";\nexport {\n connectSignal,\n disconnectSignal,\n emitSignal,\n getSignalBaseName,\n type SignalHandler,\n signalForHandlerName,\n} from \"./signal.js\";\nexport { t } from \"./t.js\";\nexport {\n resolveType,\n TYPE_BOOLEAN,\n TYPE_BOXED,\n TYPE_CHAR,\n TYPE_DOUBLE,\n TYPE_ENUM,\n TYPE_FLAGS,\n TYPE_FLOAT,\n TYPE_GTYPE,\n TYPE_INT,\n TYPE_INT64,\n TYPE_INTERFACE,\n TYPE_INVALID,\n TYPE_LONG,\n TYPE_NONE,\n TYPE_OBJECT,\n TYPE_PARAM,\n TYPE_POINTER,\n TYPE_STRING,\n TYPE_UCHAR,\n TYPE_UINT,\n TYPE_UINT64,\n TYPE_ULONG,\n TYPE_UNICHAR,\n TYPE_VARIANT,\n type TypedClass,\n retainWrapperClasses,\n typeFromName,\n typeInterfaces,\n typeIsA,\n typeName,\n typeParent,\n valueIsA,\n} from \"./type.js\";\nexport {\n fromValue,\n getBoxedValue,\n type JsValue,\n setBoxedValue,\n toValueHandle,\n tryToValueHandle,\n ValueMarshalError,\n} from \"./value.js\";\nexport {\n type ByteArray,\n type FromVariantOptions,\n fromVariant,\n type RecursiveFromVariantOptions,\n type RecursiveVariantValue,\n toVariant,\n type VariantInput,\n type VariantValue,\n} from \"./variant.js\";\nexport { callParent, callVfunc } from \"./vfunc-call.js\";\nexport { alloc, type ExternalObject, type Handle, read, write } from \"@gtkx/native\";\nexport { type AnyClass } from \"@gtkx/utils\";\n"]}
|
package/dist/internal.d.ts
CHANGED
|
@@ -1,10 +1,27 @@
|
|
|
1
|
+
import { markSyntheticSignalMembers as markSyntheticSignalMembersImpl } from "./mixin.js";
|
|
2
|
+
import { naturalSignalMember } from "./signal-brand.js";
|
|
3
|
+
import { emitSignalByName as emitSignalByNameImpl, signalConnect as signalConnectImpl, signalEmit as signalEmitImpl } from "./signal.js";
|
|
4
|
+
declare const markSyntheticSignalMembers: typeof markSyntheticSignalMembersImpl;
|
|
5
|
+
declare const emitSignalByName: typeof emitSignalByNameImpl;
|
|
6
|
+
declare const signalConnect: typeof signalConnectImpl;
|
|
7
|
+
declare const signalEmit: typeof signalEmitImpl;
|
|
8
|
+
type SignalMethodReceiver<T, K extends PropertyKey> = T extends {
|
|
9
|
+
[naturalSignalMember]?: infer TMembers;
|
|
10
|
+
} ? K extends keyof NonNullable<TMembers> ? never : unknown : unknown;
|
|
11
|
+
export { preserveArrayNull } from "./descriptors.js";
|
|
1
12
|
/** @internal */
|
|
2
13
|
export { registerElementMetadata } from "./element-metadata.js";
|
|
3
14
|
export { elementMetadataVersion, registeredElementProperties, registeredElementSignals, } from "./element-metadata.js";
|
|
4
15
|
export { createErrorDomain } from "./error.js";
|
|
16
|
+
export { markSyntheticSignalMembers };
|
|
5
17
|
export { type ApplicationInstance, getApplicationInstance } from "./lifecycle.js";
|
|
18
|
+
export { descriptorFreePropertySpec, propertyMapOverride, writablePropertyMapOverride, } from "./property-brand.js";
|
|
6
19
|
export { getExactWrapperClass, resolveWrapperClass } from "./registry.js";
|
|
20
|
+
export type { SignalMethodReceiver };
|
|
21
|
+
export { classSignalMember, naturalSignalMember, signalEmitMapOverride, signalMapOverride, } from "./signal-brand.js";
|
|
7
22
|
export { hasSignalListener } from "./signal.js";
|
|
23
|
+
export { emitSignalByName, signalConnect, signalEmit };
|
|
24
|
+
export { canonicalDetailedSignalName, canonicalSignalName, connectSignalByName, installSignalDispatch, } from "./signal.js";
|
|
8
25
|
export { resolveType } from "./type.js";
|
|
9
26
|
export { fromValue, getBoxedValue, getValueType, inoutValueForBoxedDescriptor, newValueForDescriptor, outValueForBoxedDescriptor, toValue, } from "./value.js";
|
|
10
27
|
//# sourceMappingURL=internal.d.ts.map
|
package/dist/internal.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../src/internal.ts"],"names":[],"mappings":"AAAA,gBAAgB;AAChB,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,EACH,sBAAsB,EACtB,2BAA2B,EAC3B,wBAAwB,GAC3B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,EAAE,KAAK,mBAAmB,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAClF,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAC1E,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EACH,SAAS,EACT,aAAa,EACb,YAAY,EACZ,4BAA4B,EAC5B,qBAAqB,EACrB,0BAA0B,EAC1B,OAAO,GACV,MAAM,YAAY,CAAC"}
|
|
1
|
+
{"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../src/internal.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,IAAI,8BAA8B,EAAE,MAAM,YAAY,CAAC;AAC1F,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EACH,gBAAgB,IAAI,oBAAoB,EACxC,aAAa,IAAI,iBAAiB,EAClC,UAAU,IAAI,cAAc,EAC/B,MAAM,aAAa,CAAC;AAErB,QAAA,MAAM,0BAA0B,EAAE,OAAO,8BAA+D,CAAC;AACzG,QAAA,MAAM,gBAAgB,EAAE,OAAO,oBAA2C,CAAC;AAC3E,QAAA,MAAM,aAAa,EAAE,OAAO,iBAAqC,CAAC;AAClE,QAAA,MAAM,UAAU,EAAE,OAAO,cAA+B,CAAC;AAEzD,KAAK,oBAAoB,CAAC,CAAC,EAAE,CAAC,SAAS,WAAW,IAAI,CAAC,SAAS;IAC5D,CAAC,mBAAmB,CAAC,CAAC,EAAE,MAAM,QAAQ,CAAC;CAC1C,GACK,CAAC,SAAS,MAAM,WAAW,CAAC,QAAQ,CAAC,GACjC,KAAK,GACL,OAAO,GACX,OAAO,CAAC;AAEd,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,gBAAgB;AAChB,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,EACH,sBAAsB,EACtB,2BAA2B,EAC3B,wBAAwB,GAC3B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,EAAE,0BAA0B,EAAE,CAAC;AACtC,OAAO,EAAE,KAAK,mBAAmB,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAClF,OAAO,EACH,0BAA0B,EAC1B,mBAAmB,EACnB,2BAA2B,GAC9B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAC1E,YAAY,EAAE,oBAAoB,EAAE,CAAC;AACrC,OAAO,EACH,iBAAiB,EACjB,mBAAmB,EACnB,qBAAqB,EACrB,iBAAiB,GACpB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,UAAU,EAAE,CAAC;AACvD,OAAO,EACH,2BAA2B,EAC3B,mBAAmB,EACnB,mBAAmB,EACnB,qBAAqB,GACxB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EACH,SAAS,EACT,aAAa,EACb,YAAY,EACZ,4BAA4B,EAC5B,qBAAqB,EACrB,0BAA0B,EAC1B,OAAO,GACV,MAAM,YAAY,CAAC"}
|
package/dist/internal.js
CHANGED
|
@@ -1,10 +1,23 @@
|
|
|
1
|
+
import { markSyntheticSignalMembers as markSyntheticSignalMembersImpl } from "./mixin.js";
|
|
2
|
+
import { naturalSignalMember } from "./signal-brand.js";
|
|
3
|
+
import { emitSignalByName as emitSignalByNameImpl, signalConnect as signalConnectImpl, signalEmit as signalEmitImpl, } from "./signal.js";
|
|
4
|
+
const markSyntheticSignalMembers = markSyntheticSignalMembersImpl;
|
|
5
|
+
const emitSignalByName = emitSignalByNameImpl;
|
|
6
|
+
const signalConnect = signalConnectImpl;
|
|
7
|
+
const signalEmit = signalEmitImpl;
|
|
8
|
+
export { preserveArrayNull } from "./descriptors.js";
|
|
1
9
|
/** @internal */
|
|
2
10
|
export { registerElementMetadata } from "./element-metadata.js";
|
|
3
11
|
export { elementMetadataVersion, registeredElementProperties, registeredElementSignals, } from "./element-metadata.js";
|
|
4
12
|
export { createErrorDomain } from "./error.js";
|
|
13
|
+
export { markSyntheticSignalMembers };
|
|
5
14
|
export { getApplicationInstance } from "./lifecycle.js";
|
|
15
|
+
export { descriptorFreePropertySpec, propertyMapOverride, writablePropertyMapOverride, } from "./property-brand.js";
|
|
6
16
|
export { getExactWrapperClass, resolveWrapperClass } from "./registry.js";
|
|
17
|
+
export { classSignalMember, naturalSignalMember, signalEmitMapOverride, signalMapOverride, } from "./signal-brand.js";
|
|
7
18
|
export { hasSignalListener } from "./signal.js";
|
|
19
|
+
export { emitSignalByName, signalConnect, signalEmit };
|
|
20
|
+
export { canonicalDetailedSignalName, canonicalSignalName, connectSignalByName, installSignalDispatch, } from "./signal.js";
|
|
8
21
|
export { resolveType } from "./type.js";
|
|
9
22
|
export { fromValue, getBoxedValue, getValueType, inoutValueForBoxedDescriptor, newValueForDescriptor, outValueForBoxedDescriptor, toValue, } from "./value.js";
|
|
10
23
|
//# sourceMappingURL=internal.js.map
|
package/dist/internal.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"internal.js","sourceRoot":"","sources":["../src/internal.ts"],"names":[],"mappings":"AAAA,gBAAgB;AAChB,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,EACH,sBAAsB,EACtB,2BAA2B,EAC3B,wBAAwB,GAC3B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,EAA4B,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAClF,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"internal.js","sourceRoot":"","sources":["../src/internal.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,IAAI,8BAA8B,EAAE,MAAM,YAAY,CAAC;AAC1F,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EACH,gBAAgB,IAAI,oBAAoB,EACxC,aAAa,IAAI,iBAAiB,EAClC,UAAU,IAAI,cAAc,GAC/B,MAAM,aAAa,CAAC;AAErB,MAAM,0BAA0B,GAA0C,8BAA8B,CAAC;AACzG,MAAM,gBAAgB,GAAgC,oBAAoB,CAAC;AAC3E,MAAM,aAAa,GAA6B,iBAAiB,CAAC;AAClE,MAAM,UAAU,GAA0B,cAAc,CAAC;AAUzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,gBAAgB;AAChB,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,EACH,sBAAsB,EACtB,2BAA2B,EAC3B,wBAAwB,GAC3B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,EAAE,0BAA0B,EAAE,CAAC;AACtC,OAAO,EAA4B,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAClF,OAAO,EACH,0BAA0B,EAC1B,mBAAmB,EACnB,2BAA2B,GAC9B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAE1E,OAAO,EACH,iBAAiB,EACjB,mBAAmB,EACnB,qBAAqB,EACrB,iBAAiB,GACpB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,UAAU,EAAE,CAAC;AACvD,OAAO,EACH,2BAA2B,EAC3B,mBAAmB,EACnB,mBAAmB,EACnB,qBAAqB,GACxB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EACH,SAAS,EACT,aAAa,EACb,YAAY,EACZ,4BAA4B,EAC5B,qBAAqB,EACrB,0BAA0B,EAC1B,OAAO,GACV,MAAM,YAAY,CAAC","sourcesContent":["import { markSyntheticSignalMembers as markSyntheticSignalMembersImpl } from \"./mixin.js\";\nimport { naturalSignalMember } from \"./signal-brand.js\";\nimport {\n emitSignalByName as emitSignalByNameImpl,\n signalConnect as signalConnectImpl,\n signalEmit as signalEmitImpl,\n} from \"./signal.js\";\n\nconst markSyntheticSignalMembers: typeof markSyntheticSignalMembersImpl = markSyntheticSignalMembersImpl;\nconst emitSignalByName: typeof emitSignalByNameImpl = emitSignalByNameImpl;\nconst signalConnect: typeof signalConnectImpl = signalConnectImpl;\nconst signalEmit: typeof signalEmitImpl = signalEmitImpl;\n\ntype SignalMethodReceiver<T, K extends PropertyKey> = T extends {\n [naturalSignalMember]?: infer TMembers;\n}\n ? K extends keyof NonNullable<TMembers>\n ? never\n : unknown\n : unknown;\n\nexport { preserveArrayNull } from \"./descriptors.js\";\n/** @internal */\nexport { registerElementMetadata } from \"./element-metadata.js\";\nexport {\n elementMetadataVersion,\n registeredElementProperties,\n registeredElementSignals,\n} from \"./element-metadata.js\";\nexport { createErrorDomain } from \"./error.js\";\nexport { markSyntheticSignalMembers };\nexport { type ApplicationInstance, getApplicationInstance } from \"./lifecycle.js\";\nexport {\n descriptorFreePropertySpec,\n propertyMapOverride,\n writablePropertyMapOverride,\n} from \"./property-brand.js\";\nexport { getExactWrapperClass, resolveWrapperClass } from \"./registry.js\";\nexport type { SignalMethodReceiver };\nexport {\n classSignalMember,\n naturalSignalMember,\n signalEmitMapOverride,\n signalMapOverride,\n} from \"./signal-brand.js\";\nexport { hasSignalListener } from \"./signal.js\";\nexport { emitSignalByName, signalConnect, signalEmit };\nexport {\n canonicalDetailedSignalName,\n canonicalSignalName,\n connectSignalByName,\n installSignalDispatch,\n} from \"./signal.js\";\nexport { resolveType } from \"./type.js\";\nexport {\n fromValue,\n getBoxedValue,\n getValueType,\n inoutValueForBoxedDescriptor,\n newValueForDescriptor,\n outValueForBoxedDescriptor,\n toValue,\n} from \"./value.js\";\n"]}
|
package/dist/listeners.d.ts
CHANGED
|
@@ -1,14 +1,4 @@
|
|
|
1
1
|
import { type SignalHandler } from "./signal.js";
|
|
2
|
-
/**
|
|
3
|
-
* The connect and disconnect surface {@link onSignal}, {@link onceSignal} and {@link offSignal}
|
|
4
|
-
* drive on an emitter.
|
|
5
|
-
*/
|
|
6
|
-
type SignalConnectable = {
|
|
7
|
-
/** Connects a handler to a signal and returns its handler id. */
|
|
8
|
-
connect(signal: string, handler: SignalHandler, isAfter?: boolean): number;
|
|
9
|
-
/** Disconnects the handler previously connected under the given id. */
|
|
10
|
-
disconnect(handlerId: number): void;
|
|
11
|
-
};
|
|
12
2
|
/**
|
|
13
3
|
* Connects a handler to a signal and tracks it so it can later be removed with
|
|
14
4
|
* {@link offSignal}.
|
|
@@ -18,7 +8,7 @@ type SignalConnectable = {
|
|
|
18
8
|
* @param handler The callback invoked on each emission.
|
|
19
9
|
* @param isAfter When true, run the handler after the default handler.
|
|
20
10
|
*/
|
|
21
|
-
declare function onSignal(instance:
|
|
11
|
+
declare function onSignal(instance: object, signal: string, handler: SignalHandler, isAfter?: boolean): void;
|
|
22
12
|
/**
|
|
23
13
|
* Connects a handler that runs at most once, disconnecting itself after the first
|
|
24
14
|
* emission.
|
|
@@ -28,7 +18,7 @@ declare function onSignal(instance: SignalConnectable, signal: string, handler:
|
|
|
28
18
|
* @param handler The callback invoked on the first emission.
|
|
29
19
|
* @param isAfter When true, run the handler after the default handler.
|
|
30
20
|
*/
|
|
31
|
-
declare function onceSignal(instance:
|
|
21
|
+
declare function onceSignal(instance: object, signal: string, handler: SignalHandler, isAfter?: boolean): void;
|
|
32
22
|
/**
|
|
33
23
|
* Disconnects a handler previously connected with {@link onSignal} or
|
|
34
24
|
* {@link onceSignal}. Does nothing if the handler is not currently connected.
|
|
@@ -37,6 +27,6 @@ declare function onceSignal(instance: SignalConnectable, signal: string, handler
|
|
|
37
27
|
* @param signal The signal name the handler was connected to.
|
|
38
28
|
* @param handler The handler to disconnect.
|
|
39
29
|
*/
|
|
40
|
-
declare function offSignal(instance:
|
|
30
|
+
declare function offSignal(instance: object, signal: string, handler: SignalHandler): void;
|
|
41
31
|
export { onSignal, onceSignal, offSignal };
|
|
42
32
|
//# sourceMappingURL=listeners.d.ts.map
|
package/dist/listeners.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"listeners.d.ts","sourceRoot":"","sources":["../src/listeners.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"listeners.d.ts","sourceRoot":"","sources":["../src/listeners.ts"],"names":[],"mappings":"AAAA,OAAO,EAKH,KAAK,aAAa,EACrB,MAAM,aAAa,CAAC;AA+DrB;;;;;;;;GAQG;AACH,iBAAS,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,CAGnG;AAED;;;;;;;;GAQG;AACH,iBAAS,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,CAarG;AAED;;;;;;;GAOG;AACH,iBAAS,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,IAAI,CAcjF;AAED,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC"}
|
package/dist/listeners.js
CHANGED
|
@@ -1,16 +1,17 @@
|
|
|
1
|
-
import { isSignalHandlerConnected,
|
|
1
|
+
import { canonicalDetailedSignalName, connectSignalByName, disconnectSignal, isSignalHandlerConnected, } from "./signal.js";
|
|
2
2
|
const listenerTable = new WeakMap();
|
|
3
|
-
const findListenerHandlerId = (instance, signal, handler) => listenerTable.get(instance)?.get(signal)?.get(handler)?.at(-1);
|
|
3
|
+
const findListenerHandlerId = (instance, signal, handler) => listenerTable.get(instance)?.get(canonicalDetailedSignalName(signal))?.get(handler)?.at(-1);
|
|
4
4
|
const trackListener = (instance, signal, handler, handlerId) => {
|
|
5
|
+
const key = canonicalDetailedSignalName(signal);
|
|
5
6
|
let bySignal = listenerTable.get(instance);
|
|
6
7
|
if (!bySignal) {
|
|
7
8
|
bySignal = new Map();
|
|
8
9
|
listenerTable.set(instance, bySignal);
|
|
9
10
|
}
|
|
10
|
-
let byHandler = bySignal.get(
|
|
11
|
+
let byHandler = bySignal.get(key);
|
|
11
12
|
if (!byHandler) {
|
|
12
13
|
byHandler = new Map();
|
|
13
|
-
bySignal.set(
|
|
14
|
+
bySignal.set(key, byHandler);
|
|
14
15
|
}
|
|
15
16
|
let handlerIds = byHandler.get(handler);
|
|
16
17
|
if (!handlerIds) {
|
|
@@ -27,8 +28,9 @@ const removeTrackedHandlerId = (handlerIds, handlerId) => {
|
|
|
27
28
|
return handlerIds.length;
|
|
28
29
|
};
|
|
29
30
|
const untrackHandlerId = (instance, signal, handlerId) => {
|
|
31
|
+
const key = canonicalDetailedSignalName(signal);
|
|
30
32
|
const bySignal = listenerTable.get(instance);
|
|
31
|
-
const byHandler = bySignal?.get(
|
|
33
|
+
const byHandler = bySignal?.get(key);
|
|
32
34
|
if (byHandler === undefined) {
|
|
33
35
|
return;
|
|
34
36
|
}
|
|
@@ -38,7 +40,7 @@ const untrackHandlerId = (instance, signal, handlerId) => {
|
|
|
38
40
|
}
|
|
39
41
|
}
|
|
40
42
|
if (byHandler.size === 0) {
|
|
41
|
-
bySignal?.delete(
|
|
43
|
+
bySignal?.delete(key);
|
|
42
44
|
}
|
|
43
45
|
};
|
|
44
46
|
/**
|
|
@@ -51,7 +53,7 @@ const untrackHandlerId = (instance, signal, handlerId) => {
|
|
|
51
53
|
* @param isAfter When true, run the handler after the default handler.
|
|
52
54
|
*/
|
|
53
55
|
function onSignal(instance, signal, handler, isAfter) {
|
|
54
|
-
const handlerId = instance
|
|
56
|
+
const handlerId = connectSignalByName(instance, signal, handler, isAfter);
|
|
55
57
|
trackListener(instance, signal, handler, handlerId);
|
|
56
58
|
}
|
|
57
59
|
/**
|
|
@@ -67,11 +69,10 @@ function onceSignal(instance, signal, handler, isAfter) {
|
|
|
67
69
|
let handlerId = 0;
|
|
68
70
|
const wrapped = (...args) => {
|
|
69
71
|
untrackHandlerId(instance, signal, handlerId);
|
|
70
|
-
|
|
71
|
-
instance.disconnect(handlerId);
|
|
72
|
+
disconnectSignal(instance, handlerId);
|
|
72
73
|
return handler(...args);
|
|
73
74
|
};
|
|
74
|
-
handlerId = instance
|
|
75
|
+
handlerId = connectSignalByName(instance, signal, wrapped, isAfter);
|
|
75
76
|
trackListener(instance, signal, wrapped, handlerId);
|
|
76
77
|
trackListener(instance, signal, handler, handlerId);
|
|
77
78
|
}
|
|
@@ -89,11 +90,10 @@ function offSignal(instance, signal, handler) {
|
|
|
89
90
|
return;
|
|
90
91
|
}
|
|
91
92
|
untrackHandlerId(instance, signal, handlerId);
|
|
92
|
-
untrackConnection(instance, handlerId);
|
|
93
93
|
if (!isSignalHandlerConnected(instance, handlerId)) {
|
|
94
94
|
return;
|
|
95
95
|
}
|
|
96
|
-
instance
|
|
96
|
+
disconnectSignal(instance, handlerId);
|
|
97
97
|
}
|
|
98
98
|
export { onSignal, onceSignal, offSignal };
|
|
99
99
|
//# sourceMappingURL=listeners.js.map
|
package/dist/listeners.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"listeners.js","sourceRoot":"","sources":["../src/listeners.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"listeners.js","sourceRoot":"","sources":["../src/listeners.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n canonicalDetailedSignalName,\n connectSignalByName,\n disconnectSignal,\n isSignalHandlerConnected,\n type SignalHandler,\n} from \"./signal.js\";\n\nconst listenerTable: WeakMap<object, Map<string, Map<SignalHandler, number[]>>> = new WeakMap();\n\nconst findListenerHandlerId = (instance: object, signal: string, handler: SignalHandler): number | undefined =>\n listenerTable.get(instance)?.get(canonicalDetailedSignalName(signal))?.get(handler)?.at(-1);\n\nconst trackListener = (instance: object, signal: string, handler: SignalHandler, handlerId: number): void => {\n const key = canonicalDetailedSignalName(signal);\n let bySignal = listenerTable.get(instance);\n\n if (!bySignal) {\n bySignal = new Map();\n listenerTable.set(instance, bySignal);\n }\n\n let byHandler = bySignal.get(key);\n\n if (!byHandler) {\n byHandler = new Map();\n bySignal.set(key, byHandler);\n }\n\n let handlerIds = byHandler.get(handler);\n\n if (!handlerIds) {\n handlerIds = [];\n byHandler.set(handler, handlerIds);\n }\n\n handlerIds.push(handlerId);\n};\n\nconst removeTrackedHandlerId = (handlerIds: number[], handlerId: number): number => {\n const index = handlerIds.lastIndexOf(handlerId);\n\n if (index !== -1) {\n handlerIds.splice(index, 1);\n }\n\n return handlerIds.length;\n};\n\nconst untrackHandlerId = (instance: object, signal: string, handlerId: number): void => {\n const key = canonicalDetailedSignalName(signal);\n const bySignal = listenerTable.get(instance);\n const byHandler = bySignal?.get(key);\n\n if (byHandler === undefined) {\n return;\n }\n\n for (const [handler, handlerIds] of byHandler) {\n if (removeTrackedHandlerId(handlerIds, handlerId) === 0) {\n byHandler.delete(handler);\n }\n }\n\n if (byHandler.size === 0) {\n bySignal?.delete(key);\n }\n};\n\n/**\n * Connects a handler to a signal and tracks it so it can later be removed with\n * {@link offSignal}.\n *\n * @param instance The object emitting the signal.\n * @param signal The signal name to connect to.\n * @param handler The callback invoked on each emission.\n * @param isAfter When true, run the handler after the default handler.\n */\nfunction onSignal(instance: object, signal: string, handler: SignalHandler, isAfter?: boolean): void {\n const handlerId = connectSignalByName(instance, signal, handler, isAfter);\n trackListener(instance, signal, handler, handlerId);\n}\n\n/**\n * Connects a handler that runs at most once, disconnecting itself after the first\n * emission.\n *\n * @param instance The object emitting the signal.\n * @param signal The signal name to connect to.\n * @param handler The callback invoked on the first emission.\n * @param isAfter When true, run the handler after the default handler.\n */\nfunction onceSignal(instance: object, signal: string, handler: SignalHandler, isAfter?: boolean): void {\n let handlerId = 0;\n\n const wrapped: SignalHandler = (...args) => {\n untrackHandlerId(instance, signal, handlerId);\n disconnectSignal(instance, handlerId);\n\n return handler(...args);\n };\n\n handlerId = connectSignalByName(instance, signal, wrapped, isAfter);\n trackListener(instance, signal, wrapped, handlerId);\n trackListener(instance, signal, handler, handlerId);\n}\n\n/**\n * Disconnects a handler previously connected with {@link onSignal} or\n * {@link onceSignal}. Does nothing if the handler is not currently connected.\n *\n * @param instance The object the handler was connected to.\n * @param signal The signal name the handler was connected to.\n * @param handler The handler to disconnect.\n */\nfunction offSignal(instance: object, signal: string, handler: SignalHandler): void {\n const handlerId = findListenerHandlerId(instance, signal, handler);\n\n if (handlerId === undefined) {\n return;\n }\n\n untrackHandlerId(instance, signal, handlerId);\n\n if (!isSignalHandlerConnected(instance, handlerId)) {\n return;\n }\n\n disconnectSignal(instance, handlerId);\n}\n\nexport { onSignal, onceSignal, offSignal };\n"]}
|
package/dist/mixin.d.ts
CHANGED
|
@@ -14,7 +14,8 @@ type MixinReceiver = {
|
|
|
14
14
|
* be merged onto a target prototype.
|
|
15
15
|
*/
|
|
16
16
|
type Mixin = (base: AnyClass<MixinReceiver>) => AnyClass;
|
|
17
|
-
declare function
|
|
17
|
+
declare function markSyntheticSignalMembers(klass: AnyClass, names: readonly string[]): void;
|
|
18
|
+
declare function copyLayerMembers(target: AnyClass, layer: object, inheritedOverrides?: Set<string>): void;
|
|
18
19
|
/**
|
|
19
20
|
* Copies each mixin's prototype members onto the target class prototype, skipping
|
|
20
21
|
* any member already defined anywhere in the target's class chain.
|
|
@@ -22,7 +23,8 @@ declare function copyLayerMembers(target: AnyClass, layer: object): void;
|
|
|
22
23
|
* @param target The class whose prototype receives the mixin members.
|
|
23
24
|
* @param mixins The mixins to apply, in order.
|
|
24
25
|
*/
|
|
25
|
-
declare function installMixins(target: AnyClass, mixins: Mixin[]): void;
|
|
26
|
+
declare function installMixins(target: AnyClass, mixins: Mixin[], inheritedOverrideNames?: Iterable<string>): void;
|
|
27
|
+
declare function createMixinLayer(parent: AnyClass<MixinReceiver>, mixin: Mixin, inheritedNames: Set<string>): AnyClass;
|
|
26
28
|
declare function insertMixinLayer(target: AnyClass, mixin: Mixin, inheritedNames: Set<string>): void;
|
|
27
|
-
export { copyLayerMembers, insertMixinLayer, installMixins, type MixinReceiver, type Mixin };
|
|
29
|
+
export { copyLayerMembers, createMixinLayer, insertMixinLayer, installMixins, markSyntheticSignalMembers, type MixinReceiver, type Mixin, };
|
|
28
30
|
//# sourceMappingURL=mixin.d.ts.map
|
package/dist/mixin.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mixin.d.ts","sourceRoot":"","sources":["../src/mixin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,QAAQ,EAAkB,MAAM,aAAa,CAAC;AAE5D;;;GAGG;AACH,KAAK,aAAa,GAAG;IACjB,iEAAiE;IACjE,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAC7F,0FAA0F;IAC1F,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;CACrD,CAAC;AAEF;;;GAGG;AACH,KAAK,KAAK,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,aAAa,CAAC,KAAK,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"mixin.d.ts","sourceRoot":"","sources":["../src/mixin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,QAAQ,EAAkB,MAAM,aAAa,CAAC;AAE5D;;;GAGG;AACH,KAAK,aAAa,GAAG;IACjB,iEAAiE;IACjE,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAC7F,0FAA0F;IAC1F,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;CACrD,CAAC;AAEF;;;GAGG;AACH,KAAK,KAAK,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,aAAa,CAAC,KAAK,QAAQ,CAAC;AAIzD,iBAAS,0BAA0B,CAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI,CAEnF;AAgDD,iBAAS,gBAAgB,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,kBAAkB,GAAE,GAAG,CAAC,MAAM,CAAa,GAAG,IAAI,CAI5G;AAED;;;;;;GAMG;AACH,iBAAS,aAAa,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,sBAAsB,GAAE,QAAQ,CAAC,MAAM,CAAM,GAAG,IAAI,CAe7G;AAQD,iBAAS,gBAAgB,CAAC,MAAM,EAAE,QAAQ,CAAC,aAAa,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,cAAc,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,QAAQ,CAa9G;AAED,iBAAS,gBAAgB,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,cAAc,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,IAAI,CAK3F;AAED,OAAO,EACH,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,aAAa,EACb,0BAA0B,EAC1B,KAAK,aAAa,EAClB,KAAK,KAAK,GACb,CAAC"}
|