2
0
mirror of https://github.com/boostorg/pfr.git synced 2026-01-30 08:02:33 +00:00
Commit Graph

93 Commits

Author SHA1 Message Date
Antony Polukhin
26fffe6ff0 Added 'How it works' section into the docs before_precise 2016-10-14 08:59:22 +03:00
Antony Polukhin
e353fd63f2 Fixed typo 2016-10-12 22:05:27 +03:00
Antony Polukhin
a277cdac19 Minor cleanups and made fields_count() correctly work with structures that have bitfields 2016-10-08 18:04:27 +03:00
Antony Polukhin
48b86158f0 Added static_assert for fields_count() function. Now noncopy constructable classes are not allowed 2016-10-08 18:02:44 +03:00
Antony Polukhin
8e0f27baee Add more tests and try to relax POD requirement as was proposed by Anton Bikineev 2016-10-08 18:00:47 +03:00
Antony Polukhin
9c88c56cb3 Remove unused classes, drop member reference checks as was proposed by Anton Bikineev 2016-10-08 17:58:51 +03:00
Antony Polukhin
c110bdf0e6 Minor refactoring and one more test 2016-09-30 20:28:15 +03:00
Antony Polukhin
5ae2e2fd5f Optimized compilation times 2016-09-30 20:26:18 +03:00
Antony Polukhin
7c252b4ca5 Updated the motivating example 2016-09-29 22:35:22 +03:00
Antony Polukhin
a144d044df Disable clang, as it is too old in repo 2016-09-29 22:08:03 +03:00
Antony Polukhin
558734e7f8 Fixing clang compile options 2016-09-29 21:45:33 +03:00
Antony Polukhin
940cb1507f Fix testing issue with missing boost/type_index.hpp header and enable clang 2016-09-29 21:42:23 +03:00
Antony Polukhin
378acb1fe9 More tests and significant compilation time improvement 2016-09-29 21:33:24 +03:00
Antony Polukhin
c9bc21ed9c Fix all the known clang related issues 2016-09-29 21:31:42 +03:00
Antony Polukhin
d6687e5d18 Cleanups, clang related workarounds 2016-09-29 21:30:47 +03:00
Antony Polukhin
b0347fb617 Improving compilation times 2016-09-29 21:29:27 +03:00
Antony Polukhin
ac034a6ef7 Removing copypasted code and improving compilation times 2016-09-29 21:28:26 +03:00
Antony Polukhin
138a7aff2e Dropping std::tuple and fixing my own tuple implementation. std::tuple on GCC-6 was exceeding template instantiation depth limit extreamely fast 2016-09-29 21:25:59 +03:00
Antony Polukhin
12940c6ed9 Attempt to fix ineffective std::tuple_cat by implementing it from scratch 2016-09-29 21:24:17 +03:00
Antony Polukhin
282094999e Attempt to use std::tuple to avoid reinventing all the tuple functionality from scratch 2016-09-29 21:23:01 +03:00
Antony Polukhin
72c831cb1a More fixes and debugging for nested structures 2016-09-29 21:21:59 +03:00
Antony Polukhin
3dad4f6271 More tests fixed and enabled, dropped hand-written comparators in favour of std::tuple default ones 2016-09-28 22:45:01 +03:00
Antony Polukhin
46ca2b70b2 More tests enabled and more fixes 2016-09-28 22:43:47 +03:00
Antony Polukhin
558a49daee Use std::tuple in most of the places, instead adding and reinventing new functionality in our own tuple 2016-09-28 22:42:19 +03:00
Antony Polukhin
fd381c5dd4 Continuing work on correct representation of structures with tricky alignments 2016-09-28 22:40:35 +03:00
Antony Polukhin
313d667664 Fixing the compilation; still fails to compile 2016-09-26 20:45:03 +03:00
Antony Polukhin
4c2f7fbce4 Representing nested structures as nested tuples; fails to compile 2016-09-26 20:43:49 +03:00
Antony Polukhin
f4126ca464 Added test case from Lisa Lippincott and started fixing the issue 2016-09-26 20:41:45 +03:00
Antony Polukhin
217b4f9d50 Fixed typo 2016-09-07 01:37:03 +03:00
Antony Polukhin
b5dea7e0c4 Improved docs, removed unused classes 2016-09-05 21:41:53 +03:00
Antony Polukhin
79a79332ae Do not include c++17 headers by default (they are not tested yet) 2016-07-28 23:46:47 +03:00
Antony Polukhin
16e28d3c3c tuned cpp17 generator: the output is even more compact now 2016-07-28 23:45:57 +03:00
Antony Polukhin
452e01ff0b Generator updated, more compact c++17 code produced 2016-07-28 23:24:18 +03:00
Antony Polukhin
9fbb780839 Move more files to better reflect their content and usability (pod_ -> flat_) 2016-07-18 23:54:07 +03:00
Antony Polukhin
494a9cf6ca Rename more internal functions to better match their usability (removed flat prefix and moved to sequence_tuple namespace) 2016-07-18 23:51:22 +03:00
Antony Polukhin
67b1b5c06a Rename internal function to better reflect their usability in C++17 2016-07-18 23:49:21 +03:00
Antony Polukhin
212efb1be0 Added initial and untested version of C++17 functionality 2016-07-18 23:48:14 +03:00
Antony Polukhin
135faf692d Move some files and change header names 2016-07-18 23:46:45 +03:00
Antony Polukhin
9ecedfe6ca Better formatting for generated files 2016-07-18 23:42:07 +03:00
Antony Polukhin
27cd2d78e3 Initial commit of reflections based on 'structured bindings' from C++17 2016-07-14 22:38:34 +03:00
Antony Polukhin
7d9dec3b44 Fair implementation of comparison operators (now actually uses the underlying operators of POD types). More constexpr methods and adde some include guards 2016-07-14 22:35:17 +03:00
Antony Polukhin
2751725148 Changed comparisons _impl to work with sequence_tuple::tuple and made those _impl functions to constexpr 2016-07-14 22:31:16 +03:00
Antony Polukhin
4211404f20 Added tuple_size method, updated the docs and dropped some useless specializations 2016-07-14 22:29:05 +03:00
Antony Polukhin
6ef486f0b7 detail::as_tuple -> detail::as_flat_tuple 2016-07-12 22:20:55 +03:00
Antony Polukhin
2ca4142e93 Made an as_tuple function and improved some of the functions to reinterpret_cast to tuple only once 2016-07-12 21:34:05 +03:00
Antony Polukhin
c9bb66911a rename get to flat_get. Remove some usings 2016-07-12 21:32:38 +03:00
Antony Polukhin
1b0ae91a52 New library name in README 2016-06-18 17:04:35 +03:00
Antony Polukhin
74a1bb1eac More travisCI related fixes (9) 2016-06-18 14:46:54 +03:00
Antony Polukhin
b9987c70ab More travisCI related fixes (8) 2016-06-18 14:37:35 +03:00
Antony Polukhin
54f82e9482 More travisCI related fixes (7) 2016-06-18 13:35:58 +03:00