@grain/stdlib 0.6.6 → 0.7.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 (137) hide show
  1. package/CHANGELOG.md +57 -0
  2. package/LICENSE +1 -1
  3. package/README.md +2 -2
  4. package/array.gr +55 -7
  5. package/array.md +123 -77
  6. package/bigint.md +30 -30
  7. package/buffer.gr +20 -53
  8. package/buffer.md +47 -47
  9. package/bytes.gr +111 -35
  10. package/bytes.md +111 -32
  11. package/char.gr +201 -99
  12. package/char.md +361 -34
  13. package/exception.gr +11 -11
  14. package/exception.md +26 -1
  15. package/float32.gr +327 -3
  16. package/float32.md +606 -19
  17. package/float64.gr +320 -3
  18. package/float64.md +606 -19
  19. package/fs.gr +1082 -0
  20. package/fs.md +630 -0
  21. package/hash.gr +142 -88
  22. package/hash.md +102 -14
  23. package/int16.md +23 -23
  24. package/int32.gr +25 -4
  25. package/int32.md +65 -30
  26. package/int64.gr +26 -1
  27. package/int64.md +65 -30
  28. package/int8.md +23 -23
  29. package/json.gr +366 -51
  30. package/json.md +418 -2
  31. package/list.gr +328 -31
  32. package/list.md +492 -69
  33. package/map.gr +20 -12
  34. package/map.md +44 -38
  35. package/marshal.gr +41 -40
  36. package/marshal.md +2 -2
  37. package/number.gr +159 -30
  38. package/number.md +215 -38
  39. package/option.md +21 -21
  40. package/package.json +5 -3
  41. package/path.gr +48 -0
  42. package/path.md +103 -12
  43. package/pervasives.gr +2 -2
  44. package/pervasives.md +37 -37
  45. package/priorityqueue.gr +7 -7
  46. package/priorityqueue.md +19 -19
  47. package/queue.gr +183 -29
  48. package/queue.md +296 -40
  49. package/random.md +6 -6
  50. package/range.gr +4 -4
  51. package/range.md +6 -6
  52. package/rational.md +16 -16
  53. package/regex.gr +52 -51
  54. package/regex.md +11 -11
  55. package/result.md +16 -16
  56. package/runtime/atof/common.md +39 -39
  57. package/runtime/atof/decimal.gr +6 -6
  58. package/runtime/atof/decimal.md +8 -8
  59. package/runtime/atof/lemire.gr +5 -5
  60. package/runtime/atof/lemire.md +1 -1
  61. package/runtime/atof/parse.gr +16 -16
  62. package/runtime/atof/parse.md +2 -2
  63. package/runtime/atof/slow.md +1 -1
  64. package/runtime/atof/table.md +2 -2
  65. package/runtime/atoi/parse.gr +3 -3
  66. package/runtime/atoi/parse.md +1 -1
  67. package/runtime/bigint.gr +15 -47
  68. package/runtime/bigint.md +54 -60
  69. package/runtime/compare.gr +2 -2
  70. package/runtime/compare.md +1 -1
  71. package/runtime/dataStructures.md +33 -33
  72. package/runtime/debugPrint.gr +4 -1
  73. package/runtime/debugPrint.md +9 -9
  74. package/runtime/equal.gr +99 -77
  75. package/runtime/equal.md +1 -1
  76. package/runtime/exception.gr +62 -82
  77. package/runtime/exception.md +62 -11
  78. package/runtime/gc.gr +39 -45
  79. package/runtime/gc.md +4 -4
  80. package/runtime/malloc.gr +7 -7
  81. package/runtime/malloc.md +4 -4
  82. package/runtime/math/kernel/cos.gr +70 -0
  83. package/runtime/math/kernel/cos.md +14 -0
  84. package/runtime/math/kernel/sin.gr +65 -0
  85. package/runtime/math/kernel/sin.md +14 -0
  86. package/runtime/math/kernel/tan.gr +136 -0
  87. package/runtime/math/kernel/tan.md +14 -0
  88. package/runtime/math/rempio2.gr +244 -0
  89. package/runtime/math/rempio2.md +14 -0
  90. package/runtime/math/trig.gr +130 -0
  91. package/runtime/math/trig.md +28 -0
  92. package/runtime/math/umuldi.gr +26 -0
  93. package/runtime/math/umuldi.md +14 -0
  94. package/runtime/numberUtils.gr +29 -29
  95. package/runtime/numberUtils.md +12 -12
  96. package/runtime/numbers.gr +373 -381
  97. package/runtime/numbers.md +79 -73
  98. package/runtime/string.gr +37 -105
  99. package/runtime/string.md +3 -9
  100. package/runtime/unsafe/constants.md +24 -24
  101. package/runtime/unsafe/conv.md +13 -13
  102. package/runtime/unsafe/memory.gr +24 -20
  103. package/runtime/unsafe/memory.md +27 -7
  104. package/runtime/unsafe/offsets.gr +36 -0
  105. package/runtime/unsafe/offsets.md +88 -0
  106. package/runtime/unsafe/panic.gr +28 -0
  107. package/runtime/unsafe/panic.md +14 -0
  108. package/runtime/unsafe/tags.md +32 -32
  109. package/runtime/unsafe/wasmf32.md +28 -28
  110. package/runtime/unsafe/wasmf64.md +28 -28
  111. package/runtime/unsafe/wasmi32.md +47 -47
  112. package/runtime/unsafe/wasmi64.md +50 -50
  113. package/runtime/utf8.gr +189 -0
  114. package/runtime/utf8.md +117 -0
  115. package/runtime/wasi.gr +4 -2
  116. package/runtime/wasi.md +138 -138
  117. package/set.gr +18 -11
  118. package/set.md +42 -36
  119. package/stack.gr +171 -2
  120. package/stack.md +297 -15
  121. package/string.gr +352 -557
  122. package/string.md +77 -34
  123. package/uint16.md +22 -22
  124. package/uint32.gr +25 -4
  125. package/uint32.md +63 -28
  126. package/uint64.gr +25 -5
  127. package/uint64.md +63 -28
  128. package/uint8.md +22 -22
  129. package/uri.gr +57 -53
  130. package/uri.md +11 -12
  131. package/wasi/file.gr +67 -59
  132. package/wasi/file.md +39 -39
  133. package/wasi/process.md +5 -5
  134. package/wasi/random.md +3 -3
  135. package/wasi/time.md +4 -4
  136. package/runtime/utils/printing.gr +0 -60
  137. package/runtime/utils/printing.md +0 -26
