Sacado Package Browser (Single Doxygen Collection)
Version of the Day
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
src
mpl
Sacado_mpl_is_placeholder.hpp
Go to the documentation of this file.
1
// $Id$
2
// $Source$
3
// @HEADER
4
// ***********************************************************************
5
//
6
// Sacado Package
7
// Copyright (2006) Sandia Corporation
8
//
9
// Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation,
10
// the U.S. Government retains certain rights in this software.
11
//
12
// This library is free software; you can redistribute it and/or modify
13
// it under the terms of the GNU Lesser General Public License as
14
// published by the Free Software Foundation; either version 2.1 of the
15
// License, or (at your option) any later version.
16
//
17
// This library is distributed in the hope that it will be useful, but
18
// WITHOUT ANY WARRANTY; without even the implied warranty of
19
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
20
// Lesser General Public License for more details.
21
//
22
// You should have received a copy of the GNU Lesser General Public
23
// License along with this library; if not, write to the Free Software
24
// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301
25
// USA
26
// Questions? Contact David M. Gay (dmgay@sandia.gov) or Eric T. Phipps
27
// (etphipp@sandia.gov).
28
//
29
// ***********************************************************************
30
// @HEADER
31
32
#ifndef SACADO_MPL_IS_PLACEHOLDER_HPP
33
#define SACADO_MPL_IS_PLACEHOLDER_HPP
34
35
#include "
Sacado_mpl_is_placeholder.hpp
"
36
#include "
Sacado_mpl_none.hpp
"
37
38
namespace
Sacado {
39
40
namespace
mpl {
41
42
template
<
class
F>
43
struct
is_placeholder
{
44
static
const
bool
value
=
false
;
45
};
46
template
<
int
N>
47
struct
is_placeholder
<
arg
<N> > {
48
static
const
bool
value
=
true
;
49
};
50
template
<
template
<
class
T1>
class
F
,
51
class
T1
>
52
struct
is_placeholder
<
F
<
T1
> > {
53
static
const
bool
value
=
is_placeholder<T1>::value
;
54
};
55
template
<
template
<
class
T1,
class
T2>
class
F
,
56
class
T1
,
57
class
T2
>
58
struct
is_placeholder
<
F
<
T1
,
T2
> > {
59
static
const
bool
value
=
60
is_placeholder<T1>::value
||
61
is_placeholder<T2>::value
;
62
};
63
template
<
template
<
class
T1,
class
T2,
class
T3>
class
F
,
64
class
T1
,
65
class
T2
,
66
class
T3>
67
struct
is_placeholder
<
F
<
T1
,
T2
,T3> > {
68
static
const
bool
value
=
69
is_placeholder<T1>::value
||
70
is_placeholder<T2>::value
||
71
is_placeholder<T3>::value
;
72
};
73
template
<
template
<
class
T1,
class
T2,
class
T3,
class
T4>
class
F
,
74
class
T1
,
75
class
T2
,
76
class
T3,
77
class
T4>
78
struct
is_placeholder
<
F
<
T1
,
T2
,T3,T4> > {
79
static
const
bool
value
=
80
is_placeholder<T1>::value
||
81
is_placeholder<T2>::value
||
82
is_placeholder<T3>::value
||
83
is_placeholder<T4>::value
;
84
};
85
template
<
template
<
class
T1,
class
T2,
class
T3,
class
T4,
class
T5>
class
F
,
86
class
T1
,
87
class
T2
,
88
class
T3,
89
class
T4,
90
class
T5>
91
struct
is_placeholder
<
F
<
T1
,
T2
,T3,T4,T5> > {
92
static
const
bool
value
=
93
is_placeholder<T1>::value
||
94
is_placeholder<T2>::value
||
95
is_placeholder<T3>::value
||
96
is_placeholder<T4>::value
||
97
is_placeholder<T5>::value
;
98
};
99
100
}
// namespace mpl
101
102
}
// namespace Sacado
103
104
#endif // SACADO_MPL_IS_PLACEHOLDER_HPP
Sacado::mpl::is_placeholder::value
static const bool value
Definition:
Sacado_mpl_is_placeholder.hpp:44
F
Sacado::Fad::DFad< double > F
Definition:
ad_example.cpp:40
Sacado::mpl::arg
Definition:
Sacado_mpl_placeholders.hpp:42
Sacado_mpl_is_placeholder.hpp
T2
#define T2(r, f)
Definition:
Sacado_rad.hpp:578
Sacado::Fad::DFad< double >
T1
#define T1(r, f)
Definition:
Sacado_rad.hpp:603
Sacado::mpl::is_placeholder
Definition:
Sacado_mpl_is_placeholder.hpp:43
Sacado_mpl_none.hpp
Generated by
1.8.5