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
306d4881
Commit
306d4881
authored
Jun 22, 2015
by
Dominik Charousset
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Remove unnecessary `concatenated_tuple::init`
parent
bef31e3d
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
16 additions
and
19 deletions
+16
-19
libcaf_core/caf/detail/concatenated_tuple.hpp
libcaf_core/caf/detail/concatenated_tuple.hpp
+3
-4
libcaf_core/src/concatenated_tuple.cpp
libcaf_core/src/concatenated_tuple.cpp
+13
-15
No files found.
libcaf_core/caf/detail/concatenated_tuple.hpp
View file @
306d4881
...
...
@@ -33,6 +33,7 @@ public:
concatenated_tuple
&
operator
=
(
const
concatenated_tuple
&
)
=
delete
;
using
message_data
::
cow_ptr
;
using
vector_type
=
std
::
vector
<
cow_ptr
>
;
static
cow_ptr
make
(
std
::
initializer_list
<
cow_ptr
>
xs
);
...
...
@@ -54,15 +55,13 @@ public:
uint16_t
type_nr_at
(
size_t
pos
)
const
override
;
concatenated_tuple
(
)
=
default
;
concatenated_tuple
(
std
::
initializer_list
<
cow_ptr
>
xs
)
;
private:
concatenated_tuple
(
const
concatenated_tuple
&
)
=
default
;
std
::
pair
<
message_data
*
,
size_t
>
select
(
size_t
pos
)
const
;
void
init
();
private:
vector_type
data_
;
uint32_t
type_token_
;
size_t
size_
;
...
...
libcaf_core/src/concatenated_tuple.cpp
View file @
306d4881
...
...
@@ -28,20 +28,7 @@ namespace caf {
namespace
detail
{
auto
concatenated_tuple
::
make
(
std
::
initializer_list
<
cow_ptr
>
xs
)
->
cow_ptr
{
auto
result
=
make_counted
<
concatenated_tuple
>
();
for
(
auto
&
x
:
xs
)
{
if
(
x
)
{
auto
dptr
=
dynamic_cast
<
const
concatenated_tuple
*>
(
x
.
get
());
if
(
dptr
)
{
auto
&
vec
=
dptr
->
data_
;
result
->
data_
.
insert
(
result
->
data_
.
end
(),
vec
.
begin
(),
vec
.
end
());
}
else
{
result
->
data_
.
push_back
(
std
::
move
(
x
));
}
}
}
result
->
init
();
return
cow_ptr
{
std
::
move
(
result
)};
return
cow_ptr
{
make_counted
<
concatenated_tuple
>
(
xs
)};
}
void
*
concatenated_tuple
::
mutable_at
(
size_t
pos
)
{
...
...
@@ -99,7 +86,18 @@ std::pair<message_data*, size_t> concatenated_tuple::select(size_t pos) const {
throw
std
::
out_of_range
(
"out of range: concatenated_tuple::select"
);
}
void
concatenated_tuple
::
init
()
{
concatenated_tuple
::
concatenated_tuple
(
std
::
initializer_list
<
cow_ptr
>
xs
)
{
for
(
auto
&
x
:
xs
)
{
if
(
x
)
{
auto
dptr
=
dynamic_cast
<
const
concatenated_tuple
*>
(
x
.
get
());
if
(
dptr
)
{
auto
&
vec
=
dptr
->
data_
;
data_
.
insert
(
data_
.
end
(),
vec
.
begin
(),
vec
.
end
());
}
else
{
data_
.
push_back
(
std
::
move
(
x
));
}
}
}
type_token_
=
make_type_token
();
for
(
auto
&
m
:
data_
)
{
for
(
size_t
i
=
0
;
i
<
m
->
size
();
++
i
)
{
...
...
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