@gtkx/ffi 0.4.1 → 0.4.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.
Files changed (192) hide show
  1. package/dist/codegen/ffi-generator.d.ts +8 -0
  2. package/dist/codegen/ffi-generator.js +100 -35
  3. package/dist/generated/gdk/content-provider.d.ts +1 -2
  4. package/dist/generated/gdk/content-provider.js +5 -7
  5. package/dist/generated/gdk/functions.d.ts +1 -1
  6. package/dist/generated/gdk/functions.js +5 -7
  7. package/dist/generated/gdk/monitor.d.ts +2 -2
  8. package/dist/generated/gdk/monitor.js +5 -7
  9. package/dist/generated/gdk/rectangle.d.ts +2 -3
  10. package/dist/generated/gdk/rectangle.js +10 -14
  11. package/dist/generated/gio/action-group.d.ts +1 -1
  12. package/dist/generated/gio/action-group.js +10 -1
  13. package/dist/generated/gio/application.d.ts +1 -1
  14. package/dist/generated/gio/application.js +10 -1
  15. package/dist/generated/gio/dbus-action-group.d.ts +1 -1
  16. package/dist/generated/gio/dbus-action-group.js +10 -1
  17. package/dist/generated/gio/dbus-connection.d.ts +2 -2
  18. package/dist/generated/gio/dbus-connection.js +4 -0
  19. package/dist/generated/gio/dbus-proxy.d.ts +2 -2
  20. package/dist/generated/gio/dbus-proxy.js +4 -0
  21. package/dist/generated/gio/dtls-connection.d.ts +2 -2
  22. package/dist/generated/gio/dtls-connection.js +5 -7
  23. package/dist/generated/gio/file-enumerator.d.ts +1 -1
  24. package/dist/generated/gio/file-enumerator.js +4 -0
  25. package/dist/generated/gio/file.d.ts +1 -1
  26. package/dist/generated/gio/file.js +1 -0
  27. package/dist/generated/gio/functions.d.ts +5 -4
  28. package/dist/generated/gio/functions.js +9 -7
  29. package/dist/generated/gio/menu-attribute-iter.d.ts +1 -1
  30. package/dist/generated/gio/menu-attribute-iter.js +4 -1
  31. package/dist/generated/gio/menu-link-iter.d.ts +1 -1
  32. package/dist/generated/gio/menu-link-iter.js +4 -1
  33. package/dist/generated/gio/simple-action-group.d.ts +1 -1
  34. package/dist/generated/gio/simple-action-group.js +10 -1
  35. package/dist/generated/gio/socket-listener.d.ts +5 -5
  36. package/dist/generated/gio/socket-listener.js +10 -0
  37. package/dist/generated/gio/socket.d.ts +3 -3
  38. package/dist/generated/gio/socket.js +6 -0
  39. package/dist/generated/gio/subprocess.d.ts +2 -2
  40. package/dist/generated/gio/subprocess.js +8 -0
  41. package/dist/generated/gio/task.d.ts +1 -2
  42. package/dist/generated/gio/task.js +5 -7
  43. package/dist/generated/gio/tls-connection.d.ts +2 -2
  44. package/dist/generated/gio/tls-connection.js +5 -7
  45. package/dist/generated/glib/bookmark-file.d.ts +1 -1
  46. package/dist/generated/glib/bookmark-file.js +2 -0
  47. package/dist/generated/glib/functions.d.ts +3 -3
  48. package/dist/generated/glib/functions.js +6 -0
  49. package/dist/generated/glib/regex.d.ts +5 -4
  50. package/dist/generated/glib/regex.js +12 -2
  51. package/dist/generated/gobject/closure.d.ts +1 -2
  52. package/dist/generated/gobject/closure.js +5 -7
  53. package/dist/generated/gobject/functions.d.ts +1 -1
  54. package/dist/generated/gobject/functions.js +1 -0
  55. package/dist/generated/graphene/box.d.ts +11 -10
  56. package/dist/generated/graphene/box.js +50 -70
  57. package/dist/generated/graphene/euler.d.ts +4 -5
  58. package/dist/generated/graphene/euler.js +20 -28
  59. package/dist/generated/graphene/matrix.d.ts +24 -23
  60. package/dist/generated/graphene/matrix.js +135 -189
  61. package/dist/generated/graphene/plane.d.ts +4 -5
  62. package/dist/generated/graphene/plane.js +20 -28
  63. package/dist/generated/graphene/point.d.ts +2 -2
  64. package/dist/generated/graphene/point.js +10 -14
  65. package/dist/generated/graphene/point3d.d.ts +7 -8
  66. package/dist/generated/graphene/point3d.js +35 -49
  67. package/dist/generated/graphene/quad.d.ts +1 -2
  68. package/dist/generated/graphene/quad.js +5 -7
  69. package/dist/generated/graphene/quaternion.d.ts +9 -9
  70. package/dist/generated/graphene/quaternion.js +45 -63
  71. package/dist/generated/graphene/ray.d.ts +4 -4
  72. package/dist/generated/graphene/ray.js +20 -28
  73. package/dist/generated/graphene/rect.d.ts +15 -15
  74. package/dist/generated/graphene/rect.js +75 -105
  75. package/dist/generated/graphene/size.d.ts +2 -3
  76. package/dist/generated/graphene/size.js +10 -14
  77. package/dist/generated/graphene/sphere.d.ts +4 -4
  78. package/dist/generated/graphene/sphere.js +15 -21
  79. package/dist/generated/graphene/triangle.d.ts +10 -9
  80. package/dist/generated/graphene/triangle.js +60 -84
  81. package/dist/generated/graphene/vec2.d.ts +10 -10
  82. package/dist/generated/graphene/vec2.js +50 -70
  83. package/dist/generated/graphene/vec3.d.ts +18 -16
  84. package/dist/generated/graphene/vec3.js +80 -112
  85. package/dist/generated/graphene/vec4.d.ts +12 -12
  86. package/dist/generated/graphene/vec4.js +60 -84
  87. package/dist/generated/gsk/functions.d.ts +2 -1
  88. package/dist/generated/gsk/functions.js +3 -1
  89. package/dist/generated/gsk/path-measure.d.ts +2 -2
  90. package/dist/generated/gsk/path-measure.js +5 -7
  91. package/dist/generated/gsk/path-point.d.ts +4 -4
  92. package/dist/generated/gsk/path-point.js +15 -21
  93. package/dist/generated/gsk/path.d.ts +6 -5
  94. package/dist/generated/gsk/path.js +25 -35
  95. package/dist/generated/gsk/render-node.d.ts +3 -3
  96. package/dist/generated/gsk/render-node.js +10 -14
  97. package/dist/generated/gsk/transform.d.ts +4 -4
  98. package/dist/generated/gsk/transform.js +18 -22
  99. package/dist/generated/gtk/bitset-iter.d.ts +3 -3
  100. package/dist/generated/gtk/bitset-iter.js +15 -21
  101. package/dist/generated/gtk/builder.d.ts +2 -3
  102. package/dist/generated/gtk/builder.js +10 -14
  103. package/dist/generated/gtk/cell-area.d.ts +3 -3
  104. package/dist/generated/gtk/cell-area.js +15 -21
  105. package/dist/generated/gtk/cell-renderer.d.ts +3 -2
  106. package/dist/generated/gtk/cell-renderer.js +15 -21
  107. package/dist/generated/gtk/color-button.d.ts +1 -2
  108. package/dist/generated/gtk/color-button.js +5 -7
  109. package/dist/generated/gtk/color-chooser-dialog.d.ts +1 -2
  110. package/dist/generated/gtk/color-chooser-dialog.js +5 -7
  111. package/dist/generated/gtk/color-chooser-widget.d.ts +1 -2
  112. package/dist/generated/gtk/color-chooser-widget.js +5 -7
  113. package/dist/generated/gtk/color-chooser.d.ts +1 -2
  114. package/dist/generated/gtk/color-chooser.js +5 -7
  115. package/dist/generated/gtk/column-view.d.ts +2 -2
  116. package/dist/generated/gtk/column-view.js +5 -7
  117. package/dist/generated/gtk/combo-box.d.ts +1 -2
  118. package/dist/generated/gtk/combo-box.js +5 -7
  119. package/dist/generated/gtk/entry.d.ts +1 -1
  120. package/dist/generated/gtk/entry.js +5 -7
  121. package/dist/generated/gtk/font-dialog.d.ts +2 -2
  122. package/dist/generated/gtk/functions.d.ts +5 -4
  123. package/dist/generated/gtk/functions.js +21 -22
  124. package/dist/generated/gtk/gesture.d.ts +1 -1
  125. package/dist/generated/gtk/gesture.js +5 -7
  126. package/dist/generated/gtk/icon-view.d.ts +9 -7
  127. package/dist/generated/gtk/icon-view.js +39 -25
  128. package/dist/generated/gtk/imcontext.d.ts +2 -1
  129. package/dist/generated/gtk/imcontext.js +1 -0
  130. package/dist/generated/gtk/list-base.d.ts +2 -2
  131. package/dist/generated/gtk/list-base.js +5 -7
  132. package/dist/generated/gtk/list-store.d.ts +13 -13
  133. package/dist/generated/gtk/list-store.js +65 -91
  134. package/dist/generated/gtk/overlay.js +1 -10
  135. package/dist/generated/gtk/popover.d.ts +1 -1
  136. package/dist/generated/gtk/popover.js +5 -7
  137. package/dist/generated/gtk/range.d.ts +2 -1
  138. package/dist/generated/gtk/range.js +5 -7
  139. package/dist/generated/gtk/recent-info.d.ts +1 -1
  140. package/dist/generated/gtk/recent-info.js +3 -1
  141. package/dist/generated/gtk/scrollable.d.ts +2 -2
  142. package/dist/generated/gtk/scrollable.js +5 -7
  143. package/dist/generated/gtk/style-context.d.ts +6 -6
  144. package/dist/generated/gtk/style-context.js +25 -35
  145. package/dist/generated/gtk/text-buffer.d.ts +10 -11
  146. package/dist/generated/gtk/text-buffer.js +60 -84
  147. package/dist/generated/gtk/text-iter.d.ts +2 -3
  148. package/dist/generated/gtk/text-iter.js +21 -29
  149. package/dist/generated/gtk/text-view.d.ts +8 -7
  150. package/dist/generated/gtk/text-view.js +40 -56
  151. package/dist/generated/gtk/text.d.ts +2 -1
  152. package/dist/generated/gtk/text.js +10 -14
  153. package/dist/generated/gtk/tree-model-filter.d.ts +9 -10
  154. package/dist/generated/gtk/tree-model-filter.js +45 -63
  155. package/dist/generated/gtk/tree-model-sort.d.ts +9 -9
  156. package/dist/generated/gtk/tree-model-sort.js +45 -63
  157. package/dist/generated/gtk/tree-model.d.ts +8 -8
  158. package/dist/generated/gtk/tree-model.js +35 -49
  159. package/dist/generated/gtk/tree-selection.d.ts +3 -2
  160. package/dist/generated/gtk/tree-selection.js +13 -9
  161. package/dist/generated/gtk/tree-store.d.ts +13 -13
  162. package/dist/generated/gtk/tree-store.js +65 -91
  163. package/dist/generated/gtk/tree-view.d.ts +11 -10
  164. package/dist/generated/gtk/tree-view.js +55 -40
  165. package/dist/generated/gtk/viewport.d.ts +2 -2
  166. package/dist/generated/gtk/viewport.js +5 -7
  167. package/dist/generated/gtk/widget.d.ts +6 -5
  168. package/dist/generated/gtk/widget.js +30 -42
  169. package/dist/generated/gtksource/buffer.d.ts +4 -4
  170. package/dist/generated/gtksource/buffer.js +12 -4
  171. package/dist/generated/gtksource/completion-context.d.ts +2 -2
  172. package/dist/generated/gtksource/completion-context.js +10 -14
  173. package/dist/generated/gtksource/gutter-lines.d.ts +1 -1
  174. package/dist/generated/gtksource/gutter-lines.js +5 -7
  175. package/dist/generated/gtksource/hover-context.d.ts +3 -3
  176. package/dist/generated/gtksource/hover-context.js +15 -21
  177. package/dist/generated/gtksource/indenter.d.ts +1 -1
  178. package/dist/generated/gtksource/indenter.js +2 -1
  179. package/dist/generated/gtksource/mark-attributes.d.ts +1 -2
  180. package/dist/generated/gtksource/mark-attributes.js +5 -7
  181. package/dist/generated/gtksource/region.d.ts +1 -1
  182. package/dist/generated/gtksource/region.js +10 -14
  183. package/dist/generated/gtksource/search-context.d.ts +4 -4
  184. package/dist/generated/gtksource/search-context.js +40 -56
  185. package/dist/generated/harfbuzz/functions.d.ts +16 -16
  186. package/dist/generated/harfbuzz/functions.js +100 -140
  187. package/dist/generated/pango/attr-iterator.d.ts +2 -1
  188. package/dist/generated/pango/attr-iterator.js +2 -0
  189. package/dist/generated/pango/functions.d.ts +7 -6
  190. package/dist/generated/pango/functions.js +24 -28
  191. package/dist/registry.d.ts +4 -4
  192. package/package.json +3 -3
@@ -145,14 +145,12 @@ export class Triangle {
145
145
  },
146
146
  {
147
147
  type: {
148
- type: "ref",
149
- innerType: {
150
- type: "boxed",
151
- innerType: "GrapheneVec2",
152
- lib: "libgraphene-1.0.so.0",
153
- },
148
+ type: "boxed",
149
+ borrowed: true,
150
+ innerType: "GrapheneVec2",
151
+ lib: "libgraphene-1.0.so.0",
154
152
  },
155
- value: res,
153
+ value: res?.id ?? res,
156
154
  },
157
155
  ], { type: "boolean" });
158
156
  }
@@ -173,14 +171,12 @@ export class Triangle {
173
171
  },
174
172
  {
175
173
  type: {
176
- type: "ref",
177
- innerType: {
178
- type: "boxed",
179
- innerType: "GrapheneBox",
180
- lib: "libgraphene-1.0.so.0",
181
- },
174
+ type: "boxed",
175
+ borrowed: true,
176
+ innerType: "GrapheneBox",
177
+ lib: "libgraphene-1.0.so.0",
182
178
  },
183
- value: res,
179
+ value: res?.id ?? res,
184
180
  },
185
181
  ], { type: "undefined" });
186
182
  }
@@ -204,14 +200,12 @@ export class Triangle {
204
200
  },