package/buffer.md CHANGED
@@ -41,7 +41,7 @@ No other changes yet.
41
41
  </details>
42
42
 
43
43
  ```grain
44
- make : (initialSize: Number) => Buffer
44
+ make: (initialSize: Number) => Buffer
45
45
  ```
46
46
 
47
47
  Creates a fresh buffer, initially empty.
@@ -85,7 +85,7 @@ No other changes yet.
85
85
  </details>
86
86
 
87
87
  ```grain
88
- length : (buffer: Buffer) => Number
88
+ length: (buffer: Buffer) => Number
89
89
  ```
90
90
 
91
91
  Gets the number of bytes currently contained in a buffer.
@@ -122,7 +122,7 @@ No other changes yet.
122
122
  </details>
123
123
 
124
124
  ```grain
125
- clear : (buffer: Buffer) => Void
125
+ clear: (buffer: Buffer) => Void
126
126
  ```
127
127
 
128
128
  Clears data in the buffer and sets its length to zero.
@@ -153,7 +153,7 @@ No other changes yet.
153
153
  </details>
154
154
 
155
155
  ```grain
156
- reset : (buffer: Buffer) => Void
156
+ reset: (buffer: Buffer) => Void
157
157
  ```
158
158
 
159
159
  Empty a buffer and deallocate the internal byte sequence holding the buffer contents.
@@ -184,7 +184,7 @@ No other changes yet.
184
184
  </details>
185
185
 
186
186
  ```grain
187
- truncate : (length: Number, buffer: Buffer) => Void
187
+ truncate: (length: Number, buffer: Buffer) => Void
188
188
  ```
189
189
 
190
190
  Shortens a buffer to the given length.
@@ -223,7 +223,7 @@ No other changes yet.
223
223
  </details>
224
224
 
