Martchus
07e9546855
Avoid relying on compiler optimizations for binary conversions
...
* Add/update binary conversion functions to use `std::memcopy`
* Only GCC could actually optimize the custom code using bit operations
* Clang could only optimize the `getBytes()` functions
* MSVC could not optimize any of the functions
* The to…Int…() functions cannot be updated as they are `constexpr` (and
thus `std::memcopy` and `reinterpret_cast` cannot be used). So they stay
as-is and `toInt()` has been added instead
* The `BinaryReader` class has been updated to use the new `toInt()`
function
2023-02-05 21:29:22 +01:00
Martchus
9a95db3773
Add BinaryReader::readRemainingBytes()
2019-10-30 20:29:26 +01:00
Martchus
b693c72eb1
Fix old namespaces being mentioned in the documentation
2019-09-04 18:45:28 +02:00
Martchus
b48b2f5c06
Have everything in one top-level namespace
2019-06-10 21:56:46 +02:00
Martchus
0f2f98393f
Allow inlining more BinaryReader/BinaryWriter functions
2019-06-04 19:27:49 +02:00
Martchus
f95e16bc80
Remove readMultibyteTerminatedString*() functions
2019-06-04 19:10:52 +02:00
Martchus
5a8029692b
Fix some Doxygen warnings
2019-06-01 15:07:08 +02:00
Martchus
9a50d2b8df
Remove types
2019-04-13 20:33:39 +02:00
Marius Kittler
73ddc55702
Inline some methods of BinaryReader/BinaryWriter
2019-04-13 20:33:39 +02:00
Martchus
0c7e7eb91d
Fix BinaryReader::read(int32 &one32BitInt)
2018-06-21 23:25:14 +02:00
Martchus
5deb077fe5
Extend Binary{Reader,Writer} to ease binary (de)serialization
...
To implement reflection-enabled binary (de)serialization
in https://github.com/Martchus/reflective-rapidjson .
2018-06-20 23:07:08 +02:00
Martchus
cdecc48a1d
Fix warning about signedness conversion in BinaryReader
...
Length is expected to be positive
2018-03-04 21:06:29 +01:00
Martchus
b375ea80b0
Deprecate BinaryReader::readTerminatedString() methods
2018-01-29 16:30:46 +01:00
Martchus
209a59106e
Fix BinaryReader::readMultibyteTerminatedStringXX methods
2018-01-29 16:29:49 +01:00
Martchus
e52fd5a4af
Apply tidy after updating to clang-format 5.0.0
...
The behavior of clang-format slightly changed in Clang 5.0.0:
http://releases.llvm.org/5.0.0/tools/clang/docs/ReleaseNotes.html#clang-format
2017-09-17 21:45:23 +02:00
Martchus
59e20b1043
Apply clang-format
2017-05-01 03:13:11 +02:00
Martchus
d6b08b8ed9
Fix decoration for static builds
...
- Also add improvemnts a few other things in the build system
2016-08-29 15:35:48 +02:00
Martchus
db7b02b1db
Make header guards more unique and consistent
2016-06-11 19:09:14 +02:00
Martchus
41c44a5f43
Delete m_streamSize member of BinaryReader
2016-06-08 00:38:58 +02:00
Martchus
a7941b92e2
added BitReader::readUnsignedExpGolombCodedBits() and
...
BitReader::readSignedExpGolombCodedBits()
2016-02-16 17:25:03 +01:00
Martchus
1d8177ba41
added missing methods
2016-01-27 01:00:38 +01:00
Martchus
cd01df9c64
access CRC tab directly
2015-10-16 21:34:58 +02:00
Martchus
4495067484
fixed aliasing warning
2015-09-16 17:54:40 +02:00
Martchus
4d6bf67188
fixed includes
2015-09-06 20:19:09 +02:00
Martchus
603dbf823a
fixed includes
2015-09-06 15:30:16 +02:00
Martchus
c62e25ee2a
improved conversion utilities
2015-07-18 01:11:12 +02:00
Martchus
24ba96a17f
First commit
2015-04-22 18:36:40 +02:00