zod-aot 0.17.2 → 0.18.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 (466) hide show
  1. package/dist/core/codegen/context.d.ts +5 -3
  2. package/dist/core/codegen/context.d.ts.map +1 -1
  3. package/dist/core/codegen/context.js +1 -1
  4. package/dist/core/codegen/context.js.map +1 -1
  5. package/dist/core/codegen/fast-path.d.ts +1 -1
  6. package/dist/core/codegen/fast-path.d.ts.map +1 -1
  7. package/dist/core/codegen/fast-path.js +11 -4
  8. package/dist/core/codegen/fast-path.js.map +1 -1
  9. package/dist/core/codegen/index.js +1 -1
  10. package/dist/core/codegen/index.js.map +1 -1
  11. package/dist/core/codegen/schemas/array.d.ts.map +1 -1
  12. package/dist/core/codegen/schemas/array.js +6 -2
  13. package/dist/core/codegen/schemas/array.js.map +1 -1
  14. package/dist/core/codegen/schemas/date.d.ts +2 -1
  15. package/dist/core/codegen/schemas/date.d.ts.map +1 -1
  16. package/dist/core/codegen/schemas/date.js +26 -0
  17. package/dist/core/codegen/schemas/date.js.map +1 -1
  18. package/dist/core/codegen/schemas/map.d.ts +3 -2
  19. package/dist/core/codegen/schemas/map.d.ts.map +1 -1
  20. package/dist/core/codegen/schemas/map.js +19 -0
  21. package/dist/core/codegen/schemas/map.js.map +1 -1
  22. package/dist/core/codegen/schemas/number.d.ts.map +1 -1
  23. package/dist/core/codegen/schemas/number.js +15 -7
  24. package/dist/core/codegen/schemas/number.js.map +1 -1
  25. package/dist/core/codegen/schemas/object.d.ts.map +1 -1
  26. package/dist/core/codegen/schemas/object.js +8 -3
  27. package/dist/core/codegen/schemas/object.js.map +1 -1
  28. package/dist/core/codegen/schemas/set.d.ts +3 -2
  29. package/dist/core/codegen/schemas/set.d.ts.map +1 -1
  30. package/dist/core/codegen/schemas/set.js +29 -0
  31. package/dist/core/codegen/schemas/set.js.map +1 -1
  32. package/dist/core/codegen/schemas/string.d.ts.map +1 -1
  33. package/dist/core/codegen/schemas/string.js +6 -2
  34. package/dist/core/codegen/schemas/string.js.map +1 -1
  35. package/dist/core/codegen/slow-path.d.ts.map +1 -1
  36. package/dist/core/codegen/slow-path.js +4 -0
  37. package/dist/core/codegen/slow-path.js.map +1 -1
  38. package/dist/core/diagnostic.d.ts.map +1 -1
  39. package/dist/core/diagnostic.js +0 -3
  40. package/dist/core/diagnostic.js.map +1 -1
  41. package/dist/unplugin/rolldown.d.ts +1 -1
  42. package/package.json +4 -4
  43. package/dist/core/codegen/fast-check/array.d.ts +0 -4
  44. package/dist/core/codegen/fast-check/array.d.ts.map +0 -1
  45. package/dist/core/codegen/fast-check/array.js +0 -28
  46. package/dist/core/codegen/fast-check/array.js.map +0 -1
  47. package/dist/core/codegen/fast-check/bigint.d.ts +0 -3
  48. package/dist/core/codegen/fast-check/bigint.d.ts.map +0 -1
  49. package/dist/core/codegen/fast-check/bigint.js +0 -19
  50. package/dist/core/codegen/fast-check/bigint.js.map +0 -1
  51. package/dist/core/codegen/fast-check/discriminated-union.d.ts +0 -4
  52. package/dist/core/codegen/fast-check/discriminated-union.d.ts.map +0 -1
  53. package/dist/core/codegen/fast-check/discriminated-union.js +0 -13
  54. package/dist/core/codegen/fast-check/discriminated-union.js.map +0 -1
  55. package/dist/core/codegen/fast-check/enum.d.ts +0 -4
  56. package/dist/core/codegen/fast-check/enum.d.ts.map +0 -1
  57. package/dist/core/codegen/fast-check/enum.js +0 -12
  58. package/dist/core/codegen/fast-check/enum.js.map +0 -1
  59. package/dist/core/codegen/fast-check/index.d.ts +0 -16
  60. package/dist/core/codegen/fast-check/index.d.ts.map +0 -1
  61. package/dist/core/codegen/fast-check/index.js +0 -118
  62. package/dist/core/codegen/fast-check/index.js.map +0 -1
  63. package/dist/core/codegen/fast-check/intersection.d.ts +0 -4
  64. package/dist/core/codegen/fast-check/intersection.d.ts.map +0 -1
  65. package/dist/core/codegen/fast-check/intersection.js +0 -10
  66. package/dist/core/codegen/fast-check/intersection.js.map +0 -1
  67. package/dist/core/codegen/fast-check/literal.d.ts +0 -3
  68. package/dist/core/codegen/fast-check/literal.d.ts.map +0 -1
  69. package/dist/core/codegen/fast-check/literal.js +0 -8
  70. package/dist/core/codegen/fast-check/literal.js.map +0 -1
  71. package/dist/core/codegen/fast-check/nullable.d.ts +0 -4
  72. package/dist/core/codegen/fast-check/nullable.d.ts.map +0 -1
  73. package/dist/core/codegen/fast-check/nullable.js +0 -7
  74. package/dist/core/codegen/fast-check/nullable.js.map +0 -1
  75. package/dist/core/codegen/fast-check/number.d.ts +0 -3
  76. package/dist/core/codegen/fast-check/number.d.ts.map +0 -1
  77. package/dist/core/codegen/fast-check/number.js +0 -51
  78. package/dist/core/codegen/fast-check/number.js.map +0 -1
  79. package/dist/core/codegen/fast-check/object.d.ts +0 -4
  80. package/dist/core/codegen/fast-check/object.d.ts.map +0 -1
  81. package/dist/core/codegen/fast-check/object.js +0 -13
  82. package/dist/core/codegen/fast-check/object.js.map +0 -1
  83. package/dist/core/codegen/fast-check/optional.d.ts +0 -4
  84. package/dist/core/codegen/fast-check/optional.d.ts.map +0 -1
  85. package/dist/core/codegen/fast-check/optional.js +0 -7
  86. package/dist/core/codegen/fast-check/optional.js.map +0 -1
  87. package/dist/core/codegen/fast-check/pipe.d.ts +0 -4
  88. package/dist/core/codegen/fast-check/pipe.d.ts.map +0 -1
  89. package/dist/core/codegen/fast-check/pipe.js +0 -14
  90. package/dist/core/codegen/fast-check/pipe.js.map +0 -1
  91. package/dist/core/codegen/fast-check/readonly.d.ts +0 -4
  92. package/dist/core/codegen/fast-check/readonly.d.ts.map +0 -1
  93. package/dist/core/codegen/fast-check/readonly.js +0 -4
  94. package/dist/core/codegen/fast-check/readonly.js.map +0 -1
  95. package/dist/core/codegen/fast-check/record.d.ts +0 -4
  96. package/dist/core/codegen/fast-check/record.d.ts.map +0 -1
  97. package/dist/core/codegen/fast-check/record.js +0 -18
  98. package/dist/core/codegen/fast-check/record.js.map +0 -1
  99. package/dist/core/codegen/fast-check/string.d.ts +0 -4
  100. package/dist/core/codegen/fast-check/string.d.ts.map +0 -1
  101. package/dist/core/codegen/fast-check/string.js +0 -62
  102. package/dist/core/codegen/fast-check/string.js.map +0 -1
  103. package/dist/core/codegen/fast-check/tuple.d.ts +0 -4
  104. package/dist/core/codegen/fast-check/tuple.d.ts.map +0 -1
  105. package/dist/core/codegen/fast-check/tuple.js +0 -32
  106. package/dist/core/codegen/fast-check/tuple.js.map +0 -1
  107. package/dist/core/codegen/fast-check/union.d.ts +0 -4
  108. package/dist/core/codegen/fast-check/union.d.ts.map +0 -1
  109. package/dist/core/codegen/fast-check/union.js +0 -12
  110. package/dist/core/codegen/fast-check/union.js.map +0 -1
  111. package/dist/core/codegen/fast-path/array.d.ts +0 -4
  112. package/dist/core/codegen/fast-path/array.d.ts.map +0 -1
  113. package/dist/core/codegen/fast-path/array.js +0 -32
  114. package/dist/core/codegen/fast-path/array.js.map +0 -1
  115. package/dist/core/codegen/fast-path/bigint.d.ts +0 -4
  116. package/dist/core/codegen/fast-path/bigint.d.ts.map +0 -1
  117. package/dist/core/codegen/fast-path/bigint.js +0 -22
  118. package/dist/core/codegen/fast-path/bigint.js.map +0 -1
  119. package/dist/core/codegen/fast-path/discriminated-union.d.ts +0 -4
  120. package/dist/core/codegen/fast-path/discriminated-union.d.ts.map +0 -1
  121. package/dist/core/codegen/fast-path/discriminated-union.js +0 -13
  122. package/dist/core/codegen/fast-path/discriminated-union.js.map +0 -1
  123. package/dist/core/codegen/fast-path/enum.d.ts +0 -4
  124. package/dist/core/codegen/fast-path/enum.d.ts.map +0 -1
  125. package/dist/core/codegen/fast-path/enum.js +0 -13
  126. package/dist/core/codegen/fast-path/enum.js.map +0 -1
  127. package/dist/core/codegen/fast-path/index.d.ts +0 -17
  128. package/dist/core/codegen/fast-path/index.d.ts.map +0 -1
  129. package/dist/core/codegen/fast-path/index.js +0 -108
  130. package/dist/core/codegen/fast-path/index.js.map +0 -1
  131. package/dist/core/codegen/fast-path/intersection.d.ts +0 -4
  132. package/dist/core/codegen/fast-path/intersection.d.ts.map +0 -1
  133. package/dist/core/codegen/fast-path/intersection.js +0 -10
  134. package/dist/core/codegen/fast-path/intersection.js.map +0 -1
  135. package/dist/core/codegen/fast-path/literal.d.ts +0 -4
  136. package/dist/core/codegen/fast-path/literal.d.ts.map +0 -1
  137. package/dist/core/codegen/fast-path/literal.js +0 -9
  138. package/dist/core/codegen/fast-path/literal.js.map +0 -1
  139. package/dist/core/codegen/fast-path/nullable.d.ts +0 -4
  140. package/dist/core/codegen/fast-path/nullable.d.ts.map +0 -1
  141. package/dist/core/codegen/fast-path/nullable.js +0 -7
  142. package/dist/core/codegen/fast-path/nullable.js.map +0 -1
  143. package/dist/core/codegen/fast-path/number.d.ts +0 -4
  144. package/dist/core/codegen/fast-path/number.d.ts.map +0 -1
  145. package/dist/core/codegen/fast-path/number.js +0 -57
  146. package/dist/core/codegen/fast-path/number.js.map +0 -1
  147. package/dist/core/codegen/fast-path/object.d.ts +0 -4
  148. package/dist/core/codegen/fast-path/object.d.ts.map +0 -1
  149. package/dist/core/codegen/fast-path/object.js +0 -17
  150. package/dist/core/codegen/fast-path/object.js.map +0 -1
  151. package/dist/core/codegen/fast-path/optional.d.ts +0 -4
  152. package/dist/core/codegen/fast-path/optional.d.ts.map +0 -1
  153. package/dist/core/codegen/fast-path/optional.js +0 -7
  154. package/dist/core/codegen/fast-path/optional.js.map +0 -1
  155. package/dist/core/codegen/fast-path/pipe.d.ts +0 -4
  156. package/dist/core/codegen/fast-path/pipe.d.ts.map +0 -1
  157. package/dist/core/codegen/fast-path/pipe.js +0 -14
  158. package/dist/core/codegen/fast-path/pipe.js.map +0 -1
  159. package/dist/core/codegen/fast-path/readonly.d.ts +0 -4
  160. package/dist/core/codegen/fast-path/readonly.d.ts.map +0 -1
  161. package/dist/core/codegen/fast-path/readonly.js +0 -4
  162. package/dist/core/codegen/fast-path/readonly.js.map +0 -1
  163. package/dist/core/codegen/fast-path/record.d.ts +0 -4
  164. package/dist/core/codegen/fast-path/record.d.ts.map +0 -1
  165. package/dist/core/codegen/fast-path/record.js +0 -19
  166. package/dist/core/codegen/fast-path/record.js.map +0 -1
  167. package/dist/core/codegen/fast-path/string.d.ts +0 -4
  168. package/dist/core/codegen/fast-path/string.d.ts.map +0 -1
  169. package/dist/core/codegen/fast-path/string.js +0 -64
  170. package/dist/core/codegen/fast-path/string.js.map +0 -1
  171. package/dist/core/codegen/fast-path/tuple.d.ts +0 -4
  172. package/dist/core/codegen/fast-path/tuple.d.ts.map +0 -1
  173. package/dist/core/codegen/fast-path/tuple.js +0 -33
  174. package/dist/core/codegen/fast-path/tuple.js.map +0 -1
  175. package/dist/core/codegen/fast-path/union.d.ts +0 -4
  176. package/dist/core/codegen/fast-path/union.d.ts.map +0 -1
  177. package/dist/core/codegen/fast-path/union.js +0 -12
  178. package/dist/core/codegen/fast-path/union.js.map +0 -1
  179. package/dist/core/codegen/generators/any.d.ts +0 -2
  180. package/dist/core/codegen/generators/any.d.ts.map +0 -1
  181. package/dist/core/codegen/generators/any.js +0 -4
  182. package/dist/core/codegen/generators/any.js.map +0 -1
  183. package/dist/core/codegen/generators/array.d.ts +0 -6
  184. package/dist/core/codegen/generators/array.d.ts.map +0 -1
  185. package/dist/core/codegen/generators/array.js +0 -41
  186. package/dist/core/codegen/generators/array.js.map +0 -1
  187. package/dist/core/codegen/generators/bigint.d.ts +0 -6
  188. package/dist/core/codegen/generators/bigint.d.ts.map +0 -1
  189. package/dist/core/codegen/generators/bigint.js +0 -56
  190. package/dist/core/codegen/generators/bigint.js.map +0 -1
  191. package/dist/core/codegen/generators/boolean.d.ts +0 -5
  192. package/dist/core/codegen/generators/boolean.d.ts.map +0 -1
  193. package/dist/core/codegen/generators/boolean.js +0 -14
  194. package/dist/core/codegen/generators/boolean.js.map +0 -1
  195. package/dist/core/codegen/generators/catch.d.ts +0 -6
  196. package/dist/core/codegen/generators/catch.d.ts.map +0 -1
  197. package/dist/core/codegen/generators/catch.js +0 -11
  198. package/dist/core/codegen/generators/catch.js.map +0 -1
  199. package/dist/core/codegen/generators/date.d.ts +0 -5
  200. package/dist/core/codegen/generators/date.d.ts.map +0 -1
  201. package/dist/core/codegen/generators/date.js +0 -52
  202. package/dist/core/codegen/generators/date.js.map +0 -1
  203. package/dist/core/codegen/generators/default.d.ts +0 -6
  204. package/dist/core/codegen/generators/default.d.ts.map +0 -1
  205. package/dist/core/codegen/generators/default.js +0 -10
  206. package/dist/core/codegen/generators/default.js.map +0 -1
  207. package/dist/core/codegen/generators/discriminated-union.d.ts +0 -6
  208. package/dist/core/codegen/generators/discriminated-union.d.ts.map +0 -1
  209. package/dist/core/codegen/generators/discriminated-union.js +0 -25
  210. package/dist/core/codegen/generators/discriminated-union.js.map +0 -1
  211. package/dist/core/codegen/generators/effect.d.ts +0 -17
  212. package/dist/core/codegen/generators/effect.d.ts.map +0 -1
  213. package/dist/core/codegen/generators/effect.js +0 -32
  214. package/dist/core/codegen/generators/effect.js.map +0 -1
  215. package/dist/core/codegen/generators/enum.d.ts +0 -6
  216. package/dist/core/codegen/generators/enum.d.ts.map +0 -1
  217. package/dist/core/codegen/generators/enum.js +0 -21
  218. package/dist/core/codegen/generators/enum.js.map +0 -1
  219. package/dist/core/codegen/generators/fallback.d.ts +0 -3
  220. package/dist/core/codegen/generators/fallback.d.ts.map +0 -1
  221. package/dist/core/codegen/generators/fallback.js +0 -23
  222. package/dist/core/codegen/generators/fallback.js.map +0 -1
  223. package/dist/core/codegen/generators/index.d.ts +0 -4
  224. package/dist/core/codegen/generators/index.d.ts.map +0 -1
  225. package/dist/core/codegen/generators/index.js +0 -104
  226. package/dist/core/codegen/generators/index.js.map +0 -1
  227. package/dist/core/codegen/generators/intersection.d.ts +0 -6
  228. package/dist/core/codegen/generators/intersection.d.ts.map +0 -1
  229. package/dist/core/codegen/generators/intersection.js +0 -4
  230. package/dist/core/codegen/generators/intersection.js.map +0 -1
  231. package/dist/core/codegen/generators/literal.d.ts +0 -5
  232. package/dist/core/codegen/generators/literal.d.ts.map +0 -1
  233. package/dist/core/codegen/generators/literal.js +0 -37
  234. package/dist/core/codegen/generators/literal.js.map +0 -1
  235. package/dist/core/codegen/generators/map.d.ts +0 -6
  236. package/dist/core/codegen/generators/map.d.ts.map +0 -1
  237. package/dist/core/codegen/generators/map.js +0 -19
  238. package/dist/core/codegen/generators/map.js.map +0 -1
  239. package/dist/core/codegen/generators/nan.d.ts +0 -2
  240. package/dist/core/codegen/generators/nan.d.ts.map +0 -1
  241. package/dist/core/codegen/generators/nan.js +0 -9
  242. package/dist/core/codegen/generators/nan.js.map +0 -1
  243. package/dist/core/codegen/generators/never.d.ts +0 -2
  244. package/dist/core/codegen/generators/never.d.ts.map +0 -1
  245. package/dist/core/codegen/generators/never.js +0 -7
  246. package/dist/core/codegen/generators/never.js.map +0 -1
  247. package/dist/core/codegen/generators/null.d.ts +0 -2
  248. package/dist/core/codegen/generators/null.d.ts.map +0 -1
  249. package/dist/core/codegen/generators/null.js +0 -9
  250. package/dist/core/codegen/generators/null.js.map +0 -1
  251. package/dist/core/codegen/generators/nullable.d.ts +0 -6
  252. package/dist/core/codegen/generators/nullable.d.ts.map +0 -1
  253. package/dist/core/codegen/generators/nullable.js +0 -9
  254. package/dist/core/codegen/generators/nullable.js.map +0 -1
  255. package/dist/core/codegen/generators/number.d.ts +0 -6
  256. package/dist/core/codegen/generators/number.d.ts.map +0 -1
  257. package/dist/core/codegen/generators/number.js +0 -97
  258. package/dist/core/codegen/generators/number.js.map +0 -1
  259. package/dist/core/codegen/generators/object.d.ts +0 -6
  260. package/dist/core/codegen/generators/object.d.ts.map +0 -1
  261. package/dist/core/codegen/generators/object.js +0 -18
  262. package/dist/core/codegen/generators/object.js.map +0 -1
  263. package/dist/core/codegen/generators/optional.d.ts +0 -6
  264. package/dist/core/codegen/generators/optional.d.ts.map +0 -1
  265. package/dist/core/codegen/generators/optional.js +0 -9
  266. package/dist/core/codegen/generators/optional.js.map +0 -1
  267. package/dist/core/codegen/generators/pipe.d.ts +0 -6
  268. package/dist/core/codegen/generators/pipe.d.ts.map +0 -1
  269. package/dist/core/codegen/generators/pipe.js +0 -5
  270. package/dist/core/codegen/generators/pipe.js.map +0 -1
  271. package/dist/core/codegen/generators/readonly.d.ts +0 -6
  272. package/dist/core/codegen/generators/readonly.d.ts.map +0 -1
  273. package/dist/core/codegen/generators/readonly.js +0 -4
  274. package/dist/core/codegen/generators/readonly.js.map +0 -1
  275. package/dist/core/codegen/generators/record.d.ts +0 -6
  276. package/dist/core/codegen/generators/record.d.ts.map +0 -1
  277. package/dist/core/codegen/generators/record.js +0 -28
  278. package/dist/core/codegen/generators/record.js.map +0 -1
  279. package/dist/core/codegen/generators/recursive-ref.d.ts +0 -3
  280. package/dist/core/codegen/generators/recursive-ref.d.ts.map +0 -1
  281. package/dist/core/codegen/generators/recursive-ref.js +0 -20
  282. package/dist/core/codegen/generators/recursive-ref.js.map +0 -1
  283. package/dist/core/codegen/generators/set.d.ts +0 -6
  284. package/dist/core/codegen/generators/set.d.ts.map +0 -1
  285. package/dist/core/codegen/generators/set.js +0 -39
  286. package/dist/core/codegen/generators/set.js.map +0 -1
  287. package/dist/core/codegen/generators/string.d.ts +0 -6
  288. package/dist/core/codegen/generators/string.d.ts.map +0 -1
  289. package/dist/core/codegen/generators/string.js +0 -97
  290. package/dist/core/codegen/generators/string.js.map +0 -1
  291. package/dist/core/codegen/generators/symbol.d.ts +0 -2
  292. package/dist/core/codegen/generators/symbol.d.ts.map +0 -1
  293. package/dist/core/codegen/generators/symbol.js +0 -9
  294. package/dist/core/codegen/generators/symbol.js.map +0 -1
  295. package/dist/core/codegen/generators/template-literal.d.ts +0 -6
  296. package/dist/core/codegen/generators/template-literal.d.ts.map +0 -1
  297. package/dist/core/codegen/generators/template-literal.js +0 -13
  298. package/dist/core/codegen/generators/template-literal.js.map +0 -1
  299. package/dist/core/codegen/generators/tuple.d.ts +0 -6
  300. package/dist/core/codegen/generators/tuple.d.ts.map +0 -1
  301. package/dist/core/codegen/generators/tuple.js +0 -33
  302. package/dist/core/codegen/generators/tuple.js.map +0 -1
  303. package/dist/core/codegen/generators/undefined.d.ts +0 -2
  304. package/dist/core/codegen/generators/undefined.d.ts.map +0 -1
  305. package/dist/core/codegen/generators/undefined.js +0 -9
  306. package/dist/core/codegen/generators/undefined.js.map +0 -1
  307. package/dist/core/codegen/generators/union.d.ts +0 -6
  308. package/dist/core/codegen/generators/union.d.ts.map +0 -1
  309. package/dist/core/codegen/generators/union.js +0 -33
  310. package/dist/core/codegen/generators/union.js.map +0 -1
  311. package/dist/core/codegen/generators/unknown.d.ts +0 -2
  312. package/dist/core/codegen/generators/unknown.d.ts.map +0 -1
  313. package/dist/core/codegen/generators/unknown.js +0 -4
  314. package/dist/core/codegen/generators/unknown.js.map +0 -1
  315. package/dist/core/codegen/generators/void.d.ts +0 -2
  316. package/dist/core/codegen/generators/void.d.ts.map +0 -1
  317. package/dist/core/codegen/generators/void.js +0 -9
  318. package/dist/core/codegen/generators/void.js.map +0 -1
  319. package/dist/core/codegen/slow-path/any.d.ts +0 -4
  320. package/dist/core/codegen/slow-path/any.d.ts.map +0 -1
  321. package/dist/core/codegen/slow-path/any.js +0 -4
  322. package/dist/core/codegen/slow-path/any.js.map +0 -1
  323. package/dist/core/codegen/slow-path/array.d.ts +0 -6
  324. package/dist/core/codegen/slow-path/array.d.ts.map +0 -1
  325. package/dist/core/codegen/slow-path/array.js +0 -49
  326. package/dist/core/codegen/slow-path/array.js.map +0 -1
  327. package/dist/core/codegen/slow-path/bigint.d.ts +0 -4
  328. package/dist/core/codegen/slow-path/bigint.d.ts.map +0 -1
  329. package/dist/core/codegen/slow-path/bigint.js +0 -56
  330. package/dist/core/codegen/slow-path/bigint.js.map +0 -1
  331. package/dist/core/codegen/slow-path/boolean.d.ts +0 -4
  332. package/dist/core/codegen/slow-path/boolean.d.ts.map +0 -1
  333. package/dist/core/codegen/slow-path/boolean.js +0 -14
  334. package/dist/core/codegen/slow-path/boolean.js.map +0 -1
  335. package/dist/core/codegen/slow-path/catch.d.ts +0 -6
  336. package/dist/core/codegen/slow-path/catch.d.ts.map +0 -1
  337. package/dist/core/codegen/slow-path/catch.js +0 -11
  338. package/dist/core/codegen/slow-path/catch.js.map +0 -1
  339. package/dist/core/codegen/slow-path/date.d.ts +0 -4
  340. package/dist/core/codegen/slow-path/date.d.ts.map +0 -1
  341. package/dist/core/codegen/slow-path/date.js +0 -52
  342. package/dist/core/codegen/slow-path/date.js.map +0 -1
  343. package/dist/core/codegen/slow-path/default.d.ts +0 -6
  344. package/dist/core/codegen/slow-path/default.d.ts.map +0 -1
  345. package/dist/core/codegen/slow-path/default.js +0 -10
  346. package/dist/core/codegen/slow-path/default.js.map +0 -1
  347. package/dist/core/codegen/slow-path/discriminated-union.d.ts +0 -6
  348. package/dist/core/codegen/slow-path/discriminated-union.d.ts.map +0 -1
  349. package/dist/core/codegen/slow-path/discriminated-union.js +0 -25
  350. package/dist/core/codegen/slow-path/discriminated-union.js.map +0 -1
  351. package/dist/core/codegen/slow-path/effect.d.ts +0 -17
  352. package/dist/core/codegen/slow-path/effect.d.ts.map +0 -1
  353. package/dist/core/codegen/slow-path/effect.js +0 -32
  354. package/dist/core/codegen/slow-path/effect.js.map +0 -1
  355. package/dist/core/codegen/slow-path/enum.d.ts +0 -4
  356. package/dist/core/codegen/slow-path/enum.d.ts.map +0 -1
  357. package/dist/core/codegen/slow-path/enum.js +0 -20
  358. package/dist/core/codegen/slow-path/enum.js.map +0 -1
  359. package/dist/core/codegen/slow-path/fallback.d.ts +0 -4
  360. package/dist/core/codegen/slow-path/fallback.d.ts.map +0 -1
  361. package/dist/core/codegen/slow-path/fallback.js +0 -23
  362. package/dist/core/codegen/slow-path/fallback.js.map +0 -1
  363. package/dist/core/codegen/slow-path/index.d.ts +0 -5
  364. package/dist/core/codegen/slow-path/index.d.ts.map +0 -1
  365. package/dist/core/codegen/slow-path/index.js +0 -110
  366. package/dist/core/codegen/slow-path/index.js.map +0 -1
  367. package/dist/core/codegen/slow-path/intersection.d.ts +0 -6
  368. package/dist/core/codegen/slow-path/intersection.d.ts.map +0 -1
  369. package/dist/core/codegen/slow-path/intersection.js +0 -4
  370. package/dist/core/codegen/slow-path/intersection.js.map +0 -1
  371. package/dist/core/codegen/slow-path/literal.d.ts +0 -4
  372. package/dist/core/codegen/slow-path/literal.d.ts.map +0 -1
  373. package/dist/core/codegen/slow-path/literal.js +0 -37
  374. package/dist/core/codegen/slow-path/literal.js.map +0 -1
  375. package/dist/core/codegen/slow-path/map.d.ts +0 -6
  376. package/dist/core/codegen/slow-path/map.d.ts.map +0 -1
  377. package/dist/core/codegen/slow-path/map.js +0 -18
  378. package/dist/core/codegen/slow-path/map.js.map +0 -1
  379. package/dist/core/codegen/slow-path/nan.d.ts +0 -4
  380. package/dist/core/codegen/slow-path/nan.d.ts.map +0 -1
  381. package/dist/core/codegen/slow-path/nan.js +0 -9
  382. package/dist/core/codegen/slow-path/nan.js.map +0 -1
  383. package/dist/core/codegen/slow-path/never.d.ts +0 -4
  384. package/dist/core/codegen/slow-path/never.d.ts.map +0 -1
  385. package/dist/core/codegen/slow-path/never.js +0 -7
  386. package/dist/core/codegen/slow-path/never.js.map +0 -1
  387. package/dist/core/codegen/slow-path/null.d.ts +0 -4
  388. package/dist/core/codegen/slow-path/null.d.ts.map +0 -1
  389. package/dist/core/codegen/slow-path/null.js +0 -9
  390. package/dist/core/codegen/slow-path/null.js.map +0 -1
  391. package/dist/core/codegen/slow-path/nullable.d.ts +0 -6
  392. package/dist/core/codegen/slow-path/nullable.d.ts.map +0 -1
  393. package/dist/core/codegen/slow-path/nullable.js +0 -9
  394. package/dist/core/codegen/slow-path/nullable.js.map +0 -1
  395. package/dist/core/codegen/slow-path/number.d.ts +0 -4
  396. package/dist/core/codegen/slow-path/number.d.ts.map +0 -1
  397. package/dist/core/codegen/slow-path/number.js +0 -101
  398. package/dist/core/codegen/slow-path/number.js.map +0 -1
  399. package/dist/core/codegen/slow-path/object.d.ts +0 -6
  400. package/dist/core/codegen/slow-path/object.d.ts.map +0 -1
  401. package/dist/core/codegen/slow-path/object.js +0 -29
  402. package/dist/core/codegen/slow-path/object.js.map +0 -1
  403. package/dist/core/codegen/slow-path/optional.d.ts +0 -6
  404. package/dist/core/codegen/slow-path/optional.d.ts.map +0 -1
  405. package/dist/core/codegen/slow-path/optional.js +0 -9
  406. package/dist/core/codegen/slow-path/optional.js.map +0 -1
  407. package/dist/core/codegen/slow-path/pipe.d.ts +0 -6
  408. package/dist/core/codegen/slow-path/pipe.d.ts.map +0 -1
  409. package/dist/core/codegen/slow-path/pipe.js +0 -5
  410. package/dist/core/codegen/slow-path/pipe.js.map +0 -1
  411. package/dist/core/codegen/slow-path/readonly.d.ts +0 -6
  412. package/dist/core/codegen/slow-path/readonly.d.ts.map +0 -1
  413. package/dist/core/codegen/slow-path/readonly.js +0 -4
  414. package/dist/core/codegen/slow-path/readonly.js.map +0 -1
  415. package/dist/core/codegen/slow-path/record.d.ts +0 -6
  416. package/dist/core/codegen/slow-path/record.d.ts.map +0 -1
  417. package/dist/core/codegen/slow-path/record.js +0 -32
  418. package/dist/core/codegen/slow-path/record.js.map +0 -1
  419. package/dist/core/codegen/slow-path/recursive-ref.d.ts +0 -4
  420. package/dist/core/codegen/slow-path/recursive-ref.d.ts.map +0 -1
  421. package/dist/core/codegen/slow-path/recursive-ref.js +0 -20
  422. package/dist/core/codegen/slow-path/recursive-ref.js.map +0 -1
  423. package/dist/core/codegen/slow-path/set.d.ts +0 -6
  424. package/dist/core/codegen/slow-path/set.d.ts.map +0 -1
  425. package/dist/core/codegen/slow-path/set.js +0 -38
  426. package/dist/core/codegen/slow-path/set.js.map +0 -1
  427. package/dist/core/codegen/slow-path/string.d.ts +0 -4
  428. package/dist/core/codegen/slow-path/string.d.ts.map +0 -1
  429. package/dist/core/codegen/slow-path/string.js +0 -97
  430. package/dist/core/codegen/slow-path/string.js.map +0 -1
  431. package/dist/core/codegen/slow-path/symbol.d.ts +0 -4
  432. package/dist/core/codegen/slow-path/symbol.d.ts.map +0 -1
  433. package/dist/core/codegen/slow-path/symbol.js +0 -9
  434. package/dist/core/codegen/slow-path/symbol.js.map +0 -1
  435. package/dist/core/codegen/slow-path/template-literal.d.ts +0 -4
  436. package/dist/core/codegen/slow-path/template-literal.d.ts.map +0 -1
  437. package/dist/core/codegen/slow-path/template-literal.js +0 -11
  438. package/dist/core/codegen/slow-path/template-literal.js.map +0 -1
  439. package/dist/core/codegen/slow-path/tuple.d.ts +0 -6
  440. package/dist/core/codegen/slow-path/tuple.d.ts.map +0 -1
  441. package/dist/core/codegen/slow-path/tuple.js +0 -37
  442. package/dist/core/codegen/slow-path/tuple.js.map +0 -1
  443. package/dist/core/codegen/slow-path/undefined.d.ts +0 -4
  444. package/dist/core/codegen/slow-path/undefined.d.ts.map +0 -1
  445. package/dist/core/codegen/slow-path/undefined.js +0 -9
  446. package/dist/core/codegen/slow-path/undefined.js.map +0 -1
  447. package/dist/core/codegen/slow-path/union.d.ts +0 -6
  448. package/dist/core/codegen/slow-path/union.d.ts.map +0 -1
  449. package/dist/core/codegen/slow-path/union.js +0 -33
  450. package/dist/core/codegen/slow-path/union.js.map +0 -1
  451. package/dist/core/codegen/slow-path/unknown.d.ts +0 -4
  452. package/dist/core/codegen/slow-path/unknown.d.ts.map +0 -1
  453. package/dist/core/codegen/slow-path/unknown.js +0 -4
  454. package/dist/core/codegen/slow-path/unknown.js.map +0 -1
  455. package/dist/core/codegen/slow-path/void.d.ts +0 -4
  456. package/dist/core/codegen/slow-path/void.d.ts.map +0 -1
  457. package/dist/core/codegen/slow-path/void.js +0 -9
  458. package/dist/core/codegen/slow-path/void.js.map +0 -1
  459. package/dist/core/codegen/warm-path.d.ts +0 -13
  460. package/dist/core/codegen/warm-path.d.ts.map +0 -1
  461. package/dist/core/codegen/warm-path.js +0 -57
  462. package/dist/core/codegen/warm-path.js.map +0 -1
  463. package/dist/core/extract/extractors/primitives.d.ts +0 -19
  464. package/dist/core/extract/extractors/primitives.d.ts.map +0 -1
  465. package/dist/core/extract/extractors/primitives.js +0 -53
  466. package/dist/core/extract/extractors/primitives.js.map +0 -1
@@ -1,14 +0,0 @@
1
- export function fastCheckPipe(ir, x, ctx, generateFn) {
2
- // Only eligible if `out` is the same as `in` (non-transform pipe)
3
- // We check `in` only — if the pipe has a transform, `out` would be a fallback
4
- const inCheck = generateFn(ir.in, x, ctx);
5
- if (inCheck === null)
6
- return null;
7
- // Check if out schema is eligible (non-fallback)
8
- const outCheck = generateFn(ir.out, x, ctx);
9
- if (outCheck === null)
10
- return null;
11
- // Both in and out must pass
12
- return inCheck === "true" ? outCheck : outCheck === "true" ? inCheck : `${inCheck}&&${outCheck}`;
13
- }
14
- //# sourceMappingURL=pipe.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pipe.js","sourceRoot":"","sources":["../../../../src/core/codegen/fast-check/pipe.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,aAAa,CAC3B,EAAU,EACV,CAAS,EACT,GAAmB,EACnB,UAA+B;IAE/B,kEAAkE;IAClE,8EAA8E;IAC9E,MAAM,OAAO,GAAG,UAAU,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;IAC1C,IAAI,OAAO,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAClC,iDAAiD;IACjD,MAAM,QAAQ,GAAG,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;IAC5C,IAAI,QAAQ,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IACnC,4BAA4B;IAC5B,OAAO,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,KAAK,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,KAAK,QAAQ,EAAE,CAAC;AACnG,CAAC"}
@@ -1,4 +0,0 @@
1
- import type { ReadonlyIR } from "../../types.js";
2
- import type { CodeGenContext, GenerateFastCheckFn } from "../context.js";
3
- export declare function fastCheckReadonly(ir: ReadonlyIR, x: string, ctx: CodeGenContext, generateFn: GenerateFastCheckFn): string | null;
4
- //# sourceMappingURL=readonly.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"readonly.d.ts","sourceRoot":"","sources":["../../../../src/core/codegen/fast-check/readonly.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,KAAK,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAEzE,wBAAgB,iBAAiB,CAC/B,EAAE,EAAE,UAAU,EACd,CAAC,EAAE,MAAM,EACT,GAAG,EAAE,cAAc,EACnB,UAAU,EAAE,mBAAmB,GAC9B,MAAM,GAAG,IAAI,CAEf"}
@@ -1,4 +0,0 @@
1
- export function fastCheckReadonly(ir, x, ctx, generateFn) {
2
- return generateFn(ir.inner, x, ctx);
3
- }
4
- //# sourceMappingURL=readonly.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"readonly.js","sourceRoot":"","sources":["../../../../src/core/codegen/fast-check/readonly.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,iBAAiB,CAC/B,EAAc,EACd,CAAS,EACT,GAAmB,EACnB,UAA+B;IAE/B,OAAO,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;AACtC,CAAC"}
@@ -1,4 +0,0 @@
1
- import type { RecordIR } from "../../types.js";
2
- import type { CodeGenContext, GenerateFastCheckFn } from "../context.js";
3
- export declare function fastCheckRecord(ir: RecordIR, x: string, ctx: CodeGenContext, generateFn: GenerateFastCheckFn): string | null;
4
- //# sourceMappingURL=record.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"record.d.ts","sourceRoot":"","sources":["../../../../src/core/codegen/fast-check/record.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,KAAK,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAEzE,wBAAgB,eAAe,CAC7B,EAAE,EAAE,QAAQ,EACZ,CAAC,EAAE,MAAM,EACT,GAAG,EAAE,cAAc,EACnB,UAAU,EAAE,mBAAmB,GAC9B,MAAM,GAAG,IAAI,CAiBf"}
@@ -1,18 +0,0 @@
1
- export function fastCheckRecord(ir, x, ctx, generateFn) {
2
- const parts = [`typeof ${x}==="object"`, `${x}!==null`, `!Array.isArray(${x})`];
3
- const kv = `__rk_${ctx.counter++}`;
4
- const keyCheck = generateFn(ir.keyType, kv, ctx);
5
- const valCheck = generateFn(ir.valueType, `${x}[${kv}]`, ctx);
6
- if (keyCheck === null || valCheck === null)
7
- return null;
8
- const conditions = [];
9
- if (keyCheck !== "true")
10
- conditions.push(keyCheck);
11
- if (valCheck !== "true")
12
- conditions.push(valCheck);
13
- if (conditions.length > 0) {
14
- parts.push(`Object.keys(${x}).every(${kv}=>${conditions.join("&&")})`);
15
- }
16
- return parts.join("&&");
17
- }
18
- //# sourceMappingURL=record.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"record.js","sourceRoot":"","sources":["../../../../src/core/codegen/fast-check/record.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,eAAe,CAC7B,EAAY,EACZ,CAAS,EACT,GAAmB,EACnB,UAA+B;IAE/B,MAAM,KAAK,GAAa,CAAC,UAAU,CAAC,aAAa,EAAE,GAAG,CAAC,SAAS,EAAE,kBAAkB,CAAC,GAAG,CAAC,CAAC;IAE1F,MAAM,EAAE,GAAG,QAAQ,GAAG,CAAC,OAAO,EAAE,EAAE,CAAC;IACnC,MAAM,QAAQ,GAAG,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;IACjD,MAAM,QAAQ,GAAG,UAAU,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IAC9D,IAAI,QAAQ,KAAK,IAAI,IAAI,QAAQ,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAExD,MAAM,UAAU,GAAa,EAAE,CAAC;IAChC,IAAI,QAAQ,KAAK,MAAM;QAAE,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACnD,IAAI,QAAQ,KAAK,MAAM;QAAE,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAEnD,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1B,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,KAAK,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACzE,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC"}
@@ -1,4 +0,0 @@
1
- import type { StringIR } from "../../types.js";
2
- import type { CodeGenContext } from "../context.js";
3
- export declare function fastCheckString(ir: StringIR, x: string, ctx: CodeGenContext): string | null;
4
- //# sourceMappingURL=string.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"string.d.ts","sourceRoot":"","sources":["../../../../src/core/codegen/fast-check/string.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAGpD,wBAAgB,eAAe,CAAC,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,cAAc,GAAG,MAAM,GAAG,IAAI,CA0D3F"}
@@ -1,62 +0,0 @@
1
- import { checkPriority, EMAIL_REGEX_SOURCE, escapeString, UUID_REGEX_SOURCE } from "../context.js";
2
- export function fastCheckString(ir, x, ctx) {
3
- const parts = [`typeof ${x}==="string"`];
4
- for (const check of [...ir.checks].sort(checkPriority)) {
5
- switch (check.kind) {
6
- case "min_length":
7
- parts.push(`${x}.length>=${check.minimum}`);
8
- break;
9
- case "max_length":
10
- parts.push(`${x}.length<=${check.maximum}`);
11
- break;
12
- case "length_equals":
13
- parts.push(`${x}.length===${check.length}`);
14
- break;
15
- case "includes":
16
- parts.push(check.position !== undefined
17
- ? `${x}.includes(${escapeString(check.includes)},${check.position})`
18
- : `${x}.includes(${escapeString(check.includes)})`);
19
- break;
20
- case "starts_with":
21
- parts.push(`${x}.startsWith(${escapeString(check.prefix)})`);
22
- break;
23
- case "ends_with":
24
- parts.push(`${x}.endsWith(${escapeString(check.suffix)})`);
25
- break;
26
- case "string_format": {
27
- if (check.format === "email") {
28
- const v = `__re_email_${ctx.counter++}`;
29
- ctx.preamble.push(`var ${v}=new RegExp(${escapeString(EMAIL_REGEX_SOURCE)});`);
30
- parts.push(`${v}.test(${x})`);
31
- }
32
- else if (check.format === "url") {
33
- // URL validation uses try/catch — not a pure expression, ineligible
34
- return null;
35
- }
36
- else if (check.format === "uuid") {
37
- const v = `__re_uuid_${ctx.counter++}`;
38
- const pat = check.pattern ?? UUID_REGEX_SOURCE;
39
- ctx.preamble.push(`var ${v}=new RegExp(${escapeString(pat)});`);
40
- parts.push(`${v}.test(${x})`);
41
- }
42
- else if (check.format === "regex" && check.pattern) {
43
- const v = `__re_${ctx.counter++}`;
44
- ctx.preamble.push(`var ${v}=new RegExp(${escapeString(check.pattern)});`);
45
- parts.push(`${v}.test(${x})`);
46
- }
47
- else if (check.pattern) {
48
- const v = `__re_${ctx.counter++}`;
49
- ctx.preamble.push(`var ${v}=new RegExp(${escapeString(check.pattern)});`);
50
- parts.push(`${v}.test(${x})`);
51
- }
52
- else {
53
- // Unknown format without pattern — can't generate fast check
54
- return null;
55
- }
56
- break;
57
- }
58
- }
59
- }
60
- return parts.join("&&");
61
- }
62
- //# sourceMappingURL=string.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"string.js","sourceRoot":"","sources":["../../../../src/core/codegen/fast-check/string.ts"],"names":[],"mappings":"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"}
@@ -1,4 +0,0 @@
1
- import type { TupleIR } from "../../types.js";
2
- import type { CodeGenContext, GenerateFastCheckFn } from "../context.js";
3
- export declare function fastCheckTuple(ir: TupleIR, x: string, ctx: CodeGenContext, generateFn: GenerateFastCheckFn): string | null;
4
- //# sourceMappingURL=tuple.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tuple.d.ts","sourceRoot":"","sources":["../../../../src/core/codegen/fast-check/tuple.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,KAAK,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAEzE,wBAAgB,cAAc,CAC5B,EAAE,EAAE,OAAO,EACX,CAAC,EAAE,MAAM,EACT,GAAG,EAAE,cAAc,EACnB,UAAU,EAAE,mBAAmB,GAC9B,MAAM,GAAG,IAAI,CA6Bf"}
@@ -1,32 +0,0 @@
1
- export function fastCheckTuple(ir, x, ctx, generateFn) {
2
- const parts = [`Array.isArray(${x})`];
3
- if (ir.rest === null) {
4
- parts.push(`${x}.length===${ir.items.length}`);
5
- }
6
- else {
7
- parts.push(`${x}.length>=${ir.items.length}`);
8
- }
9
- // Per-index checks
10
- for (let i = 0; i < ir.items.length; i++) {
11
- const itemIR = ir.items[i];
12
- if (!itemIR)
13
- continue;
14
- const itemCheck = generateFn(itemIR, `${x}[${i}]`, ctx);
15
- if (itemCheck === null)
16
- return null;
17
- if (itemCheck !== "true")
18
- parts.push(itemCheck);
19
- }
20
- // Rest element
21
- if (ir.rest !== null) {
22
- const rv = `__tr_${ctx.counter++}`;
23
- const restCheck = generateFn(ir.rest, rv, ctx);
24
- if (restCheck === null)
25
- return null;
26
- if (restCheck !== "true") {
27
- parts.push(`${x}.slice(${ir.items.length}).every(${rv}=>${restCheck})`);
28
- }
29
- }
30
- return parts.join("&&");
31
- }
32
- //# sourceMappingURL=tuple.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tuple.js","sourceRoot":"","sources":["../../../../src/core/codegen/fast-check/tuple.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,cAAc,CAC5B,EAAW,EACX,CAAS,EACT,GAAmB,EACnB,UAA+B;IAE/B,MAAM,KAAK,GAAa,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;IAEhD,IAAI,EAAE,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;QACrB,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;IACjD,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;IAChD,CAAC;IAED,mBAAmB;IACnB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACzC,MAAM,MAAM,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC3B,IAAI,CAAC,MAAM;YAAE,SAAS;QACtB,MAAM,SAAS,GAAG,UAAU,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QACxD,IAAI,SAAS,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC;QACpC,IAAI,SAAS,KAAK,MAAM;YAAE,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAClD,CAAC;IAED,eAAe;IACf,IAAI,EAAE,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;QACrB,MAAM,EAAE,GAAG,QAAQ,GAAG,CAAC,OAAO,EAAE,EAAE,CAAC;QACnC,MAAM,SAAS,GAAG,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;QAC/C,IAAI,SAAS,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC;QACpC,IAAI,SAAS,KAAK,MAAM,EAAE,CAAC;YACzB,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,MAAM,WAAW,EAAE,KAAK,SAAS,GAAG,CAAC,CAAC;QAC1E,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC"}
@@ -1,4 +0,0 @@
1
- import type { UnionIR } from "../../types.js";
2
- import type { CodeGenContext, GenerateFastCheckFn } from "../context.js";
3
- export declare function fastCheckUnion(ir: UnionIR, x: string, ctx: CodeGenContext, generateFn: GenerateFastCheckFn): string | null;
4
- //# sourceMappingURL=union.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"union.d.ts","sourceRoot":"","sources":["../../../../src/core/codegen/fast-check/union.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,KAAK,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAEzE,wBAAgB,cAAc,CAC5B,EAAE,EAAE,OAAO,EACX,CAAC,EAAE,MAAM,EACT,GAAG,EAAE,cAAc,EACnB,UAAU,EAAE,mBAAmB,GAC9B,MAAM,GAAG,IAAI,CASf"}
@@ -1,12 +0,0 @@
1
- export function fastCheckUnion(ir, x, ctx, generateFn) {
2
- const optionChecks = [];
3
- for (const option of ir.options) {
4
- const check = generateFn(option, x, ctx);
5
- if (check === null)
6
- return null;
7
- optionChecks.push(`(${check})`);
8
- }
9
- // Wrap in parens — || has lower precedence than && in parent expressions
10
- return `(${optionChecks.join("||")})`;
11
- }
12
- //# sourceMappingURL=union.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"union.js","sourceRoot":"","sources":["../../../../src/core/codegen/fast-check/union.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,cAAc,CAC5B,EAAW,EACX,CAAS,EACT,GAAmB,EACnB,UAA+B;IAE/B,MAAM,YAAY,GAAa,EAAE,CAAC;IAClC,KAAK,MAAM,MAAM,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;QAChC,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;QACzC,IAAI,KAAK,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC;QAChC,YAAY,CAAC,IAAI,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC;IAClC,CAAC;IACD,yEAAyE;IACzE,OAAO,IAAI,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;AACxC,CAAC"}
@@ -1,4 +0,0 @@
1
- import type { ArrayIR } from "../../types.js";
2
- import type { FastGen } from "../context.js";
3
- export declare function fastCheckArray(ir: ArrayIR, g: FastGen): string | null;
4
- //# sourceMappingURL=array.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"array.d.ts","sourceRoot":"","sources":["../../../../src/core/codegen/fast-path/array.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAW,MAAM,gBAAgB,CAAC;AACvD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAG7C,wBAAgB,cAAc,CAAC,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CA+BrE"}
@@ -1,32 +0,0 @@
1
- import { checkPriority } from "../context.js";
2
- export function fastCheckArray(ir, g) {
3
- if (ir.checks.some((c) => c.kind === "refine_effect"))
4
- return null;
5
- const x = g.input;
6
- const parts = [`Array.isArray(${x})`];
7
- const checks = ir.checks.filter((c) => c.kind !== "refine_effect");
8
- // Size checks
9
- for (const check of checks.sort(checkPriority)) {
10
- switch (check.kind) {
11
- case "min_length":
12
- parts.push(`${x}.length>=${check.minimum}`);
13
- break;
14
- case "max_length":
15
- parts.push(`${x}.length<=${check.maximum}`);
16
- break;
17
- case "length_equals":
18
- parts.push(`${x}.length===${check.length}`);
19
- break;
20
- }
21
- }
22
- // Element validation via .every()
23
- const elemVar = g.temp("fe");
24
- const elemCheck = g.visit(ir.element, { input: elemVar });
25
- if (elemCheck === null)
26
- return null;
27
- if (elemCheck !== "true") {
28
- parts.push(`${x}.every(${elemVar}=>${elemCheck})`);
29
- }
30
- return parts.join("&&");
31
- }
32
- //# sourceMappingURL=array.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"array.js","sourceRoot":"","sources":["../../../../src/core/codegen/fast-path/array.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAE9C,MAAM,UAAU,cAAc,CAAC,EAAW,EAAE,CAAU;IACpD,IAAI,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,eAAe,CAAC;QAAE,OAAO,IAAI,CAAC;IAEnE,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC;IAClB,MAAM,KAAK,GAAa,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;IAChD,MAAM,MAAM,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAgB,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,eAAe,CAAC,CAAC;IAEjF,cAAc;IACd,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC;QAC/C,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;YACnB,KAAK,YAAY;gBACf,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;gBAC5C,MAAM;YACR,KAAK,YAAY;gBACf,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;gBAC5C,MAAM;YACR,KAAK,eAAe;gBAClB,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;gBAC5C,MAAM;QACV,CAAC;IACH,CAAC;IAED,kCAAkC;IAClC,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7B,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;IAC1D,IAAI,SAAS,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IACpC,IAAI,SAAS,KAAK,MAAM,EAAE,CAAC;QACzB,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,OAAO,KAAK,SAAS,GAAG,CAAC,CAAC;IACrD,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC"}
@@ -1,4 +0,0 @@
1
- import type { BigIntIR } from "../../types.js";
2
- import type { FastGen } from "../context.js";
3
- export declare function fastCheckBigInt(ir: BigIntIR, g: FastGen): string | null;
4
- //# sourceMappingURL=bigint.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"bigint.d.ts","sourceRoot":"","sources":["../../../../src/core/codegen/fast-path/bigint.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAG7C,wBAAgB,eAAe,CAAC,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAqBvE"}
@@ -1,22 +0,0 @@
1
- import { checkPriority } from "../context.js";
2
- export function fastCheckBigInt(ir, g) {
3
- if (ir.coerce)
4
- return null;
5
- const x = g.input;
6
- const parts = [`typeof ${x}==="bigint"`];
7
- for (const check of [...ir.checks].sort(checkPriority)) {
8
- switch (check.kind) {
9
- case "bigint_greater_than":
10
- parts.push(check.inclusive ? `${x}>=${check.value}n` : `${x}>${check.value}n`);
11
- break;
12
- case "bigint_less_than":
13
- parts.push(check.inclusive ? `${x}<=${check.value}n` : `${x}<${check.value}n`);
14
- break;
15
- case "bigint_multiple_of":
16
- parts.push(`${x}%${check.value}n===0n`);
17
- break;
18
- }
19
- }
20
- return parts.join("&&");
21
- }
22
- //# sourceMappingURL=bigint.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"bigint.js","sourceRoot":"","sources":["../../../../src/core/codegen/fast-path/bigint.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAE9C,MAAM,UAAU,eAAe,CAAC,EAAY,EAAE,CAAU;IACtD,IAAI,EAAE,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IAE3B,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC;IAClB,MAAM,KAAK,GAAa,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;IAEnD,KAAK,MAAM,KAAK,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC;QACvD,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;YACnB,KAAK,qBAAqB;gBACxB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC;gBAC/E,MAAM;YACR,KAAK,kBAAkB;gBACrB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC;gBAC/E,MAAM;YACR,KAAK,oBAAoB;gBACvB,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,KAAK,QAAQ,CAAC,CAAC;gBACxC,MAAM;QACV,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC"}
@@ -1,4 +0,0 @@
1
- import type { DiscriminatedUnionIR } from "../../types.js";
2
- import type { FastGen } from "../context.js";
3
- export declare function fastCheckDiscriminatedUnion(ir: DiscriminatedUnionIR, g: FastGen): string | null;
4
- //# sourceMappingURL=discriminated-union.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"discriminated-union.d.ts","sourceRoot":"","sources":["../../../../src/core/codegen/fast-path/discriminated-union.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAE7C,wBAAgB,2BAA2B,CAAC,EAAE,EAAE,oBAAoB,EAAE,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAU/F"}
@@ -1,13 +0,0 @@
1
- export function fastCheckDiscriminatedUnion(ir, g) {
2
- // Generate checks for each branch, keyed by discriminator value
3
- const branchChecks = [];
4
- for (const option of ir.options) {
5
- const check = g.visit(option);
6
- if (check === null)
7
- return null;
8
- branchChecks.push(`(${check})`);
9
- }
10
- // Combine as || chain, wrapped for precedence safety
11
- return `(${branchChecks.join("||")})`;
12
- }
13
- //# sourceMappingURL=discriminated-union.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"discriminated-union.js","sourceRoot":"","sources":["../../../../src/core/codegen/fast-path/discriminated-union.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,2BAA2B,CAAC,EAAwB,EAAE,CAAU;IAC9E,gEAAgE;IAChE,MAAM,YAAY,GAAa,EAAE,CAAC;IAClC,KAAK,MAAM,MAAM,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;QAChC,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC9B,IAAI,KAAK,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC;QAChC,YAAY,CAAC,IAAI,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC;IAClC,CAAC;IACD,qDAAqD;IACrD,OAAO,IAAI,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;AACxC,CAAC"}
@@ -1,4 +0,0 @@
1
- import type { EnumIR } from "../../types.js";
2
- import type { FastGen } from "../context.js";
3
- export declare function fastCheckEnum(ir: EnumIR, g: FastGen): string;
4
- //# sourceMappingURL=enum.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"enum.d.ts","sourceRoot":"","sources":["../../../../src/core/codegen/fast-path/enum.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAG7C,wBAAgB,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,GAAG,MAAM,CAU5D"}
@@ -1,13 +0,0 @@
1
- import { ENUM_INLINE_THRESHOLD, escapeString } from "../context.js";
2
- export function fastCheckEnum(ir, g) {
3
- const x = g.input;
4
- if (ir.values.length <= ENUM_INLINE_THRESHOLD) {
5
- // Inline equality checks for small enums, wrapped in parens for precedence safety
6
- return `(${ir.values.map((v) => `${x}===${escapeString(v)}`).join("||")})`;
7
- }
8
- // Use Set for larger enums
9
- const setVar = g.temp("enumSet");
10
- g.ctx.preamble.push(`var ${setVar}=new Set(${JSON.stringify(ir.values)});`);
11
- return `${setVar}.has(${x})`;
12
- }
13
- //# sourceMappingURL=enum.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"enum.js","sourceRoot":"","sources":["../../../../src/core/codegen/fast-path/enum.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAEpE,MAAM,UAAU,aAAa,CAAC,EAAU,EAAE,CAAU;IAClD,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC;IAClB,IAAI,EAAE,CAAC,MAAM,CAAC,MAAM,IAAI,qBAAqB,EAAE,CAAC;QAC9C,kFAAkF;QAClF,OAAO,IAAI,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;IAC7E,CAAC;IACD,2BAA2B;IAC3B,MAAM,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACjC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,MAAM,YAAY,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC5E,OAAO,GAAG,MAAM,QAAQ,CAAC,GAAG,CAAC;AAC/B,CAAC"}
@@ -1,17 +0,0 @@
1
- /**
2
- * Fast Path generator: produces a boolean expression string for eligible schemas.
3
- * When the expression evaluates to `true` at runtime, the input is valid and
4
- * safeParse can return success immediately without allocating an issues array.
5
- *
6
- * Returns `null` if the schema is not eligible for Fast Path (contains coerce,
7
- * default, catch, date, set/map, transform, refine, or other non-pure constructs).
8
- */
9
- import type { SchemaIR } from "../../types.js";
10
- import type { CodeGenContext, FastGen } from "../context.js";
11
- export declare function createFastGen(inputExpr: string, ctx: CodeGenContext): FastGen;
12
- /**
13
- * Generate a boolean expression string that validates input against the schema.
14
- * Returns `null` if the schema (or any nested part) is not eligible for fast checking.
15
- */
16
- export declare function generateFastCheck(ir: SchemaIR, g: FastGen): string | null;
17
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/codegen/fast-path/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,KAAK,EAAE,cAAc,EAAE,OAAO,EAAiB,MAAM,eAAe,CAAC;AAsF5E,wBAAgB,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,cAAc,GAAG,OAAO,CAgB7E;AAID;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAKzE"}
@@ -1,108 +0,0 @@
1
- /**
2
- * Fast Path generator: produces a boolean expression string for eligible schemas.
3
- * When the expression evaluates to `true` at runtime, the input is valid and
4
- * safeParse can return success immediately without allocating an issues array.
5
- *
6
- * Returns `null` if the schema is not eligible for Fast Path (contains coerce,
7
- * default, catch, date, set/map, transform, refine, or other non-pure constructs).
8
- */
9
- import { escapeString } from "../context.js";
10
- import { fastCheckArray } from "./array.js";
11
- import { fastCheckBigInt } from "./bigint.js";
12
- import { fastCheckDiscriminatedUnion } from "./discriminated-union.js";
13
- import { fastCheckEnum } from "./enum.js";
14
- import { fastCheckIntersection } from "./intersection.js";
15
- import { fastCheckLiteral } from "./literal.js";
16
- import { fastCheckNullable } from "./nullable.js";
17
- import { fastCheckNumber } from "./number.js";
18
- import { fastCheckObject } from "./object.js";
19
- import { fastCheckOptional } from "./optional.js";
20
- import { fastCheckPipe } from "./pipe.js";
21
- import { fastCheckReadonly } from "./readonly.js";
22
- import { fastCheckRecord } from "./record.js";
23
- import { fastCheckString } from "./string.js";
24
- import { fastCheckTuple } from "./tuple.js";
25
- import { fastCheckUnion } from "./union.js";
26
- // ─── Typed registry ─────────────────────────────────────────────────────────
27
- // `null` = statically ineligible (the type NEVER has a fast path).
28
- // Non-null function = may return null at runtime (dynamically ineligible, e.g. when coerce is present).
29
- const fastRegistry = {
30
- // Trivially eligible
31
- any: (_ir, _g) => "true",
32
- unknown: (_ir, _g) => "true",
33
- // Simple type checks
34
- null: (_ir, g) => `${g.input}===null`,
35
- undefined: (_ir, g) => `${g.input}===undefined`,
36
- symbol: (_ir, g) => `typeof ${g.input}==="symbol"`,
37
- void: (_ir, g) => `${g.input}===undefined`,
38
- nan: (_ir, g) => `typeof ${g.input}==="number"&&Number.isNaN(${g.input})`,
39
- never: (_ir, _g) => "false",
40
- boolean: (ir, g) => (ir.coerce ? null : `typeof ${g.input}==="boolean"`),
41
- // Primitives with checks
42
- string: fastCheckString,
43
- number: fastCheckNumber,
44
- bigint: fastCheckBigInt,
45
- // Literal & enum
46
- literal: fastCheckLiteral,
47
- enum: fastCheckEnum,
48
- // Template literal
49
- templateLiteral: (ir, g) => {
50
- const regexVar = g.regex("tl", ir.pattern);
51
- return `typeof ${g.input}==="string"&&${regexVar}.test(${g.input})`;
52
- },
53
- // Containers
54
- object: fastCheckObject,
55
- array: fastCheckArray,
56
- tuple: fastCheckTuple,
57
- record: fastCheckRecord,
58
- // Modifiers
59
- optional: fastCheckOptional,
60
- nullable: fastCheckNullable,
61
- readonly: fastCheckReadonly,
62
- pipe: fastCheckPipe,
63
- // Unions & intersections
64
- union: fastCheckUnion,
65
- discriminatedUnion: fastCheckDiscriminatedUnion,
66
- intersection: fastCheckIntersection,
67
- // recursiveRef needs auxiliary function generation — ineligible for now
68
- recursiveRef: () => null,
69
- // Statically ineligible
70
- effect: null,
71
- fallback: null,
72
- default: null,
73
- catch: null,
74
- date: null,
75
- set: null,
76
- map: null,
77
- };
78
- // ─── Factory ─────────────────────────────────────────────────────────────────
79
- export function createFastGen(inputExpr, ctx) {
80
- return {
81
- input: inputExpr,
82
- ctx,
83
- visit(ir, overrides) {
84
- return generateFastCheck(ir, createFastGen(overrides?.input ?? inputExpr, ctx));
85
- },
86
- temp(prefix) {
87
- return `__${prefix}_${ctx.counter++}`;
88
- },
89
- regex(prefix, pattern) {
90
- const name = `__re_${prefix}_${ctx.counter++}`;
91
- ctx.preamble.push(`var ${name}=new RegExp(${escapeString(pattern)});`);
92
- return name;
93
- },
94
- };
95
- }
96
- // ─── Dispatch ────────────────────────────────────────────────────────────────
97
- /**
98
- * Generate a boolean expression string that validates input against the schema.
99
- * Returns `null` if the schema (or any nested part) is not eligible for fast checking.
100
- */
101
- export function generateFastCheck(ir, g) {
102
- const gen = fastRegistry[ir.type];
103
- if (gen === null)
104
- return null;
105
- // biome-ignore lint/suspicious/noExplicitAny: registry dispatch requires type erasure at call site
106
- return gen(ir, g);
107
- }
108
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/codegen/fast-path/index.ts"],"names":[],"mappings":"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"}
@@ -1,4 +0,0 @@
1
- import type { IntersectionIR } from "../../types.js";
2
- import type { FastGen } from "../context.js";
3
- export declare function fastCheckIntersection(ir: IntersectionIR, g: FastGen): string | null;
4
- //# sourceMappingURL=intersection.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"intersection.d.ts","sourceRoot":"","sources":["../../../../src/core/codegen/fast-path/intersection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAE7C,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,cAAc,EAAE,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAMnF"}
@@ -1,10 +0,0 @@
1
- export function fastCheckIntersection(ir, g) {
2
- const left = g.visit(ir.left);
3
- if (left === null)
4
- return null;
5
- const right = g.visit(ir.right);
6
- if (right === null)
7
- return null;
8
- return left === "true" ? right : right === "true" ? left : `${left}&&${right}`;
9
- }
10
- //# sourceMappingURL=intersection.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"intersection.js","sourceRoot":"","sources":["../../../../src/core/codegen/fast-path/intersection.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,qBAAqB,CAAC,EAAkB,EAAE,CAAU;IAClE,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;IAC9B,IAAI,IAAI,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAC/B,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;IAChC,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAChC,OAAO,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,KAAK,KAAK,EAAE,CAAC;AACjF,CAAC"}
@@ -1,4 +0,0 @@
1
- import type { LiteralIR } from "../../types.js";
2
- import type { FastGen } from "../context.js";
3
- export declare function fastCheckLiteral(ir: LiteralIR, g: FastGen): string;
4
- //# sourceMappingURL=literal.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"literal.d.ts","sourceRoot":"","sources":["../../../../src/core/codegen/fast-path/literal.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAE7C,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,OAAO,GAAG,MAAM,CAOlE"}
@@ -1,9 +0,0 @@
1
- export function fastCheckLiteral(ir, g) {
2
- const x = g.input;
3
- if (ir.values.length === 1) {
4
- return `${x}===${JSON.stringify(ir.values[0])}`;
5
- }
6
- // Wrap in parens — || has lower precedence than && in parent expressions
7
- return `(${ir.values.map((v) => `${x}===${JSON.stringify(v)}`).join("||")})`;
8
- }
9
- //# sourceMappingURL=literal.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"literal.js","sourceRoot":"","sources":["../../../../src/core/codegen/fast-path/literal.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,gBAAgB,CAAC,EAAa,EAAE,CAAU;IACxD,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC;IAClB,IAAI,EAAE,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,OAAO,GAAG,CAAC,MAAM,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAClD,CAAC;IACD,yEAAyE;IACzE,OAAO,IAAI,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;AAC/E,CAAC"}
@@ -1,4 +0,0 @@
1
- import type { NullableIR } from "../../types.js";
2
- import type { FastGen } from "../context.js";
3
- export declare function fastCheckNullable(ir: NullableIR, g: FastGen): string | null;
4
- //# sourceMappingURL=nullable.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"nullable.d.ts","sourceRoot":"","sources":["../../../../src/core/codegen/fast-path/nullable.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAE7C,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAI3E"}
@@ -1,7 +0,0 @@
1
- export function fastCheckNullable(ir, g) {
2
- const inner = g.visit(ir.inner);
3
- if (inner === null)
4
- return null;
5
- return `(${g.input}===null||(${inner}))`;
6
- }
7
- //# sourceMappingURL=nullable.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"nullable.js","sourceRoot":"","sources":["../../../../src/core/codegen/fast-path/nullable.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,iBAAiB,CAAC,EAAc,EAAE,CAAU;IAC1D,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;IAChC,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAChC,OAAO,IAAI,CAAC,CAAC,KAAK,aAAa,KAAK,IAAI,CAAC;AAC3C,CAAC"}
@@ -1,4 +0,0 @@
1
- import type { NumberIR } from "../../types.js";
2
- import type { FastGen } from "../context.js";
3
- export declare function fastCheckNumber(ir: NumberIR, g: FastGen): string | null;
4
- //# sourceMappingURL=number.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"number.d.ts","sourceRoot":"","sources":["../../../../src/core/codegen/fast-path/number.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAW,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAG7C,wBAAgB,eAAe,CAAC,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAuDvE"}