Commit graph

57 commits

Author SHA1 Message Date
Andrew Martin
d1d4ed0d12 Add cstringLen 2020-02-26 16:15:41 -05:00
Andrew Martin
4c7227e7e9 Add ascii(2|3|4|5|6) 2020-02-26 12:00:52 -05:00
Andrew Martin
1f2aa9b110 Add reversedOnto and commitsOntoChunks 2020-02-23 14:10:26 -05:00
Andrew Martin
f5799e7270 Add wordPaddedDec4 2020-02-12 14:56:32 -05:00
Zankoku Okuno
f8a32ebb1b
Word256 lacunae for big-endian and little-endian output
Implement BE and LE builders for 256-bit words and arrays of 256-bit words.
Test new functions in the test suite.
2020-02-07 09:39:59 -05:00
Eric Demko
6657cc0383 implemented wider hex builders and a couple missing builders 2020-02-06 14:41:26 -05:00
Andrew Martin
d496f23fd8 Add word8PaddedLowerHex 2020-01-03 06:42:32 -05:00
Andrew Martin
ecde041d9d Add wordPaddedDec9 2019-12-30 20:43:36 -05:00
Andrew Martin
2b85e2cb84
Add function for zero-padded decimal encoding of two digit numers 2019-12-30 20:14:15 -05:00
Andrew Martin
3688e024e8 Add runOnto 2019-12-09 13:25:51 -05:00
Andrew Martin
e8de684ae2 Completely redo putMany and friends 2019-11-25 10:52:00 -05:00
Andrew Martin
786a83332b Generalize the type of putManyConsLength 2019-11-23 13:34:19 -05:00
Andrew Martin
70a5c15e6c Add putManyConsLength 2019-11-23 08:56:52 -05:00
Andrew Martin
c7fcaff97f Add putMany and considate consLength functions 2019-11-22 16:24:48 -05:00
Andrew Martin
ae5d17ce5c Sort imports. Add release date to changelog. 2019-11-20 14:35:49 -05:00
Andrew Martin
4f8ea31b73 Add Data.ByteArray.Builder.Unsafe.fromEffect 2019-11-20 14:30:51 -05:00
Andrew Martin
575d29730d Add little-endian variant of length-consing function 2019-10-25 12:57:56 -04:00
Andrew Martin
da2be3281a correct pragma controlling inlining behavior of JSON text encoding function 2019-10-18 13:59:45 -04:00
Andrew Martin
f40f0c5623 fix haddock formatting in the json escape sequence example 2019-10-18 13:56:02 -04:00
Andrew Martin
469da275e9 Export reverseCommitsOntoChunks from the Unsafe module 2019-10-18 10:42:49 -04:00
Andrew Martin
00f437f8cc Add big-endian and little-endian parsers for Word128 2019-10-17 11:26:14 -04:00
Andrew Martin
a66f8e1200 Add shortByteString builder. Prepare the changelog for a major release. 2019-10-17 09:45:08 -04:00
Andrew Martin
691749e27a Support big-endian and little-endian encoding of 16-bit and 32-bit signed integers 2019-10-10 10:28:01 -04:00
Andrew Martin
71568edb50 Add big-endian and little-endian functions for copying a PrimArray of Word{16,32,64} 2019-10-10 09:40:39 -04:00
Andrew Martin
c84f6cbcca Add flush, copy, and insert 2019-10-10 09:10:44 -04:00
Andrew Martin
8baf4cc369
Switch builder implementation to use chunks (#10)
* switch builder implementation to use chunks
* micro-optimize the conditional for builders of length one
* use fromBoundedOne for ascii chars
2019-10-09 16:30:02 -04:00
Andrew Martin
3ad5261ff4 Add little-endian encoding functions for Word{16,32,64}. Add machine encoding functions for 64-bit signed int. These just convert it to an unsigned int and call the corresponding encoding function. 2019-10-09 09:48:28 -04:00
Andrew Martin
e0b9d744cf double buffer size, rather than increasing it by a constant factor, on every iteration in builder run function 2019-09-22 09:34:55 -04:00
Andrew Martin
cd3631e5fd Add a test for a very simple CSV encoding 2019-09-20 09:23:08 -04:00
Andrew Martin
459c48a2d9 add consLength64BE 2019-09-19 12:10:13 -04:00
Andrew Martin
d52aecdc60 Add consLengthBE32 2019-09-18 11:45:02 -04:00
Andrew Martin
68897b9316 Add haddocks for constructors 2019-09-05 09:24:10 -04:00
Andrew Martin
0b6317a4f5 Add a comment documenting the thought process behind encoding Word8s as decimal 2019-09-05 09:10:35 -04:00
Andrew Martin
61871a9ae3 unroll loop in the implementation of word8Dec 2019-09-05 09:10:35 -04:00
Andrew Martin
26421ff05b Improve documentation. Stop exported data constructor from Data.ByteArray.Builder 2019-09-04 20:02:48 -04:00
Andrew Martin
702b4d4bdb Add more variants of hexadecimal encodings 2019-09-04 20:01:47 -04:00
Andrew Martin
071b55568d add decWord for machine-sized words 2019-09-04 14:34:33 -04:00
Andrew Martin
2e8d4279c7 use runByteArrayST instead of runST 2019-09-04 13:40:31 -04:00
Andrew Martin
0538e31ae8 clean up imports in Data.ByteArray.Builder 2019-09-04 10:54:12 -04:00
Andrew Martin
f62d5ebde8 Add more int-encoding functions 2019-09-04 10:54:12 -04:00
Andrew Martin
7ed17f5b6d add word8 and int 2019-09-04 10:54:12 -04:00
Andrew Martin
a5bbf88e71 Avoid KnownNat constraints in favor of using Arithmetic.Types.Nat 2019-09-03 14:58:03 -04:00
Andrew Martin
2d1ea68261 Remove the word "Small" from module names. Move unsafe functions into modules suffixed with "Unsafe". Write a better IsString instance. Depend on natural-arithmetic. 2019-09-03 14:43:58 -04:00
Alice McKean
2eb37dfb7c add monoidal unit for Bounded Builders 2019-09-01 22:56:06 -07:00
Alice McKean
9a14600a38 switch unsafe to bounded + char encoding 2019-09-01 22:43:54 -07:00
Alice McKean
22dfde2936 add word32Dec builder 2019-09-01 16:17:29 -07:00
Andrew Martin
5d3d6d1afd Add functions for encoding ShortText as UTF-8 and as JSON 2019-08-07 15:23:02 -04:00
Andrew Martin
37aaeac18a Add doubleDec for rendering floating-point numbers 2019-08-05 12:07:02 -04:00
Andrew Martin
b0823d03c3 make pasteGrowST accept an offset. correct the implementation of bytes 2019-08-02 16:08:13 -04:00
Andrew Martin
ac3b03218b add a benchmark 2019-07-05 12:35:05 -04:00