File tree 1 file changed +8
-3
lines changed
1 file changed +8
-3
lines changed Original file line number Diff line number Diff line change 5
5
6
6
#include < stdx/compiler.hpp>
7
7
8
+ // TODO: remove when stdx contains a FWD() macro
9
+ #define FWD (x ) std::forward<decltype(x)>(x)
10
+
8
11
namespace msg {
9
12
10
13
template <typename RleStorageT, typename ... IndicesT>
@@ -14,13 +17,15 @@ struct rle_indices : IndicesT... {
14
17
15
18
constexpr auto operator ()(auto const &data) const {
16
19
// proxy to allow intersection without materializing a full bitset.
17
- return detail::rle_intersect{std::forward<decltype (storage.decode (
18
- this ->IndicesT ::operator ()(data)))>(
19
- storage.decode (this ->IndicesT ::operator ()(data)))...};
20
+ return detail::rle_intersect{
21
+ FWD (storage.decode (this ->IndicesT ::operator ()(data)))...};
20
22
}
21
23
22
24
// index entries will map into this storage to decode RLE data
23
25
RleStorageT storage;
24
26
};
25
27
26
28
} // namespace msg
29
+
30
+ // TODO: remove when stdx contains a FWD() macro
31
+ #undef FWD
You can’t perform that action at this time.
0 commit comments