205
201
  {
206
202
  type: {
207
- type: "ref",
208
- innerType: {
209
- type: "boxed",
210
- innerType: "GraphenePoint3D",
211
- lib: "libgraphene-1.0.so.0",
212
- },
203
+ type: "boxed",
204
+ borrowed: true,
205
+ innerType: "GraphenePoint3D",
206
+ lib: "libgraphene-1.0.so.0",
213
207
  },
214
- value: res,
208
+ value: res?.id ?? res,
215
209
  },
216
210
  ], { type: "undefined" });
217
211
  }
@@ -232,14 +226,12 @@ export class Triangle {
232
226
  },
233
227
  {
234
228
  type: {
235
- type: "ref",
236
- innerType: {
237
- type: "boxed",
238
- innerType: "GrapheneVec3",
239
- lib: "libgraphene-1.0.so.0",
240
- },
229
+ type: "boxed",
230
+ borrowed: true,
231
+ innerType: "GrapheneVec3",
232
+ lib: "libgraphene-1.0.so.0",
241
233
  },
242
- value: res,
234
+ value: res?.id ?? res,
243
235
  },
244
236
  ], { type: "undefined" });
245
237
  }
@@ -260,14 +252,12 @@ export class Triangle {
260
252
  },
261
253
  {
262
254
  type: {
263
- type: "ref",
264
- innerType: {
265
- type: "boxed",
266
- innerType: "GraphenePlane",
267
- lib: "libgraphene-1.0.so.0",
268
- },
255
+ type: "boxed",
256
+ borrowed: true,
257
+ innerType: "GraphenePlane",
258
+ lib: "libgraphene-1.0.so.0",
269
259
  },
270
- value: res,
260
+ value: res?.id ?? res,
271
261
  },
