semantifold 0.3.0 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (303) hide show
  1. package/README.md +61 -15
  2. package/build/index.d.ts +52 -2
  3. package/build/index.d.ts.map +1 -1
  4. package/build/index.js +60 -8
  5. package/build/src/artifact-path.d.ts +23 -1
  6. package/build/src/artifact-path.d.ts.map +1 -1
  7. package/build/src/artifact-path.js +45 -3
  8. package/build/src/artifacts.d.ts.map +1 -1
  9. package/build/src/artifacts.js +66 -1
  10. package/build/src/backends/android.d.ts +49 -0
  11. package/build/src/backends/android.d.ts.map +1 -0
  12. package/build/src/backends/android.js +1274 -0
  13. package/build/src/backends/c-validation.d.ts.map +1 -1
  14. package/build/src/backends/c-validation.js +7 -3
  15. package/build/src/backends/cpp-validation.d.ts.map +1 -1
  16. package/build/src/backends/cpp-validation.js +7 -3
  17. package/build/src/backends/csharp.js +7 -1
  18. package/build/src/backends/dart-runtime.d.ts +2 -0
  19. package/build/src/backends/dart-runtime.d.ts.map +1 -0
  20. package/build/src/backends/dart-runtime.js +41 -0
  21. package/build/src/backends/dart.d.ts +20 -0
  22. package/build/src/backends/dart.d.ts.map +1 -0
  23. package/build/src/backends/dart.js +321 -0
  24. package/build/src/backends/effects.d.ts +60 -0
  25. package/build/src/backends/effects.d.ts.map +1 -0
  26. package/build/src/backends/effects.js +746 -0
  27. package/build/src/backends/go.js +18 -4
  28. package/build/src/backends/identifiers.d.ts +36 -4
  29. package/build/src/backends/identifiers.d.ts.map +1 -1
  30. package/build/src/backends/identifiers.js +160 -10
  31. package/build/src/backends/index.d.ts.map +1 -1
  32. package/build/src/backends/index.js +27 -4
  33. package/build/src/backends/ios.d.ts +68 -0
  34. package/build/src/backends/ios.d.ts.map +1 -0
  35. package/build/src/backends/ios.js +1503 -0
  36. package/build/src/backends/java.d.ts.map +1 -1
  37. package/build/src/backends/java.js +429 -36
  38. package/build/src/backends/javascript.d.ts +6 -0
  39. package/build/src/backends/javascript.d.ts.map +1 -1
  40. package/build/src/backends/javascript.js +380 -24
  41. package/build/src/backends/kotlin-runtime.d.ts +3 -0
  42. package/build/src/backends/kotlin-runtime.d.ts.map +1 -0
  43. package/build/src/backends/kotlin-runtime.js +29 -0
  44. package/build/src/backends/kotlin.d.ts +33 -0
  45. package/build/src/backends/kotlin.d.ts.map +1 -0
  46. package/build/src/backends/kotlin.js +138 -0
  47. package/build/src/backends/native-validation.d.ts +2 -2
  48. package/build/src/backends/native-validation.d.ts.map +1 -1
  49. package/build/src/backends/native-validation.js +2 -2
  50. package/build/src/backends/ordered-expressions.d.ts.map +1 -1
  51. package/build/src/backends/ordered-expressions.js +39 -7
  52. package/build/src/backends/php-stdlib-support.d.ts +19 -0
  53. package/build/src/backends/php-stdlib-support.d.ts.map +1 -0
  54. package/build/src/backends/php-stdlib-support.js +227 -0
  55. package/build/src/backends/php.d.ts.map +1 -1
  56. package/build/src/backends/php.js +448 -33
  57. package/build/src/backends/program.d.ts +83 -0
  58. package/build/src/backends/program.d.ts.map +1 -0
  59. package/build/src/backends/program.js +1309 -0
  60. package/build/src/backends/python.js +7 -1
  61. package/build/src/backends/ruby.d.ts.map +1 -1
  62. package/build/src/backends/ruby.js +310 -24
  63. package/build/src/backends/rust-runtime.d.ts +7 -0
  64. package/build/src/backends/rust-runtime.d.ts.map +1 -0
  65. package/build/src/backends/rust-runtime.js +32 -0
  66. package/build/src/backends/rust-validation.d.ts +9 -0
  67. package/build/src/backends/rust-validation.d.ts.map +1 -0
  68. package/build/src/backends/rust-validation.js +78 -0
  69. package/build/src/backends/rust.d.ts +24 -0
  70. package/build/src/backends/rust.d.ts.map +1 -0
  71. package/build/src/backends/rust.js +344 -0
  72. package/build/src/backends/scalars.d.ts +14 -6
  73. package/build/src/backends/scalars.d.ts.map +1 -1
  74. package/build/src/backends/scalars.js +167 -17
  75. package/build/src/backends/shared.d.ts +23 -4
  76. package/build/src/backends/shared.d.ts.map +1 -1
  77. package/build/src/backends/shared.js +2174 -62
  78. package/build/src/backends/stdlib-support.d.ts +14 -0
  79. package/build/src/backends/stdlib-support.d.ts.map +1 -0
  80. package/build/src/backends/stdlib-support.js +237 -0
  81. package/build/src/backends/swift-runtime.d.ts +3 -0
  82. package/build/src/backends/swift-runtime.d.ts.map +1 -0
  83. package/build/src/backends/swift-runtime.js +14 -0
  84. package/build/src/backends/swift.d.ts +8 -0
  85. package/build/src/backends/swift.d.ts.map +1 -0
  86. package/build/src/backends/swift.js +127 -0
  87. package/build/src/backends/typescript.d.ts.map +1 -1
  88. package/build/src/backends/typescript.js +344 -24
  89. package/build/src/backends/wasm.d.ts +43 -0
  90. package/build/src/backends/wasm.d.ts.map +1 -0
  91. package/build/src/backends/wasm.js +2164 -0
  92. package/build/src/backends/writer.d.ts +255 -4
  93. package/build/src/backends/writer.d.ts.map +1 -1
  94. package/build/src/backends/writer.js +491 -3
  95. package/build/src/diagnostic.d.ts +4 -3
  96. package/build/src/diagnostic.d.ts.map +1 -1
  97. package/build/src/diagnostic.js +5 -3
  98. package/build/src/frontends/c.d.ts.map +1 -1
  99. package/build/src/frontends/c.js +5 -3
  100. package/build/src/frontends/cpp.d.ts.map +1 -1
  101. package/build/src/frontends/cpp.js +5 -3
  102. package/build/src/frontends/csharp.d.ts.map +1 -1
  103. package/build/src/frontends/csharp.js +7 -3
  104. package/build/src/frontends/dart.d.ts +10 -0
  105. package/build/src/frontends/dart.d.ts.map +1 -0
  106. package/build/src/frontends/dart.js +913 -0
  107. package/build/src/frontends/index.d.ts +3 -1
  108. package/build/src/frontends/index.d.ts.map +1 -1
  109. package/build/src/frontends/index.js +15 -5
  110. package/build/src/frontends/java.d.ts +110 -1
  111. package/build/src/frontends/java.d.ts.map +1 -1
  112. package/build/src/frontends/java.js +1725 -70
  113. package/build/src/frontends/javascript-typescript.d.ts +69 -1
  114. package/build/src/frontends/javascript-typescript.d.ts.map +1 -1
  115. package/build/src/frontends/javascript-typescript.js +1825 -93
  116. package/build/src/frontends/kotlin.d.ts +10 -0
  117. package/build/src/frontends/kotlin.d.ts.map +1 -0
  118. package/build/src/frontends/kotlin.js +685 -0
  119. package/build/src/frontends/php.d.ts +118 -1
  120. package/build/src/frontends/php.d.ts.map +1 -1
  121. package/build/src/frontends/php.js +1583 -76
  122. package/build/src/frontends/program.d.ts +74 -0
  123. package/build/src/frontends/program.d.ts.map +1 -0
  124. package/build/src/frontends/program.js +989 -0
  125. package/build/src/frontends/ruby.d.ts +68 -1
  126. package/build/src/frontends/ruby.d.ts.map +1 -1
  127. package/build/src/frontends/ruby.js +1446 -101
  128. package/build/src/frontends/rust-parser.d.ts +11 -0
  129. package/build/src/frontends/rust-parser.d.ts.map +1 -0
  130. package/build/src/frontends/rust-parser.js +15 -0
  131. package/build/src/frontends/rust.d.ts +14 -0
  132. package/build/src/frontends/rust.d.ts.map +1 -0
  133. package/build/src/frontends/rust.js +715 -0
  134. package/build/src/frontends/scalars.d.ts +10 -0
  135. package/build/src/frontends/scalars.d.ts.map +1 -1
  136. package/build/src/frontends/scalars.js +28 -2
  137. package/build/src/frontends/swift.d.ts +10 -0
  138. package/build/src/frontends/swift.d.ts.map +1 -0
  139. package/build/src/frontends/swift.js +860 -0
  140. package/build/src/frontends/types.d.ts +186 -0
  141. package/build/src/frontends/types.d.ts.map +1 -0
  142. package/build/src/frontends/types.js +634 -0
  143. package/build/src/language-registry.d.ts +46 -4
  144. package/build/src/language-registry.d.ts.map +1 -1
  145. package/build/src/language-registry.js +177 -13
  146. package/build/src/mapping.d.ts +2 -2
  147. package/build/src/mapping.d.ts.map +1 -1
  148. package/build/src/mapping.js +31 -10
  149. package/build/src/semantic/capabilities.d.ts +66 -0
  150. package/build/src/semantic/capabilities.d.ts.map +1 -0
  151. package/build/src/semantic/capabilities.js +649 -0
  152. package/build/src/semantic/effects.d.ts +26 -0
  153. package/build/src/semantic/effects.d.ts.map +1 -0
  154. package/build/src/semantic/effects.js +764 -0
  155. package/build/src/semantic/generics.d.ts +23 -0
  156. package/build/src/semantic/generics.d.ts.map +1 -0
  157. package/build/src/semantic/generics.js +61 -0
  158. package/build/src/semantic/lifetime.d.ts +37 -0
  159. package/build/src/semantic/lifetime.d.ts.map +1 -0
  160. package/build/src/semantic/lifetime.js +527 -0
  161. package/build/src/semantic/provenance.d.ts +9 -2
  162. package/build/src/semantic/provenance.d.ts.map +1 -1
  163. package/build/src/semantic/provenance.js +462 -20
  164. package/build/src/semantic/scalars.d.ts +11 -0
  165. package/build/src/semantic/scalars.d.ts.map +1 -1
  166. package/build/src/semantic/scalars.js +16 -1
  167. package/build/src/semantic/stdlib.d.ts +254 -0
  168. package/build/src/semantic/stdlib.d.ts.map +1 -0
  169. package/build/src/semantic/stdlib.js +880 -0
  170. package/build/src/semantic/types.d.ts +3108 -178
  171. package/build/src/semantic/types.d.ts.map +1 -1
  172. package/build/src/semantic/types.js +730 -15
  173. package/build/src/semantic/validate.d.ts +85 -5
  174. package/build/src/semantic/validate.d.ts.map +1 -1
  175. package/build/src/semantic/validate.js +2576 -98
  176. package/build/src/stdlib-facades.d.ts +304 -0
  177. package/build/src/stdlib-facades.d.ts.map +1 -0
  178. package/build/src/stdlib-facades.js +1167 -0
  179. package/build/src/stdlib-negotiation.d.ts +69 -0
  180. package/build/src/stdlib-negotiation.d.ts.map +1 -0
  181. package/build/src/stdlib-negotiation.js +403 -0
  182. package/build/src/stdlib-providers.d.ts +72 -0
  183. package/build/src/stdlib-providers.d.ts.map +1 -0
  184. package/build/src/stdlib-providers.js +339 -0
  185. package/build/src/toolchains.d.ts +55 -1
  186. package/build/src/toolchains.d.ts.map +1 -1
  187. package/build/src/toolchains.js +15 -4
  188. package/docs/android.md +79 -0
  189. package/docs/architecture.md +47 -13
  190. package/docs/dart.md +60 -0
  191. package/docs/goals.md +3 -3
  192. package/docs/ios.md +121 -0
  193. package/docs/kotlin.md +42 -0
  194. package/docs/language-support.md +238 -26
  195. package/docs/multi-file-modules.md +52 -0
  196. package/docs/parser-qualification.md +121 -8
  197. package/docs/plans/2026-09-05-standard-library-portability.md +10 -10
  198. package/docs/rust.md +88 -0
  199. package/docs/source-maps.md +17 -7
  200. package/docs/specification.md +5 -0
  201. package/docs/standard-library-portability.md +39 -8
  202. package/docs/swift.md +44 -0
  203. package/docs/testing.md +381 -4
  204. package/docs/webassembly.md +52 -0
  205. package/index.js +66 -8
  206. package/node_modules/semantifold-tree-sitter-legacy-internal/README.md +2 -2
  207. package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/LICENSE +21 -0
  208. package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/README.md +45 -0
  209. package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/binding.gyp +30 -0
  210. package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/bindings/node/binding.cc +20 -0
  211. package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/bindings/node/binding_test.js +9 -0
  212. package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/bindings/node/index.d.ts +28 -0
  213. package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/bindings/node/index.js +11 -0
  214. package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/grammar.js +1630 -0
  215. package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/package.json +64 -0
  216. package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/prebuilds/darwin-arm64/tree-sitter-rust.node +0 -0
  217. package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/prebuilds/darwin-x64/tree-sitter-rust.node +0 -0
  218. package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/prebuilds/linux-arm64/tree-sitter-rust.node +0 -0
  219. package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/prebuilds/linux-x64/tree-sitter-rust.node +0 -0
  220. package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/prebuilds/win32-arm64/tree-sitter-rust.node +0 -0
  221. package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/prebuilds/win32-x64/tree-sitter-rust.node +0 -0
  222. package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/queries/highlights.scm +159 -0
  223. package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/queries/injections.scm +9 -0
  224. package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/queries/tags.scm +60 -0
  225. package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/src/grammar.json +9405 -0
  226. package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/src/node-types.json +5399 -0
  227. package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/src/parser.c +192569 -0
  228. package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/src/scanner.c +393 -0
  229. package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/src/tree_sitter/alloc.h +54 -0
  230. package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/src/tree_sitter/array.h +290 -0
  231. package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/src/tree_sitter/parser.h +266 -0
  232. package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/tree-sitter-rust.wasm +0 -0
  233. package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/tree-sitter.json +53 -0
  234. package/node_modules/semantifold-tree-sitter-legacy-internal/package.json +3 -2
  235. package/node_modules/semantifold-tree-sitter-legacy-internal/src/c.js +5 -4
  236. package/package.json +5 -2
  237. package/src/artifact-path.js +47 -2
  238. package/src/artifacts.js +67 -0
  239. package/src/backends/android.js +1370 -0
  240. package/src/backends/c-validation.js +6 -1
  241. package/src/backends/cpp-validation.js +6 -1
  242. package/src/backends/csharp.js +3 -0
  243. package/src/backends/dart-runtime.js +41 -0
  244. package/src/backends/dart.js +326 -0
  245. package/src/backends/effects.js +705 -0
  246. package/src/backends/go.js +14 -2
  247. package/src/backends/identifiers.js +166 -9
  248. package/src/backends/index.js +27 -2
  249. package/src/backends/ios.js +1612 -0
  250. package/src/backends/java.js +454 -36
  251. package/src/backends/javascript.js +389 -23
  252. package/src/backends/kotlin-runtime.js +29 -0
  253. package/src/backends/kotlin.js +144 -0
  254. package/src/backends/native-validation.js +1 -1
  255. package/src/backends/ordered-expressions.js +40 -6
  256. package/src/backends/php-stdlib-support.js +239 -0
  257. package/src/backends/php.js +469 -32
  258. package/src/backends/program.js +1408 -0
  259. package/src/backends/python.js +3 -0
  260. package/src/backends/ruby.js +326 -23
  261. package/src/backends/rust-runtime.js +34 -0
  262. package/src/backends/rust-validation.js +75 -0
  263. package/src/backends/rust.js +335 -0
  264. package/src/backends/scalars.js +141 -16
  265. package/src/backends/shared.js +2314 -115
  266. package/src/backends/stdlib-support.js +234 -0
  267. package/src/backends/swift-runtime.js +14 -0
  268. package/src/backends/swift.js +132 -0
  269. package/src/backends/typescript.js +349 -23
  270. package/src/backends/wasm.js +2208 -0
  271. package/src/backends/writer.js +545 -2
  272. package/src/diagnostic.js +4 -2
  273. package/src/frontends/c.js +4 -2
  274. package/src/frontends/cpp.js +4 -2
  275. package/src/frontends/csharp.js +4 -2
  276. package/src/frontends/dart.js +963 -0
  277. package/src/frontends/index.js +14 -4
  278. package/src/frontends/java.js +1977 -69
  279. package/src/frontends/javascript-typescript.js +2046 -102
  280. package/src/frontends/kotlin.js +713 -0
  281. package/src/frontends/php.js +1725 -79
  282. package/src/frontends/program.js +1062 -0
  283. package/src/frontends/ruby.js +1624 -98
  284. package/src/frontends/rust-parser.js +18 -0
  285. package/src/frontends/rust.js +714 -0
  286. package/src/frontends/scalars.js +31 -1
  287. package/src/frontends/swift.js +893 -0
  288. package/src/frontends/types.js +750 -0
  289. package/src/language-registry.js +182 -12
  290. package/src/mapping.js +33 -9
  291. package/src/semantic/capabilities.js +671 -0
  292. package/src/semantic/effects.js +737 -0
  293. package/src/semantic/generics.js +58 -0
  294. package/src/semantic/lifetime.js +517 -0
  295. package/src/semantic/provenance.js +412 -19
  296. package/src/semantic/scalars.js +17 -0
  297. package/src/semantic/stdlib.js +921 -0
  298. package/src/semantic/types.js +810 -14
  299. package/src/semantic/validate.js +2934 -209
  300. package/src/stdlib-facades.js +1211 -0
  301. package/src/stdlib-negotiation.js +446 -0
  302. package/src/stdlib-providers.js +377 -0
  303. package/src/toolchains.js +16 -3