225
225
  ```grain
226
- toBytes : (buffer: Buffer) => Bytes
226
+ toBytes: (buffer: Buffer) => Bytes
227
227
  ```
228
228
 
229
229
  Returns a copy of the current contents of the buffer as a byte sequence.
@@ -256,7 +256,7 @@ No other changes yet.
256
256
  </details>
257
257
 
258
258
  ```grain
259
- toBytesSlice : (start: Number, length: Number, buffer: Buffer) => Bytes
259
+ toBytesSlice: (start: Number, length: Number, buffer: Buffer) => Bytes
260
260
  ```
261
261
 
262
262
  Returns a slice of the current contents of the buffer as a byte sequence.
@@ -299,7 +299,7 @@ No other changes yet.
299
299
  </details>
300
300
 
301
301
  ```grain
302
- toString : (buffer: Buffer) => String
302
+ toString: (buffer: Buffer) => String
303
303
  ```
304
304
 
305
305
  Returns a copy of the current contents of the buffer as a string.
@@ -332,7 +332,7 @@ No other changes yet.
332
332
  </details>
333
333
 
334
334
  ```grain
335
- toStringSlice : (start: Number, length: Number, buffer: Buffer) => String
335
+ toStringSlice: (start: Number, length: Number, buffer: Buffer) => String
336
336
  ```
337
337
 
338
338
  Returns a copy of a subset of the current contents of the buffer as a string.
@@ -367,7 +367,7 @@ No other changes yet.
367
367
  </details>
368
368
 
369
369
  ```grain
370
- addBytes : (bytes: Bytes, buffer: Buffer) => Void
370
+ addBytes: (bytes: Bytes, buffer: Buffer) => Void
371
371
  ```
372
372
 
373
373
  Appends a byte sequence to a buffer.
@@ -395,7 +395,7 @@ No other changes yet.
395
395
  </details>
396
396
 
397
397
  ```grain
398
- addString : (string: String, buffer: Buffer) => Void
398
+ addString: (string: String, buffer: Buffer) => Void
399
399
  ```
400
400
 
401
401
  Appends the bytes of a string to a buffer.
@@ -423,7 +423,7 @@ No other changes yet.
423
423
  </details>
424
424
 
425
425
  ```grain
426
- addChar : (char: Char, buffer: Buffer) => Void
426
+ addChar: (char: Char, buffer: Buffer) => Void
427
427
  ```
428
428
 
429
429
  Appends the bytes of a character to a buffer.
@@ -451,7 +451,7 @@ No other changes yet.
451
451
  </details>
452
452
 
453
453
  ```grain
454
- addCharFromCodePoint : (codePoint: Number, buffer: Buffer) => Void
454
+ addCharFromCodePoint: (codePoint: Number, buffer: Buffer) => Void
455
455
  ```
456
456
 
457
457
  Appends a character represented by a code point to a buffer.
@@ -486,7 +486,7 @@ assert Buffer.toString(buf) == "H"
486
486
  </details>
487
487
 
488
488
  ```grain
489
- addStringSlice :
489
+ addStringSlice:
490
490
  (start: Number, end: Number, string: String, buffer: Buffer) => Void
491
491
  ```
492
492
 
@@ -517,7 +517,7 @@ No other changes yet.
517
517
  </details>
518
518
 
519
519
  ```grain
520
- addBytesSlice :
520
+ addBytesSlice:
521
521
  (start: Number, length: Number, bytes: Bytes, buffer: Buffer) => Void
522
522
  ```
523
523
 
@@ -557,7 +557,7 @@ No other changes yet.
557
557
  </details>
558
558
 
559
559
  ```grain
560
- addBuffer : (srcBuffer: Buffer, dstBuffer: Buffer) => Void
560
+ addBuffer: (srcBuffer: Buffer, dstBuffer: Buffer) => Void
561
561
  ```
562
562
 
563
563
  Appends the bytes of a source buffer to destination buffer.
@@ -590,7 +590,7 @@ No other changes yet.
590
590
  </details>
591
591
 
592
592
  ```grain
593
- addBufferSlice :
593
+ addBufferSlice:
594
594
  (start: Number, length: Number, srcBuffer: Buffer, dstBuffer: Buffer) =>
595
595
  Void
596
596
  ```
@@ -634,7 +634,7 @@ assert Buffer.toString(buf1) == "HelloWorld"
634
634
  </details>
635
635
 
636
636
  ```grain
637
- getInt8 : (index: Number, buffer: Buffer) => Int8
637
+ getInt8: (index: Number, buffer: Buffer) => Int8
638
638
  ```
639
639
 
640
640
  Gets a signed 8-bit integer starting at the given byte index.
@@ -683,7 +683,7 @@ assert Buffer.getInt8(0, buf) == 1s
683
683
  </details>
684
684
 
685
685
  ```grain
686
- setInt8 : (index: Number, value: Int8, buffer: Buffer) => Void
686
+ setInt8: (index: Number, value: Int8, buffer: Buffer) => Void
687
687
  ```
688
688
 
689
689
  Sets a signed 8-bit integer starting at the given byte index.
@@ -728,7 +728,7 @@ assert Buffer.getInt8(0, buf) == 3s
728
728
  </details>
729
729
 
730
730
  ```grain
731
- addInt8 : (value: Int8, buffer: Buffer) => Void
731
+ addInt8: (value: Int8, buffer: Buffer) => Void
732
732
  ```
733
733
 
734
734
  Appends a signed 8-bit integer to a buffer.
@@ -763,7 +763,7 @@ assert Buffer.getInt8(0, buf) == 2s
763
763
  </details>
764
764
 
765
765
  ```grain
766
- getUint8 : (index: Number, buffer: Buffer) => Uint8
766
+ getUint8: (index: Number, buffer: Buffer) => Uint8
767
767
  ```
768
768
 
769
769
  Gets an unsigned 8-bit integer starting at the given byte index.
@@ -805,7 +805,7 @@ No other changes yet.
805
805
  </details>
806
806
 
807
807
  ```grain
808
- setUint8 : (index: Number, value: Uint8, buffer: Buffer) => Void
808
+ setUint8: (index: Number, value: Uint8, buffer: Buffer) => Void
809
809
  ```
810
810
 
811
811
  Sets an unsigned 8-bit integer starting at the given byte index.
@@ -843,7 +843,7 @@ No other changes yet.
843
843
  </details>
844
844
 
845
845
  ```grain
846
- addUint8 : (value: Uint8, buffer: Buffer) => Void
846
+ addUint8: (value: Uint8, buffer: Buffer) => Void
847
847
  ```
848
848
 
849
849
  Appends an unsigned 8-bit integer to a buffer.
@@ -878,7 +878,7 @@ assert Buffer.getUint8(0, buf) == 0us
878
878
  </details>
879
879
 
880
880
  ```grain
881
- getInt16 : (index: Number, buffer: Buffer) => Int16
881
+ getInt16: (index: Number, buffer: Buffer) => Int16
882
882
  ```
883
883
 
884
884
  Gets a signed 16-bit integer starting at the given byte index.
@@ -927,7 +927,7 @@ assert Buffer.getInt16(0, buf) == 1S
927
927
  </details>
928
928
 
929
929
  ```grain
930
- setInt16 : (index: Number, value: Int16, buffer: Buffer) => Void
930
+ setInt16: (index: Number, value: Int16, buffer: Buffer) => Void
931
931
  ```
932
932
 
933
933
  Sets a signed 16-bit integer starting at the given byte index.
@@ -972,7 +972,7 @@ assert Buffer.getInt16(5, buf) == 1S
972
972
  </details>
973
973
 
974
974
  ```grain
975
- addInt16 : (value: Int16, buffer: Buffer) => Void
975
+ addInt16: (value: Int16, buffer: Buffer) => Void
976
976
  ```
977
977
 
978
978
  Appends a signed 16-bit integer to a buffer.
@@ -1007,7 +1007,7 @@ assert Buffer.getInt16(0, buf) == 2S
1007
1007
  </details>
1008
1008
 
1009
1009
  ```grain
1010
- getUint16 : (index: Number, buffer: Buffer) => Uint16
1010
+ getUint16: (index: Number, buffer: Buffer) => Uint16
1011
1011
  ```
1012
1012
 
1013
1013
  Gets an unsigned 16-bit integer starting at the given byte index.
@@ -1049,7 +1049,7 @@ No other changes yet.
1049
1049
  </details>
