You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@datasketches.apache.org by jm...@apache.org on 2020/06/02 21:51:08 UTC

[incubator-datasketches-cpp] 07/09: one more attempt at MSVC compatibility

This is an automated email from the ASF dual-hosted git repository.

jmalkin pushed a commit to branch patch_for_rc4
in repository https://gitbox.apache.org/repos/asf/incubator-datasketches-cpp.git

commit 98497af00743aaa183c4df7f9e5381ca47780232
Author: AlexanderSaydakov <Al...@users.noreply.github.com>
AuthorDate: Fri May 29 22:02:22 2020 -0700

    one more attempt at MSVC compatibility
---
 theta/include/conditional_back_inserter.hpp | 9 ++-------
 1 file changed, 2 insertions(+), 7 deletions(-)

diff --git a/theta/include/conditional_back_inserter.hpp b/theta/include/conditional_back_inserter.hpp
index 5e7f2ef..e9b0590 100644
--- a/theta/include/conditional_back_inserter.hpp
+++ b/theta/include/conditional_back_inserter.hpp
@@ -28,8 +28,8 @@ namespace datasketches {
 template <typename Container, typename Predicate>
 class conditional_back_insert_iterator: public std::back_insert_iterator<Container> {
 public:
-  conditional_back_insert_iterator(Container& c, Predicate& p): std::back_insert_iterator<Container>(c), p(p) {}
-  conditional_back_insert_iterator(Container& c, Predicate&& p): std::back_insert_iterator<Container>(c), p(std::forward<Predicate>(p)) {}
+  template<typename P>
+  conditional_back_insert_iterator(Container& c, P&& p): std::back_insert_iterator<Container>(c), p(std::forward<P>(p)) {}
 
   conditional_back_insert_iterator& operator=(typename Container::const_reference value) {
     if (p(value)) std::back_insert_iterator<Container>::operator=(value);
@@ -45,11 +45,6 @@ private:
 };
 
 template<typename Container, typename Predicate>
-conditional_back_insert_iterator<Container, Predicate> conditional_back_inserter(Container& c, Predicate& p) {
-  return conditional_back_insert_iterator<Container, Predicate>(c, p);
-}
-
-template<typename Container, typename Predicate>
 conditional_back_insert_iterator<Container, Predicate> conditional_back_inserter(Container& c, Predicate&& p) {
   return conditional_back_insert_iterator<Container, Predicate>(c, std::forward<Predicate>(p));
 }


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@datasketches.apache.org
For additional commands, e-mail: commits-help@datasketches.apache.org