Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
A
Actor Framework
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
cpp-libs
Actor Framework
Commits
c4851a18
Commit
c4851a18
authored
Oct 09, 2019
by
Dominik Charousset
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Auto-generate to_string implementations for enums
parent
c555e552
Changes
5
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
12 additions
and
121 deletions
+12
-121
libcaf_net/CMakeLists.txt
libcaf_net/CMakeLists.txt
+9
-2
libcaf_net/caf/net/operation.hpp
libcaf_net/caf/net/operation.hpp
+3
-7
libcaf_net/src/connection_state.cpp
libcaf_net/src/connection_state.cpp
+0
-43
libcaf_net/src/ec.cpp
libcaf_net/src/ec.cpp
+0
-26
libcaf_net/src/message_type.cpp
libcaf_net/src/message_type.cpp
+0
-43
No files found.
libcaf_net/CMakeLists.txt
View file @
c4851a18
...
...
@@ -5,11 +5,19 @@ project(caf_net C CXX)
# e.g., for creating proper Xcode projects
file
(
GLOB_RECURSE LIBCAF_NET_HDRS
"caf/*.hpp"
)
enum_to_string
(
"caf/net/basp/connection_state.hpp"
"basp_conn_strings.cpp"
)
enum_to_string
(
"caf/net/basp/ec.hpp"
"basp_ec_strings.cpp"
)
enum_to_string
(
"caf/net/basp/message_type.hpp"
"basp_message_type_strings.cpp"
)
enum_to_string
(
"caf/net/operation.hpp"
"operation_strings.cpp"
)
# list cpp files excluding platform-dependent files
set
(
LIBCAF_NET_SRCS
"
${
CMAKE_CURRENT_BINARY_DIR
}
/basp_conn_strings.cpp"
"
${
CMAKE_CURRENT_BINARY_DIR
}
/basp_ec_strings.cpp"
"
${
CMAKE_CURRENT_BINARY_DIR
}
/basp_message_type_strings.cpp"
"
${
CMAKE_CURRENT_BINARY_DIR
}
/operation_strings.cpp"
src/actor_proxy_impl.cpp
src/application.cpp
src/connection_state.cpp
src/convert_ip_endpoint.cpp
src/datagram_socket.cpp
src/ec.cpp
...
...
@@ -17,7 +25,6 @@ set(LIBCAF_NET_SRCS
src/header.cpp
src/host.cpp
src/ip.cpp
src/message_type.cpp
src/multiplexer.cpp
src/net/backend/test.cpp
src/net/endpoint_manager_queue.cpp
...
...
libcaf_net/caf/net/operation.hpp
View file @
c4851a18
...
...
@@ -18,6 +18,8 @@
#pragma once
#include <string>
namespace
caf
{
namespace
net
{
...
...
@@ -45,13 +47,7 @@ constexpr operation operator~(operation x) {
return
static_cast
<
operation
>
(
~
static_cast
<
int
>
(
x
));
}
constexpr
const
char
*
to_string
(
operation
x
)
{
return
x
==
operation
::
none
?
"none"
:
(
x
==
operation
::
read
?
"read"
:
(
x
==
operation
::
write
?
"write"
:
"read_write"
));
}
std
::
string
to_string
(
operation
x
);
}
// namespace net
}
// namespace caf
libcaf_net/src/connection_state.cpp
deleted
100644 → 0
View file @
c555e552
/******************************************************************************
* ____ _ _____ *
* / ___| / \ | ___| C++ *
* | | / _ \ | |_ Actor *
* | |___ / ___ \| _| Framework *
* \____/_/ \_|_| *
* *
* Copyright 2011-2019 Dominik Charousset *
* *
* Distributed under the terms and conditions of the BSD 3-Clause License or *
* (at your option) under the terms and conditions of the Boost Software *
* License 1.0. See accompanying files LICENSE and LICENSE_ALTERNATIVE. *
* *
* If you did not receive a copy of the license files, see *
* http://opensource.org/licenses/BSD-3-Clause and *
* http://www.boost.org/LICENSE_1_0.txt. *
******************************************************************************/
#include "caf/net/basp/connection_state.hpp"
namespace
caf
{
namespace
net
{
namespace
basp
{
namespace
{
const
char
*
connection_state_names
[]
=
{
"await_handshake_header"
,
"await_handshake_payload"
,
"await_header"
,
"await_payload"
,
"shutdown"
,
};
}
// namespace
std
::
string
to_string
(
connection_state
x
)
{
return
connection_state_names
[
static_cast
<
uint8_t
>
(
x
)];
}
}
// namespace basp
}
// namespace net
}
// namespace caf
libcaf_net/src/ec.cpp
View file @
c4851a18
...
...
@@ -26,32 +26,6 @@ namespace caf {
namespace
net
{
namespace
basp
{
namespace
{
string_view
ec_names
[]
=
{
"none"
,
"invalid_magic_number"
,
"unexpected_number_of_bytes"
,
"unexpected_payload"
,
"missing_payload"
,
"illegal_state"
,
"invalid_handshake"
,
"missing_handshake"
,
"unexpected_handshake"
,
"version_mismatch"
,
"unimplemented"
,
"app_identifiers_mismatch"
,
"invalid_payload"
,
"invalid_scheme"
,
};
}
// namespace
std
::
string
to_string
(
ec
x
)
{
auto
result
=
ec_names
[
static_cast
<
uint8_t
>
(
x
)];
return
std
::
string
{
result
.
begin
(),
result
.
end
()};
}
error
make_error
(
ec
x
)
{
return
{
static_cast
<
uint8_t
>
(
x
),
atom
(
"basp"
)};
}
...
...
libcaf_net/src/message_type.cpp
deleted
100644 → 0
View file @
c555e552
/******************************************************************************
* ____ _ _____ *
* / ___| / \ | ___| C++ *
* | | / _ \ | |_ Actor *
* | |___ / ___ \| _| Framework *
* \____/_/ \_|_| *
* *
* Copyright 2011-2019 Dominik Charousset *
* *
* Distributed under the terms and conditions of the BSD 3-Clause License or *
* (at your option) under the terms and conditions of the Boost Software *
* License 1.0. See accompanying files LICENSE and LICENSE_ALTERNATIVE. *
* *
* If you did not receive a copy of the license files, see *
* http://opensource.org/licenses/BSD-3-Clause and *
* http://www.boost.org/LICENSE_1_0.txt. *
******************************************************************************/
#include "caf/net/basp/message_type.hpp"
#include "caf/string_view.hpp"
namespace
caf
{
namespace
net
{
namespace
basp
{
namespace
{
string_view
message_type_names
[]
=
{
"handshake"
,
"actor_message"
,
"resolve_request"
,
"resolve_response"
,
"monitor_message"
,
"down_message"
,
"heartbeat"
,
};
}
// namespace
std
::
string
to_string
(
message_type
x
)
{
auto
result
=
message_type_names
[
static_cast
<
uint8_t
>
(
x
)];
return
std
::
string
{
result
.
begin
(),
result
.
end
()};
}
}
// namespace basp
}
// namespace net
}
// namespace caf
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment