1 // Backward-compat support -*- C++ -*- 2 3 // Copyright (C) 2001 Free Software Foundation, Inc. 4 // 5 // This file is part of the GNU ISO C++ Library. This library is free 6 // software; you can redistribute it and/or modify it under the 7 // terms of the GNU General Public License as published by the 8 // Free Software Foundation; either version 2, or (at your option) 9 // any later version. 10 11 // This library is distributed in the hope that it will be useful, 12 // but WITHOUT ANY WARRANTY; without even the implied warranty of 13 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 // GNU General Public License for more details. 15 16 // You should have received a copy of the GNU General Public License along 17 // with this library; see the file COPYING. If not, write to the Free 18 // Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, 19 // USA. 20 21 // As a special exception, you may use this file as part of a free software 22 // library without restriction. Specifically, if other files instantiate 23 // templates or use macros or inline functions from this file, or you compile 24 // this file and link it with other files to produce an executable, this 25 // file does not by itself cause the resulting executable to be covered by 26 // the GNU General Public License. This exception does not however 27 // invalidate any other reasons why the executable file might be covered by 28 // the GNU General Public License. 29 30 /* 31 * 32 * Copyright (c) 1994 33 * Hewlett-Packard Company 34 * 35 * Permission to use, copy, modify, distribute and sell this software 36 * and its documentation for any purpose is hereby granted without fee, 37 * provided that the above copyright notice appear in all copies and 38 * that both that copyright notice and this permission notice appear 39 * in supporting documentation. Hewlett-Packard Company makes no 40 * representations about the suitability of this software for any 41 * purpose. It is provided "as is" without express or implied warranty. 42 * 43 * 44 * Copyright (c) 1996,1997 45 * Silicon Graphics Computer Systems, Inc. 46 * 47 * Permission to use, copy, modify, distribute and sell this software 48 * and its documentation for any purpose is hereby granted without fee, 49 * provided that the above copyright notice appear in all copies and 50 * that both that copyright notice and this permission notice appear 51 * in supporting documentation. Silicon Graphics makes no 52 * representations about the suitability of this software for any 53 * purpose. It is provided "as is" without express or implied warranty. 54 */ 55 56 #ifndef _BACKWARD_ALGO_H 57 #define _BACKWARD_ALGO_H 1 58 59 #include "backward_warning.h" 60 #include "algobase.h" 61 #include "tempbuf.h" 62 #include "iterator.h" 63 #include <bits/stl_algo.h> 64 #include <bits/stl_numeric.h> 65 #include <ext/algorithm> 66 #include <ext/numeric> 67 68 // Names from <stl_algo.h> 69 using std::for_each; 70 using std::find; 71 using std::find_if; 72 using std::adjacent_find; 73 using std::count; 74 using std::count_if; 75 using std::search; 76 using std::search_n; 77 using std::swap_ranges; 78 using std::transform; 79 using std::replace; 80 using std::replace_if; 81 using std::replace_copy; 82 using std::replace_copy_if; 83 using std::generate; 84 using std::generate_n; 85 using std::remove; 86 using std::remove_if; 87 using std::remove_copy; 88 using std::remove_copy_if; 89 using std::unique; 90 using std::unique_copy; 91 using std::reverse; 92 using std::reverse_copy; 93 using std::rotate; 94 using std::rotate_copy; 95 using std::random_shuffle; 96 using std::partition; 97 using std::stable_partition; 98 using std::sort; 99 using std::stable_sort; 100 using std::partial_sort; 101 using std::partial_sort_copy; 102 using std::nth_element; 103 using std::lower_bound; 104 using std::upper_bound; 105 using std::equal_range; 106 using std::binary_search; 107 using std::merge; 108 using std::inplace_merge; 109 using std::includes; 110 using std::set_union; 111 using std::set_intersection; 112 using std::set_difference; 113 using std::set_symmetric_difference; 114 using std::min_element; 115 using std::max_element; 116 using std::next_permutation; 117 using std::prev_permutation; 118 using std::find_first_of; 119 using std::find_end; 120 121 // Names from stl_heap.h 122 using std::push_heap; 123 using std::pop_heap; 124 using std::make_heap; 125 using std::sort_heap; 126 127 // Names from stl_numeric.h 128 using std::accumulate; 129 using std::inner_product; 130 using std::partial_sum; 131 using std::adjacent_difference; 132 133 // Names from ext/algorithm 134 using __gnu_cxx::random_sample; 135 using __gnu_cxx::random_sample_n; 136 using __gnu_cxx::is_sorted; 137 using __gnu_cxx::is_heap; 138 using __gnu_cxx::count; // Extension returning void 139 using __gnu_cxx::count_if; // Extension returning void 140 141 // Names from ext/numeric 142 using __gnu_cxx::power; 143 using __gnu_cxx::iota; 144 145 #endif /* _BACKWARD_ALGO_H */ 146