1050
1050
 
1051
1051
  ```grain
1052
- setUint16 : (index: Number, value: Uint16, buffer: Buffer) => Void
1052
+ setUint16: (index: Number, value: Uint16, buffer: Buffer) => Void
1053
1053
  ```
1054
1054
 
1055
1055
  Sets an unsigned 16-bit integer starting at the given byte index.
@@ -1087,7 +1087,7 @@ No other changes yet.
1087
1087
  </details>
1088
1088
 
1089
1089
  ```grain
1090
- addUint16 : (value: Uint16, buffer: Buffer) => Void
1090
+ addUint16: (value: Uint16, buffer: Buffer) => Void
1091
1091
  ```
1092
1092
 
1093
1093
  Appends an unsigned 16-bit integer to a buffer.
@@ -1115,7 +1115,7 @@ No other changes yet.
1115
1115
  </details>
1116
1116
 
1117
1117
  ```grain
1118
- getInt32 : (index: Number, buffer: Buffer) => Int32
1118
+ getInt32: (index: Number, buffer: Buffer) => Int32
1119
1119
  ```
1120
1120
 
1121
1121
  Gets a signed 32-bit integer starting at the given byte index.
@@ -1157,7 +1157,7 @@ No other changes yet.
1157
1157
  </details>
1158
1158
 
1159
1159
  ```grain
1160
- setInt32 : (index: Number, value: Int32, buffer: Buffer) => Void
1160
+ setInt32: (index: Number, value: Int32, buffer: Buffer) => Void
1161
1161
  ```
1162
1162
 
1163
1163
  Sets a signed 32-bit integer starting at the given byte index.
@@ -1195,7 +1195,7 @@ No other changes yet.
1195
1195
  </details>
1196
1196
 
1197
1197
  ```grain
1198
- addInt32 : (value: Int32, buffer: Buffer) => Void
1198
+ addInt32: (value: Int32, buffer: Buffer) => Void
1199
1199
  ```
1200
1200
 
1201
1201
  Appends a signed 32-bit integer to a buffer.
@@ -1223,7 +1223,7 @@ No other changes yet.
1223
1223
  </details>
1224
1224
 
1225
1225
  ```grain
1226
- getUint32 : (index: Number, buffer: Buffer) => Uint32
1226
+ getUint32: (index: Number, buffer: Buffer) => Uint32
1227
1227
  ```
1228
1228
 
1229
1229
  Gets an unsigned 32-bit integer starting at the given byte index.
@@ -1265,7 +1265,7 @@ No other changes yet.
1265
1265
  </details>
1266
1266
 
1267
1267
  ```grain
1268
- setUint32 : (index: Number, value: Uint32, buffer: Buffer) => Void
1268
+ setUint32: (index: Number, value: Uint32, buffer: Buffer) => Void
1269
1269
  ```
1270
1270
 
1271
1271
  Sets an unsigned 32-bit integer starting at the given byte index.
@@ -1303,7 +1303,7 @@ No other changes yet.
1303
1303
  </details>
1304
1304
 
1305
1305
  ```grain
1306
- addUint32 : (value: Uint32, buffer: Buffer) => Void
1306
+ addUint32: (value: Uint32, buffer: Buffer) => Void
1307
1307
  ```
1308
1308
 
1309
1309
  Appends an unsigned 32-bit integer to a buffer.
@@ -1331,7 +1331,7 @@ No other changes yet.
1331
1331
  </details>
1332
1332
 
1333
1333
  ```grain
1334
- getFloat32 : (index: Number, buffer: Buffer) => Float32
1334
+ getFloat32: (index: Number, buffer: Buffer) => Float32
1335
1335
  ```
1336
1336
 
1337
1337
  Gets a 32-bit float starting at the given byte index.
@@ -1373,7 +1373,7 @@ No other changes yet.
1373
1373
  </details>
1374
1374
 
1375
1375
  ```grain
1376
- setFloat32 : (index: Number, value: Float32, buffer: Buffer) => Void
1376
+ setFloat32: (index: Number, value: Float32, buffer: Buffer) => Void
1377
1377
  ```
1378
1378
 
1379
1379
  Sets a 32-bit float starting at the given byte index.