272
262
  ], { type: "undefined" });
273
263
  }
@@ -291,38 +281,32 @@ export class Triangle {
291
281
  },
292
282
  {
293
283
  type: {
294
- type: "ref",
295
- innerType: {
296
- type: "boxed",
297
- innerType: "GraphenePoint3D",
298
- lib: "libgraphene-1.0.so.0",
299
- },
284
+ type: "boxed",
285
+ borrowed: true,
286
+ innerType: "GraphenePoint3D",
287
+ lib: "libgraphene-1.0.so.0",
300
288
  },
301
- value: a,
289
+ value: a?.id ?? a,
302
290
  optional: true,
303
291
  },
304
292
  {
305
293
  type: {
306
- type: "ref",
307
- innerType: {
308
- type: "boxed",
309
- innerType: "GraphenePoint3D",
310
- lib: "libgraphene-1.0.so.0",
311
- },
294
+ type: "boxed",
295
+ borrowed: true,
296
+ innerType: "GraphenePoint3D",
297
+ lib: "libgraphene-1.0.so.0",
312
298
  },
313
- value: b,
299
+ value: b?.id ?? b,
314
300
  optional: true,
315
301
  },
316
302
  {
317
303
  type: {
318
- type: "ref",
319
- innerType: {
320
- type: "boxed",
321
- innerType: "GraphenePoint3D",
322
- lib: "libgraphene-1.0.so.0",
323
- },
304
+ type: "boxed",
305
+ borrowed: true,
306
+ innerType: "GraphenePoint3D",
307
+ lib: "libgraphene-1.0.so.0",
324
308
  },
325
- value: c,
309
+ value: c?.id ?? c,
326
310
  optional: true,
327
311
  },
328
312
  ], { type: "undefined" });
@@ -396,14 +380,12 @@ export class Triangle {
396
380
  },
