@ts-for-gir/lib 4.0.0-beta.2 → 4.0.0-beta.21

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 (319) hide show
  1. package/lib/constants.d.ts +6 -7
  2. package/lib/constants.js +74 -9
  3. package/lib/constants.js.map +1 -1
  4. package/lib/dependency-manager.d.ts +60 -14
  5. package/lib/dependency-manager.js +148 -46
  6. package/lib/dependency-manager.js.map +1 -1
  7. package/lib/generators/dts-inline.d.ts +4 -2
  8. package/lib/generators/dts-inline.js +10 -12
  9. package/lib/generators/dts-inline.js.map +1 -1
  10. package/lib/generators/dts-modules.d.ts +4 -2
  11. package/lib/generators/dts-modules.js +12 -14
  12. package/lib/generators/dts-modules.js.map +1 -1
  13. package/lib/generators/dts.d.ts +2 -2
  14. package/lib/generators/dts.js +10 -9
  15. package/lib/generators/dts.js.map +1 -1
  16. package/lib/generators/generator.d.ts +3 -3
  17. package/lib/generators/generator.js.map +1 -1
  18. package/lib/generators/json.d.ts +6 -5
  19. package/lib/generators/json.js +18 -21
  20. package/lib/generators/json.js.map +1 -1
  21. package/lib/generics/clutter.d.ts +15 -0
  22. package/lib/generics/clutter.js +3 -0
  23. package/lib/generics/clutter.js.map +1 -1
  24. package/lib/generics/generify.js +11 -3
  25. package/lib/generics/generify.js.map +1 -1
  26. package/lib/generics/gtk.d.ts +7 -0
  27. package/lib/generics/gtk.js +56 -0
  28. package/lib/generics/gtk.js.map +1 -0
  29. package/lib/generics/meta.d.ts +15 -0
  30. package/lib/generics/meta.js +3 -0
  31. package/lib/generics/meta.js.map +1 -1
  32. package/lib/generics/st.d.ts +15 -0
  33. package/lib/generics/st.js +16 -10
  34. package/lib/generics/st.js.map +1 -1
  35. package/lib/generics/visitor.js +5 -9
  36. package/lib/generics/visitor.js.map +1 -1
  37. package/lib/gir/alias.d.ts +2 -2
  38. package/lib/gir/alias.js +3 -3
  39. package/lib/gir/alias.js.map +1 -1
  40. package/lib/gir/base.d.ts +3 -3
  41. package/lib/gir/base.js +2 -14
  42. package/lib/gir/base.js.map +1 -1
  43. package/lib/gir/class.d.ts +6 -7
  44. package/lib/gir/class.js +35 -108
  45. package/lib/gir/class.js.map +1 -1
  46. package/lib/gir/const.d.ts +2 -2
  47. package/lib/gir/const.js +1 -1
  48. package/lib/gir/const.js.map +1 -1
  49. package/lib/gir/enum.d.ts +5 -5
  50. package/lib/gir/enum.js +7 -7
  51. package/lib/gir/enum.js.map +1 -1
  52. package/lib/gir/function.d.ts +11 -10
  53. package/lib/gir/function.js +4 -4
  54. package/lib/gir/function.js.map +1 -1
  55. package/lib/gir/index.d.ts +14 -0
  56. package/lib/gir/index.js +15 -0
  57. package/lib/gir/index.js.map +1 -0
  58. package/lib/gir/nodes.d.ts +1 -1
  59. package/lib/gir/nodes.js +1 -1
  60. package/lib/gir/nodes.js.map +1 -1
  61. package/lib/gir/promisify.d.ts +5 -0
  62. package/lib/gir/promisify.js +158 -0
  63. package/lib/gir/promisify.js.map +1 -0
  64. package/lib/gir/property.d.ts +2 -2
  65. package/lib/gir/property.js.map +1 -1
  66. package/lib/gir/registry.d.ts +6 -6
  67. package/lib/gir/registry.js +6 -3
  68. package/lib/gir/registry.js.map +1 -1
  69. package/lib/gir/signal.d.ts +2 -2
  70. package/lib/gir/signal.js.map +1 -1
  71. package/lib/gir/util.d.ts +3 -3
  72. package/lib/gir/util.js +17 -14
  73. package/lib/gir/util.js.map +1 -1
  74. package/lib/gir-module.d.ts +27 -39
  75. package/lib/gir-module.js +161 -149
  76. package/lib/gir-module.js.map +1 -1
  77. package/lib/gir.d.ts +43 -40
  78. package/lib/gir.js +28 -27
  79. package/lib/gir.js.map +1 -1
  80. package/lib/index.d.ts +1 -2
  81. package/lib/index.js +1 -2
  82. package/lib/index.js.map +1 -1
  83. package/lib/injections/gio.js +133 -1
  84. package/lib/injections/gio.js.map +1 -1
  85. package/lib/injections/glib.js +6 -0
  86. package/lib/injections/glib.js.map +1 -1
  87. package/lib/injections/gobject.js +84 -64
  88. package/lib/injections/gobject.js.map +1 -1
  89. package/lib/injections/gtk4.d.ts +7 -0
  90. package/lib/injections/gtk4.js +19 -0
  91. package/lib/injections/gtk4.js.map +1 -0
  92. package/lib/injections/inject.js +5 -0
  93. package/lib/injections/inject.js.map +1 -1
  94. package/lib/injections/shell.d.ts +20 -0
  95. package/lib/injections/shell.js +34 -0
  96. package/lib/injections/shell.js.map +1 -0
  97. package/lib/library-version.d.ts +2 -0
  98. package/lib/library-version.js +13 -0
  99. package/lib/library-version.js.map +1 -1
  100. package/lib/logger.d.ts +18 -16
  101. package/lib/logger.js +28 -26
  102. package/lib/logger.js.map +1 -1
  103. package/lib/messages.d.ts +0 -3
  104. package/lib/messages.js +0 -3
  105. package/lib/messages.js.map +1 -1
  106. package/lib/registry.d.ts +0 -1
  107. package/lib/registry.js +0 -1
  108. package/lib/registry.js.map +1 -1
  109. package/lib/transformation.d.ts +5 -15
  110. package/lib/transformation.js +9 -89
  111. package/lib/transformation.js.map +1 -1
  112. package/lib/types/dependency.d.ts +13 -1
  113. package/lib/types/format.d.ts +1 -0
  114. package/lib/types/format.js +2 -0
  115. package/lib/types/format.js.map +1 -0
  116. package/lib/types/gir-instance-parameter.d.ts +1 -2
  117. package/lib/types/gir-module-resolved-by.d.ts +5 -0
  118. package/lib/types/index.d.ts +7 -2
  119. package/lib/types/index.js +7 -2
  120. package/lib/types/index.js.map +1 -1
  121. package/lib/types/metadata.d.ts +8 -0
  122. package/lib/types/metadata.js +2 -0
  123. package/lib/types/metadata.js.map +1 -0
  124. package/lib/types/options-base.d.ts +4 -0
  125. package/lib/types/options-base.js +2 -0
  126. package/lib/types/options-base.js.map +1 -0
  127. package/lib/types/{generate-config.d.ts → options-generation.d.ts} +21 -11
  128. package/lib/types/options-generation.js +2 -0
  129. package/lib/types/options-generation.js.map +1 -0
  130. package/lib/types/options-load.d.ts +5 -0
  131. package/lib/types/options-load.js +2 -0
  132. package/lib/types/options-load.js.map +1 -0
  133. package/lib/types/options-transform.d.ts +4 -0
  134. package/lib/types/options-transform.js +2 -0
  135. package/lib/types/options-transform.js.map +1 -0
  136. package/lib/types/output-format.d.ts +1 -0
  137. package/lib/types/output-format.js +2 -0
  138. package/lib/types/output-format.js.map +1 -0
  139. package/lib/types/property-case.d.ts +1 -0
  140. package/lib/types/property-case.js +2 -0
  141. package/lib/types/property-case.js.map +1 -0
  142. package/lib/types/template-data.d.ts +2 -2
  143. package/lib/types/user-config.d.ts +21 -6
  144. package/lib/utils/files.d.ts +21 -0
  145. package/lib/utils/files.js +62 -0
  146. package/lib/utils/files.js.map +1 -0
  147. package/lib/utils/girs.d.ts +45 -0
  148. package/lib/utils/girs.js +101 -0
  149. package/lib/utils/girs.js.map +1 -0
  150. package/lib/utils/index.d.ts +6 -0
  151. package/lib/utils/index.js +7 -0
  152. package/lib/utils/index.js.map +1 -0
  153. package/lib/utils/numbers.d.ts +6 -0
  154. package/lib/utils/numbers.js +9 -0
  155. package/lib/utils/numbers.js.map +1 -0
  156. package/lib/utils/objects.d.ts +136 -0
  157. package/lib/utils/objects.js +121 -0
  158. package/lib/utils/objects.js.map +1 -0
  159. package/lib/utils/path.d.ts +1 -0
  160. package/lib/utils/path.js +7 -0
  161. package/lib/utils/path.js.map +1 -0
  162. package/lib/utils/strings.d.ts +74 -0
  163. package/lib/utils/strings.js +121 -0
  164. package/lib/utils/strings.js.map +1 -0
  165. package/lib/utils.d.ts +21 -15
  166. package/lib/utils.js +58 -13
  167. package/lib/utils.js.map +1 -1
  168. package/lib/validators/enum-parameters.d.ts +16 -0
  169. package/lib/validators/enum-parameters.js +42 -0
  170. package/lib/validators/enum-parameters.js.map +1 -0
  171. package/lib/validators/function-parameters.d.ts +14 -0
  172. package/lib/validators/function-parameters.js +31 -0
  173. package/lib/validators/function-parameters.js.map +1 -0
  174. package/lib/validators/interface.js +1 -1
  175. package/lib/validators/interface.js.map +1 -1
  176. package/package.json +15 -14
  177. package/lib/conflict-resolver.d.ts +0 -119
  178. package/lib/conflict-resolver.js +0 -893
  179. package/lib/conflict-resolver.js.map +0 -1
  180. package/lib/generators/dts/gio.d.ts +0 -2
  181. package/lib/generators/dts/gio.js +0 -9
  182. package/lib/generators/dts/gio.js.map +0 -1
  183. package/lib/gir-factory.d.ts +0 -52
  184. package/lib/gir-factory.js +0 -340
  185. package/lib/gir-factory.js.map +0 -1
  186. package/lib/injection/callbacks/gjs/Gio-2.0.d.ts +0 -2
  187. package/lib/injection/callbacks/gjs/Gio-2.0.js +0 -36
  188. package/lib/injection/callbacks/gjs/Gio-2.0.js.map +0 -1
  189. package/lib/injection/callbacks/gjs/index.d.ts +0 -2
  190. package/lib/injection/callbacks/gjs/index.js +0 -3
  191. package/lib/injection/callbacks/gjs/index.js.map +0 -1
  192. package/lib/injection/callbacks/index.d.ts +0 -3
  193. package/lib/injection/callbacks/index.js +0 -3
  194. package/lib/injection/callbacks/index.js.map +0 -1
  195. package/lib/injection/classes/gjs/gio-2.0.d.ts +0 -5
  196. package/lib/injection/classes/gjs/gio-2.0.js +0 -254
  197. package/lib/injection/classes/gjs/gio-2.0.js.map +0 -1
  198. package/lib/injection/classes/gjs/glib-2.0.d.ts +0 -2
  199. package/lib/injection/classes/gjs/glib-2.0.js +0 -225
  200. package/lib/injection/classes/gjs/glib-2.0.js.map +0 -1
  201. package/lib/injection/classes/gjs/gobject-2.0.d.ts +0 -2
  202. package/lib/injection/classes/gjs/gobject-2.0.js +0 -634
  203. package/lib/injection/classes/gjs/gobject-2.0.js.map +0 -1
  204. package/lib/injection/classes/gjs/index.d.ts +0 -2
  205. package/lib/injection/classes/gjs/index.js +0 -5
  206. package/lib/injection/classes/gjs/index.js.map +0 -1
  207. package/lib/injection/classes/glib-2.0.d.ts +0 -2
  208. package/lib/injection/classes/glib-2.0.js +0 -35
  209. package/lib/injection/classes/glib-2.0.js.map +0 -1
  210. package/lib/injection/classes/index.d.ts +0 -3
  211. package/lib/injection/classes/index.js +0 -4
  212. package/lib/injection/classes/index.js.map +0 -1
  213. package/lib/injection/index.d.ts +0 -3
  214. package/lib/injection/index.js +0 -4
  215. package/lib/injection/index.js.map +0 -1
  216. package/lib/injection/injector.d.ts +0 -16
  217. package/lib/injection/injector.js +0 -138
  218. package/lib/injection/injector.js.map +0 -1
  219. package/lib/symtable.d.ts +0 -24
  220. package/lib/symtable.js +0 -63
  221. package/lib/symtable.js.map +0 -1
  222. package/lib/types/conflict-child-element.d.ts +0 -10
  223. package/lib/types/conflict-child-element.js +0 -2
  224. package/lib/types/conflict-child-element.js.map +0 -1
  225. package/lib/types/conflict-grouped-element.d.ts +0 -6
  226. package/lib/types/conflict-grouped-element.js +0 -2
  227. package/lib/types/conflict-grouped-element.js.map +0 -1
  228. package/lib/types/conflict-grouped-elements.d.ts +0 -4
  229. package/lib/types/conflict-grouped-elements.js +0 -2
  230. package/lib/types/conflict-grouped-elements.js.map +0 -1
  231. package/lib/types/generate-config.js +0 -2
  232. package/lib/types/generate-config.js.map +0 -1
  233. package/lib/types/injection-callback.d.ts +0 -16
  234. package/lib/types/injection-callback.js +0 -2
  235. package/lib/types/injection-callback.js.map +0 -1
  236. package/lib/types/injection-class.d.ts +0 -25
  237. package/lib/types/injection-class.js +0 -2
  238. package/lib/types/injection-class.js.map +0 -1
  239. package/lib/types/injection-function.d.ts +0 -7
  240. package/lib/types/injection-function.js +0 -2
  241. package/lib/types/injection-function.js.map +0 -1
  242. package/lib/types/injection-generic-parameter.d.ts +0 -2
  243. package/lib/types/injection-generic-parameter.js +0 -2
  244. package/lib/types/injection-generic-parameter.js.map +0 -1
  245. package/lib/types/injection-instance-parameter.d.ts +0 -2
  246. package/lib/types/injection-instance-parameter.js +0 -2
  247. package/lib/types/injection-instance-parameter.js.map +0 -1
  248. package/lib/types/injection-parameter.d.ts +0 -8
  249. package/lib/types/injection-parameter.js +0 -2
  250. package/lib/types/injection-parameter.js.map +0 -1
  251. package/lib/types/injection-property.d.ts +0 -4
  252. package/lib/types/injection-property.js +0 -2
  253. package/lib/types/injection-property.js.map +0 -1
  254. package/lib/types/injection-type.d.ts +0 -2
  255. package/lib/types/injection-type.js +0 -2
  256. package/lib/types/injection-type.js.map +0 -1
  257. package/lib/types/injection.d.ts +0 -5
  258. package/lib/types/injection.js +0 -2
  259. package/lib/types/injection.js.map +0 -1
  260. package/lib/types/promisify-func.d.ts +0 -7
  261. package/lib/types/promisify-func.js +0 -2
  262. package/lib/types/promisify-func.js.map +0 -1
  263. package/lib/types/sym-table-items.d.ts +0 -4
  264. package/lib/types/sym-table-items.js +0 -2
  265. package/lib/types/sym-table-items.js.map +0 -1
  266. package/lib/types/ts-alias.d.ts +0 -10
  267. package/lib/types/ts-alias.js +0 -2
  268. package/lib/types/ts-alias.js.map +0 -1
  269. package/lib/types/ts-callback-interface.d.ts +0 -10
  270. package/lib/types/ts-callback-interface.js +0 -2
  271. package/lib/types/ts-callback-interface.js.map +0 -1
  272. package/lib/types/ts-callback.d.ts +0 -17
  273. package/lib/types/ts-callback.js +0 -2
  274. package/lib/types/ts-callback.js.map +0 -1
  275. package/lib/types/ts-class.d.ts +0 -85
  276. package/lib/types/ts-class.js +0 -2
  277. package/lib/types/ts-class.js.map +0 -1
  278. package/lib/types/ts-enum.d.ts +0 -12
  279. package/lib/types/ts-enum.js +0 -2
  280. package/lib/types/ts-enum.js.map +0 -1
  281. package/lib/types/ts-function.d.ts +0 -55
  282. package/lib/types/ts-function.js +0 -2
  283. package/lib/types/ts-function.js.map +0 -1
  284. package/lib/types/ts-generic-parameter.d.ts +0 -8
  285. package/lib/types/ts-generic-parameter.js +0 -2
  286. package/lib/types/ts-generic-parameter.js.map +0 -1
  287. package/lib/types/ts-instance-parameter.d.ts +0 -4
  288. package/lib/types/ts-instance-parameter.js +0 -2
  289. package/lib/types/ts-instance-parameter.js.map +0 -1
  290. package/lib/types/ts-member.d.ts +0 -10
  291. package/lib/types/ts-member.js +0 -2
  292. package/lib/types/ts-member.js.map +0 -1
  293. package/lib/types/ts-method.d.ts +0 -5
  294. package/lib/types/ts-method.js +0 -2
  295. package/lib/types/ts-method.js.map +0 -1
  296. package/lib/types/ts-parameter.d.ts +0 -15
  297. package/lib/types/ts-parameter.js +0 -2
  298. package/lib/types/ts-parameter.js.map +0 -1
  299. package/lib/types/ts-property.d.ts +0 -17
  300. package/lib/types/ts-property.js +0 -2
  301. package/lib/types/ts-property.js.map +0 -1
  302. package/lib/types/ts-signal.d.ts +0 -17
  303. package/lib/types/ts-signal.js +0 -2
  304. package/lib/types/ts-signal.js.map +0 -1
  305. package/lib/types/ts-type-name.d.ts +0 -1
  306. package/lib/types/ts-type-name.js +0 -2
  307. package/lib/types/ts-type-name.js.map +0 -1
  308. package/lib/types/ts-type-separator.d.ts +0 -1
  309. package/lib/types/ts-type-separator.js +0 -2
  310. package/lib/types/ts-type-separator.js.map +0 -1
  311. package/lib/types/ts-type.d.ts +0 -26
  312. package/lib/types/ts-type.js +0 -2
  313. package/lib/types/ts-type.js.map +0 -1
  314. package/lib/types/ts-var.d.ts +0 -17
  315. package/lib/types/ts-var.js +0 -2
  316. package/lib/types/ts-var.js.map +0 -1
  317. package/lib/types.d.ts +0 -23
  318. package/lib/types.js +0 -2
  319. package/lib/types.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"class.js","sourceRoot":"","sources":["../../src/gir/class.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"class.js","sourceRoot":"","sources":["../../src/gir/class.ts"],"names":[],"mappings":"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"}
@@ -3,8 +3,8 @@ import { IntrospectedNamespaceMember, Options } from "./base.js";
3
3
  import { GirConstantElement } from "../index.js";
4
4
  import { IntrospectedNamespace } from "./namespace.js";
5
5
  import { FormatGenerator } from "../generators/generator.js";
6
- import { LoadOptions } from "../types.js";
7
6
  import { GirVisitor } from "../visitor.js";
7
+ import type { OptionsLoad } from "../types/index.js";
8
8
  export declare class IntrospectedConstant extends IntrospectedNamespaceMember {
9
9
  type: TypeExpression;
10
10
  value: string | null;
@@ -20,6 +20,6 @@ export declare class IntrospectedConstant extends IntrospectedNamespaceMember {
20
20
  parent?: IntrospectedNamespace;
21
21
  type?: TypeExpression;
22
22
  }): IntrospectedConstant;
23
- static fromXML(element: GirConstantElement, ns: IntrospectedNamespace, options: LoadOptions): IntrospectedConstant;
23
+ static fromXML(element: GirConstantElement, ns: IntrospectedNamespace, options: OptionsLoad): IntrospectedConstant;
24
24
  asString<T extends FormatGenerator<unknown>>(generator: T): ReturnType<T["generateConst"]>;
25
25
  }
