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
7c61390b
Commit
7c61390b
authored
Aug 21, 2012
by
Dominik Charousset
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
added overload to match send_tuple(self, ...)
parent
1e98cb46
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
7 additions
and
6 deletions
+7
-6
cppa/cppa.hpp
cppa/cppa.hpp
+7
-6
No files found.
cppa/cppa.hpp
View file @
7c61390b
...
...
@@ -413,6 +413,7 @@ inline void send_impl(T* whom, any_tuple&& what) {
template
<
typename
T
,
typename
...
Args
>
inline
void
send_tpl_impl
(
T
*
whom
,
Args
&&
...
what
)
{
static_assert
(
sizeof
...(
Args
)
>
0
,
"no message to send"
);
if
(
whom
)
self
->
send_message
(
whom
,
make_any_tuple
(
std
::
forward
<
Args
>
(
what
)...));
}
...
...
@@ -444,7 +445,6 @@ send_tuple(const intrusive_ptr<C>& whom, any_tuple what) {
template
<
class
C
,
typename
...
Args
>
inline
typename
std
::
enable_if
<
std
::
is_base_of
<
channel
,
C
>::
value
>::
type
send
(
const
intrusive_ptr
<
C
>&
whom
,
Args
&&
...
what
)
{
static_assert
(
sizeof
...(
Args
)
>
0
,
"no message to send"
);
detail
::
send_tpl_impl
(
whom
.
get
(),
std
::
forward
<
Args
>
(
what
)...);
}
...
...
@@ -596,11 +596,12 @@ inline void delayed_reply(const std::chrono::duration<Rep, Period>& rtime,
#ifndef CPPA_DOCUMENTATION
// matches "send(this, ...)" and "send(self, ...)"
template
<
typename
Arg0
,
typename
...
Args
>
inline
void
send
(
local_actor
*
whom
,
Arg0
&&
arg0
,
Args
&&
...
args
)
{
detail
::
send_tpl_impl
(
whom
,
std
::
forward
<
Arg0
>
(
arg0
),
std
::
forward
<
Args
>
(
args
)...);
inline
void
send_tuple
(
local_actor
*
whom
,
any_tuple
what
)
{
detail
::
send_impl
(
whom
,
std
::
move
(
what
));
}
template
<
typename
...
Args
>
inline
void
send
(
local_actor
*
whom
,
Args
&&
...
args
)
{
detail
::
send_tpl_impl
(
whom
,
std
::
forward
<
Args
>
(
args
)...);
}
inline
const
self_type
&
operator
<<
(
const
self_type
&
s
,
any_tuple
what
)
{
detail
::
send_impl
(
s
.
get
(),
std
::
move
(
what
));
...
...
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