397
381
  {
398
382
  type: {
399
- type: "ref",
400
- innerType: {
401
- type: "boxed",
402
- innerType: "GrapheneVec2",
403
- lib: "libgraphene-1.0.so.0",
404
- },
383
+ type: "boxed",
384
+ borrowed: true,
385
+ innerType: "GrapheneVec2",
386
+ lib: "libgraphene-1.0.so.0",
405
387
  },
406
- value: res,
388
+ value: res?.id ?? res,
407
389
  },
408
390
  ], { type: "boolean" });
409
391
  }
@@ -426,38 +408,32 @@ export class Triangle {
426
408
  },
427
409
  {
428
410
  type: {
429
- type: "ref",
430
- innerType: {
431
- type: "boxed",
432
- innerType: "GrapheneVec3",
433
- lib: "libgraphene-1.0.so.0",
434
- },
411
+ type: "boxed",
412
+ borrowed: true,
413
+ innerType: "GrapheneVec3",
414
+ lib: "libgraphene-1.0.so.0",
435
415
  },
436
- value: a,
416
+ value: a?.id ?? a,
437
417
  optional: true,
438
418
  },
439
419
  {
440
420
  type: {
441
- type: "ref",
442
- innerType: {
443
- type: "boxed",
444
- innerType: "GrapheneVec3",
445
- lib: "libgraphene-1.0.so.0",
446
- },
421
+ type: "boxed",
422
+ borrowed: true,
423
+ innerType: "GrapheneVec3",
424
+ lib: "libgraphene-1.0.so.0",
447
425
  },
448
- value: b,
426
+ value: b?.id ?? b,
449
427
  optional: true,
450
428
  },
451
429
  {
452
430
  type: {
453
- type: "ref",
454
- innerType: {
455
- type: "boxed",
456
- innerType: "GrapheneVec3",
457
- lib: "libgraphene-1.0.so.0",
458
- },
431
+ type: "boxed",
432
+ borrowed: true,
433
+ innerType: "GrapheneVec3",
434
+ lib: "libgraphene-1.0.so.0",
459
435
  },
460
- value: c,
436
+ value: c?.id ?? c,
461
437
  optional: true,
462
438
  },
463
439
  ], { type: "undefined" });
