Commit graph

70 commits

Author SHA1 Message Date
Nathaniel
ac40f449f8
Cleanup and organization
Delete a useless and unused overload of raw::unpack

Also, make the new custom serialization bit work for unreflected types
(they still need typename reflection)
2022-03-16 18:59:36 -05:00
Nathaniel
907dc57fb6
Enable classes to customize their serialization
Add support for classes to define members to customize their
serialization from the default from reflection.
2022-03-16 15:47:17 -05:00
Nathan Hourt
2f89e0812a
Use signed_int to serialize enums 2020-09-17 21:11:28 -05:00
Nathan Hourt
747567fbdc
Revert "Removed signed_int"
This reverts commit 1dcacbafc9.
2020-09-17 12:26:06 -05:00
Abit
c72d5d31cc
Merge branch 'master' into for-core-4.0.x 2020-04-19 10:55:50 +02:00
abitmore
9763d1c194 Update bool serialization
Make the logic clearer, to avoid issues on some compilers.
Thanks to @pureland and team.
2020-03-26 16:27:59 +00:00
Nathan Hourt
cb06e42e80
Fix Build
This is necessary to build in my environment for both clang and g++

Clang 9.0.1
G++ 9.2.1
Boost 1.72.0
2020-03-17 14:42:13 -05:00
Peter Conrad
1bda001b8c Use common inline functions for splitting/combining uint128 to/from two uint64 values 2019-06-11 08:51:59 +02:00
Peter Conrad
a11a50d4e1 Replaced true_type, false_type, is_class, is_enum with std type_traits 2019-06-06 14:41:47 +02:00
Peter Conrad
632a90709e Replace fc::array with std::array 2019-06-06 14:41:47 +02:00
Peter Conrad
a3e2410091 Replace fc::uint128 with boost::multiprecision::uint128_t 2019-06-06 14:41:09 +02:00
Peter Conrad
58e16e543d Replaced most fc::shared_ptr with std::shared_ptr 2019-05-29 11:28:40 +02:00
Peter Conrad
9069e05cb0 Get rid of some inlines 2019-05-28 17:20:57 +02:00
Peter Conrad
de46823a99 Dont inline generic pack/unpack to enable externalized serialization 2019-05-28 17:20:57 +02:00
Peter Conrad
379e59f661 Moved delete declaration to raw_fwd 2019-04-23 16:49:25 +02:00
Peter Conrad
532093bda5 Added missing serialization for std::shared_ptr<T> 2019-04-23 16:49:24 +02:00
Peter Conrad
cb9a96755d Add proper serialization for boost::endian::endian_buffer 2019-04-23 16:48:17 +02:00
Peter Conrad
f0c6976aea Removed superfluous return statement 2019-04-23 16:45:44 +02:00
Peter Conrad
9a0d92820d Fixes for endianness 2019-04-23 16:45:44 +02:00
Peter Conrad
579914c84d Removed unused stuff 2019-04-04 17:59:51 +02:00
Nathan Hourt
6665406f83 Requested changes for #115 2019-03-24 09:54:57 -05:00
Nathan Hourt
ba96174e7f Support for BTS #1670: allow serializing shared_ptr<const T> 2019-03-23 11:35:40 -05:00
John Jones
19590fd413 Removal of smart_ref 2019-02-15 08:23:05 -05:00
jmjatlanta
6fece96eae fix std::min parameter conversion 2019-02-05 15:44:06 -05:00
John Jones
fa07984234 fix overly agressive cleanup 2019-01-21 09:11:11 -05:00
John Jones
be4d480174 Remove unnecessary asserts 2019-01-18 12:29:38 -05:00
Peter Conrad
fb75dc9bb5 Added limits for resize() / reserve() 2018-12-28 20:36:29 +01:00
Peter Conrad
02a4516610 Handle b<0 2018-08-21 16:48:00 +02:00
Peter Conrad
79ff75423f Throw overflow_exception instead of silently cutting off data 2018-08-19 18:51:45 +02:00
Peter Conrad
1dcacbafc9 Removed signed_int 2018-08-19 18:26:46 +02:00
Peter Conrad
72bcc8a926 Fix #993 - limit unpacking length of signed_int and unsigned_int 2018-08-19 11:01:05 +02:00
Peter Conrad
58ac6ae208 Changed some casts to uint64_t 2018-08-19 11:01:05 +02:00
Peter Conrad
9483935d64 Support 64 bit values in unsigned_int object 2018-08-19 11:01:05 +02:00
Abit
2bb93c8b5d
Merge pull request #21 from pmconrad/variant_fix
Variant fix
2018-03-19 17:35:57 +01:00
Peter Conrad
1eb7b9d5c6 Added some missing checks, fixed indentation, handle different meanings of max_depth 2018-03-19 15:49:07 +01:00
abitmore
d9ac2691a1 Remove default pack/unpack functions for class 2018-03-14 17:20:48 -04:00
abitmore
85ea20e2c9 Deprecate default pack/unpack functions for class 2018-03-14 06:25:14 -04:00
Peter Conrad
81c8d89341 Added max_depth parameter to variant conversions 2018-03-13 22:00:18 +01:00
abitmore
43ac0b0520 Slightly improve performance for pack/unpack 2018-03-13 13:06:00 -04:00
abitmore
86e18663a0 Add max_depth parameter to pack/unpack functions 2018-03-11 17:31:55 -04:00
Daniel Larimer
de9a29c33e Progress toward binary RPC" 2016-07-30 19:24:15 -04:00
theoreticalbts
232d59525a raw.hpp: Use fc::raw:: namespace explicitly everywhere, cleanup whitespace 2016-02-19 16:36:29 -05:00
Daniel Larimer
bde8a7f424 fixes updates for deque to variant 2016-02-11 17:16:39 -05:00
theoreticalbts
7b6431f20e raw.hpp: Add pack() override for shared_ptr<T> 2016-01-08 11:20:32 -05:00
Daniel Larimer
cb27b810e3 adding support for unpacking shared_ptr 2015-11-25 12:49:49 -05:00
theoreticalbts
1e10d3dc47 raw.hpp: Require high bits to be 0 when unpacking bool 2015-10-12 10:09:08 -04:00
Daniel Larimer
63677c47d9 helper for smart_ref 2015-07-08 16:43:25 -04:00
Daniel Larimer
f9f965809b bug fixes 2015-02-27 16:07:50 -05:00
Daniel Larimer
c0a4ed77b1 adding static_variant type 2015-02-27 13:41:55 -05:00
Daniel Larimer
537029f09f fix build 2015-02-23 14:01:58 -05:00