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>
69using std::for_each;
70using std::find;
71using std::find_if;
72using std::adjacent_find;
73using std::count;
74using std::count_if;
75using std::search;
76using std::search_n;
77using std::swap_ranges;
78using std::transform;
79using std::replace;
80using std::replace_if;
81using std::replace_copy;
82using std::replace_copy_if;
83using std::generate;
84using std::generate_n;
85using std::remove;
86using std::remove_if;
87using std::remove_copy;
88using std::remove_copy_if;
89using std::unique;
90using std::unique_copy;
91using std::reverse;
92using std::reverse_copy;
93using std::rotate;
94using std::rotate_copy;
95using std::random_shuffle;
96using std::partition;
97using std::stable_partition;
98using std::sort;
99using std::stable_sort;
100using std::partial_sort;
101using std::partial_sort_copy;
102using std::nth_element;
103using std::lower_bound;
104using std::upper_bound;
105using std::equal_range;
106using std::binary_search;
107using std::merge;
108using std::inplace_merge;
109using std::includes;
110using std::set_union;
111using std::set_intersection;
112using std::set_difference;
113using std::set_symmetric_difference;
114using std::min_element;
115using std::max_element;
116using std::next_permutation;
117using std::prev_permutation;
118using std::find_first_of;
119using std::find_end;
120
121// Names from stl_heap.h
122using std::push_heap;
123using std::pop_heap;
124using std::make_heap;
125using std::sort_heap;
126
127// Names from stl_numeric.h
128using std::accumulate;
129using std::inner_product;
130using std::partial_sum;
131using std::adjacent_difference;
132
133// Names from ext/algorithm
134using __gnu_cxx::random_sample;
135using __gnu_cxx::random_sample_n;
136using __gnu_cxx::is_sorted;
137using __gnu_cxx::is_heap;
138using __gnu_cxx::count;   // Extension returning void
139using __gnu_cxx::count_if;   // Extension returning void
140
141// Names from ext/numeric
142using __gnu_cxx::power;
143using __gnu_cxx::iota;
144
145#endif /* _BACKWARD_ALGO_H */
146