skill-universe 1.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 (334) hide show
  1. package/README.md +24 -0
  2. package/bin/skillc.mjs +3 -0
  3. package/build/dev/javascript/argv/_gleam_artefacts/argv.cache +0 -0
  4. package/build/dev/javascript/argv/_gleam_artefacts/argv.cache_inline +0 -0
  5. package/build/dev/javascript/argv/_gleam_artefacts/argv.cache_meta +0 -0
  6. package/build/dev/javascript/argv/argv.erl +12 -0
  7. package/build/dev/javascript/argv/argv.mjs +31 -0
  8. package/build/dev/javascript/argv/argv_ffi.erl +27 -0
  9. package/build/dev/javascript/argv/argv_ffi.mjs +20 -0
  10. package/build/dev/javascript/argv/gleam.mjs +1 -0
  11. package/build/dev/javascript/filepath/_gleam_artefacts/filepath.cache +0 -0
  12. package/build/dev/javascript/filepath/_gleam_artefacts/filepath.cache_inline +0 -0
  13. package/build/dev/javascript/filepath/_gleam_artefacts/filepath.cache_meta +0 -0
  14. package/build/dev/javascript/filepath/filepath.erl +425 -0
  15. package/build/dev/javascript/filepath/filepath.mjs +529 -0
  16. package/build/dev/javascript/filepath/filepath_ffi.erl +9 -0
  17. package/build/dev/javascript/filepath/filepath_ffi.mjs +6 -0
  18. package/build/dev/javascript/filepath/gleam.mjs +1 -0
  19. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@bit_array.cache +0 -0
  20. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@bit_array.cache_inline +0 -0
  21. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@bit_array.cache_meta +0 -0
  22. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@bool.cache +0 -0
  23. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@bool.cache_inline +0 -0
  24. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@bool.cache_meta +0 -0
  25. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@bytes_tree.cache +0 -0
  26. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@bytes_tree.cache_inline +0 -0
  27. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@bytes_tree.cache_meta +0 -0
  28. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@dict.cache +0 -0
  29. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@dict.cache_inline +0 -0
  30. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@dict.cache_meta +0 -0
  31. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@dynamic.cache +0 -0
  32. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@dynamic.cache_inline +0 -0
  33. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@dynamic.cache_meta +0 -0
  34. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@dynamic@decode.cache +0 -0
  35. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@dynamic@decode.cache_inline +0 -0
  36. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@dynamic@decode.cache_meta +0 -0
  37. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@float.cache +0 -0
  38. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@float.cache_inline +0 -0
  39. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@float.cache_meta +0 -0
  40. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@function.cache +0 -0
  41. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@function.cache_inline +0 -0
  42. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@function.cache_meta +0 -0
  43. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@int.cache +0 -0
  44. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@int.cache_inline +0 -0
  45. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@int.cache_meta +0 -0
  46. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@io.cache +0 -0
  47. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@io.cache_inline +0 -0
  48. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@io.cache_meta +0 -0
  49. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@list.cache +0 -0
  50. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@list.cache_inline +0 -0
  51. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@list.cache_meta +0 -0
  52. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@option.cache +0 -0
  53. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@option.cache_inline +0 -0
  54. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@option.cache_meta +0 -0
  55. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@order.cache +0 -0
  56. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@order.cache_inline +0 -0
  57. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@order.cache_meta +0 -0
  58. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@pair.cache +0 -0
  59. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@pair.cache_inline +0 -0
  60. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@pair.cache_meta +0 -0
  61. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@result.cache +0 -0
  62. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@result.cache_inline +0 -0
  63. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@result.cache_meta +0 -0
  64. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@set.cache +0 -0
  65. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@set.cache_inline +0 -0
  66. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@set.cache_meta +0 -0
  67. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@string.cache +0 -0
  68. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@string.cache_inline +0 -0
  69. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@string.cache_meta +0 -0
  70. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@string_tree.cache +0 -0
  71. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@string_tree.cache_inline +0 -0
  72. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@string_tree.cache_meta +0 -0
  73. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@uri.cache +0 -0
  74. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@uri.cache_inline +0 -0
  75. package/build/dev/javascript/gleam_stdlib/_gleam_artefacts/gleam@uri.cache_meta +0 -0
  76. package/build/dev/javascript/gleam_stdlib/dict.mjs +710 -0
  77. package/build/dev/javascript/gleam_stdlib/gleam/bit_array.mjs +285 -0
  78. package/build/dev/javascript/gleam_stdlib/gleam/bool.mjs +313 -0
  79. package/build/dev/javascript/gleam_stdlib/gleam/bytes_tree.mjs +225 -0
  80. package/build/dev/javascript/gleam_stdlib/gleam/dict.mjs +456 -0
  81. package/build/dev/javascript/gleam_stdlib/gleam/dynamic/decode.mjs +985 -0
  82. package/build/dev/javascript/gleam_stdlib/gleam/dynamic.mjs +35 -0
  83. package/build/dev/javascript/gleam_stdlib/gleam/float.mjs +572 -0
  84. package/build/dev/javascript/gleam_stdlib/gleam/function.mjs +6 -0
  85. package/build/dev/javascript/gleam_stdlib/gleam/int.mjs +832 -0
  86. package/build/dev/javascript/gleam_stdlib/gleam/io.mjs +8 -0
  87. package/build/dev/javascript/gleam_stdlib/gleam/list.mjs +3160 -0
  88. package/build/dev/javascript/gleam_stdlib/gleam/option.mjs +418 -0
  89. package/build/dev/javascript/gleam_stdlib/gleam/order.mjs +178 -0
  90. package/build/dev/javascript/gleam_stdlib/gleam/pair.mjs +102 -0
  91. package/build/dev/javascript/gleam_stdlib/gleam/result.mjs +480 -0
  92. package/build/dev/javascript/gleam_stdlib/gleam/set.mjs +416 -0
  93. package/build/dev/javascript/gleam_stdlib/gleam/string.mjs +723 -0
  94. package/build/dev/javascript/gleam_stdlib/gleam/string_tree.mjs +133 -0
  95. package/build/dev/javascript/gleam_stdlib/gleam/uri.mjs +1155 -0
  96. package/build/dev/javascript/gleam_stdlib/gleam.mjs +1 -0
  97. package/build/dev/javascript/gleam_stdlib/gleam@bit_array.erl +347 -0
  98. package/build/dev/javascript/gleam_stdlib/gleam@bool.erl +352 -0
  99. package/build/dev/javascript/gleam_stdlib/gleam@bytes_tree.erl +211 -0
  100. package/build/dev/javascript/gleam_stdlib/gleam@dict.erl +521 -0
  101. package/build/dev/javascript/gleam_stdlib/gleam@dynamic.erl +106 -0
  102. package/build/dev/javascript/gleam_stdlib/gleam@dynamic@decode.erl +1112 -0
  103. package/build/dev/javascript/gleam_stdlib/gleam@float.erl +764 -0
  104. package/build/dev/javascript/gleam_stdlib/gleam@function.erl +18 -0
  105. package/build/dev/javascript/gleam_stdlib/gleam@int.erl +1004 -0
  106. package/build/dev/javascript/gleam_stdlib/gleam@io.erl +80 -0
  107. package/build/dev/javascript/gleam_stdlib/gleam@list.erl +2832 -0
  108. package/build/dev/javascript/gleam_stdlib/gleam@option.erl +413 -0
  109. package/build/dev/javascript/gleam_stdlib/gleam@order.erl +200 -0
  110. package/build/dev/javascript/gleam_stdlib/gleam@pair.erl +110 -0
  111. package/build/dev/javascript/gleam_stdlib/gleam@result.erl +532 -0
  112. package/build/dev/javascript/gleam_stdlib/gleam@set.erl +433 -0
  113. package/build/dev/javascript/gleam_stdlib/gleam@string.erl +1012 -0
  114. package/build/dev/javascript/gleam_stdlib/gleam@string_tree.erl +207 -0
  115. package/build/dev/javascript/gleam_stdlib/gleam@uri.erl +1049 -0
  116. package/build/dev/javascript/gleam_stdlib/gleam_stdlib.erl +529 -0
  117. package/build/dev/javascript/gleam_stdlib/gleam_stdlib.mjs +1050 -0
  118. package/build/dev/javascript/gleam_version +1 -0
  119. package/build/dev/javascript/gleeunit/_gleam_artefacts/gleeunit.cache +0 -0
  120. package/build/dev/javascript/gleeunit/_gleam_artefacts/gleeunit.cache_inline +0 -0
  121. package/build/dev/javascript/gleeunit/_gleam_artefacts/gleeunit.cache_meta +0 -0
  122. package/build/dev/javascript/gleeunit/_gleam_artefacts/gleeunit@internal@gleam_panic.cache +0 -0
  123. package/build/dev/javascript/gleeunit/_gleam_artefacts/gleeunit@internal@gleam_panic.cache_inline +0 -0
  124. package/build/dev/javascript/gleeunit/_gleam_artefacts/gleeunit@internal@gleam_panic.cache_meta +0 -0
  125. package/build/dev/javascript/gleeunit/_gleam_artefacts/gleeunit@internal@reporting.cache +0 -0
  126. package/build/dev/javascript/gleeunit/_gleam_artefacts/gleeunit@internal@reporting.cache_inline +0 -0
  127. package/build/dev/javascript/gleeunit/_gleam_artefacts/gleeunit@internal@reporting.cache_meta +0 -0
  128. package/build/dev/javascript/gleeunit/_gleam_artefacts/gleeunit@should.cache +0 -0
  129. package/build/dev/javascript/gleeunit/_gleam_artefacts/gleeunit@should.cache_inline +0 -0
  130. package/build/dev/javascript/gleeunit/_gleam_artefacts/gleeunit@should.cache_meta +0 -0
  131. package/build/dev/javascript/gleeunit/gleam.mjs +1 -0
  132. package/build/dev/javascript/gleeunit/gleeunit/internal/gleam_panic.mjs +180 -0
  133. package/build/dev/javascript/gleeunit/gleeunit/internal/gleeunit_gleam_panic_ffi.erl +49 -0
  134. package/build/dev/javascript/gleeunit/gleeunit/internal/gleeunit_gleam_panic_ffi.mjs +91 -0
  135. package/build/dev/javascript/gleeunit/gleeunit/internal/reporting.mjs +256 -0
  136. package/build/dev/javascript/gleeunit/gleeunit/should.mjs +135 -0
  137. package/build/dev/javascript/gleeunit/gleeunit.erl +89 -0
  138. package/build/dev/javascript/gleeunit/gleeunit.mjs +62 -0
  139. package/build/dev/javascript/gleeunit/gleeunit@internal@gleam_panic.erl +56 -0
  140. package/build/dev/javascript/gleeunit/gleeunit@internal@reporting.erl +343 -0
  141. package/build/dev/javascript/gleeunit/gleeunit@should.erl +153 -0
  142. package/build/dev/javascript/gleeunit/gleeunit_ffi.erl +21 -0
  143. package/build/dev/javascript/gleeunit/gleeunit_ffi.mjs +100 -0
  144. package/build/dev/javascript/gleeunit/gleeunit_progress.erl +72 -0
  145. package/build/dev/javascript/prelude.mjs +1575 -0
  146. package/build/dev/javascript/simplifile/_gleam_artefacts/simplifile.cache +0 -0
  147. package/build/dev/javascript/simplifile/_gleam_artefacts/simplifile.cache_inline +0 -0
  148. package/build/dev/javascript/simplifile/_gleam_artefacts/simplifile.cache_meta +0 -0
  149. package/build/dev/javascript/simplifile/gleam.mjs +1 -0
  150. package/build/dev/javascript/simplifile/simplifile.erl +893 -0
  151. package/build/dev/javascript/simplifile/simplifile.mjs +893 -0
  152. package/build/dev/javascript/simplifile/simplifile_erl.erl +244 -0
  153. package/build/dev/javascript/simplifile/simplifile_js.mjs +400 -0
  154. package/build/dev/javascript/skillc/_gleam_artefacts/cli_test.cache +0 -0
  155. package/build/dev/javascript/skillc/_gleam_artefacts/cli_test.cache_inline +0 -0
  156. package/build/dev/javascript/skillc/_gleam_artefacts/cli_test.cache_meta +0 -0
  157. package/build/dev/javascript/skillc/_gleam_artefacts/cli_test.cache_warnings +0 -0
  158. package/build/dev/javascript/skillc/_gleam_artefacts/compiler_test.cache +0 -0
  159. package/build/dev/javascript/skillc/_gleam_artefacts/compiler_test.cache_inline +0 -0
  160. package/build/dev/javascript/skillc/_gleam_artefacts/compiler_test.cache_meta +0 -0
  161. package/build/dev/javascript/skillc/_gleam_artefacts/compiler_test.cache_warnings +0 -0
  162. package/build/dev/javascript/skillc/_gleam_artefacts/config_test.cache +0 -0
  163. package/build/dev/javascript/skillc/_gleam_artefacts/config_test.cache_inline +0 -0
  164. package/build/dev/javascript/skillc/_gleam_artefacts/config_test.cache_meta +0 -0
  165. package/build/dev/javascript/skillc/_gleam_artefacts/config_test.cache_warnings +0 -0
  166. package/build/dev/javascript/skillc/_gleam_artefacts/importer_test.cache +0 -0
  167. package/build/dev/javascript/skillc/_gleam_artefacts/importer_test.cache_inline +0 -0
  168. package/build/dev/javascript/skillc/_gleam_artefacts/importer_test.cache_meta +0 -0
  169. package/build/dev/javascript/skillc/_gleam_artefacts/importer_test.cache_warnings +0 -0
  170. package/build/dev/javascript/skillc/_gleam_artefacts/parser_test.cache +0 -0
  171. package/build/dev/javascript/skillc/_gleam_artefacts/parser_test.cache_inline +0 -0
  172. package/build/dev/javascript/skillc/_gleam_artefacts/parser_test.cache_meta +0 -0
  173. package/build/dev/javascript/skillc/_gleam_artefacts/parser_test.cache_warnings +0 -0
  174. package/build/dev/javascript/skillc/_gleam_artefacts/path_test.cache +0 -0
  175. package/build/dev/javascript/skillc/_gleam_artefacts/path_test.cache_inline +0 -0
  176. package/build/dev/javascript/skillc/_gleam_artefacts/path_test.cache_meta +0 -0
  177. package/build/dev/javascript/skillc/_gleam_artefacts/path_test.cache_warnings +0 -0
  178. package/build/dev/javascript/skillc/_gleam_artefacts/provider_test.cache +0 -0
  179. package/build/dev/javascript/skillc/_gleam_artefacts/provider_test.cache_inline +0 -0
  180. package/build/dev/javascript/skillc/_gleam_artefacts/provider_test.cache_meta +0 -0
  181. package/build/dev/javascript/skillc/_gleam_artefacts/provider_test.cache_warnings +0 -0
  182. package/build/dev/javascript/skillc/_gleam_artefacts/registry_test.cache +0 -0
  183. package/build/dev/javascript/skillc/_gleam_artefacts/registry_test.cache_inline +0 -0
  184. package/build/dev/javascript/skillc/_gleam_artefacts/registry_test.cache_meta +0 -0
  185. package/build/dev/javascript/skillc/_gleam_artefacts/registry_test.cache_warnings +0 -0
  186. package/build/dev/javascript/skillc/_gleam_artefacts/scaffold_test.cache +0 -0
  187. package/build/dev/javascript/skillc/_gleam_artefacts/scaffold_test.cache_inline +0 -0
  188. package/build/dev/javascript/skillc/_gleam_artefacts/scaffold_test.cache_meta +0 -0
  189. package/build/dev/javascript/skillc/_gleam_artefacts/scaffold_test.cache_warnings +0 -0
  190. package/build/dev/javascript/skillc/_gleam_artefacts/skillc.cache +0 -0
  191. package/build/dev/javascript/skillc/_gleam_artefacts/skillc.cache_inline +0 -0
  192. package/build/dev/javascript/skillc/_gleam_artefacts/skillc.cache_meta +0 -0
  193. package/build/dev/javascript/skillc/_gleam_artefacts/skillc.cache_warnings +0 -0
  194. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@compiler.cache +0 -0
  195. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@compiler.cache_inline +0 -0
  196. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@compiler.cache_meta +0 -0
  197. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@compiler.cache_warnings +0 -0
  198. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@config.cache +0 -0
  199. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@config.cache_inline +0 -0
  200. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@config.cache_meta +0 -0
  201. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@config.cache_warnings +0 -0
  202. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@error.cache +0 -0
  203. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@error.cache_inline +0 -0
  204. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@error.cache_meta +0 -0
  205. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@error.cache_warnings +0 -0
  206. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@fs.cache +0 -0
  207. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@fs.cache_inline +0 -0
  208. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@fs.cache_meta +0 -0
  209. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@fs.cache_warnings +0 -0
  210. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@importer.cache +0 -0
  211. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@importer.cache_inline +0 -0
  212. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@importer.cache_meta +0 -0
  213. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@importer.cache_warnings +0 -0
  214. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@parser.cache +0 -0
  215. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@parser.cache_inline +0 -0
  216. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@parser.cache_meta +0 -0
  217. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@parser.cache_warnings +0 -0
  218. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@path.cache +0 -0
  219. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@path.cache_inline +0 -0
  220. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@path.cache_meta +0 -0
  221. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@path.cache_warnings +0 -0
  222. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@platform.cache +0 -0
  223. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@platform.cache_inline +0 -0
  224. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@platform.cache_meta +0 -0
  225. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@platform.cache_warnings +0 -0
  226. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@provider.cache +0 -0
  227. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@provider.cache_inline +0 -0
  228. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@provider.cache_meta +0 -0
  229. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@provider.cache_warnings +0 -0
  230. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@registry.cache +0 -0
  231. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@registry.cache_inline +0 -0
  232. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@registry.cache_meta +0 -0
  233. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@registry.cache_warnings +0 -0
  234. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@scaffold.cache +0 -0
  235. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@scaffold.cache_inline +0 -0
  236. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@scaffold.cache_meta +0 -0
  237. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@scaffold.cache_warnings +0 -0
  238. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@semver.cache +0 -0
  239. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@semver.cache_inline +0 -0
  240. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@semver.cache_meta +0 -0
  241. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@semver.cache_warnings +0 -0
  242. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@shell.cache +0 -0
  243. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@shell.cache_inline +0 -0
  244. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@shell.cache_meta +0 -0
  245. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@shell.cache_warnings +0 -0
  246. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@template.cache +0 -0
  247. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@template.cache_inline +0 -0
  248. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@template.cache_meta +0 -0
  249. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@template.cache_warnings +0 -0
  250. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@types.cache +0 -0
  251. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@types.cache_inline +0 -0
  252. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@types.cache_meta +0 -0
  253. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@types.cache_warnings +0 -0
  254. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@version_constraint.cache +0 -0
  255. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@version_constraint.cache_inline +0 -0
  256. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@version_constraint.cache_meta +0 -0
  257. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@version_constraint.cache_warnings +0 -0
  258. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@yaml.cache +0 -0
  259. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@yaml.cache_inline +0 -0
  260. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@yaml.cache_meta +0 -0
  261. package/build/dev/javascript/skillc/_gleam_artefacts/skillc@yaml.cache_warnings +0 -0
  262. package/build/dev/javascript/skillc/_gleam_artefacts/skillc_test.cache +0 -0
  263. package/build/dev/javascript/skillc/_gleam_artefacts/skillc_test.cache_inline +0 -0
  264. package/build/dev/javascript/skillc/_gleam_artefacts/skillc_test.cache_meta +0 -0
  265. package/build/dev/javascript/skillc/_gleam_artefacts/skillc_test.cache_warnings +0 -0
  266. package/build/dev/javascript/skillc/_gleam_artefacts/template_test.cache +0 -0
  267. package/build/dev/javascript/skillc/_gleam_artefacts/template_test.cache_inline +0 -0
  268. package/build/dev/javascript/skillc/_gleam_artefacts/template_test.cache_meta +0 -0
  269. package/build/dev/javascript/skillc/_gleam_artefacts/template_test.cache_warnings +0 -0
  270. package/build/dev/javascript/skillc/_gleam_artefacts/version_constraint_test.cache +0 -0
  271. package/build/dev/javascript/skillc/_gleam_artefacts/version_constraint_test.cache_inline +0 -0
  272. package/build/dev/javascript/skillc/_gleam_artefacts/version_constraint_test.cache_meta +0 -0
  273. package/build/dev/javascript/skillc/_gleam_artefacts/version_constraint_test.cache_warnings +0 -0
  274. package/build/dev/javascript/skillc/cli_test.mjs +461 -0
  275. package/build/dev/javascript/skillc/compiler_test.mjs +3089 -0
  276. package/build/dev/javascript/skillc/config_test.mjs +308 -0
  277. package/build/dev/javascript/skillc/gleam.main.mjs +2 -0
  278. package/build/dev/javascript/skillc/gleam.mjs +1 -0
  279. package/build/dev/javascript/skillc/importer_test.mjs +1643 -0
  280. package/build/dev/javascript/skillc/parser_test.mjs +1601 -0
  281. package/build/dev/javascript/skillc/path_test.mjs +26 -0
  282. package/build/dev/javascript/skillc/provider_test.mjs +221 -0
  283. package/build/dev/javascript/skillc/registry_test.mjs +359 -0
  284. package/build/dev/javascript/skillc/scaffold_test.mjs +405 -0
  285. package/build/dev/javascript/skillc/skillc/compiler.mjs +724 -0
  286. package/build/dev/javascript/skillc/skillc/config.mjs +172 -0
  287. package/build/dev/javascript/skillc/skillc/error.mjs +145 -0
  288. package/build/dev/javascript/skillc/skillc/fs.mjs +40 -0
  289. package/build/dev/javascript/skillc/skillc/importer.mjs +975 -0
  290. package/build/dev/javascript/skillc/skillc/parser.mjs +427 -0
  291. package/build/dev/javascript/skillc/skillc/path.mjs +52 -0
  292. package/build/dev/javascript/skillc/skillc/platform.mjs +44 -0
  293. package/build/dev/javascript/skillc/skillc/provider.mjs +86 -0
  294. package/build/dev/javascript/skillc/skillc/registry.mjs +701 -0
  295. package/build/dev/javascript/skillc/skillc/scaffold.mjs +117 -0
  296. package/build/dev/javascript/skillc/skillc/semver.mjs +293 -0
  297. package/build/dev/javascript/skillc/skillc/shell.mjs +14 -0
  298. package/build/dev/javascript/skillc/skillc/template.mjs +1177 -0
  299. package/build/dev/javascript/skillc/skillc/types.mjs +249 -0
  300. package/build/dev/javascript/skillc/skillc/version_constraint.mjs +290 -0
  301. package/build/dev/javascript/skillc/skillc/yaml.mjs +51 -0
  302. package/build/dev/javascript/skillc/skillc.mjs +873 -0
  303. package/build/dev/javascript/skillc/skillc_ffi.mjs +30 -0
  304. package/build/dev/javascript/skillc/skillc_test.mjs +5 -0
  305. package/build/dev/javascript/skillc/template_test.mjs +1638 -0
  306. package/build/dev/javascript/skillc/version_constraint_test.mjs +1325 -0
  307. package/build/dev/javascript/yay/_gleam_artefacts/yay.cache +0 -0
  308. package/build/dev/javascript/yay/_gleam_artefacts/yay.cache_inline +0 -0
  309. package/build/dev/javascript/yay/_gleam_artefacts/yay.cache_meta +0 -0
  310. package/build/dev/javascript/yay/gleam.mjs +1 -0
  311. package/build/dev/javascript/yay/yaml_ffi.erl +106 -0
  312. package/build/dev/javascript/yay/yaml_ffi.mjs +373 -0
  313. package/build/dev/javascript/yay/yay.erl +1218 -0
  314. package/build/dev/javascript/yay/yay.mjs +1403 -0
  315. package/package.json +28 -0
  316. package/src/skillc/compiler.gleam +561 -0
  317. package/src/skillc/config.gleam +91 -0
  318. package/src/skillc/error.gleam +37 -0
  319. package/src/skillc/fs.gleam +31 -0
  320. package/src/skillc/importer.gleam +709 -0
  321. package/src/skillc/parser.gleam +279 -0
  322. package/src/skillc/path.gleam +30 -0
  323. package/src/skillc/platform.gleam +25 -0
  324. package/src/skillc/provider.gleam +58 -0
  325. package/src/skillc/registry.gleam +472 -0
  326. package/src/skillc/scaffold.gleam +112 -0
  327. package/src/skillc/semver.gleam +165 -0
  328. package/src/skillc/shell.gleam +12 -0
  329. package/src/skillc/template.gleam +885 -0
  330. package/src/skillc/types.gleam +93 -0
  331. package/src/skillc/version_constraint.gleam +163 -0
  332. package/src/skillc/yaml.gleam +27 -0
  333. package/src/skillc.gleam +466 -0
  334. package/src/skillc_ffi.mjs +30 -0