@@ -39,7 +39,7 @@ export declare class Vec2 {
39
39
  * @param b - a #graphene_vec2_t
40
40
  * @param res - return location for the result
41
41
  */
42
- add(b: Vec2, res: Ref<unknown>): void;
42
+ add(b: Vec2, res: Vec2): void;
43
43
  /**
44
44
  * Divides each component of the first operand `a` by the corresponding
45
45
  * component of the second operand @b, and places the results into the
@@ -47,7 +47,7 @@ export declare class Vec2 {
47
47
  * @param b - a #graphene_vec2_t
48
48
  * @param res - return location for the result
49
49
  */
50
- divide(b: Vec2, res: Ref<unknown>): void;
50
+ divide(b: Vec2, res: Vec2): void;
51
51
  /**
52
52
  * Computes the dot product of the two given vectors.
53
53
  * @param b - a #graphene_vec2_t
@@ -94,7 +94,7 @@ export declare class Vec2 {
94
94
  * @param factor - the interpolation factor
95
95
  * @param res - the interpolated vector
96
96
  */
97
- interpolate(v2: Vec2, factor: number, res: Ref<unknown>): void;
97
+ interpolate(v2: Vec2, factor: number, res: Vec2): void;
98
98
  /**
99
99
  * Computes the length of the given vector.
100
100
  */
@@ -105,21 +105,21 @@ export declare class Vec2 {
105
105
  * @param b - a #graphene_vec2_t
106
106
  * @param res - the resulting vector
107
107
  */
108
- max(b: Vec2, res: Ref<unknown>): void;
108
+ max(b: Vec2, res: Vec2): void;
109
109
  /**
110
110
  * Compares the two given vectors and places the minimum
111
111
  * values of each component into @res.
112
112
  * @param b - a #graphene_vec2_t
113
113
  * @param res - the resulting vector
114
114
  */
115
- min(b: Vec2, res: Ref<unknown>): void;
115
+ min(b: Vec2, res: Vec2): void;
116
116
  /**
117
117
  * Multiplies each component of the two passed vectors and places
118
118
  * each result into the components of @res.
119
119
  * @param b - a #graphene_vec2_t
120
120
  * @param res - return location for the result
121
121
  */
122
- multiply(b: Vec2, res: Ref<unknown>): void;
122
+ multiply(b: Vec2, res: Vec2): void;
123
123
  /**
124
124
  * Compares the two given #graphene_vec2_t vectors and checks
125
125
  * whether their values are within the given @epsilon.
@@ -131,18 +131,18 @@ export declare class Vec2 {
131
131
  * Negates the given #graphene_vec2_t.
132
132
  * @param res - return location for the result vector
133
133
  */
134
- negate(res: Ref<unknown>): void;
134
+ negate(res: Vec2): void;
135
135
  /**
136
136
  * Computes the normalized vector for the given vector @v.
137
137
  * @param res - return location for the
138
138
  */
139
- normalize(res: Ref<unknown>): void;
139
+ normalize(res: Vec2): void;
140
140
  /**
141
141
  * Multiplies all components of the given vector with the given scalar @factor.
142
142
  * @param factor - the scalar factor
143
143
  * @param res - return location for the result vector
144
144
  */
145
- scale(factor: number, res: Ref<unknown>): void;
145
+ scale(factor: number, res: Vec2): void;
146
146
  /**
147
147
  * Subtracts from each component of the first operand `a` the
148
148
  * corresponding component of the second operand `b` and places
@@ -150,7 +150,7 @@ export declare class Vec2 {
150
150
  * @param b - a #graphene_vec2_t
151
151
  * @param res - return location for the result
152
152
  */
153
- subtract(b: Vec2, res: Ref<unknown>): void;
153
+ subtract(b: Vec2, res: Vec2): void;
154
154
  /**
155
155
  * Stores the components of `v` into an array.
156
156
  * @param dest - return location
@@ -101,14 +101,12 @@ export class Vec2 {
101
101
  },
102
102
  {
103
103
  type: {
104
- type: "ref",
105
- innerType: {
106
- type: "boxed",
107
- innerType: "GrapheneVec2",
108
- lib: "libgraphene-1.0.so.0",
109
- },
104
+ type: "boxed",
105
+ borrowed: true,
106
+ innerType: "GrapheneVec2",
107
+ lib: "libgraphene-1.0.so.0",
110
108
  },
111
- value: res,
109
+ value: res?.id ?? res,
112
110
  },
113
111
  ], { type: "undefined" });
114
112
  }
@@ -141,14 +139,12 @@ export class Vec2 {
141
139
  },
142
140
  {
143
141
  type: {
144
- type: "ref",
145
- innerType: {
146
- type: "boxed",
147
- innerType: "GrapheneVec2",
148
- lib: "libgraphene-1.0.so.0",
149
- },
142
+ type: "boxed",
143
+ borrowed: true,
144
+ innerType: "GrapheneVec2",
145
+ lib: "libgraphene-1.0.so.0",
150
146
  },
151
- value: res,
147
+ value: res?.id ?? res,
152
148
  },
153
149
  ], { type: "undefined" });
154
150
  }
@@ -377,14 +373,12 @@ export class Vec2 {
377
373
  },
378
374
  {
379
375
  type: {
380
- type: "ref",
381
- innerType: {
382
- type: "boxed",
383
- innerType: "GrapheneVec2",
384
- lib: "libgraphene-1.0.so.0",
385
- },
376
+ type: "boxed",
377
+ borrowed: true,
378
+ innerType: "GrapheneVec2",
379
+ lib: "libgraphene-1.0.so.0",
386
380
  },
387
- value: res,
381
+ value: res?.id ?? res,
388
382
  },
389
383
  ], { type: "undefined" });
390
384
  }
@@ -432,14 +426,12 @@ export class Vec2 {
432
426
  },
433
427
  {
434
428
  type: {
435
- type: "ref",
436
- innerType: {
437
- type: "boxed",
438
- innerType: "GrapheneVec2",
439
- lib: "libgraphene-1.0.so.0",
440
- },
429
+ type: "boxed",
430
+ borrowed: true,
431
+ innerType: "GrapheneVec2",
432
+ lib: "libgraphene-1.0.so.0",
441
433
  },
442
- value: res,
434
+ value: res?.id ?? res,
443
435
  },
444
436
  ], { type: "undefined" });
445
437
  }
@@ -471,14 +463,12 @@ export class Vec2 {
471
463
  },
472
464
  {
473
465
  type: {
474
- type: "ref",
475
- innerType: {
476
- type: "boxed",
477
- innerType: "GrapheneVec2",
478
- lib: "libgraphene-1.0.so.0",
479
- },
466
+ type: "boxed",
467
+ borrowed: true,
468
+ innerType: "GrapheneVec2",
469
+ lib: "libgraphene-1.0.so.0",
480
470
  },
481
- value: res,
471
+ value: res?.id ?? res,
482
472
  },
483
473
  ], { type: "undefined" });
484
474
  }
@@ -510,14 +500,12 @@ export class Vec2 {
510
500
  },
511
501
  {
512
502
  type: {
513
- type: "ref",
514
- innerType: {
515
- type: "boxed",
516
- innerType: "GrapheneVec2",
517
- lib: "libgraphene-1.0.so.0",
518
- },
503
+ type: "boxed",
504
+ borrowed: true,
505
+ innerType: "GrapheneVec2",
506
+ lib: "libgraphene-1.0.so.0",
519
507
  },
520
- value: res,
508
+ value: res?.id ?? res,
521
509
  },
522
510
  ], { type: "undefined" });
523
511
  }
@@ -570,14 +558,12 @@ export class Vec2 {
570
558
  },
571
559
  {
572
560
  type: {
573
- type: "ref",
574
- innerType: {
575
- type: "boxed",
576
- innerType: "GrapheneVec2",
577
- lib: "libgraphene-1.0.so.0",
578
- },
561
+ type: "boxed",
562
+ borrowed: true,
563
+ innerType: "GrapheneVec2",
564
+ lib: "libgraphene-1.0.so.0",
579
565
  },
580
- value: res,
566
+ value: res?.id ?? res,
581
567
  },
582
568
  ], { type: "undefined" });
583
569
  }
@@ -598,14 +584,12 @@ export class Vec2 {
598
584
  },
599
585
  {
600
586
  type: {
601
- type: "ref",
602
- innerType: {
603
- type: "boxed",
604
- innerType: "GrapheneVec2",
605
- lib: "libgraphene-1.0.so.0",
606
- },
587
+ type: "boxed",
588
+ borrowed: true,
589
+ innerType: "GrapheneVec2",
590
+ lib: "libgraphene-1.0.so.0",
607
591
  },
608
- value: res,
592
+ value: res?.id ?? res,
609
593
  },
610
594
  ], { type: "undefined" });
611
595
  }
@@ -631,14 +615,12 @@ export class Vec2 {
631
615
  },
632
616
  {
633
617
  type: {
634
- type: "ref",
635
- innerType: {
636
- type: "boxed",
637
- innerType: "GrapheneVec2",
638
- lib: "libgraphene-1.0.so.0",
639
- },
618
+ type: "boxed",
619
+ borrowed: true,
620
+ innerType: "GrapheneVec2",
621
+ lib: "libgraphene-1.0.so.0",
640
622
  },
641
- value: res,
623
+ value: res?.id ?? res,
642
624
  },
643
625
  ], { type: "undefined" });
644
626
  }
@@ -671,14 +653,12 @@ export class Vec2 {
671
653
  },
672
654
  {
673
655
  type: {
674
- type: "ref",
675
- innerType: {
676
- type: "boxed",
677
- innerType: "GrapheneVec2",
678
- lib: "libgraphene-1.0.so.0",
679
- },
656
+ type: "boxed",
657
+ borrowed: true,
658
+ innerType: "GrapheneVec2",
659
+ lib: "libgraphene-1.0.so.0",
680
660
  },
681
- value: res,
661
+ value: res?.id ?? res,
682
662
  },
683
663
  ], { type: "undefined" });
684
664
  }
@@ -1,4 +1,6 @@
1
1
  import { Ref } from "@gtkx/native";
2
+ import { Vec2 } from "./vec2.js";
3
+ import { Vec4 } from "./vec4.js";
2
4
  /**
3
5
  * A structure capable of holding a vector with three dimensions: x, y, and z.
4
6
  *
@@ -47,13 +49,13 @@ export declare class Vec3 {
47
49
  * @param b - a #graphene_vec3_t
48
50
  * @param res - return location for the resulting vector
49
51
  */
50
- add(b: Vec3, res: Ref<unknown>): void;
52
+ add(b: Vec3, res: Vec3): void;
51
53
  /**
52
54
  * Computes the cross product of the two given vectors.
53
55
  * @param b - a #graphene_vec3_t
54
56
  * @param res - return location for the resulting vector
55
57
  */
56
- cross(b: Vec3, res: Ref<unknown>): void;
58
+ cross(b: Vec3, res: Vec3): void;
57
59
  /**
58
60
  * Divides each component of the first operand `a` by the corresponding
59
61
  * component of the second operand @b, and places the results into the
@@ -61,7 +63,7 @@ export declare class Vec3 {
61
63
  * @param b - a #graphene_vec3_t
62
64
  * @param res - return location for the resulting vector
63
65
  */
64
- divide(b: Vec3, res: Ref<unknown>): void;
66
+ divide(b: Vec3, res: Vec3): void;
65
67
  /**
66
68
  * Computes the dot product of the two given vectors.
67
69
  * @param b - a #graphene_vec3_t
@@ -85,32 +87,32 @@ export declare class Vec3 {
85
87
  * components of the given #graphene_vec3_t.
86
88
  * @param res - return location for a #graphene_vec2_t
87
89
  */
88
- getXy(res: Ref<unknown>): void;
90
+ getXy(res: Vec2): void;
89
91
  /**
90
92
  * Creates a #graphene_vec3_t that contains the first two components of
91
93
  * the given #graphene_vec3_t, and the third component set to 0.
92
94
  * @param res - return location for a #graphene_vec3_t
93
95
  */
94
- getXy0(res: Ref<unknown>): void;
96
+ getXy0(res: Vec3): void;
95
97
  /**
96
98
  * Converts a #graphene_vec3_t in a #graphene_vec4_t using 0.0
97
99
  * as the value for the fourth component of the resulting vector.
98
100
  * @param res - return location for the vector
99
101
  */
100
- getXyz0(res: Ref<unknown>): void;
102
+ getXyz0(res: Vec4): void;
101
103
  /**
102
104
  * Converts a #graphene_vec3_t in a #graphene_vec4_t using 1.0
103
105
  * as the value for the fourth component of the resulting vector.
104
106
  * @param res - return location for the vector
105
107
  */
106
- getXyz1(res: Ref<unknown>): void;
108
+ getXyz1(res: Vec4): void;
107
109
  /**
108
110
  * Converts a #graphene_vec3_t in a #graphene_vec4_t using `w` as
109
111
  * the value of the fourth component of the resulting vector.
110
112
  * @param w - the value of the W component
111
113
  * @param res - return location for the vector
112
114
  */
113
- getXyzw(w: number, res: Ref<unknown>): void;
115
+ getXyzw(w: number, res: Vec4): void;
114
116
  /**
115
117
  * Retrieves the second component of the given vector @v.
116
118
  */
@@ -145,7 +147,7 @@ export declare class Vec3 {
145
147
  * @param factor - the interpolation factor
146
148
  * @param res - the interpolated vector
147
149
  */
148
- interpolate(v2: Vec3, factor: number, res: Ref<unknown>): void;
150
+ interpolate(v2: Vec3, factor: number, res: Vec3): void;
149
151
  /**
150
152
  * Retrieves the length of the given vector @v.
151
153
  */
@@ -156,20 +158,20 @@ export declare class Vec3 {
156
158
  * @param b - a #graphene_vec3_t
157
159
  * @param res - return location for the result vector
158
160
  */
159
- max(b: Vec3, res: Ref<unknown>): void;
161
+ max(b: Vec3, res: Vec3): void;
160
162
  /**
161
163
  * Compares each component of the two given vectors and creates a
162
164
  * vector that contains the minimum values.
163
165
  * @param b - a #graphene_vec3_t
164
166
  * @param res - return location for the result vector
165
167
  */
166
- min(b: Vec3, res: Ref<unknown>): void;
168
+ min(b: Vec3, res: Vec3): void;
167
169
  /**
168
170
  * Multiplies each component of the two given vectors.
169
171
  * @param b - a #graphene_vec3_t
170
172
  * @param res - return location for the resulting vector
171
173
  */
172
- multiply(b: Vec3, res: Ref<unknown>): void;
174
+ multiply(b: Vec3, res: Vec3): void;
173
175
  /**
174
176
  * Compares the two given #graphene_vec3_t vectors and checks
175
177
  * whether their values are within the given @epsilon.
@@ -181,18 +183,18 @@ export declare class Vec3 {
181
183
  * Negates the given #graphene_vec3_t.
182
184
  * @param res - return location for the result vector
183
185
  */
184
- negate(res: Ref<unknown>): void;
186
+ negate(res: Vec3): void;
185
187
  /**
186
188
  * Normalizes the given #graphene_vec3_t.
187
189
  * @param res - return location for the normalized vector
188
190
  */
189
- normalize(res: Ref<unknown>): void;
191
+ normalize(res: Vec3): void;
190
192
  /**
191
193
  * Multiplies all components of the given vector with the given scalar @factor.
192
194
  * @param factor - the scalar factor
193
195
  * @param res - return location for the result vector
194
196
  */
195
- scale(factor: number, res: Ref<unknown>): void;
197
+ scale(factor: number, res: Vec3): void;
196
198
  /**
197
199
  * Subtracts from each component of the first operand `a` the
198
200
  * corresponding component of the second operand `b` and places
@@ -200,7 +202,7 @@ export declare class Vec3 {
200
202
  * @param b - a #graphene_vec3_t
201
203
  * @param res - return location for the resulting vector
202
204
  */
203
- subtract(b: Vec3, res: Ref<unknown>): void;
205
+ subtract(b: Vec3, res: Vec3): void;
204
206
  /**
205
207
  * Copies the components of a #graphene_vec3_t into the given array.
206
208
  * @param dest - return location for