Skip to content

Commit 06f1487

Browse files
committed
Namespace fixes:
1) Added inline namespaces (kudos to Pablo); 2) Removed namespaces from definitions (now only in synopsis)
1 parent c0c521e commit 06f1487

File tree

3 files changed

+38
-6
lines changed

3 files changed

+38
-6
lines changed

algorithms.html

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -351,7 +351,8 @@ <h1>Header <code>&lt;experimental/algorithm&gt;</code> synopsis</h1>
351351
<pre>
352352
namespace std {
353353
namespace experimental {
354-
namespace parallel<ins2>_v1</ins2> {
354+
<ins2>inline</ins2> namespace parallel<ins2>_v1</ins2> {
355+
<ins2>namespace parallel {</ins2>
355356
template&lt;class ExecutionPolicy,
356357
class InputIterator, class Function&gt;
357358
void for_each(ExecutionPolicy&amp;&amp; exec,
@@ -360,6 +361,7 @@ <h1>Header <code>&lt;experimental/algorithm&gt;</code> synopsis</h1>
360361
template&lt;class InputIterator, class Size, class Function&gt;
361362
InputIterator for_each_n(InputIterator first, Size n,
362363
Function f);
364+
<ins2>}</ins2>
363365
}
364366
}
365367
}
@@ -486,7 +488,8 @@ <h1>Header <code>&lt;experimental/numeric&gt;</code><ins2> synopsis</ins2></h1>
486488
<pre>
487489
namespace std {
488490
namespace experimental {
489-
namespace parallel<ins2>_v1</ins2> {
491+
<ins2>inline</ins2> namespace parallel<ins2>_v1</ins2> {
492+
<ins2>namespace parallel {</ins2>
490493
template&lt;class InputIterator&gt;
491494
typename iterator_traits&lt;InputIterator&gt;::value_type
492495
reduce(InputIterator first, InputIterator last);
@@ -529,6 +532,7 @@ <h1>Header <code>&lt;experimental/numeric&gt;</code><ins2> synopsis</ins2></h1>
529532
inclusive_scan(InputIterator first, InputIterator last,
530533
OutputIterator result,
531534
T init, BinaryOperation binary_op);
535+
<ins2>}</ins2>
532536
}
533537
}
534538
}

exceptions.html

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,9 +55,12 @@ <h1>Exception reporting behavior</h1>
5555
<cxx-section id="parallel.exceptions.synop">
5656
<h1>Header <code>&lt;experimental/exception_list&gt;</code> synopsis</h1>
5757
<pre>
58+
5859
namespace std {
5960
namespace experimental {
60-
namespace parallel<ins2>_v1</ins2> {
61+
<ins2>inline</ins2> namespace parallel<ins2>_v1</ins2> {
62+
<ins2>namespace parallel {</ins2>
63+
6164
class exception_list : public exception
6265
{
6366
public:
@@ -81,6 +84,7 @@ <h1>Header <code>&lt;experimental/exception_list&gt;</code> synopsis</h1>
8184
std::list&lt;exception_ptr&gt; exceptions_; // exposition only
8285
</del2>
8386
};
87+
<ins2>}</ins2>
8488
}
8589
}
8690
}

execution_policies.html

Lines changed: 27 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,8 @@ <h1>Header <code>&lt;experimental/execution_policy&gt;</code> synopsis</h1>
6060
<pre>
6161
namespace std {
6262
namespace experimental {
63-
namespace parallel<ins2>_v1</ins2> {
63+
<ins2>inline</ins2> namespace parallel<ins2>_v1</ins2> {
64+
<ins2>namespace parallel {</ins2>
6465
<cxx-ref insynopsis="" to="parallel.execpol.type"></cxx-ref>
6566
template&lt;class T&gt; struct is_execution_policy;
6667
<ins2>template&lt;class T&gt; constexpr bool is_execution_policy_v = is_execution_policy&lt;T&gt;::value;</ins2>
@@ -76,6 +77,7 @@ <h1>Header <code>&lt;experimental/execution_policy&gt;</code> synopsis</h1>
7677

7778
<cxx-ref insynopsis="" to="parallel.execpol.dynamic"></cxx-ref>
7879
class execution_policy;
80+
<ins2>}</ins2>
7981
}
8082
}
8183
}
@@ -85,14 +87,17 @@ <h1>Header <code>&lt;experimental/execution_policy&gt;</code> synopsis</h1>
8587
<h1>Execution policy type trait</h1>
8688

8789
<pre>
90+
<del2>
8891
namespace std {
8992
namespace experimental {
90-
namespace parallel<ins2>_v1</ins2> {
93+
namespace parallel<ins2>_v1</ins2> { </del2>
9194
template&lt;class T&gt; struct is_execution_policy <ins2> { <em>see below</em> };</ins2>
9295
<del2> : integral_constant&lt;bool, <em>see below</em>&gt; { };</del2>
96+
<del2>
9397
}
9498
}
9599
}
100+
</del2>
96101
</pre>
97102

98103
<p><code>is_execution_policy</code> can be used to detect parallel execution policies for the purpose of excluding function signatures from otherwise ambiguous overload resolution participation.</p>
@@ -108,13 +113,17 @@ <h1>Execution policy type trait</h1>
108113
<h1>Sequential execution policy</h1>
109114

110115
<pre>
116+
<del2>
111117
namespace std {
112118
namespace experimental {
113119
namespace parallel<ins2>_v1</ins2> {
120+
</del2>
114121
class sequential_execution_policy{ <ins2><i>unspecified</i></ins2> };
122+
<del2>
115123
}
116124
}
117125
}
126+
</del2>
118127
</pre>
119128

120129
<p>The class <code>sequential_execution_policy</code> is an execution policy type used as a unique type to disambiguate parallel algorithm overloading and require that a parallel algorithm's execution may not be parallelized.</p>
@@ -124,13 +133,17 @@ <h1>Sequential execution policy</h1>
124133
<h1>Parallel execution policy</h1>
125134

126135
<pre>
136+
<del2>
127137
namespace std {
128138
namespace experimental {
129139
namespace parallel<ins2>_v1</ins2> {
140+
</del2>
130141
class parallel_execution_policy{ <ins2><i>unspecified</i></ins2> };
142+
<del2>
131143
}
132144
}
133145
}
146+
</del2>
134147
</pre>
135148

136149
<p>The class <code>parallel_execution_policy</code> is an execution policy type used as a unique type to disambiguate parallel algorithm overloading and indicate that a parallel algorithm's execution may be parallelized.</p>
@@ -140,13 +153,17 @@ <h1>Parallel execution policy</h1>
140153
<h1><ins2>Parallel+</ins2>Vector execution policy</h1>
141154

142155
<pre>
156+
<del2>
143157
namespace std {
144158
namespace experimental {
145159
namespace parallel<ins2>_v1</ins2> {
160+
</del2>
146161
class <del2>vector_execution_policy</del2><ins2>parallel_vector_execution_policy</ins2>{ <ins2><i>unspecified</i></ins2> };
162+
<del2>
147163
}
148164
}
149165
}
166+
</del2>
150167
</pre>
151168

152169
<p>The class <code>class <del2>vector_execution_policy</del2><ins2>parallel_vector_execution_policy</ins2></code> is an execution policy type used as a unique type to disambiguate parallel algorithm overloading and indicate that a parallel algorithm's execution may be vectorized.</p>
@@ -157,10 +174,11 @@ <h1><ins2>Parallel+</ins2>Vector execution policy</h1>
157174
<h1>Dynamic execution policy</h1>
158175

159176
<pre>
177+
<del2>
160178
namespace std {
161179
namespace experimental {
162180
namespace parallel<ins2>_v1</ins2> {
163-
181+
</del2>
164182
class execution_policy
165183
{
166184
public:
@@ -172,9 +190,11 @@ <h1>Dynamic execution policy</h1>
172190
template&lt;class T&gt; T* get() noexcept;
173191
template&lt;class T&gt; const T* get() const noexcept;
174192
};
193+
<del2>
175194
}
176195
}
177196
}
197+
</del2>
178198
</pre>
179199

180200
<p>The class <code>execution_policy</code> is a dynamic container for execution policy objects.
@@ -279,9 +299,11 @@ <h1><code>execution_policy</code> object access</h1>
279299
<h1>Execution policy objects</h1>
280300

281301
<pre>
302+
<del2>
282303
namespace std {
283304
namespace experimental {
284305
namespace parallel<ins2>_v1</ins2> {
306+
</del2>
285307
<del2>
286308
constexpr sequential_execution_policy seq = sequential_execution_policy();
287309
constexpr parallel_execution_policy par = parallel_execution_policy();
@@ -292,9 +314,11 @@ <h1>Execution policy objects</h1>
292314
constexpr parallel_execution_policy par = {};
293315
constexpr parallel_vector_execution_policy par_vec = {};
294316
</ins2>
317+
<del2>
295318
}
296319
}
297320
}
321+
</del2>
298322
</pre>
299323

300324
<p>The header <code>&lt;<ins2>experimental/</ins2>execution_policy&gt;</code> declares a global object associated with each type of execution policy defined by this Technical Specification.</p>

0 commit comments

Comments
 (0)