Commit Graph

59 Commits

Author SHA1 Message Date
Zahary Karadjov 623a19db8d Add >> operator similar to C++; Helps with type inference 2018-10-16 02:19:26 +03:00
Zahary Karadjov 1be7c93963 Add rlpFieldsCount helper and the ability to read objects not wrapped in lists 2018-10-16 02:09:11 +03:00
Zahary Karadjov 2b28b1a236 Add support for float64 2018-09-27 14:01:47 +03:00
Zahary Karadjov def016260a use Bytes instead of seq[byte] 2018-09-26 12:57:04 +03:00
Zahary Karadjov 3678058f85 add a comment for a possible future optimization 2018-09-26 12:57:04 +03:00
Zahary Karadjov abd45a4596 fix a compilation issue 2018-09-26 12:57:04 +03:00
Jacek Sieka f0dcff9d64 wip: strange error 2018-09-26 12:57:04 +03:00
Zahary Karadjov 0426e181af new semantics for the rlpCustomSerialization pragma 2018-09-18 14:51:27 +03:00
Zahary Karadjov d248146313 Up-to-date README 2018-09-17 13:52:44 +03:00
Zahary Karadjov 6556821572 Allow specifying a custom serialization procedure for a particular field 2018-09-17 13:52:44 +03:00
Zahary Karadjov 1720345a24 move files arround to make nimble happy 2018-09-13 18:57:24 +03:00
Zahary Karadjov 44e10db59a rlp_inspect: simple CLI tool for debugging RLP problems 2018-09-12 18:21:37 +03:00
Jacek Sieka 82c064946c
fix ranges dep 2018-09-07 13:12:47 -06:00
Jacek Sieka 7fde3f5249
appveyor: fix version check 2018-09-06 12:08:18 -06:00
Jacek Sieka f3ea50fb5f
readme: update license 2018-09-05 12:48:26 -06:00
Jacek Sieka 9adfa504de
ci: update
readme: update license, badges
add correct license files
2018-09-04 22:59:53 -06:00
Jacek Sieka 235a9b7eca
travis: use cached nim instead of docker 2018-09-02 19:42:54 -06:00
Yuriy Glukhov 06e516e709 Fixed empty string deserialization 2018-08-06 18:36:52 +03:00
Zahary Karadjov 961cc48b11 support for encoding and decoding of bool values 2018-07-22 14:19:24 +03:00
coffeepots 3b2ce4e464 Add test for empty byte ranges 2018-07-16 20:58:14 +03:00
coffeepots da70fbc898 Fix assertion failure on empty byte range 2018-07-16 20:58:14 +03:00
Zahary Karadjov d75b09795b disable the IntLike concept
The Stint types don't conform to it at the moment anyway and this
simplifies the error messages in many situations.
2018-06-27 02:40:49 +03:00
Yuriy Glukhov 9959863512
Merge pull request #14 from status-im/bugfixes
Fixes for bugs discovered while testing the Hexary Trie
2018-06-23 21:52:41 +03:00
Zahary Karadjov c1b1766f86 Fixes for bugs discovered while testing the Hexary Trie
Bugfixes:

* `rlp.rawData` was returning a wider than necessary range when
  called over a `listElem` result.

* Appending `Rlp` objects to a `RlpWriter` was producing incorrect
  results.

New features:

* When the Rlp reading cursor is positioned over a list, you can call
  `enterList` to position the cursor to the first list element.
  Call `skipElem` to move the cursor further.

* `rlpFromHex` will now accept leading `0x` symbols (often used in the
  Ethereum world).

* `rlp.inspect` will now print hex characters by default. Use the
  optional parameter `hexOutput` to control the behavior.
2018-06-23 20:04:47 +03:00
Zahary Karadjov e0d62ae9ba make zeroBytesRlp a constant in order to not interfere with the gcsafe effect 2018-06-17 20:12:13 +03:00
Zahary Karadjov 2363474e5c make the package nimble compliant 2018-06-17 19:54:15 +03:00
alexm-status 97b7dc6b50
Update README.md 2018-05-30 14:39:21 -07:00
alexm-status 9d77a42e56
Update README.md 2018-05-27 14:23:54 -07:00
Zahary Karadjov 790aef0a9d Make 'read' and 'append' easier to override for user-defined types
The 'rlp.inspect' output have been improved.
2018-05-18 14:32:06 +03:00
Yuriy Glukhov 078aa161dd Workaround enum serialization 2018-05-18 12:46:23 +03:00
Yuriy Glukhov e47708b0bd
Merge pull request #11 from status-im/bugfix-read-array
Bugfix: objects with array fields were not deserialized properly
2018-05-17 16:34:35 +03:00
Zahary Karadjov 8d7dd1acb1 Bugfix: objects with array fields were not deserialized properly
fixes #10

The commit also introduces a common base type for all RLP exceptions
2018-05-17 16:11:03 +03:00
Yuriy Glukhov 63af57837d Workaround nim bug, startList made public 2018-05-16 11:46:06 +03:00
Yuriy Glukhov 6dddfdf675 Fixed seq[byte] and seq[char] serialization 2018-05-15 20:11:30 +03:00
Yuriy Glukhov 37b3803fcf Fixed test 2018-05-08 19:17:28 +03:00
Zahary Karadjov a97cb6c32f handle char arrays as blobs just like byte arrays 2018-04-01 05:37:50 +03:00
Zahary Karadjov 8acf725628 rlp.read for openarrays 2018-04-01 05:20:46 +03:00
Zahary Karadjov 09718bb5c3 implement rlp.read for arrays 2018-04-01 05:01:56 +03:00
Zahary Karadjov f903ad8bff add support for reading and writing enums 2018-04-01 04:37:06 +03:00
Yuriy Glukhov e0fa989449
Merge pull request #7 from yglukhov/fix-append-openarray-byte
openarray[byte] is now treated as blob instead of list
2018-03-31 12:57:12 +03:00
Yuriy Glukhov 9ed7e7b37b openarray[byte] is now treated as blob instead of list 2018-03-31 12:47:05 +03:00
Yuriy Glukhov 5861464710 Use new ranges 2018-03-27 10:53:55 +03:00
Yuriy Glukhov c1cc0f58a0 Added toBytes converters for ByteRange 2018-03-22 16:09:18 +02:00
Yuriy Glukhov 069d73df31 Fixed listElem 2018-03-20 17:03:21 +02:00
Zahary Karadjov 61da7236f4 make all tests green again 2018-03-14 14:48:10 +02:00
Yuriy Glukhov 798b1ebaf1 Fixed range bug in slice 2018-03-14 14:47:24 +02:00
Zahary Karadjov 0b516cb2b6 wrap objects and tuples in lists by default 2018-03-13 18:16:53 +02:00
Zahary Karadjov 34f1bee50d Use the standard Nimble name for the Apache v2 license 2018-02-27 19:47:25 +02:00
zah 70e6bf714b
Merge pull request #1 from alehander42/fix-ordinal
Fix ordinal
2018-02-27 18:16:54 +02:00
Alexander Ivanov 8cd02732ad Revert 2018-02-27 16:46:11 +02:00