Nexus Engine
v0.0.1
Theme:
Default
League
Round
Robot
Toggle main menu visibility
Loading...
Searching...
No Matches
PacketWriter.inl
Go to the documentation of this file.
1
// SPDX-License-Identifier: MIT
2
3
#pragma once
4
5
namespace
Nexus::Network
{
6
template
<
typename
T>
7
void
PacketWriter::Write
(
const
T& value) {
8
static_assert
(!std::is_pointer_v<T>);
9
static_assert
(std::is_trivially_copyable_v<T>);
10
11
if
constexpr
(std::integral<T>) {
12
Wire::Append
(m_buffer, value);
13
}
else
{
14
const
auto
* bytes =
reinterpret_cast<
const
byte
*
>
(&value);
15
m_buffer.insert(m_buffer.end(), bytes, bytes +
sizeof
(T));
16
}
17
}
18
}
// namespace Nexus::Network
Nexus::Network::PacketWriter::Write
void Write(const T &value)
Definition
PacketWriter.inl:7
Nexus::Network::Wire::Append
void Append(std::vector< byte > &buffer, T value)
Definition
Packet.inl:22
Nexus::Network
Definition
NetworkAddress.cpp:9
Source
Engine
Network
Serialization
Public
PacketWriter.inl
Generated by
1.18.0