@ir-kit/openapi-kotlin 1.0.0 → 2.1.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 (296) hide show
  1. package/README.md +13 -13
  2. package/dist/ast/index.d.ts +168 -0
  3. package/dist/ast/index.d.ts.map +1 -0
  4. package/dist/ast/index.js +194 -0
  5. package/dist/ast/index.js.map +1 -0
  6. package/dist/generate.d.ts.map +1 -1
  7. package/dist/generate.js +9 -9
  8. package/dist/generate.js.map +1 -1
  9. package/dist/index.d.ts +1 -1
  10. package/dist/index.d.ts.map +1 -1
  11. package/dist/index.js +1 -1
  12. package/dist/index.js.map +1 -1
  13. package/dist/ir/identifiers.d.ts +7 -0
  14. package/dist/ir/identifiers.d.ts.map +1 -1
  15. package/dist/ir/identifiers.js +92 -3
  16. package/dist/ir/identifiers.js.map +1 -1
  17. package/dist/ir/impl/body.d.ts +4 -3
  18. package/dist/ir/impl/body.d.ts.map +1 -1
  19. package/dist/ir/impl/body.js +11 -8
  20. package/dist/ir/impl/body.js.map +1 -1
  21. package/dist/ir/impl/decode.d.ts +3 -2
  22. package/dist/ir/impl/decode.d.ts.map +1 -1
  23. package/dist/ir/impl/decode.js +16 -16
  24. package/dist/ir/impl/decode.js.map +1 -1
  25. package/dist/ir/impl/headers.d.ts +1 -1
  26. package/dist/ir/impl/headers.d.ts.map +1 -1
  27. package/dist/ir/impl/headers.js +3 -3
  28. package/dist/ir/impl/headers.js.map +1 -1
  29. package/dist/ir/impl/index.d.ts +5 -2
  30. package/dist/ir/impl/index.d.ts.map +1 -1
  31. package/dist/ir/impl/index.js +6 -7
  32. package/dist/ir/impl/index.js.map +1 -1
  33. package/dist/ir/impl/request.d.ts +6 -6
  34. package/dist/ir/impl/request.d.ts.map +1 -1
  35. package/dist/ir/impl/request.js +18 -8
  36. package/dist/ir/impl/request.js.map +1 -1
  37. package/dist/ir/impl/serializer.d.ts +4 -2
  38. package/dist/ir/impl/serializer.d.ts.map +1 -1
  39. package/dist/ir/impl/serializer.js +41 -60
  40. package/dist/ir/impl/serializer.js.map +1 -1
  41. package/dist/ir/impl/url.d.ts +1 -1
  42. package/dist/ir/impl/url.d.ts.map +1 -1
  43. package/dist/ir/impl/url.js +4 -4
  44. package/dist/ir/impl/url.js.map +1 -1
  45. package/dist/ir/index.d.ts +1 -1
  46. package/dist/ir/index.d.ts.map +1 -1
  47. package/dist/ir/index.js +1 -1
  48. package/dist/ir/index.js.map +1 -1
  49. package/dist/ir/operation/body.d.ts +1 -1
  50. package/dist/ir/operation/body.d.ts.map +1 -1
  51. package/dist/ir/operation/body.js +3 -3
  52. package/dist/ir/operation/body.js.map +1 -1
  53. package/dist/ir/operation/params.d.ts +1 -1
  54. package/dist/ir/operation/params.d.ts.map +1 -1
  55. package/dist/ir/operation/params.js +3 -3
  56. package/dist/ir/operation/params.js.map +1 -1
  57. package/dist/ir/operation/response.d.ts +3 -1
  58. package/dist/ir/operation/response.d.ts.map +1 -1
  59. package/dist/ir/operation/response.js +3 -4
  60. package/dist/ir/operation/response.js.map +1 -1
  61. package/dist/ir/operation/signature.d.ts +4 -2
  62. package/dist/ir/operation/signature.d.ts.map +1 -1
  63. package/dist/ir/operation/signature.js +5 -4
  64. package/dist/ir/operation/signature.js.map +1 -1
  65. package/dist/ir/operations.d.ts +7 -1
  66. package/dist/ir/operations.d.ts.map +1 -1
  67. package/dist/ir/operations.js +13 -7
  68. package/dist/ir/operations.js.map +1 -1
  69. package/dist/ir/runtime/index.d.ts +1 -1
  70. package/dist/ir/runtime/index.d.ts.map +1 -1
  71. package/dist/ir/runtime/index.js +1 -1
  72. package/dist/ir/runtime/index.js.map +1 -1
  73. package/dist/ir/runtime/templates.d.ts +1 -21
  74. package/dist/ir/runtime/templates.d.ts.map +1 -1
  75. package/dist/ir/runtime/templates.js +24 -428
  76. package/dist/ir/runtime/templates.js.map +1 -1
  77. package/dist/ir/schema.d.ts +3 -2
  78. package/dist/ir/schema.d.ts.map +1 -1
  79. package/dist/ir/schema.js +24 -11
  80. package/dist/ir/schema.js.map +1 -1
  81. package/dist/ir/type/context.d.ts +1 -1
  82. package/dist/ir/type/context.d.ts.map +1 -1
  83. package/dist/ir/type/index.d.ts +5 -3
  84. package/dist/ir/type/index.d.ts.map +1 -1
  85. package/dist/ir/type/index.js +12 -8
  86. package/dist/ir/type/index.js.map +1 -1
  87. package/dist/ir/type/primitive.d.ts +1 -1
  88. package/dist/ir/type/primitive.d.ts.map +1 -1
  89. package/dist/ir/type/primitive.js +1 -1
  90. package/dist/ir/type/primitive.js.map +1 -1
  91. package/dist/ir/type-ops.d.ts +2 -2
  92. package/dist/ir/type-ops.d.ts.map +1 -1
  93. package/dist/ir/type-ops.js +13 -17
  94. package/dist/ir/type-ops.js.map +1 -1
  95. package/dist/kt-compiler/index.d.ts +3 -6
  96. package/dist/kt-compiler/index.d.ts.map +1 -1
  97. package/dist/kt-compiler/index.js +7 -22
  98. package/dist/kt-compiler/index.js.map +1 -1
  99. package/dist/project/build.d.ts +1 -1
  100. package/dist/project/build.d.ts.map +1 -1
  101. package/dist/project/build.js +6 -8
  102. package/dist/project/build.js.map +1 -1
  103. package/dist/project/imports.d.ts +12 -12
  104. package/dist/project/imports.d.ts.map +1 -1
  105. package/dist/project/imports.js +60 -138
  106. package/dist/project/imports.js.map +1 -1
  107. package/dist/project/layout.d.ts +1 -1
  108. package/dist/project/layout.d.ts.map +1 -1
  109. package/dist/project/layout.js +1 -3
  110. package/dist/project/layout.js.map +1 -1
  111. package/package.json +11 -8
  112. package/runtime/APIClient.kt +140 -0
  113. package/runtime/APIError.kt +42 -0
  114. package/runtime/APIInterceptors.kt +14 -0
  115. package/runtime/APIKeyLocation.kt +7 -0
  116. package/runtime/Auth.kt +86 -0
  117. package/runtime/MultipartFormBody.kt +41 -0
  118. package/runtime/QueryStyle.kt +12 -0
  119. package/runtime/RequestOptions.kt +29 -0
  120. package/runtime/URLEncoding.kt +45 -0
  121. package/dist/kt-compiler/decl/class.d.ts +0 -6
  122. package/dist/kt-compiler/decl/class.d.ts.map +0 -1
  123. package/dist/kt-compiler/decl/class.js +0 -38
  124. package/dist/kt-compiler/decl/class.js.map +0 -1
  125. package/dist/kt-compiler/decl/dataClass.d.ts +0 -3
  126. package/dist/kt-compiler/decl/dataClass.d.ts.map +0 -1
  127. package/dist/kt-compiler/decl/dataClass.js +0 -18
  128. package/dist/kt-compiler/decl/dataClass.js.map +0 -1
  129. package/dist/kt-compiler/decl/enum.d.ts +0 -3
  130. package/dist/kt-compiler/decl/enum.d.ts.map +0 -1
  131. package/dist/kt-compiler/decl/enum.js +0 -32
  132. package/dist/kt-compiler/decl/enum.js.map +0 -1
  133. package/dist/kt-compiler/decl/fun.d.ts +0 -11
  134. package/dist/kt-compiler/decl/fun.d.ts.map +0 -1
  135. package/dist/kt-compiler/decl/fun.js +0 -69
  136. package/dist/kt-compiler/decl/fun.js.map +0 -1
  137. package/dist/kt-compiler/decl/index.d.ts +0 -13
  138. package/dist/kt-compiler/decl/index.d.ts.map +0 -1
  139. package/dist/kt-compiler/decl/index.js +0 -39
  140. package/dist/kt-compiler/decl/index.js.map +0 -1
  141. package/dist/kt-compiler/decl/interface.d.ts +0 -3
  142. package/dist/kt-compiler/decl/interface.d.ts.map +0 -1
  143. package/dist/kt-compiler/decl/interface.js +0 -15
  144. package/dist/kt-compiler/decl/interface.js.map +0 -1
  145. package/dist/kt-compiler/decl/object.d.ts +0 -3
  146. package/dist/kt-compiler/decl/object.d.ts.map +0 -1
  147. package/dist/kt-compiler/decl/object.js +0 -19
  148. package/dist/kt-compiler/decl/object.js.map +0 -1
  149. package/dist/kt-compiler/decl/prop.d.ts +0 -20
  150. package/dist/kt-compiler/decl/prop.d.ts.map +0 -1
  151. package/dist/kt-compiler/decl/prop.js +0 -42
  152. package/dist/kt-compiler/decl/prop.js.map +0 -1
  153. package/dist/kt-compiler/decl/sealedClass.d.ts +0 -3
  154. package/dist/kt-compiler/decl/sealedClass.d.ts.map +0 -1
  155. package/dist/kt-compiler/decl/sealedClass.js +0 -32
  156. package/dist/kt-compiler/decl/sealedClass.js.map +0 -1
  157. package/dist/kt-compiler/decl/topLevel.d.ts +0 -3
  158. package/dist/kt-compiler/decl/topLevel.d.ts.map +0 -1
  159. package/dist/kt-compiler/decl/topLevel.js +0 -5
  160. package/dist/kt-compiler/decl/topLevel.js.map +0 -1
  161. package/dist/kt-compiler/decl/typeAlias.d.ts +0 -3
  162. package/dist/kt-compiler/decl/typeAlias.d.ts.map +0 -1
  163. package/dist/kt-compiler/decl/typeAlias.js +0 -6
  164. package/dist/kt-compiler/decl/typeAlias.js.map +0 -1
  165. package/dist/kt-compiler/expr.d.ts +0 -4
  166. package/dist/kt-compiler/expr.d.ts.map +0 -1
  167. package/dist/kt-compiler/expr.js +0 -123
  168. package/dist/kt-compiler/expr.js.map +0 -1
  169. package/dist/kt-compiler/format.d.ts +0 -20
  170. package/dist/kt-compiler/format.d.ts.map +0 -1
  171. package/dist/kt-compiler/format.js +0 -27
  172. package/dist/kt-compiler/format.js.map +0 -1
  173. package/dist/kt-compiler/stmt.d.ts +0 -4
  174. package/dist/kt-compiler/stmt.d.ts.map +0 -1
  175. package/dist/kt-compiler/stmt.js +0 -72
  176. package/dist/kt-compiler/stmt.js.map +0 -1
  177. package/dist/kt-compiler/type.d.ts +0 -3
  178. package/dist/kt-compiler/type.d.ts.map +0 -1
  179. package/dist/kt-compiler/type.js +0 -28
  180. package/dist/kt-compiler/type.js.map +0 -1
  181. package/dist/kt-dsl/decl/class.d.ts +0 -50
  182. package/dist/kt-dsl/decl/class.d.ts.map +0 -1
  183. package/dist/kt-dsl/decl/class.js +0 -33
  184. package/dist/kt-dsl/decl/class.js.map +0 -1
  185. package/dist/kt-dsl/decl/dataClass.d.ts +0 -36
  186. package/dist/kt-dsl/decl/dataClass.d.ts.map +0 -1
  187. package/dist/kt-dsl/decl/dataClass.js +0 -25
  188. package/dist/kt-dsl/decl/dataClass.js.map +0 -1
  189. package/dist/kt-dsl/decl/enum.d.ts +0 -60
  190. package/dist/kt-dsl/decl/enum.d.ts.map +0 -1
  191. package/dist/kt-dsl/decl/enum.js +0 -38
  192. package/dist/kt-dsl/decl/enum.js.map +0 -1
  193. package/dist/kt-dsl/decl/index.d.ts +0 -11
  194. package/dist/kt-dsl/decl/index.d.ts.map +0 -1
  195. package/dist/kt-dsl/decl/index.js +0 -11
  196. package/dist/kt-dsl/decl/index.js.map +0 -1
  197. package/dist/kt-dsl/decl/interface.d.ts +0 -33
  198. package/dist/kt-dsl/decl/interface.d.ts.map +0 -1
  199. package/dist/kt-dsl/decl/interface.js +0 -24
  200. package/dist/kt-dsl/decl/interface.js.map +0 -1
  201. package/dist/kt-dsl/decl/object.d.ts +0 -34
  202. package/dist/kt-dsl/decl/object.d.ts.map +0 -1
  203. package/dist/kt-dsl/decl/object.js +0 -24
  204. package/dist/kt-dsl/decl/object.js.map +0 -1
  205. package/dist/kt-dsl/decl/prop.d.ts +0 -47
  206. package/dist/kt-dsl/decl/prop.d.ts.map +0 -1
  207. package/dist/kt-dsl/decl/prop.js +0 -28
  208. package/dist/kt-dsl/decl/prop.js.map +0 -1
  209. package/dist/kt-dsl/decl/sealedClass.d.ts +0 -68
  210. package/dist/kt-dsl/decl/sealedClass.d.ts.map +0 -1
  211. package/dist/kt-dsl/decl/sealedClass.js +0 -52
  212. package/dist/kt-dsl/decl/sealedClass.js.map +0 -1
  213. package/dist/kt-dsl/decl/topLevel.d.ts +0 -19
  214. package/dist/kt-dsl/decl/topLevel.d.ts.map +0 -1
  215. package/dist/kt-dsl/decl/topLevel.js +0 -17
  216. package/dist/kt-dsl/decl/topLevel.js.map +0 -1
  217. package/dist/kt-dsl/decl/typeAlias.d.ts +0 -23
  218. package/dist/kt-dsl/decl/typeAlias.d.ts.map +0 -1
  219. package/dist/kt-dsl/decl/typeAlias.js +0 -18
  220. package/dist/kt-dsl/decl/typeAlias.js.map +0 -1
  221. package/dist/kt-dsl/decl/types.d.ts +0 -10
  222. package/dist/kt-dsl/decl/types.d.ts.map +0 -1
  223. package/dist/kt-dsl/decl/types.js +0 -2
  224. package/dist/kt-dsl/decl/types.js.map +0 -1
  225. package/dist/kt-dsl/expr/access.d.ts +0 -48
  226. package/dist/kt-dsl/expr/access.d.ts.map +0 -1
  227. package/dist/kt-dsl/expr/access.js +0 -59
  228. package/dist/kt-dsl/expr/access.js.map +0 -1
  229. package/dist/kt-dsl/expr/call.d.ts +0 -38
  230. package/dist/kt-dsl/expr/call.d.ts.map +0 -1
  231. package/dist/kt-dsl/expr/call.js +0 -38
  232. package/dist/kt-dsl/expr/call.js.map +0 -1
  233. package/dist/kt-dsl/expr/index.d.ts +0 -7
  234. package/dist/kt-dsl/expr/index.d.ts.map +0 -1
  235. package/dist/kt-dsl/expr/index.js +0 -7
  236. package/dist/kt-dsl/expr/index.js.map +0 -1
  237. package/dist/kt-dsl/expr/literal.d.ts +0 -100
  238. package/dist/kt-dsl/expr/literal.d.ts.map +0 -1
  239. package/dist/kt-dsl/expr/literal.js +0 -108
  240. package/dist/kt-dsl/expr/literal.js.map +0 -1
  241. package/dist/kt-dsl/expr/misc.d.ts +0 -45
  242. package/dist/kt-dsl/expr/misc.d.ts.map +0 -1
  243. package/dist/kt-dsl/expr/misc.js +0 -63
  244. package/dist/kt-dsl/expr/misc.js.map +0 -1
  245. package/dist/kt-dsl/expr/op.d.ts +0 -25
  246. package/dist/kt-dsl/expr/op.d.ts.map +0 -1
  247. package/dist/kt-dsl/expr/op.js +0 -24
  248. package/dist/kt-dsl/expr/op.js.map +0 -1
  249. package/dist/kt-dsl/expr/types.d.ts +0 -93
  250. package/dist/kt-dsl/expr/types.d.ts.map +0 -1
  251. package/dist/kt-dsl/expr/types.js +0 -2
  252. package/dist/kt-dsl/expr/types.js.map +0 -1
  253. package/dist/kt-dsl/file.d.ts +0 -14
  254. package/dist/kt-dsl/file.d.ts.map +0 -1
  255. package/dist/kt-dsl/file.js +0 -9
  256. package/dist/kt-dsl/file.js.map +0 -1
  257. package/dist/kt-dsl/fun.d.ts +0 -73
  258. package/dist/kt-dsl/fun.d.ts.map +0 -1
  259. package/dist/kt-dsl/fun.js +0 -50
  260. package/dist/kt-dsl/fun.js.map +0 -1
  261. package/dist/kt-dsl/index.d.ts +0 -8
  262. package/dist/kt-dsl/index.d.ts.map +0 -1
  263. package/dist/kt-dsl/index.js +0 -8
  264. package/dist/kt-dsl/index.js.map +0 -1
  265. package/dist/kt-dsl/stmt/binding.d.ts +0 -56
  266. package/dist/kt-dsl/stmt/binding.d.ts.map +0 -1
  267. package/dist/kt-dsl/stmt/binding.js +0 -70
  268. package/dist/kt-dsl/stmt/binding.js.map +0 -1
  269. package/dist/kt-dsl/stmt/control.d.ts +0 -80
  270. package/dist/kt-dsl/stmt/control.d.ts.map +0 -1
  271. package/dist/kt-dsl/stmt/control.js +0 -77
  272. package/dist/kt-dsl/stmt/control.js.map +0 -1
  273. package/dist/kt-dsl/stmt/index.d.ts +0 -4
  274. package/dist/kt-dsl/stmt/index.d.ts.map +0 -1
  275. package/dist/kt-dsl/stmt/index.js +0 -4
  276. package/dist/kt-dsl/stmt/index.js.map +0 -1
  277. package/dist/kt-dsl/stmt/types.d.ts +0 -62
  278. package/dist/kt-dsl/stmt/types.d.ts.map +0 -1
  279. package/dist/kt-dsl/stmt/types.js +0 -2
  280. package/dist/kt-dsl/stmt/types.js.map +0 -1
  281. package/dist/kt-dsl/type/builders.d.ts +0 -75
  282. package/dist/kt-dsl/type/builders.d.ts.map +0 -1
  283. package/dist/kt-dsl/type/builders.js +0 -83
  284. package/dist/kt-dsl/type/builders.js.map +0 -1
  285. package/dist/kt-dsl/type/index.d.ts +0 -3
  286. package/dist/kt-dsl/type/index.d.ts.map +0 -1
  287. package/dist/kt-dsl/type/index.js +0 -3
  288. package/dist/kt-dsl/type/index.js.map +0 -1
  289. package/dist/kt-dsl/type/types.d.ts +0 -25
  290. package/dist/kt-dsl/type/types.d.ts.map +0 -1
  291. package/dist/kt-dsl/type/types.js +0 -2
  292. package/dist/kt-dsl/type/types.js.map +0 -1
  293. package/dist/kt-dsl/visibility.d.ts +0 -2
  294. package/dist/kt-dsl/visibility.d.ts.map +0 -1
  295. package/dist/kt-dsl/visibility.js +0 -2
  296. package/dist/kt-dsl/visibility.js.map +0 -1
