]> git.lyx.org Git - features.git/blobdiff - src/support/lyxalgo.h
Fix compilation with MSVC 19.
[features.git] / src / support / lyxalgo.h
index dcbfd6d5d3bc4e195e7064e6bbf51097cc049748..8777a03e41d989160f3915304e759810316a9fa4 100644 (file)
@@ -1,23 +1,19 @@
 // -*- C++ -*-
 /**
  * \file lyxalgo.h
- * Copyright 1995-2002 the LyX Team
- * Read the file COPYING
+ * This file is part of LyX, the document processor.
+ * Licence details can be found in the file COPYING.
  *
- * A variety of useful templates.
+ * \author Lars Gullik Bjønnes
+ *
+ * Full author contact details are available in file CREDITS.
  *
- * \author unknown
+ * A variety of useful templates.
  */
 
-
 #ifndef LYX_ALGO_H
 #define LYX_ALGO_H
 
-#include <utility>
-#include <iterator>
-#include <algorithm>
-
 namespace lyx {
 
 
@@ -47,46 +43,6 @@ bool sorted(For first, For last, Cmp cmp)
 }
 
 
-struct firster {
-       template <class P1, class P2>
-       P1 operator()(std::pair<P1, P2> const & p) {
-               return p.first;
-       }
-};
-
-
-/**
- * copy elements in the given range to the output iterator 
- * if the predicate evaluates as true
- */
-template <class InputIter, class OutputIter, class Func>
-OutputIter copy_if(InputIter first, InputIter last,
-              OutputIter result, Func func)
-{
-       for (; first != last; ++first) {
-               if (func(*first)) {
-                       *result++ = *first;
-               }
-       }
-       return result;
-}
-
-
-/// A slot in replacement for std::count for systems where it is broken.
-template <class Iterator, class T>
-typename std::iterator_traits<Iterator>::difference_type
-count (Iterator first, Iterator last, T const & value)
-{
-#ifdef HAVE_STD_COUNT
-       return std::count(first, last, value);
-#else
-       std::iterator_traits<Iterator>::difference_type n = 0;
-       while (first != last)
-               if (*first++ == value) ++n;
-       return n;
-#endif
-}
-
 } // namespace lyx
 
 #endif // LYX_ALGO_H