@@ -0,0 +1,35 @@
1
+ import * as $dict from "../gleam/dict.mjs";
2
+ import {
3
+ classify_dynamic as classify,
4
+ identity as bool,
5
+ identity as string,
6
+ identity as float,
7
+ identity as int,
8
+ identity as bit_array,
9
+ identity as list,
10
+ list_to_array as array,
11
+ identity as cast,
12
+ } from "../gleam_stdlib.mjs";
13
+
14
+ export { array, bit_array, bool, classify, float, int, list, string };
15
+
16
+ /**
17
+ * Create a dynamic value made of an unordered series of keys and values, where
18
+ * the keys are unique.
19
+ *
20
+ * On Erlang this will be a map, on JavaScript this will be a Gleam dict
21
+ * object.
22
+ */
23
+ export function properties(entries) {
24
+ return cast($dict.from_list(entries));
25
+ }
26
+
27
+ /**
28
+ * A dynamic value representing nothing.
29
+ *
30
+ * On Erlang this will be the atom `nil`, on JavaScript this will be
31
+ * `undefined`.
32
+ */
33
+ export function nil() {
34
+ return cast(undefined);
35
+ }
@@ -0,0 +1,572 @@
1
+ import { Ok, Error, Empty as $Empty, divideFloat } from "../gleam.mjs";
2
+ import * as $order from "../gleam/order.mjs";
3
+ import {
4
+ parse_float as parse,
5
+ float_to_string as to_string,
6
+ ceiling,
7
+ floor,
8
+ round as js_round,
9
+ truncate,
10
+ identity as do_to_float,
11
+ power as do_power,
12
+ random_uniform as random,
13
+ log as do_log,
14
+ exp as exponential,
15
+ } from "../gleam_stdlib.mjs";
16
+
17
+ export { ceiling, exponential, floor, parse, random, to_string, truncate };
18
+
19
+ /**
20
+ * Compares two `Float`s, returning an `Order`:
21
+ * `Lt` for lower than, `Eq` for equals, or `Gt` for greater than.
22
+ *
23
+ * ## Examples
24
+ *
25
+ * ```gleam
26
+ * compare(2.0, 2.3)
27
+ * // -> Lt
28
+ * ```
29
+ *
30
+ * To handle
31
+ * [Floating Point Imprecision](https://en.wikipedia.org/wiki/Floating-point_arithmetic#Accuracy_problems)
32
+ * you may use [`loosely_compare`](#loosely_compare) instead.
33
+ */
34
+ export function compare(a, b) {
35
+ let $ = a === b;
36
+ if ($) {
37
+ return new $order.Eq();
38
+ } else {
39
+ let $1 = a < b;
40
+ if ($1) {
41
+ return new $order.Lt();
42
+ } else {
43
+ return new $order.Gt();
44
+ }
45
+ }
46
+ }
47
+
48
+ /**
49
+ * Compares two `Float`s, returning the smaller of the two.
50
+ *
51
+ * ## Examples
52
+ *
53
+ * ```gleam
54
+ * min(2.0, 2.3)
55
+ * // -> 2.0
56
+ * ```
57
+ */
58
+ export function min(a, b) {
59
+ let $ = a < b;
60
+ if ($) {
61
+ return a;
62
+ } else {
63
+ return b;
64
+ }
65
+ }
66
+
67
+ /**
68
+ * Compares two `Float`s, returning the larger of the two.
69
+ *
70
+ * ## Examples
71
+ *
72
+ * ```gleam
73
+ * max(2.0, 2.3)
74
+ * // -> 2.3
75
+ * ```
76
+ */
77
+ export function max(a, b) {
78
+ let $ = a > b;
79
+ if ($) {
80
+ return a;
81
+ } else {
82
+ return b;
83
+ }
84
+ }
85
+
86
+ /**
87
+ * Restricts a float between two bounds.
88
+ *
89
+ * Note: If the `min` argument is larger than the `max` argument then they
90
+ * will be swapped, so the minimum bound is always lower than the maximum
91
+ * bound.
92
+ *
93
+ *
94
+ * ## Examples
95
+ *
96
+ * ```gleam
97
+ * clamp(1.2, min: 1.4, max: 1.6)
98
+ * // -> 1.4
99
+ * ```
100
+ *
101
+ * ```gleam
102
+ * clamp(1.2, min: 1.4, max: 0.6)
103
+ * // -> 1.2
104
+ * ```
105
+ */
106
+ export function clamp(x, min_bound, max_bound) {
107
+ let $ = min_bound >= max_bound;
108
+ if ($) {
109
+ let _pipe = x;
110
+ let _pipe$1 = min(_pipe, min_bound);
111
+ return max(_pipe$1, max_bound);
112
+ } else {
113
+ let _pipe = x;
114
+ let _pipe$1 = min(_pipe, max_bound);
115
+ return max(_pipe$1, min_bound);
116
+ }
117
+ }
118
+
119
+ /**
120
+ * Returns the absolute value of the input as a `Float`.
121
+ *
122
+ * ## Examples
123
+ *
124
+ * ```gleam
125
+ * absolute_value(-12.5)
126
+ * // -> 12.5
127
+ * ```
128
+ *
129
+ * ```gleam
130
+ * absolute_value(10.2)
131
+ * // -> 10.2
132
+ * ```
133
+ */
134
+ export function absolute_value(x) {
135
+ let $ = x >= 0.0;
136
+ if ($) {
137
+ return x;
138
+ } else {
139
+ return 0.0 - x;
140
+ }
141
+ }
142
+
143
+ /**
144
+ * Compares two `Float`s within a tolerance, returning an `Order`:
145
+ * `Lt` for lower than, `Eq` for equals, or `Gt` for greater than.
146
+ *
147
+ * This function allows Float comparison while handling
148
+ * [Floating Point Imprecision](https://en.wikipedia.org/wiki/Floating-point_arithmetic#Accuracy_problems).
149
+ *
150
+ * Notice: For `Float`s the tolerance won't be exact:
151
+ * `5.3 - 5.0` is not exactly `0.3`.
152
+ *
153
+ * ## Examples
154
+ *
155
+ * ```gleam
156
+ * loosely_compare(5.0, with: 5.3, tolerating: 0.5)
157
+ * // -> Eq
158
+ * ```
159
+ *
160
+ * If you want to check only for equality you may use
161
+ * [`loosely_equals`](#loosely_equals) instead.
162
+ */
163
+ export function loosely_compare(a, b, tolerance) {
164
+ let difference = absolute_value(a - b);
165
+ let $ = difference <= tolerance;
166
+ if ($) {
167
+ return new $order.Eq();
168
+ } else {
169
+ return compare(a, b);
170
+ }
171
+ }
172
+
173
+ /**
174
+ * Checks for equality of two `Float`s within a tolerance,
175
+ * returning a `Bool`.
176
+ *
177
+ * This function allows Float comparison while handling
178
+ * [Floating Point Imprecision](https://en.wikipedia.org/wiki/Floating-point_arithmetic#Accuracy_problems).
179
+ *
180
+ * Notice: For `Float`s the tolerance won't be exact:
181
+ * `5.3 - 5.0` is not exactly `0.3`.
182
+ *
183
+ * ## Examples
184
+ *
185
+ * ```gleam
186
+ * loosely_equals(5.0, with: 5.3, tolerating: 0.5)
187
+ * // -> True
188
+ * ```
189
+ *
190
+ * ```gleam
191
+ * loosely_equals(5.0, with: 5.1, tolerating: 0.1)
192
+ * // -> False
193
+ * ```
194
+ */
195
+ export function loosely_equals(a, b, tolerance) {
196
+ let difference = absolute_value(a - b);
197
+ return difference <= tolerance;
198
+ }
199
+
200
+ /**
201
+ * Returns the result of the base being raised to the power of the
202
+ * exponent, as a `Float`.
203
+ *
204
+ * ## Examples
205
+ *
206
+ * ```gleam
207
+ * power(2.0, -1.0)
208
+ * // -> Ok(0.5)
209
+ * ```
210
+ *
211
+ * ```gleam
212
+ * power(2.0, 2.0)
213
+ * // -> Ok(4.0)
214
+ * ```
215
+ *
216
+ * ```gleam
217
+ * power(8.0, 1.5)
218
+ * // -> Ok(22.627416997969522)
219
+ * ```
220
+ *
221
+ * ```gleam
222
+ * 4.0 |> power(of: 2.0)
223
+ * // -> Ok(16.0)
224
+ * ```
225
+ *
226
+ * ```gleam
227
+ * power(-1.0, 0.5)
228
+ * // -> Error(Nil)
229
+ * ```
230
+ */
231
+ export function power(base, exponent) {
232
+ let fractional = (ceiling(exponent) - exponent) > 0.0;
233
+ let $ = ((base < 0.0) && fractional) || ((base === 0.0) && (exponent < 0.0));
234
+ if ($) {
235
+ return new Error(undefined);
236
+ } else {
237
+ return new Ok(do_power(base, exponent));
238
+ }
239
+ }
240
+
241
+ /**
242
+ * Returns the square root of the input as a `Float`.
243
+ *
244
+ * ## Examples
245
+ *
246
+ * ```gleam
247
+ * square_root(4.0)
248
+ * // -> Ok(2.0)
249
+ * ```
250
+ *
251
+ * ```gleam
252
+ * square_root(-16.0)
253
+ * // -> Error(Nil)
254
+ * ```
255
+ */
256
+ export function square_root(x) {
257
+ return power(x, 0.5);
258
+ }
259
+
260
+ /**
261
+ * Returns the negative of the value provided.
262
+ *
263
+ * ## Examples
264
+ *
265
+ * ```gleam
266
+ * negate(1.0)
267
+ * // -> -1.0
268
+ * ```
269
+ */
270
+ export function negate(x) {
271
+ return -1.0 * x;
272
+ }
273
+
274
+ /**
275
+ * Rounds the value to the nearest whole number as an `Int`.
276
+ *
277
+ * ## Examples
278
+ *
279
+ * ```gleam
280
+ * round(2.3)
281
+ * // -> 2
282
+ * ```
283
+ *
284
+ * ```gleam
285
+ * round(2.5)
286
+ * // -> 3
287
+ * ```
288
+ */
289
+ export function round(x) {
290
+ let $ = x >= 0.0;
291
+ if ($) {
292
+ return js_round(x);
293
+ } else {
294
+ return 0 - js_round(negate(x));
295
+ }
296
+ }
297
+
298
+ /**
299
+ * Converts the value to a given precision as a `Float`.
300
+ * The precision is the number of allowed decimal places.
301
+ * Negative precisions are allowed and force rounding
302
+ * to the nearest tenth, hundredth, thousandth etc.
303
+ *
304
+ * ## Examples
305
+ *
306
+ * ```gleam
307
+ * to_precision(2.43434348473, 2)
308
+ * // -> 2.43
309
+ * ```
310
+ *
311
+ * ```gleam
312
+ * to_precision(547890.453444, -3)
313
+ * // -> 548000.0
314
+ * ```
315
+ */
316
+ export function to_precision(x, precision) {
317
+ let $ = precision <= 0;
318
+ if ($) {
319
+ let factor = do_power(10.0, do_to_float(- precision));
320
+ return do_to_float(round(divideFloat(x, factor))) * factor;
321
+ } else {
322
+ let factor = do_power(10.0, do_to_float(precision));
323
+ return divideFloat(do_to_float(round(x * factor)), factor);
324
+ }
325
+ }
326
+
327
+ function sum_loop(loop$numbers, loop$initial) {
328
+ while (true) {
329
+ let numbers = loop$numbers;
330
+ let initial = loop$initial;
331
+ if (numbers instanceof $Empty) {
332
+ return initial;
333
+ } else {
334
+ let first = numbers.head;
335
+ let rest = numbers.tail;
336
+ loop$numbers = rest;
337
+ loop$initial = first + initial;
338
+ }
339
+ }
340
+ }
341
+
342
+ /**
343
+ * Sums a list of `Float`s.
344
+ *
345
+ * ## Example
346
+ *
347
+ * ```gleam
348
+ * sum([1.0, 2.2, 3.3])
349
+ * // -> 6.5
350
+ * ```
351
+ */
352
+ export function sum(numbers) {
353
+ return sum_loop(numbers, 0.0);
354
+ }
355
+
356
+ function product_loop(loop$numbers, loop$initial) {
357
+ while (true) {
358
+ let numbers = loop$numbers;
359
+ let initial = loop$initial;
360
+ if (numbers instanceof $Empty) {
361
+ return initial;
362
+ } else {
363
+ let first = numbers.head;
364
+ let rest = numbers.tail;
365
+ loop$numbers = rest;
366
+ loop$initial = first * initial;
367
+ }
368
+ }
369
+ }
370
+
371
+ /**
372
+ * Multiplies a list of `Float`s and returns the product.
373
+ *
374
+ * ## Example
375
+ *
376
+ * ```gleam
377
+ * product([2.5, 3.2, 4.2])
378
+ * // -> 33.6
379
+ * ```
380
+ */
381
+ export function product(numbers) {
382
+ return product_loop(numbers, 1.0);
383
+ }
384
+
385
+ /**
386
+ * Computes the modulo of a float division of inputs as a `Result`.
387
+ *
388
+ * Returns division of the inputs as a `Result`: If the given divisor equals
389
+ * `0`, this function returns an `Error`.
390
+ *
391
+ * The computed value will always have the same sign as the `divisor`.
392
+ *
393
+ * ## Examples
394
+ *
395
+ * ```gleam
396
+ * modulo(13.3, by: 3.3)
397
+ * // -> Ok(0.1)
398
+ * ```
399
+ *
400
+ * ```gleam
401
+ * modulo(-13.3, by: 3.3)
402
+ * // -> Ok(3.2)
403
+ * ```
404
+ *
405
+ * ```gleam
406
+ * modulo(13.3, by: -3.3)
407
+ * // -> Ok(-3.2)
408
+ * ```
409
+ *
410
+ * ```gleam
411
+ * modulo(-13.3, by: -3.3)
412
+ * // -> Ok(-0.1)
413
+ * ```
414
+ */
415
+ export function modulo(dividend, divisor) {
416
+ if (divisor === 0.0) {
417
+ return new Error(undefined);
418
+ } else {
419
+ return new Ok(dividend - (floor(divideFloat(dividend, divisor)) * divisor));
420
+ }
421
+ }
422
+
423
+ /**
424
+ * Returns division of the inputs as a `Result`.
425
+ *
426
+ * ## Examples
427
+ *
428
+ * ```gleam
429
+ * divide(0.0, 1.0)
430
+ * // -> Ok(0.0)
431
+ * ```
432
+ *
433
+ * ```gleam
434
+ * divide(1.0, 0.0)
435
+ * // -> Error(Nil)
436
+ * ```
437
+ */
438
+ export function divide(a, b) {
439
+ if (b === 0.0) {
440
+ return new Error(undefined);
441
+ } else {
442
+ let b$1 = b;
443
+ return new Ok(divideFloat(a, b$1));
444
+ }
445
+ }
446
+
447
+ /**
448
+ * Adds two floats together.
449
+ *
450
+ * It's the function equivalent of the `+.` operator.
451
+ * This function is useful in higher order functions or pipes.
452
+ *
453
+ * ## Examples
454
+ *
455
+ * ```gleam
456
+ * add(1.0, 2.0)
457
+ * // -> 3.0
458
+ * ```
459
+ *
460
+ * ```gleam
461
+ * import gleam/list
462
+ *
463
+ * list.fold([1.0, 2.0, 3.0], 0.0, add)
464
+ * // -> 6.0
465
+ * ```
466
+ *
467
+ * ```gleam
468
+ * 3.0 |> add(2.0)
469
+ * // -> 5.0
470
+ * ```
471
+ */
472
+ export function add(a, b) {
473
+ return a + b;
474
+ }
475
+
476
+ /**
477
+ * Multiplies two floats together.
478
+ *
479
+ * It's the function equivalent of the `*.` operator.
480
+ * This function is useful in higher order functions or pipes.
481
+ *
482
+ * ## Examples
483
+ *
484
+ * ```gleam
485
+ * multiply(2.0, 4.0)
486
+ * // -> 8.0
487
+ * ```
488
+ *
489
+ * ```gleam
490
+ * import gleam/list
491
+ *
492
+ * list.fold([2.0, 3.0, 4.0], 1.0, multiply)
493
+ * // -> 24.0
494
+ * ```
495
+ *
496
+ * ```gleam
497
+ * 3.0 |> multiply(2.0)
498
+ * // -> 6.0
499
+ * ```
500
+ */
501
+ export function multiply(a, b) {
502
+ return a * b;
503
+ }
504
+
505
+ /**
506
+ * Subtracts one float from another.
507
+ *
508
+ * It's the function equivalent of the `-.` operator.
509
+ * This function is useful in higher order functions or pipes.
510
+ *
511
+ * ## Examples
512
+ *
513
+ * ```gleam
514
+ * subtract(3.0, 1.0)
515
+ * // -> 2.0
516
+ * ```
517
+ *
518
+ * ```gleam
519
+ * import gleam/list
520
+ *
521
+ * list.fold([1.0, 2.0, 3.0], 10.0, subtract)
522
+ * // -> 4.0
523
+ * ```
524
+ *
525
+ * ```gleam
526
+ * 3.0 |> subtract(_, 2.0)
527
+ * // -> 1.0
528
+ * ```
529
+ *
530
+ * ```gleam
531
+ * 3.0 |> subtract(2.0, _)
532
+ * // -> -1.0
533
+ * ```
534
+ */
535
+ export function subtract(a, b) {
536
+ return a - b;
537
+ }
538
+
539
+ /**
540
+ * Returns the natural logarithm (base e) of the given `Float` as a `Result`. If the
541
+ * input is less than or equal to 0, returns `Error(Nil)`.
542
+ *
543
+ * ## Examples
544
+ *
545
+ * ```gleam
546
+ * logarithm(1.0)
547
+ * // -> Ok(0.0)
548
+ * ```
549
+ *
550
+ * ```gleam
551
+ * logarithm(2.718281828459045) // e
552
+ * // -> Ok(1.0)
553
+ * ```
554
+ *
555
+ * ```gleam
556
+ * logarithm(0.0)
557
+ * // -> Error(Nil)
558
+ * ```
559
+ *
560
+ * ```gleam
561
+ * logarithm(-1.0)
562
+ * // -> Error(Nil)
563
+ * ```
564
+ */
565
+ export function logarithm(x) {
566
+ let $ = x <= 0.0;
567
+ if ($) {
568
+ return new Error(undefined);
569
+ } else {
570
+ return new Ok(do_log(x));
571
+ }
572
+ }
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Takes a single argument and always returns its input value.
3
+ */
4
+ export function identity(x) {
5
+ return x;
6
+ }