Commit graph

19 commits

Author SHA1 Message Date
Andrew Martin
d66a9e6880 add laws tests for Chunks 2019-10-22 20:50:37 -04:00
Andrew Martin
00f437f8cc Add big-endian and little-endian parsers for Word128 2019-10-17 11:26:14 -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
01bf4655e3 add benchmarks for encoding tree data structures 2019-09-22 09:20:03 -04:00
Andrew Martin
459c48a2d9 add consLength64BE 2019-09-19 12:10:13 -04:00
Andrew Martin
13d7f0c948 add test for consLength32BE 2019-09-19 12:06:50 -04:00
Andrew Martin
61871a9ae3 unroll loop in the implementation of word8Dec 2019-09-05 09:10:35 -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
Andrew Martin
5d3d6d1afd Add functions for encoding ShortText as UTF-8 and as JSON 2019-08-07 15:23:02 -04:00
Andrew Martin
1fd4b3ab1e add more tests for doubleDec 2019-08-05 12:12:37 -04:00
Andrew Martin
37aaeac18a Add doubleDec for rendering floating-point numbers 2019-08-05 12:07:02 -04:00
Andrew Martin
ac3b03218b add a benchmark 2019-07-05 12:35:05 -04:00
Andrew Martin
0c0b42e675 add test for Int64 decimal builder 2019-07-05 10:11:28 -04:00
Andrew Martin
f7c42ba6be add functions for big-endian encodings, add functions for decimal representation of signed 64-bit integers 2019-07-03 16:28:36 -04:00
Andrew Martin
831c25c81a add more features 2019-06-25 15:18:34 -04:00
Andrew Martin
0d63fbc60d Initial commit. The library includes a simple Builder, a Semigroup instance, primitives for running the builder, and a function for decimal-encoding a 64-bit word. There is also a test suite to confirm that it works. 2019-06-17 13:24:24 -04:00