@@ -1411,7 +1411,7 @@ No other changes yet.
1411
1411
  </details>
1412
1412
 
1413
1413
  ```grain
1414
- addFloat32 : (value: Float32, buffer: Buffer) => Void
1414
+ addFloat32: (value: Float32, buffer: Buffer) => Void
1415
1415
  ```
1416
1416
 
1417
1417
  Appends a 32-bit float to a buffer.
@@ -1439,7 +1439,7 @@ No other changes yet.
1439
1439
  </details>
1440
1440
 
1441
1441
  ```grain
1442
- getInt64 : (index: Number, buffer: Buffer) => Int64
1442
+ getInt64: (index: Number, buffer: Buffer) => Int64
1443
1443
  ```
1444
1444
 
1445
1445
  Gets a signed 64-bit integer starting at the given byte index.
@@ -1481,7 +1481,7 @@ No other changes yet.
1481
1481
  </details>
1482
1482
 
1483
1483
  ```grain
1484
- setInt64 : (index: Number, value: Int64, buffer: Buffer) => Void
1484
+ setInt64: (index: Number, value: Int64, buffer: Buffer) => Void
1485
1485
  ```
1486
1486
 
1487
1487
  Sets a signed 64-bit integer starting at the given byte index.
@@ -1519,7 +1519,7 @@ No other changes yet.
1519
1519
  </details>
1520
1520
 
1521
1521
  ```grain
1522
- addInt64 : (value: Int64, buffer: Buffer) => Void
1522
+ addInt64: (value: Int64, buffer: Buffer) => Void
1523
1523
  ```
1524
1524
 
1525
1525
  Appends a signed 64-bit integer to a buffer.
@@ -1547,7 +1547,7 @@ No other changes yet.
1547
1547
  </details>
1548
1548
 
1549
1549
  ```grain
1550
- getUint64 : (index: Number, buffer: Buffer) => Uint64
1550
+ getUint64: (index: Number, buffer: Buffer) => Uint64
1551
1551
  ```
1552
1552
 
1553
1553
  Gets an unsigned 64-bit integer starting at the given byte index.
@@ -1589,7 +1589,7 @@ No other changes yet.
1589
1589
  </details>
1590
1590
 
1591
1591
  ```grain
1592
- setUint64 : (index: Number, value: Uint64, buffer: Buffer) => Void
1592
+ setUint64: (index: Number, value: Uint64, buffer: Buffer) => Void
1593
1593
  ```
1594
1594
 
1595
1595
  Sets an unsigned 64-bit integer starting at the given byte index.
@@ -1627,7 +1627,7 @@ No other changes yet.
1627
1627
  </details>
1628
1628
 
1629
1629
  ```grain
1630
- addUint64 : (value: Uint64, buffer: Buffer) => Void
1630
+ addUint64: (value: Uint64, buffer: Buffer) => Void
1631
1631
  ```
1632
1632
 
1633
1633
  Appends an unsigned 64-bit integer to a buffer.
@@ -1655,7 +1655,7 @@ No other changes yet.
1655
1655
  </details>
1656
1656
 
1657
1657
  ```grain
1658
- getFloat64 : (index: Number, buffer: Buffer) => Float64
1658
+ getFloat64: (index: Number, buffer: Buffer) => Float64
1659
1659
  ```
1660
1660
 
1661
1661
  Gets a 64-bit float starting at the given byte index.
@@ -1697,7 +1697,7 @@ No other changes yet.
1697
1697
  </details>
1698
1698
 
1699
1699
  ```grain
1700
- setFloat64 : (index: Number, value: Float64, buffer: Buffer) => Void
1700
+ setFloat64: (index: Number, value: Float64, buffer: Buffer) => Void
1701
1701
  ```
1702
1702
 
1703
1703
  Sets a 64-bit float starting at the given byte index.
@@ -1735,7 +1735,7 @@ No other changes yet.
1735
1735
  </details>
1736
1736
 
1737
1737
  ```grain
1738
- addFloat64 : (value: Float64, buffer: Buffer) => Void
1738
+ addFloat64: (value: Float64, buffer: Buffer) => Void
1739
1739
  ```
1740
1740
 
1741
1741
  Appends a 64-bit float to a buffer.