1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-26 19:07:36 +00:00

LibIPC: Replace u32/u64 value coders with u/ul/ull value coders

We can and should do more cleanups of this kind, but this is a quick fix
to unbreak the 32-bit HackStudio build.
This commit is contained in:
Andreas Kling 2021-11-29 02:18:58 +01:00
parent 16746efcf8
commit ddce053f6c
4 changed files with 42 additions and 9 deletions

View file

@ -36,17 +36,16 @@ Encoder& Encoder::operator<<(u16 value)
return *this;
}
Encoder& Encoder::operator<<(u32 value)
void Encoder::encode_u32(u32 value)
{
m_buffer.data.ensure_capacity(m_buffer.data.size() + 4);
m_buffer.data.unchecked_append((u8)value);
m_buffer.data.unchecked_append((u8)(value >> 8));
m_buffer.data.unchecked_append((u8)(value >> 16));
m_buffer.data.unchecked_append((u8)(value >> 24));
return *this;
}
Encoder& Encoder::operator<<(u64 value)
void Encoder::encode_u64(u64 value)
{
m_buffer.data.ensure_capacity(m_buffer.data.size() + 8);
m_buffer.data.unchecked_append((u8)value);
@ -57,6 +56,29 @@ Encoder& Encoder::operator<<(u64 value)
m_buffer.data.unchecked_append((u8)(value >> 40));
m_buffer.data.unchecked_append((u8)(value >> 48));
m_buffer.data.unchecked_append((u8)(value >> 56));
}
Encoder& Encoder::operator<<(unsigned value)
{
encode_u32(value);
return *this;
}
Encoder& Encoder::operator<<(unsigned long value)
{
if constexpr (sizeof(value) == 4)
encode_u32(value);
else
encode_u64(value);
return *this;
}
Encoder& Encoder::operator<<(unsigned long long value)
{
if constexpr (sizeof(value) == 4)
encode_u32(value);
else
encode_u64(value);
return *this;
}