]> https://gitweb.dealii.org/ - dealii.git/commitdiff
Remove int2type and bool2type. 8350/head
authorDavid Wells <drwells@email.unc.edu>
Sun, 7 Jul 2019 00:02:03 +0000 (20:02 -0400)
committerDavid Wells <drwells@email.unc.edu>
Sun, 7 Jul 2019 00:02:03 +0000 (20:02 -0400)
These were deprecated in 9.0 and are internal anyway.

include/deal.II/base/template_constraints.h

index 0a8062104371ae25eedeb9f12db0bd9f9178d084..63b8f7653fa041ad0ea7e0e627f21e352dd05485 100644 (file)
@@ -320,103 +320,6 @@ struct PointerComparison
 
 
 
-namespace internal
-{
-  /**
-   * A type that is sometimes used for template tricks. For example, in some
-   * situations one would like to do this:
-   *
-   * @code
-   *   template <int dim>
-   *   class X
-   *   {
-   *     // do something on subdim-dimensional sub-objects of the big
-   *     // dim-dimensional thing (for example on vertices/lines/quads of
-   *     // cells):
-   *     template <int subdim> void f();
-   *   };
-   *
-   *   template <int dim>
-   *   template <>
-   *   void X<dim>::f<0> ()
-   *   {
-   *     ...operate on the vertices of a cell...
-   *   }
-   *
-   *   template <int dim, int subdim> void g(X<dim> &x)
-   *   {
-   *     x.f<subdim> ();
-   *   }
-   * @endcode
-   *
-   * The problem is: the language doesn't allow us to specialize
-   * <code>X::f()</code> without specializing the outer class first. One of
-   * the common tricks is therefore to use something like this:
-   *
-   * @code
-   *   template <int N>
-   *   struct int2type
-   *   {};
-   *
-   *   template <int dim>
-   *   class X
-   *   {
-   *     // do something on subdim-dimensional sub-objects of the big
-   *     // dim-dimensional thing (for example on vertices/lines/quads of
-   *     // cells):
-   *     void f(int2type<0>);
-   *     void f(int2type<1>);
-   *     void f(int2type<2>);
-   *     void f(int2type<3>);
-   *   };
-   *
-   *   template <int dim>
-   *   void X<dim>::f (int2type<0>)
-   *   {
-   *     ...operate on the vertices of a cell...
-   *   }
-   *
-   *   template <int dim>
-   *   void X<dim>::f (int2type<1>)
-   *   {
-   *     ...operate on the lines of a cell...
-   *   }
-   *
-   *   template <int dim, int subdim>
-   *   void g(X<dim> &x)
-   *   {
-   *     x.f (int2type<subdim>());
-   *   }
-   * @endcode
-   *
-   * Note that we have replaced specialization of <code>X::f()</code> by
-   * overloading, but that from inside the function <code>g()</code>, we can
-   * still select which of the different <code>X::f()</code> we want based on
-   * the <code>subdim</code> template argument.
-   *
-   * @deprecated Use std::integral_constant<int, N> instead.
-   *
-   * @author Wolfgang Bangerth, 2006
-   */
-  template <int N>
-  struct DEAL_II_DEPRECATED int2type
-  {};
-
-
-  /**
-   * The equivalent of the int2type class for boolean arguments.
-   *
-   * @deprecated Use std::integral_constant<bool, B> instead.
-   *
-   * @author Wolfgang Bangerth, 2009
-   */
-  template <bool B>
-  struct DEAL_II_DEPRECATED bool2type
-  {};
-} // namespace internal
-
-
-
 /**
  * A type that can be used to determine whether two types are equal. It allows
  * to write code like

In the beginning the Universe was created. This has made a lot of people very angry and has been widely regarded as a bad move.

Douglas Adams


Typeset in Trocchi and Trocchi Bold Sans Serif.