Index: gcc/libstdc++-v3/testsuite/util/regression/trait/assoc/trait.hpp |
diff --git a/gcc/libstdc++-v3/testsuite/util/regression/trait/assoc/trait.hpp b/gcc/libstdc++-v3/testsuite/util/regression/trait/assoc/trait.hpp |
deleted file mode 100644 |
index a4a768e5e1c5c0b968831484955635c84ce1f360..0000000000000000000000000000000000000000 |
--- a/gcc/libstdc++-v3/testsuite/util/regression/trait/assoc/trait.hpp |
+++ /dev/null |
@@ -1,206 +0,0 @@ |
-// -*- C++ -*- |
- |
-// Copyright (C) 2005, 2006, 2009 Free Software Foundation, Inc. |
-// |
-// This file is part of the GNU ISO C++ Library. This library is free |
-// software; you can redistribute it and/or modify it under the terms |
-// of the GNU General Public License as published by the Free Software |
-// Foundation; either version 3, or (at your option) any later |
-// version. |
- |
-// This library is distributed in the hope that it will be useful, but |
-// WITHOUT ANY WARRANTY; without even the implied warranty of |
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
-// General Public License for more details. |
- |
-// You should have received a copy of the GNU General Public License |
-// along with this library; see the file COPYING3. If not see |
-// <http://www.gnu.org/licenses/>. |
- |
- |
-// Copyright (C) 2004 Ami Tavory and Vladimir Dreizin, IBM-HRL. |
- |
-// Permission to use, copy, modify, sell, and distribute this software |
-// is hereby granted without fee, provided that the above copyright |
-// notice appears in all copies, and that both that copyright notice |
-// and this permission notice appear in supporting documentation. None |
-// of the above authors, nor IBM Haifa Research Laboratories, make any |
-// representation about the suitability of this software for any |
-// purpose. It is provided "as is" without express or implied |
-// warranty. |
- |
-/** |
- * @file trait.hpp |
- * Contains traits for a random regression test |
- * for a specific container type. |
- */ |
- |
-#ifndef PB_DS_REGRESSION_TEST_TRAIT_HPP |
-#define PB_DS_REGRESSION_TEST_TRAIT_HPP |
- |
-#include <regression/trait/erase_if_fn.hpp> |
-#include <regression/trait/assoc/to_string.hpp> |
-#include <regression/trait/assoc/type_trait.hpp> |
-#include <regression/trait/assoc/native_type_trait.hpp> |
-#include <regression/trait/assoc/resize_trait.hpp> |
-#include <regression/trait/assoc/get_set_loads_trait.hpp> |
-#include <regression/trait/assoc/get_set_load_trait.hpp> |
-#include <regression/trait/assoc/node_update_trait.hpp> |
- |
-namespace __gnu_pbds |
-{ |
-namespace test |
-{ |
-namespace detail |
-{ |
- |
-#define PB_DS_CLASS_T_DEC \ |
- template<typename Cntnr> |
- |
-#define PB_DS_CLASS_C_DEC \ |
- regression_test_traits<Cntnr> |
- |
-#define PB_DS_TYPE_TRAITS_C_DEC \ |
- regression_test_type_traits<Cntnr> |
- |
-#define PB_DS_NATIVE_TYPE_TRAITS_C_DEC \ |
- native_type_traits<typename PB_DS_TYPE_TRAITS_C_DEC::key_type, \ |
- typename PB_DS_TYPE_TRAITS_C_DEC::mapped_type, \ |
- typename Cntnr::allocator_type> |
- |
-#define PB_DS_RESIZE_TRAITS_C_DEC \ |
- regression_test_resize_traits<Cntnr, typename Cntnr::container_category> |
- |
-#define PB_DS_SET_LOADS_TRAITS_C_DEC \ |
- regression_test_get_set_loacontainer_traits<Cntnr, \ |
- typename Cntnr::container_category> |
- |
-#define PB_DS_SET_LOAD_TRAITS_C_DEC \ |
- regression_test_get_set_load_traits<Cntnr,typename Cntnr::container_category> |
- |
-#define PB_DS_NODE_UPDATOR_TRAITS_C_DEC \ |
- regression_test_node_update_traits<Cntnr, typename Cntnr::container_category> |
- |
- template<typename Cntnr> |
- struct regression_test_traits : private PB_DS_TYPE_TRAITS_C_DEC, |
- private PB_DS_NATIVE_TYPE_TRAITS_C_DEC, |
- private PB_DS_RESIZE_TRAITS_C_DEC, |
- private PB_DS_NODE_UPDATOR_TRAITS_C_DEC, |
- private PB_DS_SET_LOADS_TRAITS_C_DEC, |
- private PB_DS_SET_LOAD_TRAITS_C_DEC |
- { |
- private: |
- typedef PB_DS_NATIVE_TYPE_TRAITS_C_DEC native_type_traits_base; |
- typedef PB_DS_TYPE_TRAITS_C_DEC type_traits_base; |
- |
- public: |
- typedef typename Cntnr::value_type value_type; |
- typedef typename Cntnr::const_reference const_reference; |
- typedef typename PB_DS_NATIVE_TYPE_TRAITS_C_DEC::type native_type; |
- typedef typename native_type::value_type native_value_type; |
- |
- // Only associative containers. |
- typedef typename Cntnr::key_type key_type; |
- typedef typename Cntnr::const_key_reference const_key_reference; |
- typedef typename native_type::key_type native_key_type; |
- |
- enum |
- { |
- resize = PB_DS_RESIZE_TRAITS_C_DEC::value, |
- get_set_loads = PB_DS_SET_LOADS_TRAITS_C_DEC::value, |
- get_set_load = PB_DS_SET_LOAD_TRAITS_C_DEC::value, |
- order_statistics = PB_DS_NODE_UPDATOR_TRAITS_C_DEC::order_statistics, |
- prefix_search = PB_DS_NODE_UPDATOR_TRAITS_C_DEC::prefix_search |
- }; |
- |
- template<typename T> |
- struct erase_if_fn : public regression_test_erase_if_fn<T> |
- { }; |
- |
- static size_t |
- erase_if(native_type& r_native_c) |
- { |
- typedef regression_test_erase_if_fn<native_value_type> erase_if_fn; |
- typename native_type::iterator it = r_native_c.begin(); |
- size_t num_ersd = 0; |
- while (it != r_native_c.end()) |
- if (erase_if_fn()(*it)) |
- { |
- ++num_ersd; |
- r_native_c.erase(it); |
- it = r_native_c.begin(); |
- } |
- else |
- ++it; |
- return num_ersd; |
- } |
- |
- static void |
- print_container(const Cntnr& r_c, std::ostream& r_os) |
- { PB_DS_TYPE_TRAITS_C_DEC::print_container(r_c, r_os); } |
- |
- template<typename Gen> |
- static key_type |
- generate_key(Gen& r_gen, size_t max) |
- { return PB_DS_TYPE_TRAITS_C_DEC::generate_key(r_gen, max); } |
- |
- template<typename Gen> |
- static value_type |
- generate_value(Gen& r_gen, size_t max) |
- { return PB_DS_TYPE_TRAITS_C_DEC::generate_value(r_gen, max); } |
- |
- static const_key_reference |
- extract_key(const_reference r_val) |
- { return type_traits_base::extract_key(r_val); } |
- |
- static native_key_type |
- native_key(const_key_reference r_key) |
- { return native_type_traits_base::native_key(r_key); } |
- |
- static native_value_type |
- native_value(const_reference r_val) |
- { return native_type_traits_base::native_value(r_val); } |
- |
- static const native_key_type& |
- extract_native_key(const native_value_type& r_val) |
- { return native_type_traits_base::extract_key(r_val); } |
- |
- static bool |
- cmp(const_reference r_val, const native_value_type& r_native_val) |
- { return val_to_string(r_val) == native_val_to_string(r_native_val); } |
- |
- static std::string |
- val_to_string(const_reference r_val) |
- { return to_string(r_val); } |
- |
- static std::string |
- key_to_string(const_key_reference r_key) |
- { return to_string(r_key); } |
- |
- static std::string |
- native_val_to_string(const native_value_type& r_native_val) |
- { return to_string(r_native_val); } |
- |
- static bool |
- prefix_match(const_key_reference r_key, const std::string& r_native_key) |
- { |
- const size_t len = std::min(r_key.length(), r_native_key.length()); |
- const std::string substr = r_native_key.substr(0, len); |
- return substr == static_cast<const std::string&>(r_key); |
- } |
- }; |
- |
-#undef PB_DS_TYPE_TRAITS_C_DEC |
-#undef PB_DS_NATIVE_TYPE_TRAITS_C_DEC |
-#undef PB_DS_RESIZE_TRAITS_C_DEC |
-#undef PB_DS_SET_LOADS_TRAITS_C_DEC |
-#undef PB_DS_SET_LOAD_TRAITS_C_DEC |
-#undef PB_DS_NODE_UPDATOR_TRAITS_C_DEC |
-#undef PB_DS_CLASS_T_DEC |
-#undef PB_DS_CLASS_C_DEC |
- |
-} // namespace detail |
-} // namespace test |
-} // namespace __gnu_pbds |
- |
-#endif |