Zappy Server
C++ game server: world, rules, scheduler, network
Loading...
Searching...
No Matches
GuiParser.hpp
Go to the documentation of this file.
1
#pragma once
2
3
#include <optional>
4
#include <string>
5
#include <string_view>
6
#include <variant>
7
17
namespace
Gui
{
18
struct
Msz
{};
19
struct
Bct
{
20
int
x
,
y
;
21
};
22
struct
Mct
{};
23
struct
Tna
{};
24
struct
Ppo
{
25
int
id
;
26
};
27
struct
Plv
{
28
int
id
;
29
};
30
struct
Pin
{
31
int
id
;
32
};
33
struct
Sgt
{};
34
struct
Sst
{
35
int
freq
;
36
};
37
struct
Stu
{};
38
39
using
Request
= std::variant<Msz, Bct, Mct, Tna, Ppo, Plv, Pin, Sgt, Sst, Stu>;
40
}
// namespace Gui
41
50
class
GuiParser
{
51
public
:
56
static
std::optional<Gui::Request>
parse
(std::string_view line);
57
};
GuiParser
Parses a raw GUI client line into a typed Gui::Request.
Definition
GuiParser.hpp:50
GuiParser::parse
static std::optional< Gui::Request > parse(std::string_view line)
Parse one line from a GUI client (no trailing newline).
Definition
GuiParser.cpp:14
Gui
Typed structs for the GUI client request commands.
Definition
GuiParser.hpp:17
Gui::Request
std::variant< Msz, Bct, Mct, Tna, Ppo, Plv, Pin, Sgt, Sst, Stu > Request
Definition
GuiParser.hpp:39
Gui::Bct
Definition
GuiParser.hpp:19
Gui::Bct::x
int x
Definition
GuiParser.hpp:20
Gui::Bct::y
int y
Definition
GuiParser.hpp:20
Gui::Mct
Definition
GuiParser.hpp:22
Gui::Msz
Definition
GuiParser.hpp:18
Gui::Pin
Definition
GuiParser.hpp:30
Gui::Pin::id
int id
Definition
GuiParser.hpp:31
Gui::Plv
Definition
GuiParser.hpp:27
Gui::Plv::id
int id
Definition
GuiParser.hpp:28
Gui::Ppo
Definition
GuiParser.hpp:24
Gui::Ppo::id
int id
Definition
GuiParser.hpp:25
Gui::Sgt
Definition
GuiParser.hpp:33
Gui::Sst
Definition
GuiParser.hpp:34
Gui::Sst::freq
int freq
Definition
GuiParser.hpp:35
Gui::Stu
Definition
GuiParser.hpp:37
Gui::Tna
Definition
GuiParser.hpp:23
server
src
protocol
GuiParser.hpp
Generated by
1.9.8