Commit Graph

255 Commits

Author SHA1 Message Date
Martchus 1f6fade6c2 Apply cmake-format 2019-02-09 21:25:11 +01:00
Martchus 39dcba215e Let CMake generate code for test application 2019-01-13 22:27:35 +01:00
Martchus 974c0b0396 Allow to obtain only the JSON document
So the final serialization can be customized
2018-11-11 22:55:59 +01:00
Martchus ef27d71f43 Fix multiple definition error caused by forward declarations 2018-11-08 00:38:45 +01:00
Martchus 712eb4fb28 Fix compiling with GCC
Template specializations produced by the macros apparently
must be in the same namespace for GCC (not sure whether this
is actually enforced by the standard).
2018-11-01 04:54:46 +00:00
Martchus 7e649fe2bf Require c++utilities 4.16.0 2018-11-01 04:54:46 +00:00
Martchus d64174c000 Add experimental support for multimap
Makes sense for binary (de)serialization, not sure about
JSON (de)serialization
2018-11-01 04:54:46 +00:00
Martchus f77229471a Allow to teat custom types as std::map/std::set 2018-11-01 04:54:46 +00:00
Martchus 98b25c813e Update README.md 2018-11-01 04:54:33 +00:00
Martchus 40b85b411e Bump version 0.0.5 => 0.0.6 2018-11-01 04:54:24 +00:00
Martchus aa92cab4e5 Test pointer handling of binary serialization 2018-10-28 21:35:32 +01:00
Martchus 5835cd85a5 Remove unused createFileIDForMemBuffer() 2018-09-04 19:39:32 +02:00
Martchus 933d14ef1d Check whether include dirs for generator exist at configure time 2018-08-04 15:22:32 +02:00
Martchus 29cd810507 Use C++ standard from target in CMake macro 2018-07-27 17:40:15 +02:00
Martchus 7fcbead8e3 Escape angle brackets in README 2018-07-22 20:51:54 +02:00
Martchus 25e7891573 Apply clang-format 2018-06-26 00:10:44 +02:00
Martchus da56134456 binary (de)serialization: Prevent duplicating shared pointer 2018-06-26 00:10:09 +02:00
Martchus f140c7f436 Use C++ 17 2018-06-26 00:07:59 +02:00
Martchus c170993392 Reduce code duplication between serialization generators 2018-06-23 18:04:30 +02:00
Martchus e93be04e35 Implement generator for binary (de)serialization
Still need to refactor common code with the JSON generator.
2018-06-23 17:25:30 +02:00
Martchus 6117ef3e1d Rename functions of BinarySerializable
So the names are more like the ones in JsonSerializable.
2018-06-23 17:24:28 +02:00
Martchus 04dccdbd74 Make binary (de)serialization for chrono utils inline 2018-06-23 17:23:37 +02:00
Martchus ac1fe81497 Add Boost.Hana support for binary (de)serialization 2018-06-23 15:30:51 +02:00
Martchus 9dc7bd371c Apply clang-format 2018-06-23 14:35:53 +02:00
Martchus 316c1ba838 Add library for basic binary (de)serialization 2018-06-23 14:35:43 +02:00
Martchus 551ead193e Update patch version to 0.0.5 2018-05-08 18:53:21 +02:00
Martchus 8628427e6d Fix usage of enable_if with GCC 8
Seems like the trick with the three dots isn't working
with GCC 8 anymore. So let's make it a default template
parameter then.

Not sure whether GCC 8 is here correct and whether this
workaround causes further trouble.
2018-05-07 23:48:37 +02:00
Martchus 36463cd6dc Apply clang-format from LLVM 6 2018-04-04 20:31:49 +02:00
Martchus fa6e16b45d Update README section about packages 2018-04-04 20:30:40 +02:00
Martchus 7db20f5ad5 List all required LLVM/Clang libraries explicitely
Those libraries are direct dependencies and must be listed
explicitely when linking dynamically because transitive
dependencies of clangTooling are not pulled automatically
by CMake in this case.

This is required to use LLVM 6 which has switched to dynamic
libraries (at least under Arch Linux).
2018-03-14 18:33:15 +01:00
Martchus 03e3a4bc67 Support std::(unordered_)?(multi)?set 2018-02-26 22:39:09 +01:00
Martchus 432f997d16 Increase version 0.0.2 -> 0.0.3 2018-02-05 22:42:10 +01:00
Martchus e6c54a37e4 Improve README and make it work with md2pdf 2018-02-05 21:58:37 +01:00
Martchus 9e11d805c1 Prevent running Qt's generator on files from this generator 2018-02-05 21:21:56 +01:00
Martchus ea924b7a3f Merge sections for passing options to Clang 2018-02-03 16:26:21 +01:00
Martchus f0870d3a54 Test with size_t (defined in Clang's builtin headers) 2018-02-03 16:14:20 +01:00
Martchus 2098ff702e fixup! Do not turn errors into warnings by default 2018-02-03 16:10:01 +01:00
Martchus d1fe76f322 Use mutable instead of const_cast 2018-02-03 16:09:31 +01:00
Martchus 1f571549e7 Update README.md 2018-02-03 16:08:54 +01:00
Martchus 8587d62583 Do not turn errors into warnings by default
Not required anymore since the resource dir is specified
correctly.
2018-02-03 15:47:25 +01:00
Martchus 21e7f83995 Improve documentation 2018-02-03 15:45:15 +01:00
Martchus 54d4a15d4f Set Clang's resource dir and platform triple correctly
* The option `-resource-dir` must be specified to
  point to Clang's resource directory containing built-in
  header files. Then the massive warnings are gone.
* Setting the platform triple seems to be the right way
  for cross-compilation. Note that the stdlib.h still needs
  to be worked around.
2018-02-03 15:44:10 +01:00
Martchus 4ae20cf38b Clean the CLI flags passed to clang by default 2018-02-03 15:37:30 +01:00
Martchus 8eb9e9ec27 Do not adjust the config in AST consumer
* Adjusting the config at this point seems
  to be too late, at least it does not seem
  have any effect
* Rather use the CLI arguments
2018-02-03 15:36:53 +01:00
Martchus 0d2f39a2b5 Use hash map to find specified code generator
So adding further generators will not result in having
a lot of "else if (!strcmp(..." conditions.

This also allows to improve the error message.
2018-02-02 18:21:04 +01:00
Martchus 1eaa2d52c2 Update README and TODOs to current state 2018-01-24 19:37:25 +01:00
Martchus ce14bd12c4 Fix 'above' in README.md 2018-01-24 19:12:36 +01:00
Martchus 079534f301 Update TODOs 2018-01-21 19:44:33 +01:00
Martchus a2f9c915b6 Increase version 0.0.1 -> 0.0.2 2018-01-20 21:44:57 +01:00
Martchus 7d9e1cf1de Add TODO 2018-01-20 21:20:12 +01:00