@@ -1,69 +0,0 @@
1
- import { printExpr } from "../expr.js";
2
- import { INDENT, visibilityPrefix } from "../format.js";
3
- import { printStmt } from "../stmt.js";
4
- import { printType } from "../type.js";
5
- function printTypeParams(typeParams) {
6
- if (typeParams.length === 0)
7
- return "";
8
- return `<${typeParams
9
- .map((t) => {
10
- if (!t.bounds || t.bounds.length === 0)
11
- return t.name;
12
- return `${t.name} : ${t.bounds.join(" & ")}`;
13
- })
14
- .join(", ")}>`;
15
- }
16
- export function printFunParam(p, includeDefault = true) {
17
- const def = includeDefault && p.default !== undefined ? ` = ${p.default}` : "";
18
- return `${p.name}: ${printType(p.type)}${def}`;
19
- }
20
- export function printParamsBlock(params, indent, includeDefault = true) {
21
- if (params.length === 0)
22
- return "()";
23
- return `(\n${params
24
- .map((p) => `${indent}${INDENT}${printFunParam(p, includeDefault)}`)
25
- .join(",\n")}\n${indent})`;
26
- }
27
- export function printFun(fn, indent = "",
28
- /**
29
- * Suppress the visibility modifier — required when the function lives
30
- * inside an interface (members inherit the interface's visibility),
31
- * or as part of an enum entry's member list.
32
- */
33
- suppressVisibility = false) {
34
- const lines = [];
35
- if (fn.doc) {
36
- for (const line of fn.doc.split("\n"))
37
- lines.push(`${indent}/** ${line} */`);
38
- }
39
- const vis = suppressVisibility ? "" : visibilityPrefix(fn.visibility);
40
- const isAbstract = fn.body === undefined;
41
- // `abstract`/`override`/`open` are mutually exclusive with `final`; the
42
- // DSL doesn't model `final` since Kotlin's default is final and we
43
- // don't need the keyword.
44
- const modifiers = fn.modifiers.length > 0 ? `${fn.modifiers.join(" ")} ` : "";
45
- const typeParams = printTypeParams(fn.typeParams);
46
- const params = printParamsBlock(fn.params, indent, !isAbstract);
47
- const isUnit = fn.returnType.kind === "primitive" && fn.returnType.name === "Unit";
48
- const ret = isUnit ? "" : `: ${printType(fn.returnType)}`;
49
- const receiver = fn.receiver ? `${printType(fn.receiver)}.` : "";
50
- const tp = typeParams ? `${typeParams} ` : "";
51
- const head = `${indent}${vis}${modifiers}fun ${tp}${receiver}${fn.name}${params}${ret}`;
52
- if (fn.body === undefined) {
53
- lines.push(head);
54
- return lines.join("\n");
55
- }
56
- if (fn.body.length === 0) {
57
- lines.push(`${head} {}`);
58
- return lines.join("\n");
59
- }
60
- // Single-expression body shorthand: `fun foo(): T = expr`.
61
- if (fn.body.length === 1 && fn.body[0].kind === "returnExpr") {
62
- lines.push(`${head} = ${printExpr(fn.body[0].expr)}`);
63
- return lines.join("\n");
64
- }
65
- const body = fn.body.map((s) => printStmt(s, indent + INDENT)).join("\n");
66
- lines.push(`${head} {\n${body}\n${indent}}`);
67
- return lines.join("\n");
68
- }
69
- //# sourceMappingURL=fun.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fun.js","sourceRoot":"","sources":["../../../src/kt-compiler/decl/fun.ts"],"names":[],"mappings":"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"}
@@ -1,13 +0,0 @@
1
- import type { KtDecl } from "../../kt-dsl/decl/types.js";
2
- export declare function printDecl(d: KtDecl): string;
3
- export { printClass } from "./class.js";
4
- export { printDataClass } from "./dataClass.js";
5
- export { printEnum } from "./enum.js";
6
- export { printFun, printFunParam, printParamsBlock } from "./fun.js";
7
- export { printInterface } from "./interface.js";
8
- export { printObject } from "./object.js";
9
- export { printPrimaryProp, printProp } from "./prop.js";
10
- export { printSealedClass } from "./sealedClass.js";
11
- export { printTopLevelFun } from "./topLevel.js";
12
- export { printTypeAlias } from "./typeAlias.js";
13
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/kt-compiler/decl/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAUzD,wBAAgB,SAAS,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAmB3C;AAED,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC"}
@@ -1,39 +0,0 @@
1
- import { printClass } from "./class.js";
2
- import { printDataClass } from "./dataClass.js";
3
- import { printEnum } from "./enum.js";
4
- import { printInterface } from "./interface.js";
5
- import { printObject } from "./object.js";
6
- import { printSealedClass } from "./sealedClass.js";
7
- import { printTopLevelFun } from "./topLevel.js";
8
- import { printTypeAlias } from "./typeAlias.js";
9
- export function printDecl(d) {
10
- switch (d.kind) {
11
- case "dataClass":
12
- return printDataClass(d);
13
- case "class":
14
- return printClass(d);
15
- case "sealedClass":
16
- return printSealedClass(d);
17
- case "object":
18
- return printObject(d);
19
- case "interface":
20
- return printInterface(d);
21
- case "enum":
22
- return printEnum(d);
23
- case "typeAlias":
24
- return printTypeAlias(d);
25
- case "topLevelFun":
26
- return printTopLevelFun(d);
27
- }
28
- }
29
- export { printClass } from "./class.js";
30
- export { printDataClass } from "./dataClass.js";
31
- export { printEnum } from "./enum.js";
32
- export { printFun, printFunParam, printParamsBlock } from "./fun.js";
33
- export { printInterface } from "./interface.js";
34
- export { printObject } from "./object.js";
35
- export { printPrimaryProp, printProp } from "./prop.js";
36
- export { printSealedClass } from "./sealedClass.js";
37
- export { printTopLevelFun } from "./topLevel.js";
38
- export { printTypeAlias } from "./typeAlias.js";
39
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/kt-compiler/decl/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEhD,MAAM,UAAU,SAAS,CAAC,CAAS;IACjC,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;QACf,KAAK,WAAW;YACd,OAAO,cAAc,CAAC,CAAC,CAAC,CAAC;QAC3B,KAAK,OAAO;YACV,OAAO,UAAU,CAAC,CAAC,CAAC,CAAC;QACvB,KAAK,aAAa;YAChB,OAAO,gBAAgB,CAAC,CAAC,CAAC,CAAC;QAC7B,KAAK,QAAQ;YACX,OAAO,WAAW,CAAC,CAAC,CAAC,CAAC;QACxB,KAAK,WAAW;YACd,OAAO,cAAc,CAAC,CAAC,CAAC,CAAC;QAC3B,KAAK,MAAM;YACT,OAAO,SAAS,CAAC,CAAC,CAAC,CAAC;QACtB,KAAK,WAAW;YACd,OAAO,cAAc,CAAC,CAAC,CAAC,CAAC;QAC3B,KAAK,aAAa;YAChB,OAAO,gBAAgB,CAAC,CAAC,CAAC,CAAC;IAC/B,CAAC;AACH,CAAC;AAED,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC"}
@@ -1,3 +0,0 @@
1
- import type { KtInterface } from "../../kt-dsl/decl/interface.js";
2
- export declare function printInterface(d: KtInterface): string;
3
- //# sourceMappingURL=interface.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"interface.d.ts","sourceRoot":"","sources":["../../../src/kt-compiler/decl/interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAKlE,wBAAgB,cAAc,CAAC,CAAC,EAAE,WAAW,GAAG,MAAM,CASrD"}
@@ -1,15 +0,0 @@
1
- import { INDENT, superTypeTail, visibilityPrefix } from "../format.js";
2
- import { printFun } from "./fun.js";
3
- import { printAnnotations } from "./prop.js";
4
- export function printInterface(d) {
5
- const annLines = printAnnotations(d.annotations, "");
6
- const vis = visibilityPrefix(d.visibility);
7
- const head = `${annLines}${vis}interface ${d.name}${superTypeTail(d.superTypes)}`;
8
- if (d.funs.length === 0)
9
- return `${head} {}`;
10
- // Members of an interface inherit the interface's visibility — emitting
11
- // `public` on each requirement is redundant and noisy.
12
- const funs = d.funs.map((f) => printFun(f, INDENT, true)).join("\n\n");
13
- return `${head} {\n${funs}\n}`;
14
- }
15
- //# sourceMappingURL=interface.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"interface.js","sourceRoot":"","sources":["../../../src/kt-compiler/decl/interface.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AACvE,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACpC,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAE7C,MAAM,UAAU,cAAc,CAAC,CAAc;IAC3C,MAAM,QAAQ,GAAG,gBAAgB,CAAC,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IACrD,MAAM,GAAG,GAAG,gBAAgB,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;IAC3C,MAAM,IAAI,GAAG,GAAG,QAAQ,GAAG,GAAG,aAAa,CAAC,CAAC,IAAI,GAAG,aAAa,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC;IAClF,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,GAAG,IAAI,KAAK,CAAC;IAC7C,wEAAwE;IACxE,uDAAuD;IACvD,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACvE,OAAO,GAAG,IAAI,OAAO,IAAI,KAAK,CAAC;AACjC,CAAC"}
@@ -1,3 +0,0 @@
1
- import type { KtObject } from "../../kt-dsl/decl/object.js";
2
- export declare function printObject(d: KtObject): string;
3
- //# sourceMappingURL=object.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"object.d.ts","sourceRoot":"","sources":["../../../src/kt-compiler/decl/object.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAK5D,wBAAgB,WAAW,CAAC,CAAC,EAAE,QAAQ,GAAG,MAAM,CAc/C"}
@@ -1,19 +0,0 @@
1
- import { INDENT, superTypeTail, visibilityPrefix } from "../format.js";
2
- import { printFun } from "./fun.js";
3
- import { printAnnotations, printProp } from "./prop.js";
4
- export function printObject(d) {
5
- const annLines = printAnnotations(d.annotations, "");
6
- const vis = visibilityPrefix(d.visibility);
7
- const head = `${annLines}${vis}object ${d.name}${superTypeTail(d.superTypes)}`;
8
- const sections = [];
9
- if (d.properties.length > 0) {
10
- sections.push(d.properties.map((p) => printProp(p, INDENT)).join("\n"));
11
- }
12
- if (d.funs.length > 0) {
13
- sections.push(d.funs.map((f) => printFun(f, INDENT)).join("\n\n"));
14
- }
15
- if (sections.length === 0)
16
- return head;
17
- return `${head} {\n${sections.join("\n\n")}\n}`;
18
- }
19
- //# sourceMappingURL=object.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"object.js","sourceRoot":"","sources":["../../../src/kt-compiler/decl/object.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AACvE,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACpC,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAExD,MAAM,UAAU,WAAW,CAAC,CAAW;IACrC,MAAM,QAAQ,GAAG,gBAAgB,CAAC,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IACrD,MAAM,GAAG,GAAG,gBAAgB,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;IAC3C,MAAM,IAAI,GAAG,GAAG,QAAQ,GAAG,GAAG,UAAU,CAAC,CAAC,IAAI,GAAG,aAAa,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC;IAE/E,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,IAAI,CAAC,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC1E,CAAC;IACD,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;IACrE,CAAC;IACD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACvC,OAAO,GAAG,IAAI,OAAO,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;AAClD,CAAC"}
@@ -1,20 +0,0 @@
1
- import type { KtAnnotation, KtProp } from "../../kt-dsl/decl/prop.js";
2
- export declare function printAnnotation(a: KtAnnotation): string;
3
- export declare function printAnnotations(annotations: ReadonlyArray<KtAnnotation>, indent: string, inline?: boolean): string;
4
- /**
5
- * Body-level property — emitted as `[annotations] [vis] val|var name: T [= default]`.
6
- *
7
- * @example
8
- * ```kotlin
9
- * // ktProp({ name: "id", type: ktString })
10
- * // → public val id: String
11
- * ```
12
- */
13
- export declare function printProp(p: KtProp, indent?: string): string;
14
- /**
15
- * Primary-constructor property — emitted as a single line inside the
16
- * class header's parameter list. Annotations render inline so the
17
- * ctor block stays one-per-line readable.
18
- */
19
- export declare function printPrimaryProp(p: KtProp, indent: string): string;
20
- //# sourceMappingURL=prop.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"prop.d.ts","sourceRoot":"","sources":["../../../src/kt-compiler/decl/prop.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AAItE,wBAAgB,eAAe,CAAC,CAAC,EAAE,YAAY,GAAG,MAAM,CAEvD;AAED,wBAAgB,gBAAgB,CAC9B,WAAW,EAAE,aAAa,CAAC,YAAY,CAAC,EACxC,MAAM,EAAE,MAAM,EACd,MAAM,GAAE,OAAe,GACtB,MAAM,CAMR;AAED;;;;;;;;GAQG;AACH,wBAAgB,SAAS,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,GAAE,MAAW,GAAG,MAAM,CAMhE;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CASlE"}
@@ -1,42 +0,0 @@
1
- import { visibilityPrefix } from "../format.js";
2
- import { printType } from "../type.js";
3
- export function printAnnotation(a) {
4
- return a.args === undefined ? `@${a.name}` : `@${a.name}(${a.args})`;
5
- }
6
- export function printAnnotations(annotations, indent, inline = false) {
7
- if (annotations.length === 0)
8
- return "";
9
- const sep = inline ? " " : "\n";
10
- return (annotations.map((a) => `${indent}${printAnnotation(a)}`).join(sep) + sep);
11
- }
12
- /**
13
- * Body-level property — emitted as `[annotations] [vis] val|var name: T [= default]`.
14
- *
15
- * @example
16
- * ```kotlin
17
- * // ktProp({ name: "id", type: ktString })
18
- * // → public val id: String
19
- * ```
20
- */
21
- export function printProp(p, indent = "") {
22
- const annLines = printAnnotations(p.annotations, indent);
23
- const vis = visibilityPrefix(p.visibility);
24
- const keyword = p.mutable ? "var" : "val";
25
- const def = p.default !== undefined ? ` = ${p.default}` : "";
26
- return `${annLines}${indent}${vis}${keyword} ${p.name}: ${printType(p.type)}${def}`;
27
- }
28
- /**
29
- * Primary-constructor property — emitted as a single line inside the
30
- * class header's parameter list. Annotations render inline so the
31
- * ctor block stays one-per-line readable.
32
- */
33
- export function printPrimaryProp(p, indent) {
34
- const ann = p.annotations.length > 0
35
- ? `${p.annotations.map(printAnnotation).join(" ")} `
36
- : "";
37
- const vis = visibilityPrefix(p.visibility);
38
- const keyword = p.mutable ? "var" : "val";
39
- const def = p.default !== undefined ? ` = ${p.default}` : "";
40
- return `${indent}${ann}${vis}${keyword} ${p.name}: ${printType(p.type)}${def}`;
41
- }
42
- //# sourceMappingURL=prop.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"prop.js","sourceRoot":"","sources":["../../../src/kt-compiler/decl/prop.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAEvC,MAAM,UAAU,eAAe,CAAC,CAAe;IAC7C,OAAO,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,GAAG,CAAC;AACvE,CAAC;AAED,MAAM,UAAU,gBAAgB,CAC9B,WAAwC,EACxC,MAAc,EACd,SAAkB,KAAK;IAEvB,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACxC,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;IAChC,OAAO,CACL,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,MAAM,GAAG,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,CACzE,CAAC;AACJ,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,SAAS,CAAC,CAAS,EAAE,SAAiB,EAAE;IACtD,MAAM,QAAQ,GAAG,gBAAgB,CAAC,CAAC,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IACzD,MAAM,GAAG,GAAG,gBAAgB,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;IAC3C,MAAM,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC;IAC1C,MAAM,GAAG,GAAG,CAAC,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC7D,OAAO,GAAG,QAAQ,GAAG,MAAM,GAAG,GAAG,GAAG,OAAO,IAAI,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;AACtF,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,gBAAgB,CAAC,CAAS,EAAE,MAAc;IACxD,MAAM,GAAG,GACP,CAAC,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC;QACtB,CAAC,CAAC,GAAG,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG;QACpD,CAAC,CAAC,EAAE,CAAC;IACT,MAAM,GAAG,GAAG,gBAAgB,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;IAC3C,MAAM,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC;IAC1C,MAAM,GAAG,GAAG,CAAC,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC7D,OAAO,GAAG,MAAM,GAAG,GAAG,GAAG,GAAG,GAAG,OAAO,IAAI,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;AACjF,CAAC"}
@@ -1,3 +0,0 @@
1
- import type { KtSealedClass } from "../../kt-dsl/decl/sealedClass.js";
2
- export declare function printSealedClass(d: KtSealedClass): string;
3
- //# sourceMappingURL=sealedClass.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sealedClass.d.ts","sourceRoot":"","sources":["../../../src/kt-compiler/decl/sealedClass.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EAEd,MAAM,kCAAkC,CAAC;AAK1C,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,aAAa,GAAG,MAAM,CAgBzD"}
@@ -1,32 +0,0 @@
1
- import { INDENT, superTypeTail, visibilityPrefix } from "../format.js";
2
- import { printFun } from "./fun.js";
3
- import { printAnnotations, printPrimaryProp } from "./prop.js";
4
- export function printSealedClass(d) {
5
- const annLines = printAnnotations(d.annotations, "");
6
- const vis = visibilityPrefix(d.visibility);
7
- const head = `${annLines}${vis}sealed class ${d.name}${superTypeTail(d.superTypes)}`;
8
- const sections = [];
9
- if (d.subclasses.length > 0) {
10
- sections.push(d.subclasses.map((sc) => printSubclass(sc, d.name, INDENT)).join("\n\n"));
11
- }
12
- if (d.funs.length > 0) {
13
- sections.push(d.funs.map((f) => printFun(f, INDENT)).join("\n\n"));
14
- }
15
- if (sections.length === 0)
16
- return head;
17
- return `${head} {\n${sections.join("\n\n")}\n}`;
18
- }
19
- function printSubclass(sc, parent, indent) {
20
- const annLines = sc.annotations.length > 0
21
- ? `${sc.annotations.map((a) => `${indent}@${a.name}${a.args ? `(${a.args})` : ""}`).join("\n")}\n`
22
- : "";
23
- if (sc.variant === "object") {
24
- return `${annLines}${indent}public object ${sc.name} : ${parent}()`;
25
- }
26
- // data class subclass
27
- const props = sc.properties.length === 0
28
- ? "()"
29
- : `(\n${sc.properties.map((p) => printPrimaryProp({ ...p, inPrimary: true }, `${indent}${INDENT}`)).join(",\n")},\n${indent})`;
30
- return `${annLines}${indent}public data class ${sc.name}${props} : ${parent}()`;
31
- }
32
- //# sourceMappingURL=sealedClass.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sealedClass.js","sourceRoot":"","sources":["../../../src/kt-compiler/decl/sealedClass.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AACvE,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACpC,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAE/D,MAAM,UAAU,gBAAgB,CAAC,CAAgB;IAC/C,MAAM,QAAQ,GAAG,gBAAgB,CAAC,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IACrD,MAAM,GAAG,GAAG,gBAAgB,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;IAC3C,MAAM,IAAI,GAAG,GAAG,QAAQ,GAAG,GAAG,gBAAgB,CAAC,CAAC,IAAI,GAAG,aAAa,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC;IAErF,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,IAAI,CAAC,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,QAAQ,CAAC,IAAI,CACX,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,aAAa,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CACzE,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;IACrE,CAAC;IACD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACvC,OAAO,GAAG,IAAI,OAAO,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;AAClD,CAAC;AAED,SAAS,aAAa,CACpB,EAAoB,EACpB,MAAc,EACd,MAAc;IAEd,MAAM,QAAQ,GACZ,EAAE,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC;QACvB,CAAC,CAAC,GAAG,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,MAAM,IAAI,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;QAClG,CAAC,CAAC,EAAE,CAAC;IACT,IAAI,EAAE,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;QAC5B,OAAO,GAAG,QAAQ,GAAG,MAAM,iBAAiB,EAAE,CAAC,IAAI,MAAM,MAAM,IAAI,CAAC;IACtE,CAAC;IACD,sBAAsB;IACtB,MAAM,KAAK,GACT,EAAE,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC;QACxB,CAAC,CAAC,IAAI;QACN,CAAC,CAAC,MAAM,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,gBAAgB,CAAC,EAAE,GAAG,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,GAAG,MAAM,GAAG,MAAM,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,MAAM,GAAG,CAAC;IACnI,OAAO,GAAG,QAAQ,GAAG,MAAM,qBAAqB,EAAE,CAAC,IAAI,GAAG,KAAK,MAAM,MAAM,IAAI,CAAC;AAClF,CAAC"}
@@ -1,3 +0,0 @@
1
- import type { KtTopLevelFun } from "../../kt-dsl/decl/topLevel.js";
2
- export declare function printTopLevelFun(d: KtTopLevelFun): string;
3
- //# sourceMappingURL=topLevel.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"topLevel.d.ts","sourceRoot":"","sources":["../../../src/kt-compiler/decl/topLevel.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAGnE,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,aAAa,GAAG,MAAM,CAEzD"}
@@ -1,5 +0,0 @@
1
- import { printFun } from "./fun.js";
2
- export function printTopLevelFun(d) {
3
- return printFun(d.fun);
4
- }
5
- //# sourceMappingURL=topLevel.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"topLevel.js","sourceRoot":"","sources":["../../../src/kt-compiler/decl/topLevel.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEpC,MAAM,UAAU,gBAAgB,CAAC,CAAgB;IAC/C,OAAO,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;AACzB,CAAC"}
@@ -1,3 +0,0 @@
1
- import type { KtTypeAlias } from "../../kt-dsl/decl/typeAlias.js";
2
- export declare function printTypeAlias(d: KtTypeAlias): string;
3
- //# sourceMappingURL=typeAlias.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"typeAlias.d.ts","sourceRoot":"","sources":["../../../src/kt-compiler/decl/typeAlias.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAIlE,wBAAgB,cAAc,CAAC,CAAC,EAAE,WAAW,GAAG,MAAM,CAErD"}
@@ -1,6 +0,0 @@
1
- import { visibilityPrefix } from "../format.js";
2
- import { printType } from "../type.js";
3
- export function printTypeAlias(d) {
4
- return `${visibilityPrefix(d.visibility)}typealias ${d.name} = ${printType(d.type)}`;
5
- }
6
- //# sourceMappingURL=typeAlias.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"typeAlias.js","sourceRoot":"","sources":["../../../src/kt-compiler/decl/typeAlias.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAEvC,MAAM,UAAU,cAAc,CAAC,CAAc;IAC3C,OAAO,GAAG,gBAAgB,CAAC,CAAC,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,IAAI,MAAM,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;AACvF,CAAC"}
@@ -1,4 +0,0 @@
1
- import type { KtExpr, KtLambdaExpr } from "../kt-dsl/expr/types.js";
2
- export declare function printExpr(e: KtExpr): string;
3
- export declare function printLambda(c: KtLambdaExpr, indent?: string): string;
4
- //# sourceMappingURL=expr.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"expr.d.ts","sourceRoot":"","sources":["../../src/kt-compiler/expr.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAKpE,wBAAgB,SAAS,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAmD3C;AAqDD,wBAAgB,WAAW,CAAC,CAAC,EAAE,YAAY,EAAE,MAAM,GAAE,MAAW,GAAG,MAAM,CAqBxE"}
@@ -1,123 +0,0 @@
1
- import { INDENT, isSimpleIdent } from "./format.js";
2
- import { printStmt } from "./stmt.js";
3
- import { printType } from "./type.js";
4
- export function printExpr(e) {
5
- switch (e.kind) {
6
- case "ident":
7
- return e.name;
8
- case "this":
9
- return "this";
10
- case "str":
11
- return printStringLiteral(e.value);
12
- case "int":
13
- return String(e.value);
14
- case "long":
15
- return `${String(e.value)}L`;
16
- case "double": {
17
- const s = String(e.value);
18
- return s.includes(".") ? s : `${s}.0`;
19
- }
20
- case "bool":
21
- return e.value ? "true" : "false";
22
- case "null":
23
- return "null";
24
- case "underscore":
25
- return "_";
26
- case "interp":
27
- return printInterp(e.parts);
28
- case "listLit":
29
- return `listOf(${e.items.map(printExpr).join(", ")})`;
30
- case "mapLit":
31
- return e.pairs.length === 0
32
- ? "mapOf()"
33
- : `mapOf(${e.pairs.map(([k, v]) => `${printExpr(k)} to ${printExpr(v)}`).join(", ")})`;
34
- case "member":
35
- return `${printExpr(e.on)}.${e.name}`;
36
- case "safeMember":
37
- return `${printExpr(e.on)}?.${e.name}`;
38
- case "index":
39
- return `${printExpr(e.on)}[${printExpr(e.index)}]`;
40
- case "notNull":
41
- return `${printExpr(e.on)}!!`;
42
- case "call":
43
- return printCall(e);
44
- case "binOp":
45
- return `${printExpr(e.left)} ${e.op} ${printExpr(e.right)}`;
46
- case "lambda":
47
- return printLambda(e);
48
- case "range":
49
- return `${printExpr(e.low)} ${e.halfOpen ? "until" : ".."} ${printExpr(e.high)}`;
50
- case "cast":
51
- return `${printExpr(e.expr)} ${e.safe ? "as?" : "as"} ${printType(e.type)}`;
52
- case "typeRef":
53
- return `${printType(e.type)}::class`;
54
- }
55
- }
56
- function printStringLiteral(s) {
57
- // Kotlin strings: same as JSON for the basic forms, but `$` is also
58
- // significant inside a `"…"` literal because of string templates, so
59
- // we escape it too.
60
- return JSON.stringify(s).replace(/\$/g, "\\$");
61
- }
62
- function escapeForKotlinTemplate(s) {
63
- return s
64
- .replace(/\\/g, "\\\\")
65
- .replace(/"/g, '\\"')
66
- .replace(/\n/g, "\\n")
67
- .replace(/\r/g, "\\r")
68
- .replace(/\t/g, "\\t")
69
- .replace(/\$/g, "\\$");
70
- }
71
- function printInterp(parts) {
72
- const inner = parts
73
- .map((p) => {
74
- if (typeof p === "string")
75
- return escapeForKotlinTemplate(p);
76
- // Bare-identifier shorthand: `$ident` is preferred to `${ident}`
77
- // when the identifier is unambiguous.
78
- if (p.kind === "ident" && isSimpleIdent(p.name))
79
- return `$${p.name}`;
80
- return `\${${printExpr(p)}}`;
81
- })
82
- .join("");
83
- return `"${inner}"`;
84
- }
85
- function printCall(e) {
86
- const typeArgs = e.typeArgs && e.typeArgs.length > 0
87
- ? `<${e.typeArgs.map(printType).join(", ")}>`
88
- : "";
89
- const args = e.args
90
- .map((a) => a.label === undefined
91
- ? printExpr(a.expr)
92
- : `${a.label} = ${printExpr(a.expr)}`)
93
- .join(", ");
94
- // When a call has no positional args and a trailing lambda, the
95
- // empty parens are omitted: `client.execute { ... }`.
96
- const head = e.args.length > 0 || !e.trailingLambda
97
- ? `${printExpr(e.callee)}${typeArgs}(${args})`
98
- : `${printExpr(e.callee)}${typeArgs}`;
99
- return e.trailingLambda ? `${head} ${printLambda(e.trailingLambda)}` : head;
100
- }
101
- export function printLambda(c, indent = "") {
102
- if (c.body.length === 1) {
103
- const only = c.body[0];
104
- const params = c.params.length === 0 ? "" : `${c.params.join(", ")} -> `;
105
- if (only.kind === "returnExpr" || only.kind === "expr") {
106
- const expr = only.kind === "returnExpr"
107
- ? only.expr
108
- : only.expr;
109
- return `{ ${params}${printExpr(expr)} }`;
110
- }
111
- if (only.kind === "assign") {
112
- return `{ ${params}${printExpr(only.target)} = ${printExpr(only.value)} }`;
113
- }
114
- }
115
- if (c.body.length === 0) {
116
- return c.params.length === 0 ? "{}" : `{ ${c.params.join(", ")} -> }`;
117
- }
118
- const stmts = c.body.map((s) => printStmt(s, indent + INDENT)).join("\n");
119
- if (c.params.length === 0)
120
- return `{\n${stmts}\n${indent}}`;
121
- return `{ ${c.params.join(", ")} ->\n${stmts}\n${indent}}`;
122
- }
123
- //# sourceMappingURL=expr.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"expr.js","sourceRoot":"","sources":["../../src/kt-compiler/expr.ts"],"names":[],"mappings":"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"}
@@ -1,20 +0,0 @@
1
- import type { KtVisibility } from "../kt-dsl/visibility.js";
2
- export declare const INDENT = " ";
3
- /**
4
- * Kotlin's default visibility is `public`, but `public` is a valid
5
- * keyword and emitting it explicitly keeps the generated source
6
- * unambiguous when reading. `internal` / `private` / `protected`
7
- * always need to be explicit.
8
- */
9
- export declare const visibilityPrefix: (v: KtVisibility) => string;
10
- export declare const superTypeTail: (superTypes: ReadonlyArray<string>,
11
- /** Render the first super-type as a constructor invocation
12
- * (`Super()`) — needed for sealed-class subclasses. */
13
- parenFirst?: boolean) => string;
14
- export declare const indented: (lines: ReadonlyArray<string>, indent: string) => string;
15
- /**
16
- * True when `name` is a bare identifier safe to render after `$` in
17
- * a string template without `${...}` braces.
18
- */
19
- export declare const isSimpleIdent: (name: string) => boolean;
20
- //# sourceMappingURL=format.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../../src/kt-compiler/format.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAE5D,eAAO,MAAM,MAAM,SAAS,CAAC;AAE7B;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,GAAI,GAAG,YAAY,KAAG,MAAiB,CAAC;AAErE,eAAO,MAAM,aAAa,GACxB,YAAY,aAAa,CAAC,MAAM,CAAC;AACjC;wDACwD;AACxD,oBAAkB,KACjB,MAKF,CAAC;AAEF,eAAO,MAAM,QAAQ,GACnB,OAAO,aAAa,CAAC,MAAM,CAAC,EAC5B,QAAQ,MAAM,KACb,MAAsD,CAAC;AAI1D;;;GAGG;AACH,eAAO,MAAM,aAAa,GAAI,MAAM,MAAM,KAAG,OACjB,CAAC"}
@@ -1,27 +0,0 @@
1
- export const INDENT = " ";
2
- /**
3
- * Kotlin's default visibility is `public`, but `public` is a valid
4
- * keyword and emitting it explicitly keeps the generated source
5
- * unambiguous when reading. `internal` / `private` / `protected`
6
- * always need to be explicit.
7
- */
8
- export const visibilityPrefix = (v) => `${v} `;
9
- export const superTypeTail = (superTypes,
10
- /** Render the first super-type as a constructor invocation
11
- * (`Super()`) — needed for sealed-class subclasses. */
12
- parenFirst = false) => {
13
- if (superTypes.length === 0)
14
- return "";
15
- if (!parenFirst)
16
- return ` : ${superTypes.join(", ")}`;
17
- const [head, ...rest] = superTypes;
18
- return ` : ${head}()${rest.length > 0 ? `, ${rest.join(", ")}` : ""}`;
19
- };
20
- export const indented = (lines, indent) => lines.map((l) => `${indent}${l}`).join("\n");
21
- const KOTLIN_IDENT_RE = /^[A-Za-z_][A-Za-z0-9_]*$/;
22
- /**
23
- * True when `name` is a bare identifier safe to render after `$` in
24
- * a string template without `${...}` braces.
25
- */
26
- export const isSimpleIdent = (name) => KOTLIN_IDENT_RE.test(name);
27
- //# sourceMappingURL=format.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"format.js","sourceRoot":"","sources":["../../src/kt-compiler/format.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,MAAM,GAAG,MAAM,CAAC;AAE7B;;;;;GAKG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAe,EAAU,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC;AAErE,MAAM,CAAC,MAAM,aAAa,GAAG,CAC3B,UAAiC;AACjC;wDACwD;AACxD,UAAU,GAAG,KAAK,EACV,EAAE;IACV,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACvC,IAAI,CAAC,UAAU;QAAE,OAAO,MAAM,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;IACtD,MAAM,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,GAAG,UAAU,CAAC;IACnC,OAAO,MAAM,IAAI,KAAK,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;AACxE,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,QAAQ,GAAG,CACtB,KAA4B,EAC5B,MAAc,EACN,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,MAAM,GAAG,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAE1D,MAAM,eAAe,GAAG,0BAA0B,CAAC;AAEnD;;;GAGG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,IAAY,EAAW,EAAE,CACrD,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC"}
@@ -1,4 +0,0 @@
1
- import type { KtStmt } from "../kt-dsl/stmt/types.js";
2
- export declare function printStmt(s: KtStmt, indent?: string): string;
3
- export declare function printBlock(body: ReadonlyArray<KtStmt>, indent: string): string;
4
- //# sourceMappingURL=stmt.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"stmt.d.ts","sourceRoot":"","sources":["../../src/kt-compiler/stmt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAKtD,wBAAgB,SAAS,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,GAAE,MAAW,GAAG,MAAM,CAmChE;AAED,wBAAgB,UAAU,CACxB,IAAI,EAAE,aAAa,CAAC,MAAM,CAAC,EAC3B,MAAM,EAAE,MAAM,GACb,MAAM,CAIR"}