30 Commits

Author SHA1 Message Date
Mark Spanbroek
8131170475 Support encoding of signed integers 2021-12-08 17:27:54 +01:00
Mark Spanbroek
56005d623d version 0.3.0 0.3.0 2021-12-02 11:23:34 +01:00
Mark Spanbroek
d0b1c1d9b0 Reorder decoding funcs
Now all decode overloads are in one place
2021-12-02 11:21:06 +01:00
Mark Spanbroek
f8a226b8d6 Add test for embedding custom types in tuples 2021-12-02 11:15:02 +01:00
Mark Spanbroek
46b1933aff Decoder: tuples do not have an offset, their elements do
No longer read offset when starting dynamic tuple,
read it when reading a dynamic element in a tuple.

Remove Tuple.dynamic, because it's no longer needed.
2021-12-02 11:13:50 +01:00
Mark Spanbroek
f40101100e Support encoding and decoding of custom types 2021-12-01 17:44:46 +01:00
Mark Spanbroek
987d6f4028 Fail gracefully when decoding enum fails 2021-12-01 17:26:35 +01:00
Mark Spanbroek
f1d85a6d84 Fail gracefully when decoding range fails 2021-12-01 17:26:05 +01:00
Mark Spanbroek
51da2802aa Decoding fails gracefully in several error cases 2021-12-01 16:34:02 +01:00
Mark Spanbroek
a43c7b21a4 Add support for decode failures by returning Result type 2021-12-01 13:01:28 +01:00
Mark Spanbroek
319418cab7 Remove procs from public API
Since the introduction of the new API for encoding
and decoding of tuples, these procs are no longer
required to be on the external API.
2021-12-01 12:09:42 +01:00
Mark Spanbroek
6947bc278e Add library questionable 2021-12-01 11:55:16 +01:00
Mark Spanbroek
cde572e41a Add examples of decoding to readme 2021-12-01 11:46:45 +01:00
Mark Spanbroek
1070b7251a Ensure that isDynamic also works for booleans
Casts are not supported in the nim vm.
2021-12-01 11:41:18 +01:00
Mark Spanbroek
2aa8685eb5 Simplify decoding of tuples 2021-12-01 11:40:12 +01:00
Mark Spanbroek
ead71d7f87 Work around overload resolution bug in Nim 1.2.14 2021-12-01 11:18:41 +01:00
Mark Spanbroek
78b87cd138 Move index field from AbiDecoder into Tuple
Fixes faiing decoding test.
2021-12-01 10:59:31 +01:00
Mark Spanbroek
243b9a12e9 Simplify encoding of tuples 2021-12-01 10:58:23 +01:00
Mark Spanbroek
766260fd88 Add AbiEncoder.debugEcho to print hex lines 2021-12-01 10:56:35 +01:00
Mark Spanbroek
3015760b3e Use similar terminology when encoding and decoding
For writing custom decoding functions, `decode` and `read`
now work the same as `encode` and `write for encoding.
2021-11-30 16:52:23 +01:00
Mark Spanbroek
4126edf89f Decode strings 2021-11-30 16:35:38 +01:00
Mark Spanbroek
0f4c4d1465 Decode sequences and arrays 2021-11-30 16:22:52 +01:00
Mark Spanbroek
767c4ab588 Decoding of basic types 2021-11-30 15:14:57 +01:00
Mark Spanbroek
6c7dc7123a Introduce testAll for running multiple tests in one go 2021-11-30 11:43:07 +01:00
Mark Spanbroek
3d868758b8 version 0.2.0 0.2.0 2021-11-30 09:43:28 +01:00
Mark Spanbroek
662c0fb4b8 Support encoding of strings 2021-11-29 10:39:13 +01:00
Mark Spanbroek
abd66679ad version 0.1.1 0.1.1 2021-11-25 10:43:12 +01:00
Mark Spanbroek
a93772e69b Fix "undeclared identifier 'uintImpl'"
Happened when caller imports contractabi, but not stint.
2021-11-25 10:40:36 +01:00
Mark Spanbroek
ac257548ea Add CI 0.1.0 2021-11-25 09:33:40 +01:00
Mark Spanbroek
8184529abd ABI Encoder extracted from nim-nitro module 2021-11-25 09:33:32 +01:00