aboutsummaryrefslogtreecommitdiff
path: root/sibs
diff options
context:
space:
mode:
authordec05eba <dec05eba@protonmail.com>2018-08-02 21:49:52 +0200
committerdec05eba <dec05eba@protonmail.com>2020-07-06 07:16:10 +0200
commitca725b9301f2e2274788f6b3e9bc45d6d6986aa5 (patch)
tree8834ccd77c695a821bec4787c1d7e45f6890242e /sibs
parent71a8906ae6414df3646ef81e1cd9cd6947eb0a6d (diff)
Add skip method to deserializer
Diffstat (limited to 'sibs')
-rw-r--r--sibs/SafeDeserializer.hpp7
-rw-r--r--sibs/SafeSerializer.hpp5
2 files changed, 12 insertions, 0 deletions
diff --git a/sibs/SafeDeserializer.hpp b/sibs/SafeDeserializer.hpp
index 0110920..763140a 100644
--- a/sibs/SafeDeserializer.hpp
+++ b/sibs/SafeDeserializer.hpp
@@ -97,6 +97,13 @@ namespace sibs
{
return size;
}
+
+ void skip(usize bytesToSkip)
+ {
+ bytesToSkip = bytesToSkip < size ? bytesToSkip : size;
+ size -= bytesToSkip;
+ data += bytesToSkip;
+ }
private:
void verifyExtractSize(usize typeSize) const
{
diff --git a/sibs/SafeSerializer.hpp b/sibs/SafeSerializer.hpp
index efc4ecd..fe8ee58 100644
--- a/sibs/SafeSerializer.hpp
+++ b/sibs/SafeSerializer.hpp
@@ -64,6 +64,11 @@ namespace sibs
memcpy(&buffer[offset], data, size);
}
}
+
+ void add(const char *data, usize size)
+ {
+ add((const u8*)data, size);
+ }
std::vector<u8>& getBuffer()
{