pythonology
6518148b50
pclass: Rename Type::is_byte_based -> Type::is_byte_aligned
...
Also introduced the Type::cast convenience method. This is primarily to
fix type casting over in kipy when deserializing XML values. This
was necessary since properties in kipy are not type-aware, and as such
couldn't determine if the value was actually a string, or meant to
be casted to something else.
2019-07-04 00:15:41 -04:00
pythonology
81376458ac
serialization: Fix loading of empty vectors in the XML serializer
2019-06-29 23:38:34 -04:00
pythonology
5a0ec6f2d7
pclass: Introduce the PUBLIC property flag, along with the WRITE_PUBLIC_ONLY serializer flag
...
Also fixed issues with serializer tests.
2019-06-27 19:42:18 -04:00
pythonology
4d48485d4c
util: Oops... fixed build error
2019-06-16 01:12:11 -04:00
pythonology
6a89e22a29
serialization: Fix incorrect byte alignment when...
...
...dynamic properties contain object pointers that end with bit-based
properties.
2019-06-15 23:12:04 -04:00
pythonology
40d088efe3
serialization: Fix inconsistencies in binary serialization
...
- Fixed incorrect byte alignment following bit-based types.
- Boolean types are now serialized as 1 bit.
- write_to/read_from methods now take an is_file argument.
Types such as enums, and strings change their serialization format depending on if they're in file mode or not.
- Enums now serialize the element name in file mode, and element value otherwise.
2019-06-02 22:38:29 -04:00
Joshua Scott
8d1b9c21be
cmake: Fix ZLIB_STATIC errors on Linux
2019-01-21 13:15:22 +00:00
Joshua Scott
0692adfb78
cmake: Implement static linking for ZLIB by setting ZLIB_STATIC
2019-01-21 12:57:51 +00:00
Joshua Scott
7aca9ceda5
serialization: Fix issue with empty arrays in JsonSerializer
2019-01-21 12:27:55 +00:00
pythonology
680d378002
pclass: EnumType::write_to should first attempt cast the value to `Enum`
2019-01-10 23:30:54 -05:00
Joshua Scott
69189e0fba
serialization: Add FileSerializer and XmlSerializer
2019-01-07 22:49:12 +00:00
Joshua Scott
4833f7fb76
etc: Refactoring, documentation, and more tests
2019-01-01 20:54:57 +00:00
Joshua Scott
bab80d20c7
pclass: Cleanup VectorProperty and fix build errors
2018-12-21 01:20:52 +00:00
Joshua Scott
2dad313885
pclass: Add value_caster specialization for json to bit integer
2018-12-20 15:45:52 +00:00
Joshua Scott
b5559834ac
etc: Combine IProperty with IDynamicProperty, and cleanup StaticProperty
2018-12-20 15:39:31 +00:00
Joshua Scott
f3aa42578d
serialization: Implement JsonSerializer loading functionality
2018-12-18 21:35:59 +00:00
Joshua Scott
f9ab6560d9
pclass: Fix CI build errors + small change to value_caster
2018-12-15 22:03:08 +00:00
Joshua Scott
c512185115
pclass: Second attempt to fix BitInteger casters on CI
2018-12-15 17:11:16 +00:00
Joshua Scott
8c70a249d8
pclass: Possible fix for BitInteger casters not building on CI
2018-12-15 17:07:33 +00:00
Joshua Scott
25355c22bc
pclass: Fix issue with Value compiling on CI
2018-12-15 16:56:09 +00:00
Joshua Scott
1a3dfbea48
serialization: Implement saving via JsonSerializer
2018-12-15 16:52:36 +00:00
Joshua Scott
def6549bcb
pclass: Implement casters between primitives and json object
2018-12-15 16:51:45 +00:00
Joshua Scott
20f74ee004
serialization: Rename SerializerBinary to BinarySerializer
2018-12-14 15:27:06 +00:00
Joshua Scott
187de3feba
util: Fix missing include build error on CI for std::unique_ptr<T>
2018-12-14 15:07:17 +00:00
Joshua Scott
a2c577ce47
etc: Start using smart pointers
2018-12-13 22:12:04 +00:00
Joshua Scott
1955e72bb9
pclass: Fix a potential future problem
2018-12-13 00:57:56 +00:00
Joshua Scott
9e5ca2816f
test: Add compression tests for SerializerBinary
2018-12-11 20:33:58 +00:00
Joshua Scott
7181c49bfb
test: Add properties to slightly improve serialization coverage
2018-12-11 15:47:37 +00:00
Joshua Scott
c7829e5235
etc: Fix build and test errors on CI
2018-12-11 01:19:30 +00:00
Joshua Scott
377136ef0d
pclass: Attempt to fix macro issue on CI
2018-12-10 21:35:51 +00:00
Joshua Scott
c61a723174
etc: Make Type::read_from return a Value instead of reading into one
2018-12-10 21:26:34 +00:00
Joshua Scott
28eee3699c
pclass: Fix missing include compile error on CI
2018-12-09 23:31:55 +00:00
Joshua Scott
62fc1e13ef
util: Fix missing noexcept compile error on CI
2018-12-09 23:28:40 +00:00
Joshua Scott
19324c06ba
test: SerializerBinary tests
2018-12-09 23:21:51 +00:00
Joshua Scott
4872d1a2a4
pclass: Improve Value casting and implement basic enum types
2018-12-09 23:21:22 +00:00
Joshua Scott
595b6167c0
pclass: Fix CI build errors
2018-12-05 00:45:01 +00:00
Joshua Scott
38f69d722c
pclass: Implement Value casting
2018-12-04 22:24:26 +00:00
Joshua Scott
24d3c0f146
util: Improve test coverage for BitBuffer/BitStream
2018-12-01 17:17:19 +00:00
Joshua Scott
6a213c18d4
etc: Change naming convention for base classes (prefix with "I")
2018-12-01 17:16:40 +00:00
Joshua Scott
34bc3d30bc
etc: Move the responsibility of type checking to properties
2018-11-27 15:36:57 +00:00
Joshua Scott
3a22c992b5
etc: Implement deserialization and object copying
...
Also make BitStream tests use REQUIRE instead of SUCCESS and FAIL for better output.
2018-11-27 11:51:56 +00:00
Joshua Scott
ad448befe6
Merge branch 'master' into feature/object-property
2018-11-18 17:19:58 +00:00
Joshua Scott
cc788b12b3
etc: Add Doxygen
2018-11-18 17:19:18 +00:00
Joshua Scott
4e3b3de391
util: Implement a common interface for bit streams
2018-11-18 17:10:21 +00:00
Joshua Scott
050a63152b
util: Attempt to fix error with FlagsEnum
2018-11-16 15:32:17 +00:00
Joshua Scott
abbaf7ce58
pclass: Fix build errors on CI
2018-11-16 15:18:32 +00:00
Joshua Scott
d6442068ed
serialization: Start implementing SerializerBinary
...
This current implementation can fully save objects, but cannot currently load them.
2018-11-16 15:04:00 +00:00
Joshua Scott
48aba1f0df
pclass: Implement string primitives and class types
2018-11-16 15:02:43 +00:00
Joshua Scott
25d371b49f
util: Forgot to push header file for previous commit
2018-11-16 14:53:46 +00:00
Joshua Scott
b9455e243f
util: Add write_copy and read_copy to BitStream
2018-11-16 14:52:49 +00:00