Martchus
0a902ac30c
Add experimental versioning for binary (de)serializer
2021-07-13 00:37:05 +02:00
Martchus
5e72012ed5
Fix typos found via `codespell --skip .git -w`
2021-07-03 19:50:25 +02:00
Martchus
e3d32ddfa1
Use std::string_view for CodeFactory parameters (where possible)
2021-05-16 19:25:30 +02:00
Martchus
03563aafbf
Fix generator tests; it needs C++17
2019-11-14 18:13:39 +01:00
Martchus
fecde7d2d1
Improve adding RapidJSON include dirs to tests
...
* Also check for `RapidJSON_INCLUDE_DIRS` which seems to be used now
* Do not add `-I` without subsequent path if the include directory
is missing/empty which would lead to the Clang error:
`error: unable to handle compilation, expected exactly one compiler job in ''`
2019-08-09 17:54:08 +02:00
Martchus
6542eab80d
Adapt to changes in c++utilities
2019-06-14 19:16:51 +02:00
Martchus
8cac133104
Adapt to changes in c++utilities
2019-06-10 22:46:06 +02:00
Martchus
b058e9e9b9
Fix include for "empty" case in generator tests
2019-02-13 11:39:09 +01:00
Martchus
39dcba215e
Let CMake generate code for test application
2019-01-13 22:27:35 +01:00
Martchus
ef27d71f43
Fix multiple definition error caused by forward declarations
2018-11-08 00:38:45 +01:00
Martchus
aa92cab4e5
Test pointer handling of binary serialization
2018-10-28 21:35:32 +01:00
Martchus
25e7891573
Apply clang-format
2018-06-26 00:10:44 +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
9dc7bd371c
Apply clang-format
2018-06-23 14:35:53 +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
f0870d3a54
Test with size_t (defined in Clang's builtin headers)
2018-02-03 16:14:20 +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
beb4d1d672
Prevent ambiguity of own arguments and clang options consistently
2018-01-20 19:32:46 +01:00
Martchus
2fa1e923f9
Skip deserializing const member variables
2017-12-31 00:48:51 +01:00
Martchus
c5968f1663
Test whether code generation is skipped for included structs
2017-12-31 00:37:30 +01:00
Martchus
69d4fa193f
Apply clang-format
2017-11-18 00:27:25 +01:00
Martchus
8c3dd5535d
Pass the include dir for c++utilities and RapidJSON to tests
...
So test cases do not fail if the header files for those
dependencies are installed in a custom location.
2017-11-17 22:01:18 +01:00
Martchus
d5144d8e75
Restore GCC compatibility
2017-11-16 01:56:04 +01:00
Martchus
19590d30a4
Explicitely ignore static members (for now)
2017-11-13 16:41:47 +01:00
Martchus
c71a9baa54
Test std::unique_ptr in generated code
2017-11-13 16:18:32 +01:00
Martchus
e9324f0ec3
Fix incomplete use of AdaptedJsonSerializable and handling tuple
2017-11-12 00:44:47 +01:00
Martchus
0d74d915f8
Allow optionally (de)serializing private members
2017-11-09 01:11:00 +01:00
Martchus
e29dcce40f
Only consider public members
...
Otherwise the compiler would complain about accessibility
anyways.
2017-11-09 00:07:40 +01:00
Martchus
062f8c0d27
Allow enabling (de)serialization for 3rd party structs
2017-11-06 23:27:27 +01:00
Martchus
c4b4429880
Test --json-classes argument
2017-11-06 20:04:42 +01:00
Martchus
a7feb57f22
Allow specifying additional classes for JSON serialization
2017-11-06 15:31:21 +01:00
Martchus
95719ac8a4
Test mixing custom (de)serialization with generated code
2017-11-04 15:17:06 +01:00
Martchus
fdadb17c04
Call tests for JSON generator JsonGeneratorTests
2017-11-02 23:09:39 +01:00
Martchus
a768408493
Refactor JsonSerializationCodeGenerator
...
* JSONSerializationCodeGenerator -> JsonSerializationCodeGenerator
* Move to separate file
2017-10-28 16:31:07 +02:00
Martchus
c94c896f6c
Refactor RapidJSON wrapper
...
* Move all JSON related files into own directory
* Move helper for error handling in own header
* Remove some leftovers from debugging
* Rename classes, use Json instead of JSON
2017-10-28 16:23:39 +02:00
Martchus
ad03afb1f2
Keep track of errors and fix usage of Boost.Hana
...
* Optionally save errors which occur during deserialization
to allow error handling
* Don't operate on copies when using Boost.Hana
2017-10-28 15:50:16 +02:00
Martchus
f51fec58c2
Test nested structs with generator
2017-10-27 17:53:25 +02:00
Martchus
ef6a91076f
Apply clang-format
2017-10-27 15:48:26 +02:00
Martchus
c026dafff7
Split generator tests into multiple files
2017-10-25 18:25:47 +02:00
Martchus
b725f59e78
Rename moc -> generator
2017-10-25 17:41:19 +02:00