Chris@16: /////////////////////////////////////////////////////////////////////////////// Chris@16: /// \file algorithm.hpp Chris@16: /// Includes the range-based versions of the algorithms in the Chris@16: /// C++ standard header file Chris@16: // Chris@16: ///////////////////////////////////////////////////////////////////////////// Chris@16: Chris@16: // Copyright 2009 Neil Groves. Chris@16: // Distributed under the Boost Software License, Version 1.0. (See Chris@16: // accompanying file LICENSE_1_0.txt or copy at Chris@16: // http://www.boost.org/LICENSE_1_0.txt) Chris@16: // Chris@16: // Acknowledgements: Chris@16: // This code uses combinations of ideas, techniques and code snippets Chris@16: // from: Thorsten Ottosen, Eric Niebler, Jeremy Siek, Chris@16: // and Vladimir Prus' Chris@16: // Chris@16: // The original mutating algorithms that served as the first version Chris@16: // were originally written by Vladimir Prus' Chris@16: // code from Boost Wiki Chris@16: Chris@101: #if defined(_MSC_VER) Chris@16: #pragma once Chris@16: #endif Chris@16: Chris@16: #ifndef BOOST_RANGE_ALGORITHM_HPP_INCLUDED_01012009 Chris@16: #define BOOST_RANGE_ALGORITHM_HPP_INCLUDED_01012009 Chris@16: Chris@16: #include Chris@16: #include Chris@16: #include Chris@16: #include Chris@16: #include Chris@16: #include Chris@16: #include Chris@16: Chris@16: // Non-mutating algorithms Chris@16: #include Chris@16: #include Chris@16: #include Chris@16: #include Chris@16: #include Chris@16: #include Chris@16: #include Chris@16: #include Chris@16: #include Chris@16: #include Chris@16: #include Chris@16: #include Chris@16: #include Chris@16: Chris@16: // Mutating algorithms Chris@16: #include Chris@16: #include Chris@16: #include Chris@16: #include Chris@16: #include Chris@16: #include Chris@16: #include Chris@16: #include Chris@16: #include Chris@16: #include Chris@16: #include Chris@16: #include Chris@16: #include Chris@16: #include Chris@16: #include Chris@16: #include Chris@16: #include Chris@16: #include Chris@16: #include Chris@16: #include Chris@16: #include Chris@16: #include Chris@16: #include Chris@16: #include Chris@16: #include Chris@16: #include Chris@16: #include Chris@16: #include Chris@16: #include Chris@16: #include Chris@16: Chris@16: // Binary search Chris@16: #include Chris@16: #include Chris@16: #include Chris@16: #include Chris@16: Chris@16: // Set operations of sorted ranges Chris@16: #include Chris@16: Chris@16: // Heap operations Chris@16: #include Chris@16: Chris@16: // Minimum and Maximum Chris@16: #include Chris@16: #include Chris@16: Chris@16: // Permutations Chris@16: #include Chris@16: Chris@16: #endif // include guard Chris@16: