Reference documentation for deal.II version 9.0.0
deal.II
base
std_cxx11
bind.h
1
// ---------------------------------------------------------------------
2
//
3
// Copyright (C) 2009 - 2014 by the deal.II authors
4
//
5
// This file is part of the deal.II library.
6
//
7
// The deal.II library is free software; you can use it, redistribute
8
// it, and/or modify it under the terms of the GNU Lesser General
9
// Public License as published by the Free Software Foundation; either
10
// version 2.1 of the License, or (at your option) any later version.
11
// The full text of the license can be found in the file LICENSE at
12
// the top level of the deal.II distribution.
13
//
14
// ---------------------------------------------------------------------
15
16
#ifndef dealii_std_cxx11_bind_h
17
#define dealii_std_cxx11_bind_h
18
19
20
#include <deal.II/base/config.h>
21
22
23
# include <functional>
24
25
DEAL_II_NAMESPACE_OPEN
26
// In boost, the placeholders _1, _2, ... are in the global namespace. In
27
// C++11, they are in namespace std::placeholders, which makes them awkward to
28
// use. Import them into the ::std_cxx11 namespace instead and do the
29
// same below if we use boost instead. Namespace 'placeholders' is also defined
30
// in ::std_cxx11 namespace to make code C++ standard compatible.
31
// That is to say, if std::something works with C++11 standard,
32
// then ::std_cxx11::something should also work.
33
namespace
std_cxx11
34
{
35
using namespace
std::placeholders
;
36
using
std::bind;
37
using
std::ref;
38
using
std::cref;
39
using
std::reference_wrapper;
40
41
namespace
placeholders
=
std::placeholders
;
42
}
43
DEAL_II_NAMESPACE_CLOSE
44
45
46
// then allow using the old namespace name instead of the new one
47
DEAL_II_NAMESPACE_OPEN
48
namespace
std_cxx1x
=
std_cxx11
;
49
DEAL_II_NAMESPACE_CLOSE
50
51
#endif
placeholders
std_cxx11
Definition:
array.h:25
Generated by
1.8.14