@@ -52,9 +52,10 @@ export declare class SemantifoldDiagnostic extends Error {
52
52
  * Throws a normalized parser diagnostic while preserving the parser error.
53
53
  * @param {import("./semantic/types.js").SemanticLanguage} language - Frontend language.
54
54
  * @param {unknown} error - Opaque parser error, narrowed immediately.
55
+ * @param {import("./semantic/types.js").SourceLocation | undefined} [location] - Normalized parser failure range.
55
56
  * @returns {never} Always throws.
56
57
  */
57
- export declare function parseFailure(language: import("./semantic/types.js").SemanticLanguage, error: unknown): never;
58
+ export declare function parseFailure(language: import("./semantic/types.js").SemanticLanguage, error: unknown, location?: import("./semantic/types.js").SourceLocation | undefined): never;
58
59
  /**
59
60
  * Throws an unsupported-syntax diagnostic.
60
61
  * @param {import("./semantic/types.js").SemanticLanguage} language - Frontend language.
@@ -82,12 +83,12 @@ export declare function missingType(language: import("./semantic/types.js").Sema
82
83
  export declare function semanticFailure(language: import("./semantic/types.js").SemanticLanguage, code: string, detail: string, location: import("./semantic/types.js").SourceLocation | undefined): never;
83
84
  /**
84
85
  * Throws an unsupported backend-capability diagnostic.
85
- * @param {import("./semantic/types.js").SemanticLanguage} language - Backend language.
86
+ * @param {import("./semantic/types.js").BackendLanguage} language - Backend language or binary target.
86
87
  * @param {string} capability - Unsupported semantic capability.
87
88
  * @param {import("./semantic/types.js").SourceLocation | undefined} location - Semantic source location.
88
89
  * @returns {never} Always throws.
89
90
  */
90
- export declare function unsupportedCapability(language: import("./semantic/types.js").SemanticLanguage, capability: string, location: import("./semantic/types.js").SourceLocation | undefined): never;
91
+ export declare function unsupportedCapability(language: import("./semantic/types.js").BackendLanguage, capability: string, location: import("./semantic/types.js").SourceLocation | undefined): never;
91
92
  /**
92
93
  * Throws when a registered identity lacks one requested role.
93
94
  * @param {string} language - Registered language or target identity.
@@ -1 +1 @@
1
- {"version":3,"file":"diagnostic.d.ts","sourceRoot":"","sources":["../../src/diagnostic.js"],"names":[],"mappings":"AAEA,kEAAkE;AAClE,qBAAa,qBAAsB,SAAQ,KAAK;IAwBvC,IAAI;IACJ,MAAM;IACN,iBAAiB;IACjB,QAAQ;IACR,QAAQ;IACkB,OAAO;IACJ,UAAU;IACZ,QAAQ;IACV,MAAM;IACP,KAAK;IACJ,MAAM;IACN,MAAM;IACL,OAAO;IAnCxC;;;;;;;;;;;;;;;;;OAiBG;IACH,YAAY,EAAC,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,iBAAiB,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAC,EAf7I;QAAwB,IAAI,EAApB,MAAM,CACd;QAAwB,OAAO,EAAvB,MAAM,CACd;QAAwB,QAAQ,EAAxB,MAAM,CACd;QAA2E,QAAQ,AAAnF,CACA,EADQ,OAAO,qBAAqB,EAAE,cAAc,GAAG,SAAS,CAChE;QAA2E,iBAAiB,AAA5F,CACA,EADQ,OAAO,qBAAqB,EAAE,cAAc,GAAG,SAAS,CAChE;QAAoC,KAAK,AAAzC,CACA,EADQ,KAAK,GAAG,SAAS,CACzB;QAAqC,OAAO,AAA5C,CACA,EADQ,MAAM,GAAG,SAAS,CAC1B;QAAqC,UAAU,AAA/C,CACA,EADQ,MAAM,GAAG,SAAS,CAC1B;QAAqC,QAAQ,AAA7C,CACA,EADQ,MAAM,GAAG,SAAS,CAC1B;QAAqC,MAAM,AAA3C,CACA,EADQ,MAAM,GAAG,SAAS,CAC1B;QAAqC,KAAK,AAA1C,CACA,EADQ,MAAM,GAAG,SAAS,CAC1B;QAAqC,MAAM,AAA3C,CACA,EADQ,MAAM,GAAG,SAAS,CAC1B;QAAqC,MAAM,AAA3C,CACA,EADQ,MAAM,GAAG,SAAS,CAC1B;QAAqC,OAAO,AAA5C,CACF,EADU,MAAM,GAAG,SAAS,CAC5B;KAC+I,EAkB/I;CACF;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAJ1B,OAAO,qBAAqB,EAAE,gBAIJ,EAAE,KAAK,EAHjC,OAGiC,GAF/B,KAAK,CAWjB;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAL/B,OAAO,qBAAqB,EAAE,gBAKC,EAAE,MAAM,EAJvC,MAIuC,EAAE,QAAQ,EAHjD,OAAO,qBAAqB,EAAE,cAAc,GAAG,SAGE,GAF/C,KAAK,CASjB;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EALzB,OAAO,qBAAqB,EAAE,gBAKL,EAAE,OAAO,EAJlC,MAIkC,EAAE,QAAQ,EAH5C,OAAO,qBAAqB,EAAE,cAAc,GAAG,SAGH,GAF1C,KAAK,CASjB;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAN7B,OAAO,qBAAqB,EAAE,gBAMD,EAAE,IAAI,EALnC,MAKmC,EAAE,MAAM,EAJ3C,MAI2C,EAAE,QAAQ,EAHrD,OAAO,qBAAqB,EAAE,cAAc,GAAG,SAGM,GAFnD,KAAK,CAIjB;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EALnC,OAAO,qBAAqB,EAAE,gBAKK,EAAE,UAAU,EAJ/C,MAI+C,EAAE,QAAQ,EAHzD,OAAO,qBAAqB,EAAE,cAAc,GAAG,SAGU,GAFvD,KAAK,CASjB;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAL7B,MAK6B,EAAE,IAAI,EAJnC,MAImC,EAAE,QAAQ,AAHrD,CACA,EADQ,OAAO,qBAAqB,EAAE,cAAc,GAAG,SAGF,GAF3C,KAAK,CASjB"}
1
+ {"version":3,"file":"diagnostic.d.ts","sourceRoot":"","sources":["../../src/diagnostic.js"],"names":[],"mappings":"AAEA,kEAAkE;AAClE,qBAAa,qBAAsB,SAAQ,KAAK;IAwBvC,IAAI;IACJ,MAAM;IACN,iBAAiB;IACjB,QAAQ;IACR,QAAQ;IACkB,OAAO;IACJ,UAAU;IACZ,QAAQ;IACV,MAAM;IACP,KAAK;IACJ,MAAM;IACN,MAAM;IACL,OAAO;IAnCxC;;;;;;;;;;;;;;;;;OAiBG;IACH,YAAY,EAAC,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,iBAAiB,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAC,EAf7I;QAAwB,IAAI,EAApB,MAAM,CACd;QAAwB,OAAO,EAAvB,MAAM,CACd;QAAwB,QAAQ,EAAxB,MAAM,CACd;QAA2E,QAAQ,AAAnF,CACA,EADQ,OAAO,qBAAqB,EAAE,cAAc,GAAG,SAAS,CAChE;QAA2E,iBAAiB,AAA5F,CACA,EADQ,OAAO,qBAAqB,EAAE,cAAc,GAAG,SAAS,CAChE;QAAoC,KAAK,AAAzC,CACA,EADQ,KAAK,GAAG,SAAS,CACzB;QAAqC,OAAO,AAA5C,CACA,EADQ,MAAM,GAAG,SAAS,CAC1B;QAAqC,UAAU,AAA/C,CACA,EADQ,MAAM,GAAG,SAAS,CAC1B;QAAqC,QAAQ,AAA7C,CACA,EADQ,MAAM,GAAG,SAAS,CAC1B;QAAqC,MAAM,AAA3C,CACA,EADQ,MAAM,GAAG,SAAS,CAC1B;QAAqC,KAAK,AAA1C,CACA,EADQ,MAAM,GAAG,SAAS,CAC1B;QAAqC,MAAM,AAA3C,CACA,EADQ,MAAM,GAAG,SAAS,CAC1B;QAAqC,MAAM,AAA3C,CACA,EADQ,MAAM,GAAG,SAAS,CAC1B;QAAqC,OAAO,AAA5C,CACF,EADU,MAAM,GAAG,SAAS,CAC5B;KAC+I,EAkB/I;CACF;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAL1B,OAAO,qBAAqB,EAAE,gBAKJ,EAAE,KAAK,EAJjC,OAIiC,EAAE,QAAQ,AAHnD,CACA,EADQ,OAAO,qBAAqB,EAAE,cAAc,GAAG,SAGJ,GAFzC,KAAK,CAYjB;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAL/B,OAAO,qBAAqB,EAAE,gBAKC,EAAE,MAAM,EAJvC,MAIuC,EAAE,QAAQ,EAHjD,OAAO,qBAAqB,EAAE,cAAc,GAAG,SAGE,GAF/C,KAAK,CASjB;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EALzB,OAAO,qBAAqB,EAAE,gBAKL,EAAE,OAAO,EAJlC,MAIkC,EAAE,QAAQ,EAH5C,OAAO,qBAAqB,EAAE,cAAc,GAAG,SAGH,GAF1C,KAAK,CASjB;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAN7B,OAAO,qBAAqB,EAAE,gBAMD,EAAE,IAAI,EALnC,MAKmC,EAAE,MAAM,EAJ3C,MAI2C,EAAE,QAAQ,EAHrD,OAAO,qBAAqB,EAAE,cAAc,GAAG,SAGM,GAFnD,KAAK,CAIjB;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EALnC,OAAO,qBAAqB,EAAE,eAKK,EAAE,UAAU,EAJ/C,MAI+C,EAAE,QAAQ,EAHzD,OAAO,qBAAqB,EAAE,cAAc,GAAG,SAGU,GAFvD,KAAK,CASjB;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAL7B,MAK6B,EAAE,IAAI,EAJnC,MAImC,EAAE,QAAQ,AAHrD,CACA,EADQ,OAAO,qBAAqB,EAAE,cAAc,GAAG,SAGF,GAF3C,KAAK,CASjB"}
@@ -50,14 +50,16 @@ export class SemantifoldDiagnostic extends Error {
50
50
  * Throws a normalized parser diagnostic while preserving the parser error.
51
51
  * @param {import("./semantic/types.js").SemanticLanguage} language - Frontend language.
52
52
  * @param {unknown} error - Opaque parser error, narrowed immediately.
53
+ * @param {import("./semantic/types.js").SourceLocation | undefined} [location] - Normalized parser failure range.
53
54
  * @returns {never} Always throws.
54
55
  */
55
- export function parseFailure(language, error) {
56
+ export function parseFailure(language, error, location) {
56
57
  const cause = error instanceof Error ? error : new Error(String(error));
57
58
  throw new SemantifoldDiagnostic({
58
59
  cause,
59
60
  code: "PARSE_ERROR",
60
61
  language,
62
+ location,
61
63
  message: cause.message
62
64
  });
63
65
  }
@@ -104,7 +106,7 @@ export function semanticFailure(language, code, detail, location) {
104
106
  }
105
107
  /**
106
108
  * Throws an unsupported backend-capability diagnostic.
107
- * @param {import("./semantic/types.js").SemanticLanguage} language - Backend language.
109
+ * @param {import("./semantic/types.js").BackendLanguage} language - Backend language or binary target.
108
110
  * @param {string} capability - Unsupported semantic capability.
109
111
  * @param {import("./semantic/types.js").SourceLocation | undefined} location - Semantic source location.
110
112
  * @returns {never} Always throws.
@@ -132,4 +134,4 @@ export function unsupportedRole(language, role, location) {
132
134
  message: `Registered language or target does not provide role '${role}'.`
133
135
  });
134
136
  }
135
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhZ25vc3RpYy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kaWFnbm9zdGljLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLFlBQVk7QUFFWixrRUFBa0U7QUFDbEUsTUFBTSxPQUFPLHFCQUFzQixTQUFRLEtBQUs7SUFDOUM7Ozs7Ozs7Ozs7Ozs7Ozs7O09BaUJHO0lBQ0gsWUFBWSxFQUFDLEtBQUssRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsaUJBQWlCLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBQztRQUM5SSxNQUFNLFlBQVksR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDLE9BQU8sUUFBUSxDQUFDLFFBQVEsSUFBSSxRQUFRLENBQUMsS0FBSyxDQUFDLElBQUksSUFBSSxRQUFRLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUE7UUFFL0csS0FBSyxDQUFDLElBQUksSUFBSSxLQUFLLFFBQVEsR0FBRyxZQUFZLEtBQUssT0FBTyxFQUFFLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFDLEtBQUssRUFBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQTtRQUN0RixJQUFJLENBQUMsSUFBSSxHQUFHLHVCQUF1QixDQUFBO1FBQ25DLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFBO1FBQ2hCLElBQUksQ0FBQyxNQUFNLEdBQUcsT0FBTyxDQUFBO1FBQ3JCLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxpQkFBaUIsQ0FBQTtRQUMxQyxJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQTtRQUN4QixJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQTtRQUN4QixJQUFJLE9BQU8sSUFBSSxTQUFTO1lBQUUsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUE7UUFDaEQsSUFBSSxVQUFVLElBQUksU0FBUztZQUFFLElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFBO1FBQ3pELElBQUksUUFBUSxJQUFJLFNBQVM7WUFBRSxJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQTtRQUNuRCxJQUFJLE1BQU0sSUFBSSxTQUFTO1lBQUUsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUE7UUFDN0MsSUFBSSxLQUFLLElBQUksU0FBUztZQUFFLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFBO1FBQzFDLElBQUksTUFBTSxJQUFJLFNBQVM7WUFBRSxJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQTtRQUM3QyxJQUFJLE1BQU0sSUFBSSxTQUFTO1lBQUUsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUE7UUFDN0MsSUFBSSxPQUFPLElBQUksU0FBUztZQUFFLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFBO0lBQ2xELENBQUM7Q0FDRjtBQUVEOzs7OztHQUtHO0FBQ0gsTUFBTSxVQUFVLFlBQVksQ0FBQyxRQUFRLEVBQUUsS0FBSztJQUMxQyxNQUFNLEtBQUssR0FBRyxLQUFLLFlBQVksS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFBO0lBRXZFLE1BQU0sSUFBSSxxQkFBcUIsQ0FBQztRQUM5QixLQUFLO1FBQ0wsSUFBSSxFQUFFLGFBQWE7UUFDbkIsUUFBUTtRQUNSLE9BQU8sRUFBRSxLQUFLLENBQUMsT0FBTztLQUN2QixDQUFDLENBQUE7QUFDSixDQUFDO0FBRUQ7Ozs7OztHQU1HO0FBQ0gsTUFBTSxVQUFVLGlCQUFpQixDQUFDLFFBQVEsRUFBRSxNQUFNLEVBQUUsUUFBUTtJQUMxRCxNQUFNLElBQUkscUJBQXFCLENBQUM7UUFDOUIsSUFBSSxFQUFFLG9CQUFvQjtRQUMxQixRQUFRO1FBQ1IsUUFBUTtRQUNSLE9BQU8sRUFBRSxXQUFXLE1BQU0sK0NBQStDO0tBQzFFLENBQUMsQ0FBQTtBQUNKLENBQUM7QUFFRDs7Ozs7O0dBTUc7QUFDSCxNQUFNLFVBQVUsV0FBVyxDQUFDLFFBQVEsRUFBRSxPQUFPLEVBQUUsUUFBUTtJQUNyRCxNQUFNLElBQUkscUJBQXFCLENBQUM7UUFDOUIsSUFBSSxFQUFFLGNBQWM7UUFDcEIsUUFBUTtRQUNSLFFBQVE7UUFDUixPQUFPLEVBQUUsR0FBRyxPQUFPLDJFQUEyRTtLQUMvRixDQUFDLENBQUE7QUFDSixDQUFDO0FBRUQ7Ozs7Ozs7R0FPRztBQUNILE1BQU0sVUFBVSxlQUFlLENBQUMsUUFBUSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsUUFBUTtJQUM5RCxNQUFNLElBQUkscUJBQXFCLENBQUMsRUFBQyxJQUFJLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFDLENBQUMsQ0FBQTtBQUM5RSxDQUFDO0FBRUQ7Ozs7OztHQU1HO0FBQ0gsTUFBTSxVQUFVLHFCQUFxQixDQUFDLFFBQVEsRUFBRSxVQUFVLEVBQUUsUUFBUTtJQUNsRSxNQUFNLElBQUkscUJBQXFCLENBQUM7UUFDOUIsSUFBSSxFQUFFLHdCQUF3QjtRQUM5QixRQUFRO1FBQ1IsUUFBUTtRQUNSLE9BQU8sRUFBRSw0Q0FBNEMsVUFBVSxJQUFJO0tBQ3BFLENBQUMsQ0FBQTtBQUNKLENBQUM7QUFFRDs7Ozs7O0dBTUc7QUFDSCxNQUFNLFVBQVUsZUFBZSxDQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUUsUUFBUTtJQUN0RCxNQUFNLElBQUkscUJBQXFCLENBQUM7UUFDOUIsSUFBSSxFQUFFLGtCQUFrQjtRQUN4QixRQUFRO1FBQ1IsUUFBUTtRQUNSLE9BQU8sRUFBRSx3REFBd0QsSUFBSSxJQUFJO0tBQzFFLENBQUMsQ0FBQTtBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBAdHMtY2hlY2tcblxuLyoqIEEgY2xlYXIgcGFyc2VyLCBzZW1hbnRpYywgb3IgYmFja2VuZCBjYXBhYmlsaXR5IGRpYWdub3N0aWMuICovXG5leHBvcnQgY2xhc3MgU2VtYW50aWZvbGREaWFnbm9zdGljIGV4dGVuZHMgRXJyb3Ige1xuICAvKipcbiAgICogQ3JlYXRlcyBhIGRpYWdub3N0aWMuXG4gICAqIEBwYXJhbSB7b2JqZWN0fSBvcHRpb25zIC0gRGlhZ25vc3RpYyBmaWVsZHMuXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBvcHRpb25zLmNvZGUgLSBTdGFibGUgZGlhZ25vc3RpYyBjb2RlLlxuICAgKiBAcGFyYW0ge3N0cmluZ30gb3B0aW9ucy5tZXNzYWdlIC0gSHVtYW4tcmVhZGFibGUgbWVzc2FnZS5cbiAgICogQHBhcmFtIHtzdHJpbmd9IG9wdGlvbnMubGFuZ3VhZ2UgLSBSZWxhdGVkIGxhbmd1YWdlLCB0YXJnZXQsIHRvb2wsIG9yIHJlZ2lzdHJ5IGlkZW50aXR5LlxuICAgKiBAcGFyYW0ge2ltcG9ydChcIi4vc2VtYW50aWMvdHlwZXMuanNcIikuU291cmNlTG9jYXRpb24gfCB1bmRlZmluZWR9IFtvcHRpb25zLmxvY2F0aW9uXSAtIFJlbGF0ZWQgbG9jYXRpb24uXG4gICAqIEBwYXJhbSB7aW1wb3J0KFwiLi9zZW1hbnRpYy90eXBlcy5qc1wiKS5Tb3VyY2VMb2NhdGlvbiB8IHVuZGVmaW5lZH0gW29wdGlvbnMuZ2VuZXJhdGVkTG9jYXRpb25dIC0gUHJlLXJlbWFwcGluZyBnZW5lcmF0ZWQgbG9jYXRpb24uXG4gICAqIEBwYXJhbSB7RXJyb3IgfCB1bmRlZmluZWR9IFtvcHRpb25zLmNhdXNlXSAtIFByZXNlcnZlZCBwYXJzZXIgZXJyb3IuXG4gICAqIEBwYXJhbSB7c3RyaW5nIHwgdW5kZWZpbmVkfSBbb3B0aW9ucy5jb21tYW5kXSAtIENhbm9uaWNhbCBjb21tYW5kIHdoZW4gdG9vbCBkaXNjb3ZlcnkgaXMgaW52b2x2ZWQuXG4gICAqIEBwYXJhbSB7c3RyaW5nIHwgdW5kZWZpbmVkfSBbb3B0aW9ucy5leGVjdXRhYmxlXSAtIEV4YWN0IHJlc29sdmVkIGV4ZWN1dGFibGUgd2hlbiBrbm93bi5cbiAgICogQHBhcmFtIHtudW1iZXIgfCB1bmRlZmluZWR9IFtvcHRpb25zLmV4aXRDb2RlXSAtIFByb2Nlc3MgZXhpdCBjb2RlIHdoZW4gYXZhaWxhYmxlLlxuICAgKiBAcGFyYW0ge3N0cmluZyB8IHVuZGVmaW5lZH0gW29wdGlvbnMuc2lnbmFsXSAtIFByb2Nlc3MgdGVybWluYXRpb24gc2lnbmFsIHdoZW4gYXZhaWxhYmxlLlxuICAgKiBAcGFyYW0ge3N0cmluZyB8IHVuZGVmaW5lZH0gW29wdGlvbnMuc3RhZ2VdIC0gQWNjZXB0YW5jZSBzdGFnZSB3aGVuIGV4ZWN1dGlvbiBpcyBpbnZvbHZlZC5cbiAgICogQHBhcmFtIHtzdHJpbmcgfCB1bmRlZmluZWR9IFtvcHRpb25zLnN0ZGVycl0gLSBDYXB0dXJlZCBzdGFuZGFyZCBlcnJvciB3aGVuIGF2YWlsYWJsZS5cbiAgICogQHBhcmFtIHtzdHJpbmcgfCB1bmRlZmluZWR9IFtvcHRpb25zLnN0ZG91dF0gLSBDYXB0dXJlZCBzdGFuZGFyZCBvdXRwdXQgd2hlbiBhdmFpbGFibGUuXG4gICAqIEBwYXJhbSB7c3RyaW5nIHwgdW5kZWZpbmVkfSBbb3B0aW9ucy52ZXJzaW9uXSAtIENhcHR1cmVkIGV4ZWN1dGFibGUgdmVyc2lvbiB3aGVuIGtub3duLlxuICAgKi9cbiAgY29uc3RydWN0b3Ioe2NhdXNlLCBjb2RlLCBjb21tYW5kLCBleGVjdXRhYmxlLCBleGl0Q29kZSwgZ2VuZXJhdGVkTG9jYXRpb24sIGxhbmd1YWdlLCBsb2NhdGlvbiwgbWVzc2FnZSwgc2lnbmFsLCBzdGFnZSwgc3RkZXJyLCBzdGRvdXQsIHZlcnNpb259KSB7XG4gICAgY29uc3QgbG9jYXRpb25UZXh0ID0gbG9jYXRpb24gPyBgIGF0ICR7bG9jYXRpb24uZmlsZW5hbWV9OiR7bG9jYXRpb24uc3RhcnQubGluZX06JHtsb2NhdGlvbi5zdGFydC5jb2x1bW59YCA6IFwiXCJcblxuICAgIHN1cGVyKGBbJHtjb2RlfV0gJHtsYW5ndWFnZX0ke2xvY2F0aW9uVGV4dH06ICR7bWVzc2FnZX1gLCBjYXVzZSA/IHtjYXVzZX0gOiB1bmRlZmluZWQpXG4gICAgdGhpcy5uYW1lID0gXCJTZW1hbnRpZm9sZERpYWdub3N0aWNcIlxuICAgIHRoaXMuY29kZSA9IGNvZGVcbiAgICB0aGlzLmRldGFpbCA9IG1lc3NhZ2VcbiAgICB0aGlzLmdlbmVyYXRlZExvY2F0aW9uID0gZ2VuZXJhdGVkTG9jYXRpb25cbiAgICB0aGlzLmxhbmd1YWdlID0gbGFuZ3VhZ2VcbiAgICB0aGlzLmxvY2F0aW9uID0gbG9jYXRpb25cbiAgICBpZiAoY29tbWFuZCAhPSB1bmRlZmluZWQpIHRoaXMuY29tbWFuZCA9IGNvbW1hbmRcbiAgICBpZiAoZXhlY3V0YWJsZSAhPSB1bmRlZmluZWQpIHRoaXMuZXhlY3V0YWJsZSA9IGV4ZWN1dGFibGVcbiAgICBpZiAoZXhpdENvZGUgIT0gdW5kZWZpbmVkKSB0aGlzLmV4aXRDb2RlID0gZXhpdENvZGVcbiAgICBpZiAoc2lnbmFsICE9IHVuZGVmaW5lZCkgdGhpcy5zaWduYWwgPSBzaWduYWxcbiAgICBpZiAoc3RhZ2UgIT0gdW5kZWZpbmVkKSB0aGlzLnN0YWdlID0gc3RhZ2VcbiAgICBpZiAoc3RkZXJyICE9IHVuZGVmaW5lZCkgdGhpcy5zdGRlcnIgPSBzdGRlcnJcbiAgICBpZiAoc3Rkb3V0ICE9IHVuZGVmaW5lZCkgdGhpcy5zdGRvdXQgPSBzdGRvdXRcbiAgICBpZiAodmVyc2lvbiAhPSB1bmRlZmluZWQpIHRoaXMudmVyc2lvbiA9IHZlcnNpb25cbiAgfVxufVxuXG4vKipcbiAqIFRocm93cyBhIG5vcm1hbGl6ZWQgcGFyc2VyIGRpYWdub3N0aWMgd2hpbGUgcHJlc2VydmluZyB0aGUgcGFyc2VyIGVycm9yLlxuICogQHBhcmFtIHtpbXBvcnQoXCIuL3NlbWFudGljL3R5cGVzLmpzXCIpLlNlbWFudGljTGFuZ3VhZ2V9IGxhbmd1YWdlIC0gRnJvbnRlbmQgbGFuZ3VhZ2UuXG4gKiBAcGFyYW0ge3Vua25vd259IGVycm9yIC0gT3BhcXVlIHBhcnNlciBlcnJvciwgbmFycm93ZWQgaW1tZWRpYXRlbHkuXG4gKiBAcmV0dXJucyB7bmV2ZXJ9IEFsd2F5cyB0aHJvd3MuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBwYXJzZUZhaWx1cmUobGFuZ3VhZ2UsIGVycm9yKSB7XG4gIGNvbnN0IGNhdXNlID0gZXJyb3IgaW5zdGFuY2VvZiBFcnJvciA/IGVycm9yIDogbmV3IEVycm9yKFN0cmluZyhlcnJvcikpXG5cbiAgdGhyb3cgbmV3IFNlbWFudGlmb2xkRGlhZ25vc3RpYyh7XG4gICAgY2F1c2UsXG4gICAgY29kZTogXCJQQVJTRV9FUlJPUlwiLFxuICAgIGxhbmd1YWdlLFxuICAgIG1lc3NhZ2U6IGNhdXNlLm1lc3NhZ2VcbiAgfSlcbn1cblxuLyoqXG4gKiBUaHJvd3MgYW4gdW5zdXBwb3J0ZWQtc3ludGF4IGRpYWdub3N0aWMuXG4gKiBAcGFyYW0ge2ltcG9ydChcIi4vc2VtYW50aWMvdHlwZXMuanNcIikuU2VtYW50aWNMYW5ndWFnZX0gbGFuZ3VhZ2UgLSBGcm9udGVuZCBsYW5ndWFnZS5cbiAqIEBwYXJhbSB7c3RyaW5nfSBzeW50YXggLSBQYXJzZXIgc3ludGF4IGtpbmQuXG4gKiBAcGFyYW0ge2ltcG9ydChcIi4vc2VtYW50aWMvdHlwZXMuanNcIikuU291cmNlTG9jYXRpb24gfCB1bmRlZmluZWR9IGxvY2F0aW9uIC0gU291cmNlIGxvY2F0aW9uLlxuICogQHJldHVybnMge25ldmVyfSBBbHdheXMgdGhyb3dzLlxuICovXG5leHBvcnQgZnVuY3Rpb24gdW5zdXBwb3J0ZWRTeW50YXgobGFuZ3VhZ2UsIHN5bnRheCwgbG9jYXRpb24pIHtcbiAgdGhyb3cgbmV3IFNlbWFudGlmb2xkRGlhZ25vc3RpYyh7XG4gICAgY29kZTogXCJVTlNVUFBPUlRFRF9TWU5UQVhcIixcbiAgICBsYW5ndWFnZSxcbiAgICBsb2NhdGlvbixcbiAgICBtZXNzYWdlOiBgU3ludGF4ICcke3N5bnRheH0nIGlzIG91dHNpZGUgdGhlIGltcGxlbWVudGVkIHNlbWFudGljIHN1YnNldC5gXG4gIH0pXG59XG5cbi8qKlxuICogVGhyb3dzIGEgbWlzc2luZy10eXBlIGRpYWdub3N0aWMuXG4gKiBAcGFyYW0ge2ltcG9ydChcIi4vc2VtYW50aWMvdHlwZXMuanNcIikuU2VtYW50aWNMYW5ndWFnZX0gbGFuZ3VhZ2UgLSBGcm9udGVuZCBsYW5ndWFnZS5cbiAqIEBwYXJhbSB7c3RyaW5nfSBzdWJqZWN0IC0gVW50eXBlZCBzdWJqZWN0LlxuICogQHBhcmFtIHtpbXBvcnQoXCIuL3NlbWFudGljL3R5cGVzLmpzXCIpLlNvdXJjZUxvY2F0aW9uIHwgdW5kZWZpbmVkfSBsb2NhdGlvbiAtIFNvdXJjZSBsb2NhdGlvbi5cbiAqIEByZXR1cm5zIHtuZXZlcn0gQWx3YXlzIHRocm93cy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIG1pc3NpbmdUeXBlKGxhbmd1YWdlLCBzdWJqZWN0LCBsb2NhdGlvbikge1xuICB0aHJvdyBuZXcgU2VtYW50aWZvbGREaWFnbm9zdGljKHtcbiAgICBjb2RlOiBcIk1JU1NJTkdfVFlQRVwiLFxuICAgIGxhbmd1YWdlLFxuICAgIGxvY2F0aW9uLFxuICAgIG1lc3NhZ2U6IGAke3N1YmplY3R9IHJlcXVpcmVzIGFuIGV4cGxpY2l0IHN1cHBvcnRlZCBzY2FsYXIgdHlwZTogaW50ZWdlciwgYm9vbGVhbiwgb3Igc3RyaW5nLmBcbiAgfSlcbn1cblxuLyoqXG4gKiBUaHJvd3MgYSBsYW5ndWFnZS1uZXV0cmFsIHNlbWFudGljIGRpYWdub3N0aWMgZGlzY292ZXJlZCBhZnRlciBhZGFwdGF0aW9uLlxuICogQHBhcmFtIHtpbXBvcnQoXCIuL3NlbWFudGljL3R5cGVzLmpzXCIpLlNlbWFudGljTGFuZ3VhZ2V9IGxhbmd1YWdlIC0gU291cmNlIGxhbmd1YWdlLlxuICogQHBhcmFtIHtzdHJpbmd9IGNvZGUgLSBTdGFibGUgc2VtYW50aWMgZGlhZ25vc3RpYyBjb2RlLlxuICogQHBhcmFtIHtzdHJpbmd9IGRldGFpbCAtIEh1bWFuLXJlYWRhYmxlIHNlbWFudGljIGZhaWx1cmUuXG4gKiBAcGFyYW0ge2ltcG9ydChcIi4vc2VtYW50aWMvdHlwZXMuanNcIikuU291cmNlTG9jYXRpb24gfCB1bmRlZmluZWR9IGxvY2F0aW9uIC0gU291cmNlIGxvY2F0aW9uLlxuICogQHJldHVybnMge25ldmVyfSBBbHdheXMgdGhyb3dzLlxuICovXG5leHBvcnQgZnVuY3Rpb24gc2VtYW50aWNGYWlsdXJlKGxhbmd1YWdlLCBjb2RlLCBkZXRhaWwsIGxvY2F0aW9uKSB7XG4gIHRocm93IG5ldyBTZW1hbnRpZm9sZERpYWdub3N0aWMoe2NvZGUsIGxhbmd1YWdlLCBsb2NhdGlvbiwgbWVzc2FnZTogZGV0YWlsfSlcbn1cblxuLyoqXG4gKiBUaHJvd3MgYW4gdW5zdXBwb3J0ZWQgYmFja2VuZC1jYXBhYmlsaXR5IGRpYWdub3N0aWMuXG4gKiBAcGFyYW0ge2ltcG9ydChcIi4vc2VtYW50aWMvdHlwZXMuanNcIikuU2VtYW50aWNMYW5ndWFnZX0gbGFuZ3VhZ2UgLSBCYWNrZW5kIGxhbmd1YWdlLlxuICogQHBhcmFtIHtzdHJpbmd9IGNhcGFiaWxpdHkgLSBVbnN1cHBvcnRlZCBzZW1hbnRpYyBjYXBhYmlsaXR5LlxuICogQHBhcmFtIHtpbXBvcnQoXCIuL3NlbWFudGljL3R5cGVzLmpzXCIpLlNvdXJjZUxvY2F0aW9uIHwgdW5kZWZpbmVkfSBsb2NhdGlvbiAtIFNlbWFudGljIHNvdXJjZSBsb2NhdGlvbi5cbiAqIEByZXR1cm5zIHtuZXZlcn0gQWx3YXlzIHRocm93cy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHVuc3VwcG9ydGVkQ2FwYWJpbGl0eShsYW5ndWFnZSwgY2FwYWJpbGl0eSwgbG9jYXRpb24pIHtcbiAgdGhyb3cgbmV3IFNlbWFudGlmb2xkRGlhZ25vc3RpYyh7XG4gICAgY29kZTogXCJVTlNVUFBPUlRFRF9DQVBBQklMSVRZXCIsXG4gICAgbGFuZ3VhZ2UsXG4gICAgbG9jYXRpb24sXG4gICAgbWVzc2FnZTogYEJhY2tlbmQgY2Fubm90IGVtaXQgc2VtYW50aWMgY2FwYWJpbGl0eSAnJHtjYXBhYmlsaXR5fScuYFxuICB9KVxufVxuXG4vKipcbiAqIFRocm93cyB3aGVuIGEgcmVnaXN0ZXJlZCBpZGVudGl0eSBsYWNrcyBvbmUgcmVxdWVzdGVkIHJvbGUuXG4gKiBAcGFyYW0ge3N0cmluZ30gbGFuZ3VhZ2UgLSBSZWdpc3RlcmVkIGxhbmd1YWdlIG9yIHRhcmdldCBpZGVudGl0eS5cbiAqIEBwYXJhbSB7c3RyaW5nfSByb2xlIC0gUmVxdWVzdGVkIHJlZ2lzdHJ5IHJvbGUuXG4gKiBAcGFyYW0ge2ltcG9ydChcIi4vc2VtYW50aWMvdHlwZXMuanNcIikuU291cmNlTG9jYXRpb24gfCB1bmRlZmluZWR9IFtsb2NhdGlvbl0gLSBSZWxhdGVkIHNlbWFudGljIGxvY2F0aW9uLlxuICogQHJldHVybnMge25ldmVyfSBBbHdheXMgdGhyb3dzLlxuICovXG5leHBvcnQgZnVuY3Rpb24gdW5zdXBwb3J0ZWRSb2xlKGxhbmd1YWdlLCByb2xlLCBsb2NhdGlvbikge1xuICB0aHJvdyBuZXcgU2VtYW50aWZvbGREaWFnbm9zdGljKHtcbiAgICBjb2RlOiBcIlVOU1VQUE9SVEVEX1JPTEVcIixcbiAgICBsYW5ndWFnZSxcbiAgICBsb2NhdGlvbixcbiAgICBtZXNzYWdlOiBgUmVnaXN0ZXJlZCBsYW5ndWFnZSBvciB0YXJnZXQgZG9lcyBub3QgcHJvdmlkZSByb2xlICcke3JvbGV9Jy5gXG4gIH0pXG59XG4iXX0=
137
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhZ25vc3RpYy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kaWFnbm9zdGljLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLFlBQVk7QUFFWixrRUFBa0U7QUFDbEUsTUFBTSxPQUFPLHFCQUFzQixTQUFRLEtBQUs7SUFDOUM7Ozs7Ozs7Ozs7Ozs7Ozs7O09BaUJHO0lBQ0gsWUFBWSxFQUFDLEtBQUssRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsaUJBQWlCLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBQztRQUM5SSxNQUFNLFlBQVksR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDLE9BQU8sUUFBUSxDQUFDLFFBQVEsSUFBSSxRQUFRLENBQUMsS0FBSyxDQUFDLElBQUksSUFBSSxRQUFRLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUE7UUFFL0csS0FBSyxDQUFDLElBQUksSUFBSSxLQUFLLFFBQVEsR0FBRyxZQUFZLEtBQUssT0FBTyxFQUFFLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFDLEtBQUssRUFBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQTtRQUN0RixJQUFJLENBQUMsSUFBSSxHQUFHLHVCQUF1QixDQUFBO1FBQ25DLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFBO1FBQ2hCLElBQUksQ0FBQyxNQUFNLEdBQUcsT0FBTyxDQUFBO1FBQ3JCLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxpQkFBaUIsQ0FBQTtRQUMxQyxJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQTtRQUN4QixJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQTtRQUN4QixJQUFJLE9BQU8sSUFBSSxTQUFTO1lBQUUsSUFBSSxDQUFDLE9B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bnRpYywgb3IgYmFja2VuZCBjYXBhYmlsaXR5IGRpYWdub3N0aWMuICovXG5leHBvcnQgY2xhc3MgU2VtYW50aWZvbGREaWFnbm9zdGljIGV4dGVuZHMgRXJyb3Ige1xuICAvKipcbiAgICogQ3JlYXRlcyBhIGRpYWdub3N0aWMuXG4gICAqIEBwYXJhbSB7b2JqZWN0fSBvcHRpb25zIC0gRGlhZ25vc3RpYyBmaWVsZHMuXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBvcHRpb25zLmNvZGUgLSBTdGFibGUgZGlhZ25vc3RpYyBjb2RlLlxuICAgKiBAcGFyYW0ge3N0cmluZ30gb3B0aW9ucy5tZXNzYWdlIC0gSHVtYW4tcmVhZGFibGUgbWVzc2FnZS5cbiAgICogQHBhcmFtIHtzdHJpbmd9IG9wdGlvbnMubGFuZ3VhZ2UgLSBSZWxhdGVkIGxhbmd1YWdlLCB0YXJnZXQsIHRvb2wsIG9yIHJlZ2lzdHJ5IGlkZW50aXR5LlxuICAgKiBAcGFyYW0ge2ltcG9ydChcIi4vc2VtYW50aWMvdHlwZXMuanNcIikuU291cmNlTG9jYXRpb24gfCB1bmRlZmluZWR9IFtvcHRpb25zLmxvY2F0aW9uXSAtIFJlbGF0ZWQgbG9jYXRpb24uXG4gICAqIEBwYXJhbSB7aW1wb3J0KFwiLi9zZW1hbnRpYy90eXBlcy5qc1wiKS5Tb3VyY2VMb2NhdGlvbiB8IHVuZGVmaW5lZH0gW29wdGlvbnMuZ2VuZXJhdGVkTG9jYXRpb25dIC0gUHJlLXJlbWFwcGluZyBnZW5lcmF0ZWQgbG9jYXRpb24uXG4gICAqIEBwYXJhbSB7RXJyb3IgfCB1bmRlZmluZWR9IFtvcHRpb25zLmNhdXNlXSAtIFByZXNlcnZlZCBwYXJzZXIgZXJyb3IuXG4gICAqIEBwYXJhbSB7c3RyaW5nIHwgdW5kZWZpbmVkfSBbb3B0aW9ucy5jb21tYW5kXSAtIENhbm9uaWNhbCBjb21tYW5kIHdoZW4gdG9vbCBkaXNjb3ZlcnkgaXMgaW52b2x2ZWQuXG4gICAqIEBwYXJhbSB7c3RyaW5nIHwgdW5kZWZpbmVkfSBbb3B0aW9ucy5leGVjdXRhYmxlXSAtIEV4YWN0IHJlc29sdmVkIGV4ZWN1dGFibGUgd2hlbiBrbm93bi5cbiAgICogQHBhcmFtIHtudW1iZXIgfCB1bmRlZmluZWR9IFtvcHRpb25zLmV4aXRDb2RlXSAtIFByb2Nlc3MgZXhpdCBjb2RlIHdoZW4gYXZhaWxhYmxlLlxuICAgKiBAcGFyYW0ge3N0cmluZyB8IHVuZGVmaW5lZH0gW29wdGlvbnMuc2lnbmFsXSAtIFByb2Nlc3MgdGVybWluYXRpb24gc2lnbmFsIHdoZW4gYXZhaWxhYmxlLlxuICAgKiBAcGFyYW0ge3N0cmluZyB8IHVuZGVmaW5lZH0gW29wdGlvbnMuc3RhZ2VdIC0gQWNjZXB0YW5jZSBzdGFnZSB3aGVuIGV4ZWN1dGlvbiBpcyBpbnZvbHZlZC5cbiAgICogQHBhcmFtIHtzdHJpbmcgfCB1bmRlZmluZWR9IFtvcHRpb25zLnN0ZGVycl0gLSBDYXB0dXJlZCBzdGFuZGFyZCBlcnJvciB3aGVuIGF2YWlsYWJsZS5cbiAgICogQHBhcmFtIHtzdHJpbmcgfCB1bmRlZmluZWR9IFtvcHRpb25zLnN0ZG91dF0gLSBDYXB0dXJlZCBzdGFuZGFyZCBvdXRwdXQgd2hlbiBhdmFpbGFibGUuXG4gICAqIEBwYXJhbSB7c3RyaW5nIHwgdW5kZWZpbmVkfSBbb3B0aW9ucy52ZXJzaW9uXSAtIENhcHR1cmVkIGV4ZWN1dGFibGUgdmVyc2lvbiB3aGVuIGtub3duLlxuICAgKi9cbiAgY29uc3RydWN0b3Ioe2NhdXNlLCBjb2RlLCBjb21tYW5kLCBleGVjdXRhYmxlLCBleGl0Q29kZSwgZ2VuZXJhdGVkTG9jYXRpb24sIGxhbmd1YWdlLCBsb2NhdGlvbiwgbWVzc2FnZSwgc2lnbmFsLCBzdGFnZSwgc3RkZXJyLCBzdGRvdXQsIHZlcnNpb259KSB7XG4gICAgY29uc3QgbG9jYXRpb25UZXh0ID0gbG9jYXRpb24gPyBgIGF0ICR7bG9jYXRpb24uZmlsZW5hbWV9OiR7bG9jYXRpb24uc3RhcnQubGluZX06JHtsb2NhdGlvbi5zdGFydC5jb2x1bW59YCA6IFwiXCJcblxuICAgIHN1cGVyKGBbJHtjb2RlfV0gJHtsYW5ndWFnZX0ke2xvY2F0aW9uVGV4dH06ICR7bWVzc2FnZX1gLCBjYXVzZSA/IHtjYXVzZX0gOiB1bmRlZmluZWQpXG4gICAgdGhpcy5uYW1lID0gXCJTZW1hbnRpZm9sZERpYWdub3N0aWNcIlxuICAgIHRoaXMuY29kZSA9IGNvZGVcbiAgICB0aGlzLmRldGFpbCA9IG1lc3NhZ2VcbiAgICB0aGlzLmdlbmVyYXRlZExvY2F0aW9uID0gZ2VuZXJhdGVkTG9jYXRpb25cbiAgICB0aGlzLmxhbmd1YWdlID0gbGFuZ3VhZ2VcbiAgICB0aGlzLmxvY2F0aW9uID0gbG9jYXRpb25cbiAgICBpZiAoY29tbWFuZCAhPSB1bmRlZmluZWQpIHRoaXMuY29tbWFuZCA9IGNvbW1hbmRcbiAgICBpZiAoZXhlY3V0YWJsZSAhPSB1bmRlZmluZWQpIHRoaXMuZXhlY3V0YWJsZSA9IGV4ZWN1dGFibGVcbiAgICBpZiAoZXhpdENvZGUgIT0gdW5kZWZpbmVkKSB0aGlzLmV4aXRDb2RlID0gZXhpdENvZGVcbiAgICBpZiAoc2lnbmFsICE9IHVuZGVmaW5lZCkgdGhpcy5zaWduYWwgPSBzaWduYWxcbiAgICBpZiAoc3RhZ2UgIT0gdW5kZWZpbmVkKSB0aGlzLnN0YWdlID0gc3RhZ2VcbiAgICBpZiAoc3RkZXJyICE9IHVuZGVmaW5lZCkgdGhpcy5zdGRlcnIgPSBzdGRlcnJcbiAgICBpZiAoc3Rkb3V0ICE9IHVuZGVmaW5lZCkgdGhpcy5zdGRvdXQgPSBzdGRvdXRcbiAgICBpZiAodmVyc2lvbiAhPSB1bmRlZmluZWQpIHRoaXMudmVyc2lvbiA9IHZlcnNpb25cbiAgfVxufVxuXG4vKipcbiAqIFRocm93cyBhIG5vcm1hbGl6ZWQgcGFyc2VyIGRpYWdub3N0aWMgd2hpbGUgcHJlc2VydmluZyB0aGUgcGFyc2VyIGVycm9yLlxuICogQHBhcmFtIHtpbXBvcnQoXCIuL3NlbWFudGljL3R5cGVzLmpzXCIpLlNlbWFudGljTGFuZ3VhZ2V9IGxhbmd1YWdlIC0gRnJvbnRlbmQgbGFuZ3VhZ2UuXG4gKiBAcGFyYW0ge3Vua25vd259IGVycm9yIC0gT3BhcXVlIHBhcnNlciBlcnJvciwgbmFycm93ZWQgaW1tZWRpYXRlbHkuXG4gKiBAcGFyYW0ge2ltcG9ydChcIi4vc2VtYW50aWMvdHlwZXMuanNcIikuU291cmNlTG9jYXRpb24gfCB1bmRlZmluZWR9IFtsb2NhdGlvbl0gLSBOb3JtYWxpemVkIHBhcnNlciBmYWlsdXJlIHJhbmdlLlxuICogQHJldHVybnMge25ldmVyfSBBbHdheXMgdGhyb3dzLlxuICovXG5leHBvcnQgZnVuY3Rpb24gcGFyc2VGYWlsdXJlKGxhbmd1YWdlLCBlcnJvciwgbG9jYXRpb24pIHtcbiAgY29uc3QgY2F1c2UgPSBlcnJvciBpbnN0YW5jZW9mIEVycm9yID8gZXJyb3IgOiBuZXcgRXJyb3IoU3RyaW5nKGVycm9yKSlcblxuICB0aHJvdyBuZXcgU2VtYW50aWZvbGREaWFnbm9zdGljKHtcbiAgICBjYXVzZSxcbiAgICBjb2RlOiBcIlBBUlNFX0VSUk9SXCIsXG4gICAgbGFuZ3VhZ2UsXG4gICAgbG9jYXRpb24sXG4gICAgbWVzc2FnZTogY2F1c2UubWVzc2FnZVxuICB9KVxufVxuXG4vKipcbiAqIFRocm93cyBhbiB1bnN1cHBvcnRlZC1zeW50YXggZGlhZ25vc3RpYy5cbiAqIEBwYXJhbSB7aW1wb3J0KFwiLi9zZW1hbnRpYy90eXBlcy5qc1wiKS5TZW1hbnRpY0xhbmd1YWdlfSBsYW5ndWFnZSAtIEZyb250ZW5kIGxhbmd1YWdlLlxuICogQHBhcmFtIHtzdHJpbmd9IHN5bnRheCAtIFBhcnNlciBzeW50YXgga2luZC5cbiAqIEBwYXJhbSB7aW1wb3J0KFwiLi9zZW1hbnRpYy90eXBlcy5qc1wiKS5Tb3VyY2VMb2NhdGlvbiB8IHVuZGVmaW5lZH0gbG9jYXRpb24gLSBTb3VyY2UgbG9jYXRpb24uXG4gKiBAcmV0dXJucyB7bmV2ZXJ9IEFsd2F5cyB0aHJvd3MuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB1bnN1cHBvcnRlZFN5bnRheChsYW5ndWFnZSwgc3ludGF4LCBsb2NhdGlvbikge1xuICB0aHJvdyBuZXcgU2VtYW50aWZvbGREaWFnbm9zdGljKHtcbiAgICBjb2RlOiBcIlVOU1VQUE9SVEVEX1NZTlRBWFwiLFxuICAgIGxhbmd1YWdlLFxuICAgIGxvY2F0aW9uLFxuICAgIG1lc3NhZ2U6IGBTeW50YXggJyR7c3ludGF4fScgaXMgb3V0c2lkZSB0aGUgaW1wbGVtZW50ZWQgc2VtYW50aWMgc3Vic2V0LmBcbiAgfSlcbn1cblxuLyoqXG4gKiBUaHJvd3MgYSBtaXNzaW5nLXR5cGUgZGlhZ25vc3RpYy5cbiAqIEBwYXJhbSB7aW1wb3J0KFwiLi9zZW1hbnRpYy90eXBlcy5qc1wiKS5TZW1hbnRpY0xhbmd1YWdlfSBsYW5ndWFnZSAtIEZyb250ZW5kIGxhbmd1YWdlLlxuICogQHBhcmFtIHtzdHJpbmd9IHN1YmplY3QgLSBVbnR5cGVkIHN1YmplY3QuXG4gKiBAcGFyYW0ge2ltcG9ydChcIi4vc2VtYW50aWMvdHlwZXMuanNcIikuU291cmNlTG9jYXRpb24gfCB1bmRlZmluZWR9IGxvY2F0aW9uIC0gU291cmNlIGxvY2F0aW9uLlxuICogQHJldHVybnMge25ldmVyfSBBbHdheXMgdGhyb3dzLlxuICovXG5leHBvcnQgZnVuY3Rpb24gbWlzc2luZ1R5cGUobGFuZ3VhZ2UsIHN1YmplY3QsIGxvY2F0aW9uKSB7XG4gIHRocm93IG5ldyBTZW1hbnRpZm9sZERpYWdub3N0aWMoe1xuICAgIGNvZGU6IFwiTUlTU0lOR19UWVBFXCIsXG4gICAgbGFuZ3VhZ2UsXG4gICAgbG9jYXRpb24sXG4gICAgbWVzc2FnZTogYCR7c3ViamVjdH0gcmVxdWlyZXMgYW4gZXhwbGljaXQgc3VwcG9ydGVkIHNjYWxhciB0eXBlOiBpbnRlZ2VyLCBib29sZWFuLCBvciBzdHJpbmcuYFxuICB9KVxufVxuXG4vKipcbiAqIFRocm93cyBhIGxhbmd1YWdlLW5ldXRyYWwgc2VtYW50aWMgZGlhZ25vc3RpYyBkaXNjb3ZlcmVkIGFmdGVyIGFkYXB0YXRpb24uXG4gKiBAcGFyYW0ge2ltcG9ydChcIi4vc2VtYW50aWMvdHlwZXMuanNcIikuU2VtYW50aWNMYW5ndWFnZX0gbGFuZ3VhZ2UgLSBTb3VyY2UgbGFuZ3VhZ2UuXG4gKiBAcGFyYW0ge3N0cmluZ30gY29kZSAtIFN0YWJsZSBzZW1hbnRpYyBkaWFnbm9zdGljIGNvZGUuXG4gKiBAcGFyYW0ge3N0cmluZ30gZGV0YWlsIC0gSHVtYW4tcmVhZGFibGUgc2VtYW50aWMgZmFpbHVyZS5cbiAqIEBwYXJhbSB7aW1wb3J0KFwiLi9zZW1hbnRpYy90eXBlcy5qc1wiKS5Tb3VyY2VMb2NhdGlvbiB8IHVuZGVmaW5lZH0gbG9jYXRpb24gLSBTb3VyY2UgbG9jYXRpb24uXG4gKiBAcmV0dXJucyB7bmV2ZXJ9IEFsd2F5cyB0aHJvd3MuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBzZW1hbnRpY0ZhaWx1cmUobGFuZ3VhZ2UsIGNvZGUsIGRldGFpbCwgbG9jYXRpb24pIHtcbiAgdGhyb3cgbmV3IFNlbWFudGlmb2xkRGlhZ25vc3RpYyh7Y29kZSwgbGFuZ3VhZ2UsIGxvY2F0aW9uLCBtZXNzYWdlOiBkZXRhaWx9KVxufVxuXG4vKipcbiAqIFRocm93cyBhbiB1bnN1cHBvcnRlZCBiYWNrZW5kLWNhcGFiaWxpdHkgZGlhZ25vc3RpYy5cbiAqIEBwYXJhbSB7aW1wb3J0KFwiLi9zZW1hbnRpYy90eXBlcy5qc1wiKS5CYWNrZW5kTGFuZ3VhZ2V9IGxhbmd1YWdlIC0gQmFja2VuZCBsYW5ndWFnZSBvciBiaW5hcnkgdGFyZ2V0LlxuICogQHBhcmFtIHtzdHJpbmd9IGNhcGFiaWxpdHkgLSBVbnN1cHBvcnRlZCBzZW1hbnRpYyBjYXBhYmlsaXR5LlxuICogQHBhcmFtIHtpbXBvcnQoXCIuL3NlbWFudGljL3R5cGVzLmpzXCIpLlNvdXJjZUxvY2F0aW9uIHwgdW5kZWZpbmVkfSBsb2NhdGlvbiAtIFNlbWFudGljIHNvdXJjZSBsb2NhdGlvbi5cbiAqIEByZXR1cm5zIHtuZXZlcn0gQWx3YXlzIHRocm93cy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHVuc3VwcG9ydGVkQ2FwYWJpbGl0eShsYW5ndWFnZSwgY2FwYWJpbGl0eSwgbG9jYXRpb24pIHtcbiAgdGhyb3cgbmV3IFNlbWFudGlmb2xkRGlhZ25vc3RpYyh7XG4gICAgY29kZTogXCJVTlNVUFBPUlRFRF9DQVBBQklMSVRZXCIsXG4gICAgbGFuZ3VhZ2UsXG4gICAgbG9jYXRpb24sXG4gICAgbWVzc2FnZTogYEJhY2tlbmQgY2Fubm90IGVtaXQgc2VtYW50aWMgY2FwYWJpbGl0eSAnJHtjYXBhYmlsaXR5fScuYFxuICB9KVxufVxuXG4vKipcbiAqIFRocm93cyB3aGVuIGEgcmVnaXN0ZXJlZCBpZGVudGl0eSBsYWNrcyBvbmUgcmVxdWVzdGVkIHJvbGUuXG4gKiBAcGFyYW0ge3N0cmluZ30gbGFuZ3VhZ2UgLSBSZWdpc3RlcmVkIGxhbmd1YWdlIG9yIHRhcmdldCBpZGVudGl0eS5cbiAqIEBwYXJhbSB7c3RyaW5nfSByb2xlIC0gUmVxdWVzdGVkIHJlZ2lzdHJ5IHJvbGUuXG4gKiBAcGFyYW0ge2ltcG9ydChcIi4vc2VtYW50aWMvdHlwZXMuanNcIikuU291cmNlTG9jYXRpb24gfCB1bmRlZmluZWR9IFtsb2NhdGlvbl0gLSBSZWxhdGVkIHNlbWFudGljIGxvY2F0aW9uLlxuICogQHJldHVybnMge25ldmVyfSBBbHdheXMgdGhyb3dzLlxuICovXG5leHBvcnQgZnVuY3Rpb24gdW5zdXBwb3J0ZWRSb2xlKGxhbmd1YWdlLCByb2xlLCBsb2NhdGlvbikge1xuICB0aHJvdyBuZXcgU2VtYW50aWZvbGREaWFnbm9zdGljKHtcbiAgICBjb2RlOiBcIlVOU1VQUE9SVEVEX1JPTEVcIixcbiAgICBsYW5ndWFnZSxcbiAgICBsb2NhdGlvbixcbiAgICBtZXNzYWdlOiBgUmVnaXN0ZXJlZCBsYW5ndWFnZSBvciB0YXJnZXQgZG9lcyBub3QgcHJvdmlkZSByb2xlICcke3JvbGV9Jy5gXG4gIH0pXG59XG4iXX0=
@@ -1 +1 @@
1
- {"version":3,"file":"c.d.ts","sourceRoot":"","sources":["../../../src/frontends/c.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"c.d.ts","sourceRoot":"","sources":["../../../src/frontends/c.js"],"names":[],"mappings":"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"}