package/lib/gir/const.js CHANGED
@@ -25,7 +25,7 @@ export class IntrospectedConstant extends IntrospectedNamespaceMember {
25
25
  }
26
26
  static fromXML(element, ns, options) {
27
27
  const c = new IntrospectedConstant({
28
- name: sanitizeIdentifierName(ns.name, element.$.name),
28
+ name: sanitizeIdentifierName(ns.namespace, element.$.name),
29
29
  namespace: ns,
30
30
  type: getType(ns, element),
31
31
  value: element.$.value ?? null
@@ -1 +1 @@
1
- {"version":3,"file":"const.js","sourceRoot":"","sources":["../../src/gir/const.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,2BAA2B,EAAW,MAAM,WAAW,CAAC;AAIjE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AAKrF,MAAM,OAAO,oBAAqB,SAAQ,2BAA2B;IACjE,IAAI,CAAiB;IACrB,KAAK,CAAgB;IAErB,YAAY,EACR,IAAI,EACJ,IAAI,EACJ,SAAS,EACT,KAAK,EACL,GAAG,OAAO,EAOZ;QACE,KAAK,CAAC,IAAI,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;QAEhC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACvB,CAAC;IAED,MAAM,CAAC,OAAmB;QACtB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;YACnB,IAAI,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC;SACvC,CAAC,CAAC;QAEH,OAAO,OAAO,CAAC,UAAU,EAAE,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC;IAC9C,CAAC;IAED,IAAI,CACA,UAGI,EAAE;QAEN,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;QAEnC,OAAO,IAAI,oBAAoB,CAAC;YAC5B,IAAI;YACJ,SAAS,EAAE,OAAO,CAAC,MAAM,IAAI,IAAI,CAAC,SAAS;YAC3C,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,IAAI;YAC1B,KAAK;SACR,CAAC,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;IAED,MAAM,CAAC,OAAO,CAAC,OAA2B,EAAE,EAAyB,EAAE,OAAoB;QACvF,MAAM,CAAC,GAAG,IAAI,oBAAoB,CAAC;YAC/B,IAAI,EAAE,sBAAsB,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;YACrD,SAAS,EAAE,EAAE;YACb,IAAI,EAAE,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC;YAC1B,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI;SACjC,CAAC,CAAC;QAEH,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;YACnB,CAAC,CAAC,GAAG,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC;YAC1B,CAAC,CAAC,QAAQ,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;QACxC,CAAC;QAED,OAAO,CAAC,CAAC;IACb,CAAC;IAED,QAAQ,CAAqC,SAAY;QACrD,OAAO,SAAS,CAAC,aAAa,CAAC,IAAI,CAAmC,CAAC;IAC3E,CAAC;CACJ"}
1
+ {"version":3,"file":"const.js","sourceRoot":"","sources":["../../src/gir/const.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,2BAA2B,EAAW,MAAM,WAAW,CAAC;AAIjE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AAMrF,MAAM,OAAO,oBAAqB,SAAQ,2BAA2B;IACjE,IAAI,CAAiB;IACrB,KAAK,CAAgB;IAErB,YAAY,EACR,IAAI,EACJ,IAAI,EACJ,SAAS,EACT,KAAK,EACL,GAAG,OAAO,EAOZ;QACE,KAAK,CAAC,IAAI,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;QAEhC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACvB,CAAC;IAED,MAAM,CAAC,OAAmB;QACtB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;YACnB,IAAI,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC;SACvC,CAAC,CAAC;QAEH,OAAO,OAAO,CAAC,UAAU,EAAE,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC;IAC9C,CAAC;IAED,IAAI,CACA,UAGI,EAAE;QAEN,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;QAEnC,OAAO,IAAI,oBAAoB,CAAC;YAC5B,IAAI;YACJ,SAAS,EAAE,OAAO,CAAC,MAAM,IAAI,IAAI,CAAC,SAAS;YAC3C,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,IAAI;YAC1B,KAAK;SACR,CAAC,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;IAED,MAAM,CAAC,OAAO,CAAC,OAA2B,EAAE,EAAyB,EAAE,OAAoB;QACvF,MAAM,CAAC,GAAG,IAAI,oBAAoB,CAAC;YAC/B,IAAI,EAAE,sBAAsB,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;YAC1D,SAAS,EAAE,EAAE;YACb,IAAI,EAAE,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC;YAC1B,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI;SACjC,CAAC,CAAC;QAEH,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;YACnB,CAAC,CAAC,GAAG,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC;YAC1B,CAAC,CAAC,QAAQ,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;QACxC,CAAC;QAED,OAAO,CAAC,CAAC;IACb,CAAC;IAED,QAAQ,CAAqC,SAAY;QACrD,OAAO,SAAS,CAAC,aAAa,CAAC,IAAI,CAAmC,CAAC;IAC3E,CAAC;CACJ"}
package/lib/gir/enum.d.ts CHANGED
@@ -5,12 +5,12 @@ import { IntrospectedRecord } from "./class.js";
5
5
  import { IntrospectedStaticClassFunction } from "./function.js";
6
6
  import { IntrospectedNamespace } from "./namespace.js";
7
7
  import { FormatGenerator } from "../generators/generator.js";
8
- import { LoadOptions } from "../types.js";
9
8
  import { GirVisitor } from "../visitor.js";
9
+ import type { OptionsLoad } from "../types/index.js";
10
10
  export declare class IntrospectedEnum extends IntrospectedNamespaceMember {
11
11
  members: Map<string, GirEnumMember>;
12
12
  flags: boolean;
13
- ns: string;
13
+ ns: IntrospectedNamespace;
14
14
  constructor(name: string, namespace: IntrospectedNamespace, options?: {
15
15
  isIntrospectable?: boolean;
16
16
  });
@@ -22,7 +22,7 @@ export declare class IntrospectedEnum extends IntrospectedNamespaceMember {
22
22
  getType(): TypeIdentifier;
23
23
  asString<T extends FormatGenerator<unknown>>(generator: T): ReturnType<T["generateEnum"]>;
24
24
  asClass(): IntrospectedRecord;
25
- static fromXML(element: GirEnumElement | GirBitfieldElement, ns: IntrospectedNamespace, options: LoadOptions, flags?: boolean): IntrospectedEnum;
25
+ static fromXML(element: GirEnumElement | GirBitfieldElement, ns: IntrospectedNamespace, options: OptionsLoad, flags?: boolean): IntrospectedEnum;
26
26
  }
27
27
  export declare class GirEnumMember extends IntrospectedBase<IntrospectedEnum> {
28
28
  value: string;
@@ -31,7 +31,7 @@ export declare class GirEnumMember extends IntrospectedBase<IntrospectedEnum> {
31
31
  get namespace(): IntrospectedNamespace;
32
32
  accept(visitor: GirVisitor): GirEnumMember;
33
33
  copy(): GirEnumMember;
34
- static fromXML(element: GirMemberElement, parent: IntrospectedEnum, options: LoadOptions): GirEnumMember;
34
+ static fromXML(element: GirMemberElement, parent: IntrospectedEnum, options: OptionsLoad): GirEnumMember;
35
35
  asString<T extends FormatGenerator<unknown>>(generator: T): ReturnType<T["generateEnumMember"]>;
36
36
  }
37
37
  export declare class IntrospectedError extends IntrospectedEnum {
@@ -41,5 +41,5 @@ export declare class IntrospectedError extends IntrospectedEnum {
41
41
  parent?: undefined;
42
42
  members?: Map<string, GirEnumMember>;
43
43
  }): IntrospectedEnum;
44
- static fromXML(element: GirEnumElement | GirBitfieldElement, ns: IntrospectedNamespace, options: LoadOptions): IntrospectedEnum;
44
+ static fromXML(element: GirEnumElement | GirBitfieldElement, ns: IntrospectedNamespace, options: OptionsLoad): IntrospectedEnum;
45
45
  }
package/lib/gir/enum.js CHANGED
@@ -9,8 +9,8 @@ export class IntrospectedEnum extends IntrospectedNamespaceMember {
9
9
  flags = false;
10
10
  ns;
11
11
  constructor(name, namespace, options = {}) {
12
- super(sanitizeIdentifierName(namespace.name, name), namespace, options);
13
- this.ns = namespace.name;
12
+ super(sanitizeIdentifierName(namespace.namespace, name), namespace, options);
13
+ this.ns = namespace;
14
14
  }
15
15
  copy({ members } = {}) {
16
16
  const { namespace, name, flags } = this;
@@ -31,7 +31,7 @@ export class IntrospectedEnum extends IntrospectedNamespaceMember {
31
31
  return visitor.visitEnum?.(node) ?? node;
32
32
  }
33
33
  getType() {
34
- return new TypeIdentifier(this.name, this.ns);
34
+ return new TypeIdentifier(this.name, this.ns.namespace);
35
35
  }
36
36
  asString(generator) {
37
37
  return generator.generateEnum(this);
@@ -58,11 +58,11 @@ export class IntrospectedEnum extends IntrospectedNamespaceMember {
58
58
  const em = new IntrospectedEnum(sanitizeMemberName(element.$.name), ns);
59
59
  if (element.$["glib:type-name"]) {
60
60
  em.resolve_names.push(element.$["glib:type-name"]);
61
- ns.registerResolveName(element.$["glib:type-name"], ns.name, em.name);
61
+ ns.registerResolveName(element.$["glib:type-name"], ns.namespace, em.name);
62
62
  }
63
63
  if (element.$["c:type"]) {
64
64
  em.resolve_names.push(element.$["c:type"]);
65
- ns.registerResolveName(element.$["c:type"], ns.name, em.name);
65
+ ns.registerResolveName(element.$["c:type"], ns.namespace, em.name);
66
66
  }
67
67
  if (options.loadDocs) {
68
68
  em.doc = parseDoc(element);
@@ -136,11 +136,11 @@ export class IntrospectedError extends IntrospectedEnum {
136
136
  const err = new IntrospectedError(sanitizeMemberName(element.$.name), ns);
137
137
  if (element.$["glib:type-name"]) {
138
138
  err.resolve_names.push(element.$["glib:type-name"]);
139
- ns.registerResolveName(element.$["glib:type-name"], ns.name, err.name);
139
+ ns.registerResolveName(element.$["glib:type-name"], ns.namespace, err.name);
140
140
  }
141
141
  if (element.$["c:type"]) {
142
142
  err.resolve_names.push(element.$["c:type"]);
143
- ns.registerResolveName(element.$["c:type"], ns.name, err.name);
143
+ ns.registerResolveName(element.$["c:type"], ns.namespace, err.name);
144
144
  }
145
145
  if (options.loadDocs) {
146
146
  err.doc = parseDoc(element);
@@ -1 +1 @@
1
- {"version":3,"file":"enum.js","sourceRoot":"","sources":["../../src/gir/enum.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"enum.js","sourceRoot":"","sources":["../../src/gir/enum.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAEvD,OAAO,EAAE,gBAAgB,EAAE,2BAA2B,EAAE,MAAM,WAAW,CAAC;AAG1E,OAAO,EAAE,gBAAgB,EAAsB,MAAM,YAAY,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,+BAA+B,EAAE,MAAM,eAAe,CAAC;AAEhE,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAMhG,MAAM,OAAO,gBAAiB,SAAQ,2BAA2B;IAC7D,OAAO,GAAG,IAAI,GAAG,EAAyB,CAAC;IAC3C,KAAK,GAAY,KAAK,CAAC;IACvB,EAAE,CAAwB;IAE1B,YAAY,IAAY,EAAE,SAAgC,EAAE,UAA0C,EAAE;QACpG,KAAK,CAAC,sBAAsB,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;QAE7E,IAAI,CAAC,EAAE,GAAG,SAAS,CAAC;IACxB,CAAC;IAED,IAAI,CAAC,EACD,OAAO,KAIP,EAAE;QACF,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;QAExC,MAAM,EAAE,GAAG,IAAI,gBAAgB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QAEjD,KAAK,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;YAC9D,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;QACvC,CAAC;QAED,EAAE,CAAC,KAAK,GAAG,KAAK,CAAC;QAEjB,EAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAE7B,OAAO,EAAE,CAAC;IACd,CAAC;IAED,MAAM,CAAC,OAAmB;QACtB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;YACnB,OAAO,EAAE,IAAI,GAAG,CACZ,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE;gBACjD,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;YACrC,CAAC,CAAC,CACL;SACJ,CAAC,CAAC;QAEH,OAAO,OAAO,CAAC,SAAS,EAAE,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC;IAC7C,CAAC;IAED,OAAO;QACH,OAAO,IAAI,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;IAC5D,CAAC;IAED,QAAQ,CAAqC,SAAY;QACrD,OAAO,SAAS,CAAC,YAAY,CAAC,IAAI,CAAkC,CAAC;IACzE,CAAC;IAED,OAAO;QACH,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;QAEtC,MAAM,KAAK,GAAG,IAAI,gBAAgB,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC;QAE7D,KAAK,CAAC,MAAM,CAAC,IAAI,CACb,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;YACzC,MAAM,KAAK,GAAG,IAAI,iBAAiB,CAAC;gBAChC,IAAI,EAAE,CAAC,CAAC,IAAI;gBACZ,MAAM,EAAE,KAAK;gBACb,IAAI,EAAE,UAAU;gBAChB,QAAQ,EAAE,IAAI;gBACd,QAAQ,EAAE,IAAI;aACjB,CAAC,CAAC;YAEH,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC;YAClB,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC;YAE5B,OAAO,KAAK,CAAC;QACjB,CAAC,CAAC,CACL,CAAC;QACF,KAAK,CAAC,OAAO,GAAG,EAAE,CAAC;QACnB,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,MAAM,CAAC,OAAO,CACV,OAA4C,EAC5C,EAAyB,EACzB,OAAoB,EACpB,KAAK,GAAG,KAAK;QAEb,MAAM,EAAE,GAAG,IAAI,gBAAgB,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;QAExE,IAAI,OAAO,CAAC,CAAC,CAAC,gBAAgB,CAAC,EAAE,CAAC;YAC9B,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC;YAEnD,EAAE,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,CAAC,gBAAgB,CAAC,EAAE,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;QAC/E,CAAC;QAED,IAAI,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC;YACtB,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;YAE3C,EAAE,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;QACvE,CAAC;QAED,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;YACnB,EAAE,CAAC,GAAG,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC;YAC3B,EAAE,CAAC,QAAQ,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;QACzC,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YAClB,OAAO,EAAE,CAAC;QACd,CAAC;QAED,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;YACvB,MAAM,MAAM,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;YAErD,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACxC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,KAAK,GAAG,KAAK,CAAC;QAEjB,OAAO,EAAE,CAAC;IACd,CAAC;CACJ;AAED,MAAM,OAAO,aAAc,SAAQ,gBAAkC;IACjE,KAAK,CAAS;IACd,YAAY,CAAS;IAErB,YAAY,IAAY,EAAE,KAAa,EAAE,MAAwB,EAAE,YAAoB;QACnF,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACpB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IACrC,CAAC;IAED,IAAI,SAAS;QACT,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;IACjC,CAAC;IAED,MAAM,CAAC,OAAmB;QACtB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QACzB,OAAO,OAAO,CAAC,eAAe,EAAE,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC;IACnD,CAAC;IAED,IAAI;QACA,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC;QAEnD,OAAO,IAAI,aAAa,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;IAC1F,CAAC;IAED,MAAM,CAAC,OAAO,CAAC,OAAyB,EAAE,MAAwB,EAAE,OAAoB;QACpF,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;QAC3C,MAAM,YAAY,GAAG,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC;QAE/C,MAAM,UAAU,GAAG,IAAI,aAAa,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;QAEnF,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;YACnB,UAAU,CAAC,GAAG,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC;YACnC,UAAU,CAAC,QAAQ,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;QACjD,CAAC;QAED,OAAO,UAAU,CAAC;IACtB,CAAC;IAED,QAAQ,CAAqC,SAAY;QACrD,OAAO,SAAS,CAAC,kBAAkB,CAAC,IAAI,CAAwC,CAAC;IACrF,CAAC;CACJ;AAED,SAAS,aAAa,CAAC,CAAU;IAC7B,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,IAAI,IAAI,IAAI,UAAU,IAAI,CAAC,CAAC;AACjE,CAAC;AAED,MAAM,OAAO,iBAAkB,SAAQ,gBAAgB;IACnD,SAAS,GAAiD,IAAI,GAAG,EAAE,CAAC;IAEpE,QAAQ,CAAqC,SAAY;QACrD,OAAO,SAAS,CAAC,aAAa,CAAC,IAAI,CAAmC,CAAC;IAC3E,CAAC;IAED,IAAI,CAAC,EACD,OAAO,KAIP,EAAE;QACF,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;QAExC,MAAM,EAAE,GAAG,IAAI,iBAAiB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QAElD,KAAK,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;YAC9D,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;QACvC,CAAC;QAED,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,CAAC;YACjD,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;QACrD,CAAC;QAED,EAAE,CAAC,KAAK,GAAG,KAAK,CAAC;QAEjB,OAAO,EAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;IACxC,CAAC;IAED,MAAM,CAAC,OAAO,CACV,OAA4C,EAC5C,EAAyB,EACzB,OAAoB;QAEpB,MAAM,GAAG,GAAG,IAAI,iBAAiB,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;QAE1E,IAAI,OAAO,CAAC,CAAC,CAAC,gBAAgB,CAAC,EAAE,CAAC;YAC9B,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC;YAEpD,EAAE,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,CAAC,gBAAgB,CAAC,EAAE,EAAE,CAAC,SAAS,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;QAChF,CAAC;QAED,IAAI,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC;YACtB,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;YAE5C,EAAE,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC,SAAS,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;QACxE,CAAC;QAED,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;YACnB,GAAG,CAAC,GAAG,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC;YAC5B,GAAG,CAAC,QAAQ,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;QAC1C,CAAC;QAED,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACjB,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;gBACvB,MAAM,MAAM,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;gBACtD,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YACzC,CAAC,CAAC,CAAC;QACP,CAAC;QAED,IAAI,aAAa,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;YAC7C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;gBACzB,MAAM,IAAI,GAAG,+BAA+B,CAAC,OAAO,CAAC,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;gBACtE,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACvC,CAAC,CAAC,CAAC;QACP,CAAC;QAED,OAAO,GAAG,CAAC;IACf,CAAC;CACJ"}
@@ -6,10 +6,10 @@ import { IntrospectedClass } from "./class.js";
6
6
  import { IntrospectedEnum } from "./enum.js";
7
7
  import { IntrospectedSignal } from "./signal.js";
8
8
  import { FormatGenerator } from "../generators/generator.js";
9
- import { LoadOptions } from "../types.js";
10
9
  import { GirVisitor } from "../visitor.js";
11
10
  import { IntrospectedField } from "./property.js";
12
11
  import { IntrospectedBaseClass } from "./nodes.js";
12
+ import type { OptionsLoad } from "../types/index.js";
13
13
  export declare class IntrospectedFunction extends IntrospectedNamespaceMember {
14
14
  readonly parameters: IntrospectedFunctionParameter[];
15
15
  readonly output_parameters: IntrospectedFunctionParameter[];
@@ -32,7 +32,7 @@ export declare class IntrospectedFunction extends IntrospectedNamespaceMember {
32
32
  return_type?: TypeExpression;
33
33
  }): IntrospectedFunction;
34
34
  accept(visitor: GirVisitor): IntrospectedFunction;
35
- static fromXML(element: GirFunctionElement | GirMethodElement, ns: IntrospectedNamespace, options: LoadOptions): IntrospectedFunction;
35
+ static fromXML(element: GirFunctionElement | GirMethodElement, ns: IntrospectedNamespace, options: OptionsLoad): IntrospectedFunction;
36
36
  return(): TypeExpression;
37
37
  asCallback(): IntrospectedCallback;
38
38
  asClassFunction(parent: IntrospectedBaseClass | IntrospectedEnum): IntrospectedClassFunction;
@@ -48,7 +48,7 @@ export declare class IntrospectedDirectAllocationConstructor extends Introspecte
48
48
  copy(options?: {
49
49
  parent?: IntrospectedBaseClass | undefined;
50
50
  parameters?: IntrospectedFunctionParameter[];
51
- } | undefined): IntrospectedDirectAllocationConstructor;
51
+ }): IntrospectedDirectAllocationConstructor;
52
52
  accept(visitor: GirVisitor): IntrospectedDirectAllocationConstructor;
53
53
  }
54
54
  export declare class IntrospectedConstructor extends IntrospectedClassMember {
@@ -66,7 +66,7 @@ export declare class IntrospectedConstructor extends IntrospectedClassMember {
66
66
  parameters?: IntrospectedFunctionParameter[];
67
67
  return_type?: TypeExpression;
68
68
  }): IntrospectedConstructor;
69
- static fromXML(m: GirConstructorElement, parent: IntrospectedBaseClass, options: LoadOptions): IntrospectedConstructor;
69
+ static fromXML(m: GirConstructorElement, parent: IntrospectedBaseClass, options: OptionsLoad): IntrospectedConstructor;
70
70
  accept(visitor: GirVisitor): IntrospectedConstructor;
71
71
  return(): TypeExpression;
72
72
  asString<T extends FormatGenerator<unknown>>(generator: T): ReturnType<T["generateConstructor"]>;
@@ -101,7 +101,7 @@ export declare class IntrospectedFunctionParameter extends IntrospectedBase<Intr
101
101
  $: {
102
102
  name: string;
103
103
  };
104
- }, parent: Parent, options: LoadOptions): IntrospectedFunctionParameter;
104
+ }, parent: Parent, options: OptionsLoad): IntrospectedFunctionParameter;
105
105
  }
106
106
  export declare class IntrospectedClassFunction<Parent extends IntrospectedBaseClass | IntrospectedEnum = IntrospectedBaseClass | IntrospectedEnum> extends IntrospectedBase<Parent> {
107
107
  readonly parameters: IntrospectedFunctionParameter[];
@@ -118,6 +118,7 @@ export declare class IntrospectedClassFunction<Parent extends IntrospectedBaseCl
118
118
  output_parameters?: IntrospectedFunctionParameter[];
119
119
  return_type?: TypeExpression;
120
120
  parent: Parent;
121
+ originalParent?: Parent | null;
121
122
  doc?: string | null;
122
123
  }>);
123
124
  get namespace(): GirModule;
@@ -135,7 +136,7 @@ export declare class IntrospectedClassFunction<Parent extends IntrospectedBaseCl
135
136
  accept(visitor: GirVisitor): IntrospectedClassFunction<Parent>;
136
137
  anyify(): this;
137
138
  shouldAnyify(): boolean;
138
- static fromXML(element: GirFunctionElement | GirMethodElement, parent: IntrospectedBaseClass | IntrospectedEnum, options: LoadOptions): IntrospectedClassFunction;
139
+ static fromXML(element: GirFunctionElement | GirMethodElement, parent: IntrospectedBaseClass | IntrospectedEnum, options: OptionsLoad): IntrospectedClassFunction;
139
140
  return(): TypeExpression;
140
141
  asString<T extends FormatGenerator<unknown>>(generator: T): ReturnType<T["generateClassFunction"]>;
141
142
  }
@@ -157,7 +158,7 @@ export declare class IntrospectedVirtualClassFunction extends IntrospectedClassF
157
158
  }): IntrospectedVirtualClassFunction;
158
159
  return(): TypeExpression;
159
160
  accept(visitor: GirVisitor): IntrospectedVirtualClassFunction;
160
- static fromXML(m: GirVirtualMethodElement, parent: IntrospectedBaseClass, options: LoadOptions): IntrospectedVirtualClassFunction;
161
+ static fromXML(m: GirVirtualMethodElement, parent: IntrospectedBaseClass, options: OptionsLoad): IntrospectedVirtualClassFunction;
161
162
  asString<T extends FormatGenerator<unknown>>(generator: T): ReturnType<T["generateVirtualClassFunction"]>;
162
163
  }
163
164
  export declare class IntrospectedStaticClassFunction extends IntrospectedClassFunction {
@@ -171,7 +172,7 @@ export declare class IntrospectedStaticClassFunction extends IntrospectedClassFu
171
172
  }): IntrospectedStaticClassFunction;
172
173
  accept(visitor: GirVisitor): IntrospectedStaticClassFunction;
173
174
  asClassFunction(parent: IntrospectedBaseClass): IntrospectedClassFunction;
174
- static fromXML(m: GirFunctionElement, parent: IntrospectedBaseClass | IntrospectedEnum, options: LoadOptions): IntrospectedStaticClassFunction;
175
+ static fromXML(m: GirFunctionElement, parent: IntrospectedBaseClass | IntrospectedEnum, options: OptionsLoad): IntrospectedStaticClassFunction;
175
176
  }
