]> git.ipfire.org Git - thirdparty/gcc.git/blobdiff - libstdc++-v3/testsuite/util/performance/assoc/timing/tree_split_join_test.hpp
Update copyright years in libstdc++-v3/
[thirdparty/gcc.git] / libstdc++-v3 / testsuite / util / performance / assoc / timing / tree_split_join_test.hpp
index 4309d5a5b08f803e4ff051fe6b342ced59674939..f28390ea07b497a5644f8d8b21991e893d9495b0 100644 (file)
@@ -1,11 +1,11 @@
 // -*- C++ -*-
 
-// Copyright (C) 2005, 2006 Free Software Foundation, Inc.
+// Copyright (C) 2005-2014 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 2, or (at your option) any later
+// Foundation; either version 3, or (at your option) any later
 // version.
 
 // This library is distributed in the hope that it will be useful, but
 // 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 COPYING.  If not, write to
-// the Free Software Foundation, 59 Temple Place - Suite 330, Boston,
-// MA 02111-1307, USA.
-
-// As a special exception, you may use this file as part of a free
-// software library without restriction.  Specifically, if other files
-// instantiate templates or use macros or inline functions from this
-// file, or you compile this file and link it with other files to
-// produce an executable, this file does not by itself cause the
-// resulting executable to be covered by the GNU General Public
-// License.  This exception does not however invalidate any other
-// reasons why the executable file might be covered by 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.
 
 #include <common_type/assoc/string_form.hpp>
 #include <iterator>
 
-namespace pb_ds
+namespace __gnu_pbds
 {
-
   namespace test
   {
-
     namespace detail
     {
-
       template<typename Cntnr, bool Support_Split_Join>
       class split_join_functor
       {
@@ -75,11 +62,8 @@ namespace pb_ds
            {
              typename Cntnr::const_iterator mid_it = m_r_container.begin();
              std::advance(mid_it, m_r_container.size() / 2);
-
              Cntnr other;
-
              m_r_container.split(*mid_it, other);
-
              m_r_container.join(other);
            }
        }
@@ -89,9 +73,7 @@ namespace pb_ds
       };
 
       template<typename Cntnr>
-      class split_join_functor<
-       Cntnr,
-       false>
+      class split_join_functor<Cntnr, false>
       {
       public:
         split_join_functor(Cntnr& r_container) : m_r_container(r_container)
@@ -116,25 +98,17 @@ namespace pb_ds
       private:
        Cntnr& m_r_container;
       };
-
     } // namespace detail
 
-#define PB_DS_CLASS_T_DEC                      \
     template<bool Support_Split_Join>
-
-#define PB_DS_CLASS_C_DEC                                              \
-    tree_split_join_test<                                              \
-                                               Support_Split_Join>
-
-    template<bool Support_Split_Join>
-    class tree_split_join_test : private pb_ds::test::detail::timing_test_base
+    class tree_split_join_test : private __gnu_pbds::test::detail::timing_test_base
     {
     public:
       tree_split_join_test(size_t vn, size_t vs, size_t vm);
 
       template<typename Cntnr>
       void
-      operator()(__gnu_cxx::typelist::detail::type_to_type<Cntnr>);
+      operator()(Cntnr);
 
     private:
       tree_split_join_test(const tree_split_join_test& );
@@ -145,48 +119,40 @@ namespace pb_ds
       const size_t m_vm;
     };
 
-    PB_DS_CLASS_T_DEC
-    PB_DS_CLASS_C_DEC::
+    template<bool Support_Split_Join>
+    tree_split_join_test<Support_Split_Join>::
     tree_split_join_test(size_t vn, size_t vs, size_t vm) :
       m_vn(vn),
       m_vs(vs),
       m_vm(vm)
     { }
 
-    PB_DS_CLASS_T_DEC
+    template<bool Support_Split_Join>
     template<typename Cntnr>
     void
-    PB_DS_CLASS_C_DEC::
-    operator()(__gnu_cxx::typelist::detail::type_to_type<Cntnr>)
+    tree_split_join_test<Support_Split_Join>::
+    operator()(Cntnr)
     {
-      xml_result_set_performance_formatter res_set_fmt(
-                                                      string_form<Cntnr>::name(),
-                                                      string_form<Cntnr>::desc());
+      typedef xml_result_set_performance_formatter formatter_type;
+      formatter_type res_set_fmt(string_form<Cntnr>::name(),
+                                string_form<Cntnr>::desc());
 
       for (size_t v = m_vn; v < m_vm; v += m_vs)
        {
          Cntnr cntnr;
-
          for (size_t ins = 0; ins < v; ++ ins)
             cntnr.insert((typename Cntnr::value_type)ins);
 
-         pb_ds::test::detail::split_join_functor<Cntnr, Support_Split_Join>
+         __gnu_pbds::test::detail::split_join_functor<Cntnr, Support_Split_Join>
             fn(cntnr);
 
          const double res =
-            pb_ds::test::detail::timing_test_base::operator()(fn);
-
+            __gnu_pbds::test::detail::timing_test_base::operator()(fn);
          res_set_fmt.add_res(v, res);
        }
     }
-
-#undef PB_DS_CLASS_T_DEC
-
-#undef PB_DS_CLASS_C_DEC
-
   } // namespace test
+} // namespace __gnu_pbds
 
-} // namespace pb_ds
-
-#endif // #ifndef PB_DS_TREE_SPLIT_JOIN_TEST_HPP
+#endif