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_quote.hpp
Go to the documentation of this file.
1
// @HEADER
2
// *****************************************************************************
3
// Sacado Package
4
//
5
// Copyright 2006 NTESS and the Sacado contributors.
6
// SPDX-License-Identifier: LGPL-2.1-or-later
7
// *****************************************************************************
8
// @HEADER
9
10
#ifndef SACADO_MPL_QUOTE_HPP
11
#define SACADO_MPL_QUOTE_HPP
12
13
#include "
Sacado_mpl_type_wrap.hpp
"
14
15
namespace
Sacado {
16
17
namespace
mpl {
18
19
// Transform a class/template to a metafunction class
20
// (nested template apply)
21
template
<
class
F>
22
struct
quote0
{
23
struct
apply
:
mpl::type_wrap
< F > {};
24
};
25
26
template
<
template
<
class
T1>
class
F
>
27
struct
quote1
{
28
template
<
class
T1>
29
struct
apply
:
mpl::type_wrap
< F<T1> > {};
30
};
31
32
template
<
template
<
class
T1
,
33
class
T2
>
class
F
>
34
struct
quote2
{
35
template
<
class
T1
,
36
class
T2
>
37
struct
apply
:
mpl::type_wrap
< F<T1,T2> >{};
38
};
39
40
template
<
template
<
class
T1
,
41
class
T2
,
42
class
T3>
class
F
>
43
struct
quote3
{
44
template
<
class
T1
,
45
class
T2
,
46
class
T3>
47
struct
apply
:
mpl::type_wrap
< F<T1,T2,T3> >{};
48
};
49
50
template
<
template
<
class
T1
,
51
class
T2
,
52
class
T3,
53
class
T4>
class
F
>
54
struct
quote4
{
55
template
<
class
T1
,
56
class
T2
,
57
class
T3,
58
class
T4>
59
struct
apply
:
mpl::type_wrap
< F<T1,T2,T3,T4> >{};
60
};
61
62
template
<
template
<
class
T1
,
63
class
T2
,
64
class
T3,
65
class
T4,
66
class
T5>
class
F
>
67
struct
quote5
{
68
template
<
class
T1
,
69
class
T2
,
70
class
T3,
71
class
T4,
72
class
T5>
73
struct
apply
:
mpl::type_wrap
< F<T1,T2,T3,T4,T5> >{};
74
};
75
76
template
<
class
F>
77
struct
quote
:
quote0
<F> {};
78
79
template
<
template
<
class
T1>
class
F
,
80
class
T1
>
81
struct
quote
<
F
<
T1
> > :
quote1
<F> {};
82
83
template
<
template
<
class
T1
,
84
class
T2
>
class
F
,
85
class
T1
,
86
class
T2
>
87
struct
quote
<
F
<
T1
,
T2
> > :
quote2
<F> {};
88
89
template
<
template
<
class
T1
,
90
class
T2
,
91
class
T3>
class
F
,
92
class
T1
,
93
class
T2
,
94
class T3>
95
struct
quote
<
F
<
T1
,
T2
,T3> > :
quote3
<F> {};
96
97
template
<
template
<
class
T1
,
98
class
T2
,
99
class
T3,
100
class
T4>
class
F
,
101
class
T1
,
102
class
T2
,
103
class T3,
104
class T4>
105
struct
quote
<
F
<
T1
,
T2
,T3,T4> > :
quote4
<F> {};
106
107
template
<
template
<
class
T1
,
108
class
T2
,
109
class
T3,
110
class
T4,
111
class
T5>
class
F
,
112
class
T1
,
113
class
T2
,
114
class T3,
115
class T4,
116
class T5>
117
struct
quote
<
F
<
T1
,
T2
,T3,T4,T5> > :
quote5
<F> {};
118
119
}
// namespace mpl
120
121
}
// namespace Sacado
122
123
#endif // SACADO_MPL_QUOTE_HPP
F
Sacado::Fad::DFad< double > F
Definition:
ad_example.cpp:20
Sacado::mpl::quote5
Definition:
Sacado_mpl_quote.hpp:67
Sacado::mpl::quote4::apply
Definition:
Sacado_mpl_quote.hpp:59
Sacado_mpl_type_wrap.hpp
Sacado::mpl::quote3::apply
Definition:
Sacado_mpl_quote.hpp:47
Sacado::mpl::quote1
Definition:
Sacado_mpl_quote.hpp:27
Sacado::mpl::quote
Definition:
Sacado_mpl_quote.hpp:77
Sacado::mpl::quote2
Definition:
Sacado_mpl_quote.hpp:34
Sacado::mpl::quote3
Definition:
Sacado_mpl_quote.hpp:43
T2
#define T2(r, f)
Definition:
Sacado_rad.hpp:558
Sacado::Fad::DFad< double >
Sacado::mpl::type_wrap
Definition:
Sacado_mpl_type_wrap.hpp:31
T1
#define T1(r, f)
Definition:
Sacado_rad.hpp:583
Sacado::mpl::quote4
Definition:
Sacado_mpl_quote.hpp:54
Sacado::mpl::quote0
Definition:
Sacado_mpl_quote.hpp:22
Sacado::mpl::quote1::apply
Definition:
Sacado_mpl_quote.hpp:29
Sacado::mpl::quote0::apply
Definition:
Sacado_mpl_quote.hpp:23
Sacado::mpl::quote5::apply
Definition:
Sacado_mpl_quote.hpp:73
Sacado::mpl::quote2::apply
Definition:
Sacado_mpl_quote.hpp:37
Generated on Tue Nov 12 2024 09:21:52 for Sacado Package Browser (Single Doxygen Collection) by
1.8.5