176
177
  export declare class IntrospectedCallback extends IntrospectedFunction {
177
178
  asFunctionType(): FunctionType;
@@ -182,7 +183,7 @@ export declare class IntrospectedCallback extends IntrospectedFunction {
182
183
  returnType?: TypeExpression;
183
184
  }): IntrospectedCallback;
184
185
  accept(visitor: GirVisitor): IntrospectedCallback;
185
- static fromXML(element: GirCallbackElement, namespace: GirModule, options: LoadOptions): IntrospectedCallback;
186
+ static fromXML(element: GirCallbackElement, namespace: GirModule, options: OptionsLoad): IntrospectedCallback;
186
187
  asString<T extends FormatGenerator<unknown>>(generator: T): ReturnType<T["generateCallback"]>;
187
188
  }
188
189
  export declare class IntrospectedClassCallback extends IntrospectedClassFunction {
@@ -194,6 +195,6 @@ export declare class IntrospectedClassCallback extends IntrospectedClassFunction
194
195
  returnType?: TypeExpression;
195
196
  }): IntrospectedClassCallback;
196
197
  accept(visitor: GirVisitor): IntrospectedClassCallback;
197
- static fromXML(element: GirCallbackElement, parent: IntrospectedBaseClass, options: LoadOptions): IntrospectedClassCallback;
198
+ static fromXML(element: GirCallbackElement, parent: IntrospectedBaseClass, options: OptionsLoad): IntrospectedClassCallback;
198
199
  asString<T extends FormatGenerator<unknown>>(generator: T): ReturnType<T["generateClassCallback"]>;
199
200
  }
@@ -623,11 +623,11 @@ export class IntrospectedCallback extends IntrospectedFunction {
623
623
  const glibTypeName = element.$["glib:type-name"];
624
624
  if (typeof glibTypeName === "string" && element.$["glib:type-name"]) {
625
625
  cb.resolve_names.push(glibTypeName);
626
- ns.registerResolveName(glibTypeName, ns.name, cb.name);
626
+ ns.registerResolveName(glibTypeName, ns.namespace, cb.name);
627
627
  }
628
628
  if (element.$["c:type"]) {
629
629
  cb.resolve_names.push(element.$["c:type"]);
630
- ns.registerResolveName(element.$["c:type"], ns.name, cb.name);
630
+ ns.registerResolveName(element.$["c:type"], ns.namespace, cb.name);
631
631
  }
632
632
  return cb;
633
633
  }
@@ -668,11 +668,11 @@ export class IntrospectedClassCallback extends IntrospectedClassFunction {
668
668
  const glibTypeName = element.$["glib:type-name"];
669
669
  if (typeof glibTypeName === "string" && element.$["glib:type-name"]) {
670
670
  cb.resolve_names.push(glibTypeName);
671
- ns.registerResolveName(glibTypeName, ns.name, cb.name);
671
+ ns.registerResolveName(glibTypeName, ns.namespace, cb.name);
672
672
  }
673
673
  if (element.$["c:type"]) {
674
674
  cb.resolve_names.push(element.$["c:type"]);
675
- ns.registerResolveName(element.$["c:type"], ns.name, cb.name);
675
+ ns.registerResolveName(element.$["c:type"], ns.namespace, cb.name);
676
676
  }
677
677
  return cb;
678
678
  }