summaryrefslogtreecommitdiff
path: root/doc/html/boost_typeerasure
diff options
context:
space:
mode:
authorDongHun Kwak <dh0128.kwak@samsung.com>2016-03-21 15:45:20 +0900
committerDongHun Kwak <dh0128.kwak@samsung.com>2016-03-21 15:46:37 +0900
commit733b5d5ae2c5d625211e2985ac25728ac3f54883 (patch)
treea5b214744b256f07e1dc2bd7273035a7808c659f /doc/html/boost_typeerasure
parent08c1e93fa36a49f49325a07fe91ff92c964c2b6c (diff)
downloadboost-733b5d5ae2c5d625211e2985ac25728ac3f54883.tar.gz
boost-733b5d5ae2c5d625211e2985ac25728ac3f54883.tar.bz2
boost-733b5d5ae2c5d625211e2985ac25728ac3f54883.zip
Imported Upstream version 1.58.0upstream/1.58.0
Change-Id: If0072143aa26874812e0db6872e1efb10a3e5e94 Signed-off-by: DongHun Kwak <dh0128.kwak@samsung.com>
Diffstat (limited to 'doc/html/boost_typeerasure')
-rw-r--r--doc/html/boost_typeerasure/any.html18
-rw-r--r--doc/html/boost_typeerasure/basic.html16
-rw-r--r--doc/html/boost_typeerasure/concept.html14
-rw-r--r--doc/html/boost_typeerasure/conceptdef.html8
-rw-r--r--doc/html/boost_typeerasure/multi.html4
-rw-r--r--doc/html/boost_typeerasure/rationale.html4
-rw-r--r--doc/html/boost_typeerasure/reference.html121
7 files changed, 90 insertions, 95 deletions
diff --git a/doc/html/boost_typeerasure/any.html b/doc/html/boost_typeerasure/any.html
index 53b51883ee..57ab0ffe91 100644
--- a/doc/html/boost_typeerasure/any.html
+++ b/doc/html/boost_typeerasure/any.html
@@ -41,7 +41,7 @@
</p>
<p>
The library provides the <code class="computeroutput"><a class="link" href="../boost/type_erasure/constructible.html" title="Struct template constructible">constructible</a></code>
- concept to allow an <code class="computeroutput"><a class="link" href="../boost/type_erasure/any.html" title="Class template any">any</a></code>
+ concept to allow an <code class="computeroutput">any</code>
to capture constructors. The single template argument should be a function
signature. The return type must be a placeholder specifying the type to be
constructed. The arguments are the arguments of the constructor.
@@ -70,7 +70,7 @@
</p>
<p>
Now, suppose that we want a default constructor? We can't have the default
- constructor of <code class="computeroutput"><a class="link" href="../boost/type_erasure/any.html" title="Class template any">any</a></code>
+ constructor of <code class="computeroutput">any</code>
call the default constructor of the contained type, because it would have
no way of knowing what the contained type is. So, we'll need to pass the
placeholder binding information explicitly.
@@ -112,8 +112,8 @@
(For the source of the examples in this section see <a href="../../../libs/type_erasure/example/convert.cpp" target="_top">convert.cpp</a>)
</p>
<p>
- An <code class="computeroutput"><a class="link" href="../boost/type_erasure/any.html" title="Class template any">any</a></code> can be converted
- to another <code class="computeroutput"><a class="link" href="../boost/type_erasure/any.html" title="Class template any">any</a></code> as long
+ An <code class="computeroutput">any</code> can be converted
+ to another <code class="computeroutput">any</code> as long
as the conversion is an "upcast."
</p>
<p>
@@ -176,7 +176,7 @@
<code class="computeroutput"><span class="identifier">_self</span></code> is the default <code class="computeroutput"><a class="link" href="../boost/type_erasure/placeholder.html" title="Struct placeholder">placeholder</a></code>, so it is
easiest to use <code class="computeroutput"><span class="identifier">_self</span><span class="special">&amp;</span></code>.
We could use another <code class="computeroutput"><a class="link" href="../boost/type_erasure/placeholder.html" title="Struct placeholder">placeholder</a></code>
- instead. <code class="computeroutput"><a class="link" href="../boost/type_erasure/any.html" title="Class template any">any</a></code><code class="computeroutput"><span class="special">&lt;</span></code><code class="computeroutput"><a class="link" href="../boost/type_erasure/typeid_.html" title="Struct template typeid_">typeid_</a></code><code class="computeroutput"><span class="special">&lt;</span><span class="identifier">_a</span><span class="special">&gt;,</span> <span class="identifier">_a</span><span class="special">&amp;&gt;</span></code> has exactly the same behavior.
+ instead. <code class="computeroutput">any</code><code class="computeroutput"><span class="special">&lt;</span></code><code class="computeroutput"><a class="link" href="../boost/type_erasure/typeid_.html" title="Struct template typeid_">typeid_</a></code><code class="computeroutput"><span class="special">&lt;</span><span class="identifier">_a</span><span class="special">&gt;,</span> <span class="identifier">_a</span><span class="special">&amp;&gt;</span></code> has exactly the same behavior.
</p></td></tr>
</table></div>
<p>
@@ -203,7 +203,7 @@
</p></td></tr>
</table></div>
<p>
- A reference can be bound to another <code class="computeroutput"><a class="link" href="../boost/type_erasure/any.html" title="Class template any">any</a></code>.
+ A reference can be bound to another <code class="computeroutput">any</code>.
</p>
<p>
</p>
@@ -279,15 +279,15 @@
<p>
In most cases using an any has the same syntax as using the underlying object.
However, there are a few cases where this is not possible to implement. An
- <code class="computeroutput"><a class="link" href="../boost/type_erasure/any.html" title="Class template any">any</a></code> reference is proxy
+ <code class="computeroutput">any</code> reference is proxy
and cannot be used in contexts where a real reference is required. In particular,
<code class="computeroutput"><a class="link" href="../boost/type_erasure/forward_iterator.html" title="Struct template forward_iterator">forward_iterator</a></code>
does not create a conforming ForwardIterator (unless the value_type is fixed.)
Another difference is that all operations which do not take at least one
- <code class="computeroutput"><a class="link" href="../boost/type_erasure/any.html" title="Class template any">any</a></code> argument have to
+ <code class="computeroutput">any</code> argument have to
be passed the type information explicitly. Static member functions and constructors
can fall in this category. All this means that generic algorithms might not
- work when applied to <code class="computeroutput"><a class="link" href="../boost/type_erasure/any.html" title="Class template any">any</a></code>
+ work when applied to <code class="computeroutput">any</code>
arguments.
</p>
</div>
diff --git a/doc/html/boost_typeerasure/basic.html b/doc/html/boost_typeerasure/basic.html
index 79deaed706..4f4d281a28 100644
--- a/doc/html/boost_typeerasure/basic.html
+++ b/doc/html/boost_typeerasure/basic.html
@@ -30,10 +30,10 @@
(For the source of the examples in this section see <a href="../../../libs/type_erasure/example/basic.cpp" target="_top">basic.cpp</a>)
</p>
<p>
- The main class in the library is <code class="computeroutput"><a class="link" href="../boost/type_erasure/any.html" title="Class template any">any</a></code>.
- An <code class="computeroutput"><a class="link" href="../boost/type_erasure/any.html" title="Class template any">any</a></code> can store objects
+ The main class in the library is <code class="computeroutput">any</code>.
+ An <code class="computeroutput">any</code> can store objects
that meet whatever requirements we specify. These requirements are passed to
- <code class="computeroutput"><a class="link" href="../boost/type_erasure/any.html" title="Class template any">any</a></code> as an MPL sequence.
+ <code class="computeroutput">any</code> as an MPL sequence.
</p>
<div class="note"><table border="0" summary="Note">
<tr>
@@ -55,12 +55,12 @@
<p>
<code class="computeroutput"><a class="link" href="../boost/type_erasure/copy_constructible.html" title="Struct template copy_constructible">copy_constructible</a></code>
is a builtin concept that allows us to copy and destroy the object. <code class="computeroutput"><a class="link" href="../boost/type_erasure/typeid_.html" title="Struct template typeid_">typeid_</a></code> provides run-time type
- information so that we can use <code class="computeroutput"><a class="link" href="../boost/type_erasure/any_cast_idp219443872.html" title="Function any_cast">any_cast</a></code>.
+ information so that we can use <code class="computeroutput"><a class="link" href="../boost/type_erasure/any_cast_idp303398944.html" title="Function any_cast">any_cast</a></code>.
<code class="computeroutput"><a class="link" href="../boost/type_erasure/relaxed.html" title="Struct relaxed">relaxed</a></code> enables various
useful defaults. Without <code class="computeroutput"><a class="link" href="../boost/type_erasure/relaxed.html" title="Struct relaxed">relaxed</a></code>,
- <code class="computeroutput"><a class="link" href="../boost/type_erasure/any.html" title="Class template any">any</a></code> supports <span class="emphasis"><em>exactly</em></span>
+ <code class="computeroutput">any</code> supports <span class="emphasis"><em>exactly</em></span>
what you specify and nothing else. In particular, it allows default construction
- and assignment of <code class="computeroutput"><a class="link" href="../boost/type_erasure/any.html" title="Class template any">any</a></code>.
+ and assignment of <code class="computeroutput">any</code>.
</p>
<p>
Now, this example doesn't do very much. <code class="computeroutput"><span class="identifier">x</span></code>
@@ -127,10 +127,10 @@
Also, note that <code class="computeroutput"><span class="identifier">append_many</span></code>
has to operate directly on its argument. It cannot make a copy. To handle this
we use <code class="computeroutput"><span class="identifier">_self</span><span class="special">&amp;</span></code>
- as the second argument of <code class="computeroutput"><a class="link" href="../boost/type_erasure/any.html" title="Class template any">any</a></code>.
+ as the second argument of <code class="computeroutput">any</code>.
<code class="computeroutput"><span class="identifier">_self</span></code> is a <code class="computeroutput"><a class="link" href="../boost/type_erasure/placeholder.html" title="Struct placeholder">placeholder</a></code>.
By using <code class="computeroutput"><span class="identifier">_self</span><span class="special">&amp;</span></code>,
- we indicate that the <code class="computeroutput"><a class="link" href="../boost/type_erasure/any.html" title="Class template any">any</a></code>
+ we indicate that the <code class="computeroutput">any</code>
stores a reference to an external object instead of allocating its own object.
</p>
<p>
diff --git a/doc/html/boost_typeerasure/concept.html b/doc/html/boost_typeerasure/concept.html
index 322dc58394..df500a85a4 100644
--- a/doc/html/boost_typeerasure/concept.html
+++ b/doc/html/boost_typeerasure/concept.html
@@ -61,8 +61,8 @@
<p>
</p>
<p>
- Now, we can use this in an <code class="computeroutput"><a class="link" href="../boost/type_erasure/any.html" title="Class template any">any</a></code>
- using <code class="computeroutput"><a class="link" href="../boost/type_erasure/call_idp150247888.html" title="Function call">call</a></code> to
+ Now, we can use this in an <code class="computeroutput">any</code>
+ using <code class="computeroutput"><a class="link" href="../boost/type_erasure/call_idp304107712.html" title="Function call">call</a></code> to
dispatch the operation.
</p>
<p>
@@ -76,16 +76,16 @@
<p>
</p>
<p>
- Our second task is to customize <code class="computeroutput"><a class="link" href="../boost/type_erasure/any.html" title="Class template any">any</a></code>
+ Our second task is to customize <code class="computeroutput">any</code>
so that we can call <code class="computeroutput"><span class="identifier">c</span><span class="special">.</span><span class="identifier">push_back</span><span class="special">(</span><span class="number">10</span><span class="special">)</span></code>. We do
this by specializing <code class="computeroutput"><a class="link" href="../boost/type_erasure/concept_interface.html" title="Struct template concept_interface">concept_interface</a></code>.
The first argument is <code class="computeroutput"><span class="identifier">has_push_back</span></code>,
- since we want to inject a member into every <code class="computeroutput"><a class="link" href="../boost/type_erasure/any.html" title="Class template any">any</a></code>
+ since we want to inject a member into every <code class="computeroutput">any</code>
that uses the <code class="computeroutput"><span class="identifier">has_push_back</span></code>
concept. The second argument, <code class="computeroutput"><span class="identifier">Base</span></code>,
is used by the library to chain multiple uses of <code class="computeroutput"><a class="link" href="../boost/type_erasure/concept_interface.html" title="Struct template concept_interface">concept_interface</a></code>
together. We have to inherit from it publicly. <code class="computeroutput"><span class="identifier">Base</span></code>
- is also used to get access to the full <code class="computeroutput"><a class="link" href="../boost/type_erasure/any.html" title="Class template any">any</a></code>
+ is also used to get access to the full <code class="computeroutput">any</code>
type. The third argument is the placeholder that represents this any. If
someone used <code class="computeroutput"><span class="identifier">push_back</span><span class="special">&lt;</span><span class="identifier">_c</span><span class="special">,</span> <span class="identifier">_b</span><span class="special">&gt;</span></code>, we only want to insert a <code class="computeroutput"><span class="identifier">push_back</span></code> member in the container, not
the value type. Thus, the third argument is the container placeholder.
@@ -136,7 +136,7 @@
</p>
<p>
<code class="computeroutput"><a class="link" href="../boost/type_erasure/concept_interface.html" title="Struct template concept_interface">concept_interface</a></code>
- allows us to inject arbitrary declarations into an <code class="computeroutput"><a class="link" href="../boost/type_erasure/any.html" title="Class template any">any</a></code>.
+ allows us to inject arbitrary declarations into an <code class="computeroutput">any</code>.
This is very flexible, but there are some pitfalls to watch out for. Sometimes
we want to use the same concept several times with different parameters.
Specializing <code class="computeroutput"><a class="link" href="../boost/type_erasure/concept_interface.html" title="Struct template concept_interface">concept_interface</a></code>
@@ -381,7 +381,7 @@
<code class="computeroutput"><span class="identifier">pointer</span><span class="special">&lt;&gt;::</span><span class="identifier">element_type</span></code>. When we construct <code class="computeroutput"><span class="identifier">x</span></code>, with an <code class="computeroutput"><span class="keyword">int</span><span class="special">*</span></code>, <code class="computeroutput"><span class="identifier">pointer</span><span class="special">&lt;&gt;::</span><span class="identifier">element_type</span></code>
is deduced as <code class="computeroutput"><span class="identifier">pointee</span><span class="special">&lt;</span><span class="keyword">int</span><span class="special">*&gt;::</span><span class="identifier">type</span></code> which is <code class="computeroutput"><span class="keyword">int</span></code>.
Thus, dereferencing <code class="computeroutput"><span class="identifier">x</span></code> returns
- an <code class="computeroutput"><a class="link" href="../boost/type_erasure/any.html" title="Class template any">any</a></code> that contains
+ an <code class="computeroutput">any</code> that contains
an <code class="computeroutput"><span class="keyword">int</span></code>.
</p>
<p>
diff --git a/doc/html/boost_typeerasure/conceptdef.html b/doc/html/boost_typeerasure/conceptdef.html
index 03a8f45d81..dc211a67f8 100644
--- a/doc/html/boost_typeerasure/conceptdef.html
+++ b/doc/html/boost_typeerasure/conceptdef.html
@@ -28,7 +28,7 @@
</h2></div></div></div>
<p>
A Concept defines a set of constraints on the types that are stored in an
- <code class="computeroutput"><a class="link" href="../boost/type_erasure/any.html" title="Class template any">any</a></code>.
+ <code class="computeroutput">any</code>.
</p>
<p>
There are three kinds of concepts.
@@ -54,7 +54,7 @@
Each primitive concept defines a single function. A primitive concept must
be a specialization of a class template, with a static member function called
<code class="computeroutput"><span class="identifier">apply</span></code>, which will be executed
- when the function is dispatched by <code class="computeroutput"><a class="link" href="../boost/type_erasure/call_idp150247888.html" title="Function call">call</a></code>.
+ when the function is dispatched by <code class="computeroutput"><a class="link" href="../boost/type_erasure/call_idp304107712.html" title="Function call">call</a></code>.
The template can only take template type parameters. non-type template parameters
and template template parameters are not allowed.
</p>
@@ -76,8 +76,8 @@
Any other placeholders are ignored.
</p>
<p>
- A concept is instantiated by constructing an <code class="computeroutput"><a class="link" href="../boost/type_erasure/any.html" title="Class template any">any</a></code>
- from a raw value or by constructing a <code class="computeroutput"><a class="link" href="../boost/type_erasure/binding.html" title="Class template binding">binding</a></code>.
+ A concept is instantiated by constructing an <code class="computeroutput">any</code>
+ from a raw value or by constructing a <code class="computeroutput">binding</code>.
When a concept is instantiated with a specific set of type bindings, each placeholder
is bound to a cv-unqualified non-reference type. After replacing each placeholder
in the template argument list with the type that it binds to, the following
diff --git a/doc/html/boost_typeerasure/multi.html b/doc/html/boost_typeerasure/multi.html
index 7ecac3dbfa..4959c8e4ce 100644
--- a/doc/html/boost_typeerasure/multi.html
+++ b/doc/html/boost_typeerasure/multi.html
@@ -30,7 +30,7 @@
(For the source of the examples in this section see <a href="../../../libs/type_erasure/example/multi.cpp" target="_top">multi.cpp</a>)
</p>
<p>
- Operations can have more than one <code class="computeroutput"><a class="link" href="../boost/type_erasure/any.html" title="Class template any">any</a></code>
+ Operations can have more than one <code class="computeroutput">any</code>
argument. Let's use binary addition as an example.
</p>
<p>
@@ -101,7 +101,7 @@
<p>
This doesn't work because the library needs to know the type that _b binds
to when it captures the concept bindings. We need to specify the bindings of
- both placeholders when we construct the <code class="computeroutput"><a class="link" href="../boost/type_erasure/any.html" title="Class template any">any</a></code>.
+ both placeholders when we construct the <code class="computeroutput">any</code>.
</p>
<p>
</p>
diff --git a/doc/html/boost_typeerasure/rationale.html b/doc/html/boost_typeerasure/rationale.html
index 8694172eb2..fff59e03dd 100644
--- a/doc/html/boost_typeerasure/rationale.html
+++ b/doc/html/boost_typeerasure/rationale.html
@@ -55,7 +55,7 @@
non-member functions?</a>
</h3></div></div></div>
<p>
- The members of <code class="computeroutput"><a class="link" href="../boost/type_erasure/any.html" title="Class template any">any</a></code>
+ The members of <code class="computeroutput">any</code>
can be customized. By using free functions, we guarantee that we don't interfere
with anything that a user might want.
</p>
@@ -86,7 +86,7 @@
store a reference to a function object. However, in the general case treating
references and values in the same way causes inconsistent behavior that is
difficult to reason about. If Boost.TypeErasure handled references like this,
- then, when you copy an <code class="computeroutput"><a class="link" href="../boost/type_erasure/any.html" title="Class template any">any</a></code>,
+ then, when you copy an <code class="computeroutput">any</code>,
you would have no idea whether the new object is a real copy or just a new
reference to the same underlying object. Boost.Function can get away with
it, because it doesn't expose any mutating operations on the stored function
diff --git a/doc/html/boost_typeerasure/reference.html b/doc/html/boost_typeerasure/reference.html
index f7ddb281fb..0319fe2161 100644
--- a/doc/html/boost_typeerasure/reference.html
+++ b/doc/html/boost_typeerasure/reference.html
@@ -7,7 +7,7 @@
<link rel="home" href="../index.html" title="The Boost C++ Libraries BoostBook Documentation Subset">
<link rel="up" href="../boost_typeerasure.html" title="Chapter&#160;33.&#160;Boost.TypeErasure">
<link rel="prev" href="predef.html" title="Predefined Concepts">
-<link rel="next" href="../boost/type_erasure/constructible.html" title="Struct template constructible">
+<link rel="next" href="../boost/type_erasure/any_Concept___idp302429456.html" title="Class template any&lt;Concept, const T &amp;&gt;">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
@@ -20,7 +20,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
-<a accesskey="p" href="predef.html"><img src="../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../boost_typeerasure.html"><img src="../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../boost/type_erasure/constructible.html"><img src="../../../doc/src/images/next.png" alt="Next"></a>
+<a accesskey="p" href="predef.html"><img src="../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../boost_typeerasure.html"><img src="../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../boost/type_erasure/any_Concept___idp302429456.html"><img src="../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="section">
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
@@ -64,13 +64,11 @@
<a name="header.boost.type_erasure.any_hpp"></a>Header &lt;<a href="../../../boost/type_erasure/any.hpp" target="_top">boost/type_erasure/any.hpp</a>&gt;</h3></div></div></div>
<pre class="synopsis"><span class="keyword">namespace</span> <span class="identifier">boost</span> <span class="special">{</span>
<span class="keyword">namespace</span> <span class="identifier">type_erasure</span> <span class="special">{</span>
- <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Sig<span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/constructible.html" title="Struct template constructible">constructible</a><span class="special">;</span>
- <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T<span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/destructible.html" title="Struct template destructible">destructible</a><span class="special">;</span>
- <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T<span class="special">,</span> <span class="keyword">typename</span> U<span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/assignable.html" title="Struct template assignable">assignable</a><span class="special">;</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Concept<span class="special">,</span> <span class="keyword">typename</span> T<span class="special">&gt;</span> <span class="keyword">class</span> <a class="link" href="../boost/type_erasure/any_Concept___idp302429456.html" title="Class template any&lt;Concept, const T &amp;&gt;">any</a><span class="special">&lt;</span><span class="identifier">Concept</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">T</span> <span class="special">&amp;</span><span class="special">&gt;</span><span class="special">;</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Concept<span class="special">,</span> <span class="keyword">typename</span> T<span class="special">&gt;</span> <span class="keyword">class</span> <a class="link" href="../boost/type_erasure/any_Concept___idp156516320.html" title="Class template any&lt;Concept, T &amp;&gt;">any</a><span class="special">&lt;</span><span class="identifier">Concept</span><span class="special">,</span> <span class="identifier">T</span> <span class="special">&amp;</span><span class="special">&gt;</span><span class="special">;</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Concept<span class="special">,</span> <span class="keyword">typename</span> T<span class="special">&gt;</span> <span class="keyword">class</span> <a class="link" href="../boost/type_erasure/any_Concept___idp297414240.html" title="Class template any&lt;Concept, T &amp;&amp;&gt;">any</a><span class="special">&lt;</span><span class="identifier">Concept</span><span class="special">,</span> <span class="identifier">T</span> <span class="special">&amp;&amp;</span><span class="special">&gt;</span><span class="special">;</span>
- <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Concept<span class="special">,</span> <span class="keyword">typename</span> T<span class="special">&gt;</span> <span class="keyword">class</span> <a class="link" href="../boost/type_erasure/any_Concept___idp300427680.html" title="Class template any&lt;Concept, T &amp;&gt;">any</a><span class="special">&lt;</span><span class="identifier">Concept</span><span class="special">,</span> <span class="identifier">T</span> <span class="special">&amp;</span><span class="special">&gt;</span><span class="special">;</span>
- <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Concept<span class="special">,</span> <span class="keyword">typename</span> T<span class="special">&gt;</span> <span class="keyword">class</span> <a class="link" href="../boost/type_erasure/any_Concept___idp219863952.html" title="Class template any&lt;Concept, const T &amp;&gt;">any</a><span class="special">&lt;</span><span class="identifier">Concept</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">T</span> <span class="special">&amp;</span><span class="special">&gt;</span><span class="special">;</span>
- <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Concept<span class="special">,</span> <span class="keyword">typename</span> T<span class="special">&gt;</span> <span class="keyword">class</span> <a class="link" href="../boost/type_erasure/any_Concept___idp306532432.html" title="Class template any&lt;Concept, T &amp;&amp;&gt;">any</a><span class="special">&lt;</span><span class="identifier">Concept</span><span class="special">,</span> <span class="identifier">T</span> <span class="special">&amp;&amp;</span><span class="special">&gt;</span><span class="special">;</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Sig<span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/constructible.html" title="Struct template constructible">constructible</a><span class="special">;</span>
<span class="special">}</span>
<span class="special">}</span></pre>
</div>
@@ -80,13 +78,13 @@
<pre class="synopsis"><span class="keyword">namespace</span> <span class="identifier">boost</span> <span class="special">{</span>
<span class="keyword">namespace</span> <span class="identifier">type_erasure</span> <span class="special">{</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T<span class="special">,</span> <span class="keyword">typename</span> Concept<span class="special">,</span> <span class="keyword">typename</span> Tag<span class="special">&gt;</span>
- <span class="identifier">T</span> <a class="link" href="../boost/type_erasure/any_cast_idp219443872.html" title="Function any_cast"><span class="identifier">any_cast</span></a><span class="special">(</span><a class="link" href="../boost/any.html" title="Class any">any</a><span class="special">&lt;</span> <span class="identifier">Concept</span><span class="special">,</span> <span class="identifier">Tag</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
+ <span class="identifier">T</span> <a class="link" href="../boost/type_erasure/any_cast_idp303398944.html" title="Function any_cast"><span class="identifier">any_cast</span></a><span class="special">(</span><a class="link" href="../boost/any.html" title="Class any">any</a><span class="special">&lt;</span> <span class="identifier">Concept</span><span class="special">,</span> <span class="identifier">Tag</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T<span class="special">,</span> <span class="keyword">typename</span> Concept<span class="special">,</span> <span class="keyword">typename</span> Tag<span class="special">&gt;</span>
- <span class="identifier">T</span> <a class="link" href="../boost/type_erasure/any_cast_idp219443872.html" title="Function any_cast"><span class="identifier">any_cast</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="../boost/any.html" title="Class any">any</a><span class="special">&lt;</span> <span class="identifier">Concept</span><span class="special">,</span> <span class="identifier">Tag</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
+ <span class="identifier">T</span> <a class="link" href="../boost/type_erasure/any_cast_idp303398944.html" title="Function any_cast"><span class="identifier">any_cast</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="../boost/any.html" title="Class any">any</a><span class="special">&lt;</span> <span class="identifier">Concept</span><span class="special">,</span> <span class="identifier">Tag</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T<span class="special">,</span> <span class="keyword">typename</span> Concept<span class="special">,</span> <span class="keyword">typename</span> Tag<span class="special">&gt;</span>
- <span class="identifier">T</span> <a class="link" href="../boost/type_erasure/any_cast_idp219443872.html" title="Function any_cast"><span class="identifier">any_cast</span></a><span class="special">(</span><a class="link" href="../boost/any.html" title="Class any">any</a><span class="special">&lt;</span> <span class="identifier">Concept</span><span class="special">,</span> <span class="identifier">Tag</span> <span class="special">&gt;</span> <span class="special">*</span><span class="special">)</span><span class="special">;</span>
+ <span class="identifier">T</span> <a class="link" href="../boost/type_erasure/any_cast_idp303398944.html" title="Function any_cast"><span class="identifier">any_cast</span></a><span class="special">(</span><a class="link" href="../boost/any.html" title="Class any">any</a><span class="special">&lt;</span> <span class="identifier">Concept</span><span class="special">,</span> <span class="identifier">Tag</span> <span class="special">&gt;</span> <span class="special">*</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T<span class="special">,</span> <span class="keyword">typename</span> Concept<span class="special">,</span> <span class="keyword">typename</span> Tag<span class="special">&gt;</span>
- <span class="identifier">T</span> <a class="link" href="../boost/type_erasure/any_cast_idp219443872.html" title="Function any_cast"><span class="identifier">any_cast</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="../boost/any.html" title="Class any">any</a><span class="special">&lt;</span> <span class="identifier">Concept</span><span class="special">,</span> <span class="identifier">Tag</span> <span class="special">&gt;</span> <span class="special">*</span><span class="special">)</span><span class="special">;</span>
+ <span class="identifier">T</span> <a class="link" href="../boost/type_erasure/any_cast_idp303398944.html" title="Function any_cast"><span class="identifier">any_cast</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="../boost/any.html" title="Class any">any</a><span class="special">&lt;</span> <span class="identifier">Concept</span><span class="special">,</span> <span class="identifier">Tag</span> <span class="special">&gt;</span> <span class="special">*</span><span class="special">)</span><span class="special">;</span>
<span class="special">}</span>
<span class="special">}</span></pre>
</div>
@@ -98,7 +96,7 @@
<pre class="synopsis"><span class="keyword">namespace</span> <span class="identifier">boost</span> <span class="special">{</span>
<span class="keyword">namespace</span> <span class="identifier">type_erasure</span> <span class="special">{</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Concept<span class="special">,</span> <span class="keyword">typename</span> T<span class="special">&gt;</span>
- <span class="keyword">const</span> <a class="link" href="../boost/type_erasure/binding.html" title="Class template binding">binding</a><span class="special">&lt;</span> <span class="identifier">Concept</span> <span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="../boost/type_erasure/binding_of.html" title="Function template binding_of"><span class="identifier">binding_of</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="../boost/any.html" title="Class any">any</a><span class="special">&lt;</span> <span class="identifier">Concept</span><span class="special">,</span> <span class="identifier">T</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
+ <span class="keyword">const</span> binding<span class="special">&lt;</span> <span class="identifier">Concept</span> <span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="../boost/type_erasure/binding_of.html" title="Function template binding_of"><span class="identifier">binding_of</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="../boost/any.html" title="Class any">any</a><span class="special">&lt;</span> <span class="identifier">Concept</span><span class="special">,</span> <span class="identifier">T</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
<span class="special">}</span>
<span class="special">}</span></pre>
</div>
@@ -107,7 +105,10 @@
<a name="header.boost.type_erasure.builtin_hpp"></a>Header &lt;<a href="../../../boost/type_erasure/builtin.hpp" target="_top">boost/type_erasure/builtin.hpp</a>&gt;</h3></div></div></div>
<pre class="synopsis"><span class="keyword">namespace</span> <span class="identifier">boost</span> <span class="special">{</span>
<span class="keyword">namespace</span> <span class="identifier">type_erasure</span> <span class="special">{</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">,</span> <span class="keyword">typename</span> U <span class="special">=</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/assignable.html" title="Struct template assignable">assignable</a><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/copy_constructible.html" title="Struct template copy_constructible">copy_constructible</a><span class="special">;</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/destructible.html" title="Struct template destructible">destructible</a><span class="special">;</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/typeid_.html" title="Struct template typeid_">typeid_</a><span class="special">;</span>
<span class="special">}</span>
<span class="special">}</span></pre>
</div>
@@ -116,11 +117,9 @@
<a name="header.boost.type_erasure.call_hpp"></a>Header &lt;<a href="../../../boost/type_erasure/call.hpp" target="_top">boost/type_erasure/call.hpp</a>&gt;</h3></div></div></div>
<pre class="synopsis"><span class="keyword">namespace</span> <span class="identifier">boost</span> <span class="special">{</span>
<span class="keyword">namespace</span> <span class="identifier">type_erasure</span> <span class="special">{</span>
- <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Concept<span class="special">,</span> <span class="keyword">typename</span> Placeholder<span class="special">&gt;</span> <span class="keyword">class</span> <a class="link" href="../boost/type_erasure/any.html" title="Class template any">any</a><span class="special">;</span>
- <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Concept<span class="special">&gt;</span> <span class="keyword">class</span> <a class="link" href="../boost/type_erasure/binding.html" title="Class template binding">binding</a><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Concept<span class="special">,</span> <span class="keyword">typename</span> Op<span class="special">,</span> <span class="keyword">class</span><span class="special">...</span> U<span class="special">&gt;</span>
- <span class="emphasis"><em><span class="identifier">unspecified</span></em></span> <a class="link" href="../boost/type_erasure/call_idp150247888.html" title="Function call"><span class="identifier">call</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="../boost/type_erasure/binding.html" title="Class template binding">binding</a><span class="special">&lt;</span> <span class="identifier">Concept</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Op</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">U</span> <span class="special">&amp;&amp;</span><span class="special">...</span><span class="special">)</span><span class="special">;</span>
- <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Op<span class="special">,</span> <span class="keyword">class</span><span class="special">...</span> U<span class="special">&gt;</span> <span class="emphasis"><em><span class="identifier">unspecified</span></em></span> <a class="link" href="../boost/type_erasure/call_idp150247888.html" title="Function call"><span class="identifier">call</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">Op</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">U</span> <span class="special">&amp;&amp;</span><span class="special">...</span><span class="special">)</span><span class="special">;</span>
+ <span class="emphasis"><em><span class="identifier">unspecified</span></em></span> <a class="link" href="../boost/type_erasure/call_idp304107712.html" title="Function call"><span class="identifier">call</span></a><span class="special">(</span><span class="keyword">const</span> binding<span class="special">&lt;</span> <span class="identifier">Concept</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Op</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">U</span> <span class="special">&amp;&amp;</span><span class="special">...</span><span class="special">)</span><span class="special">;</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Op<span class="special">,</span> <span class="keyword">class</span><span class="special">...</span> U<span class="special">&gt;</span> <span class="emphasis"><em><span class="identifier">unspecified</span></em></span> <a class="link" href="../boost/type_erasure/call_idp304107712.html" title="Function call"><span class="identifier">call</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">Op</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">U</span> <span class="special">&amp;&amp;</span><span class="special">...</span><span class="special">)</span><span class="special">;</span>
<span class="special">}</span>
<span class="special">}</span></pre>
</div>
@@ -138,9 +137,8 @@
<a name="header.boost.type_erasure.check_match_hpp"></a>Header &lt;<a href="../../../boost/type_erasure/check_match.hpp" target="_top">boost/type_erasure/check_match.hpp</a>&gt;</h3></div></div></div>
<pre class="synopsis"><span class="keyword">namespace</span> <span class="identifier">boost</span> <span class="special">{</span>
<span class="keyword">namespace</span> <span class="identifier">type_erasure</span> <span class="special">{</span>
- <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T<span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/typeid_.html" title="Struct template typeid_">typeid_</a><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Concept<span class="special">,</span> <span class="keyword">typename</span> Op<span class="special">,</span> <span class="keyword">class</span><span class="special">...</span> U<span class="special">&gt;</span>
- <span class="keyword">bool</span> <a class="link" href="../boost/type_erasure/check_match.html" title="Function check_match"><span class="identifier">check_match</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="../boost/type_erasure/binding.html" title="Class template binding">binding</a><span class="special">&lt;</span> <span class="identifier">Concept</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Op</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">U</span> <span class="special">&amp;&amp;</span><span class="special">...</span><span class="special">)</span><span class="special">;</span>
+ <span class="keyword">bool</span> <a class="link" href="../boost/type_erasure/check_match.html" title="Function check_match"><span class="identifier">check_match</span></a><span class="special">(</span><span class="keyword">const</span> binding<span class="special">&lt;</span> <span class="identifier">Concept</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Op</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">U</span> <span class="special">&amp;&amp;</span><span class="special">...</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Op<span class="special">,</span> <span class="keyword">class</span><span class="special">...</span> U<span class="special">&gt;</span> <span class="keyword">bool</span> <a class="link" href="../boost/type_erasure/check_match.html" title="Function check_match"><span class="identifier">check_match</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">Op</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">U</span> <span class="special">&amp;&amp;</span><span class="special">...</span><span class="special">)</span><span class="special">;</span>
<span class="special">}</span>
<span class="special">}</span></pre>
@@ -161,8 +159,6 @@
<a name="header.boost.type_erasure.concept_of_hpp"></a>Header &lt;<a href="../../../boost/type_erasure/concept_of.hpp" target="_top">boost/type_erasure/concept_of.hpp</a>&gt;</h3></div></div></div>
<pre class="synopsis"><span class="keyword">namespace</span> <span class="identifier">boost</span> <span class="special">{</span>
<span class="keyword">namespace</span> <span class="identifier">type_erasure</span> <span class="special">{</span>
- <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Concept<span class="special">,</span> <span class="keyword">typename</span> T<span class="special">&gt;</span> <span class="keyword">class</span> <a class="link" href="../boost/type_erasure/param.html" title="Class template param">param</a><span class="special">;</span>
-
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T<span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/concept_of.html" title="Struct template concept_of">concept_of</a><span class="special">;</span>
<span class="special">}</span>
<span class="special">}</span></pre>
@@ -201,8 +197,8 @@
<a name="header.boost.type_erasure.exception_hpp"></a>Header &lt;<a href="../../../boost/type_erasure/exception.hpp" target="_top">boost/type_erasure/exception.hpp</a>&gt;</h3></div></div></div>
<pre class="synopsis"><span class="keyword">namespace</span> <span class="identifier">boost</span> <span class="special">{</span>
<span class="keyword">namespace</span> <span class="identifier">type_erasure</span> <span class="special">{</span>
- <span class="keyword">class</span> <a class="link" href="../boost/type_erasure/bad_function_call.html" title="Class bad_function_call">bad_function_call</a><span class="special">;</span>
<span class="keyword">class</span> <a class="link" href="../boost/type_erasure/bad_any_cast.html" title="Class bad_any_cast">bad_any_cast</a><span class="special">;</span>
+ <span class="keyword">class</span> <a class="link" href="../boost/type_erasure/bad_function_call.html" title="Class bad_function_call">bad_function_call</a><span class="special">;</span>
<span class="special">}</span>
<span class="special">}</span></pre>
</div>
@@ -246,17 +242,16 @@
<a name="header.boost.type_erasure.iterator_hpp"></a>Header &lt;<a href="../../../boost/type_erasure/iterator.hpp" target="_top">boost/type_erasure/iterator.hpp</a>&gt;</h3></div></div></div>
<pre class="synopsis"><span class="keyword">namespace</span> <span class="identifier">boost</span> <span class="special">{</span>
<span class="keyword">namespace</span> <span class="identifier">type_erasure</span> <span class="special">{</span>
- <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Traversal<span class="special">,</span> <span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">,</span>
- <span class="keyword">typename</span> Reference <span class="special">=</span> <span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">use_default</span><span class="special">,</span>
- <span class="keyword">typename</span> DifferenceType <span class="special">=</span> <span class="special">::</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">ptrdiff_t</span><span class="special">,</span>
- <span class="keyword">typename</span> ValueType <span class="special">=</span> <span class="keyword">typename</span> <a class="link" href="../boost/type_erasure/deduced.html" title="Struct template deduced">deduced</a><span class="special">&lt;</span>iterator_value_type<span class="special">&lt;</span><span class="identifier">T</span><span class="special">&gt;</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">type</span><span class="special">&gt;</span>
- <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/iterator.html" title="Struct template iterator">iterator</a><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">,</span> <span class="keyword">typename</span> Reference <span class="special">=</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">use_default</span><span class="special">,</span>
<span class="keyword">typename</span> DifferenceType <span class="special">=</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">ptrdiff_t</span><span class="special">&gt;</span>
- <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/forward_iterator.html" title="Struct template forward_iterator">forward_iterator</a><span class="special">;</span>
+ <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/bidirectional_iterator.html" title="Struct template bidirectional_iterator">bidirectional_iterator</a><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">,</span> <span class="keyword">typename</span> Reference <span class="special">=</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">use_default</span><span class="special">,</span>
<span class="keyword">typename</span> DifferenceType <span class="special">=</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">ptrdiff_t</span><span class="special">&gt;</span>
- <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/bidirectional_iterator.html" title="Struct template bidirectional_iterator">bidirectional_iterator</a><span class="special">;</span>
+ <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/forward_iterator.html" title="Struct template forward_iterator">forward_iterator</a><span class="special">;</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Traversal<span class="special">,</span> <span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">,</span>
+ <span class="keyword">typename</span> Reference <span class="special">=</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">use_default</span><span class="special">,</span>
+ <span class="keyword">typename</span> DifferenceType <span class="special">=</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">ptrdiff_t</span><span class="special">&gt;</span>
+ <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/iterator.html" title="Struct template iterator">iterator</a><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">,</span> <span class="keyword">typename</span> Reference <span class="special">=</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">use_default</span><span class="special">,</span>
<span class="keyword">typename</span> DifferenceType <span class="special">=</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">ptrdiff_t</span><span class="special">&gt;</span>
<span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/random_access_iterator.html" title="Struct template random_access_iterator">random_access_iterator</a><span class="special">;</span>
@@ -275,45 +270,45 @@
<a name="header.boost.type_erasure.operators_hpp"></a>Header &lt;<a href="../../../boost/type_erasure/operators.hpp" target="_top">boost/type_erasure/operators.hpp</a>&gt;</h3></div></div></div>
<pre class="synopsis"><span class="keyword">namespace</span> <span class="identifier">boost</span> <span class="special">{</span>
<span class="keyword">namespace</span> <span class="identifier">type_erasure</span> <span class="special">{</span>
- <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/incrementable.html" title="Struct template incrementable">incrementable</a><span class="special">;</span>
- <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/decrementable.html" title="Struct template decrementable">decrementable</a><span class="special">;</span>
- <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">,</span> <span class="keyword">typename</span> R <span class="special">=</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/complementable.html" title="Struct template complementable">complementable</a><span class="special">;</span>
- <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">,</span> <span class="keyword">typename</span> R <span class="special">=</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/negatable.html" title="Struct template negatable">negatable</a><span class="special">;</span>
- <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> R<span class="special">,</span> <span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/dereferenceable.html" title="Struct template dereferenceable">dereferenceable</a><span class="special">;</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">,</span> <span class="keyword">typename</span> U <span class="special">=</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/add_assignable.html" title="Struct template add_assignable">add_assignable</a><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">,</span> <span class="keyword">typename</span> U <span class="special">=</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">typename</span> R <span class="special">=</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/addable.html" title="Struct template addable">addable</a><span class="special">;</span>
- <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">,</span> <span class="keyword">typename</span> U <span class="special">=</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">typename</span> R <span class="special">=</span> <span class="identifier">T</span><span class="special">&gt;</span>
- <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/subtractable.html" title="Struct template subtractable">subtractable</a><span class="special">;</span>
- <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">,</span> <span class="keyword">typename</span> U <span class="special">=</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">typename</span> R <span class="special">=</span> <span class="identifier">T</span><span class="special">&gt;</span>
- <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/multipliable.html" title="Struct template multipliable">multipliable</a><span class="special">;</span>
- <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">,</span> <span class="keyword">typename</span> U <span class="special">=</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">typename</span> R <span class="special">=</span> <span class="identifier">T</span><span class="special">&gt;</span>
- <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/dividable.html" title="Struct template dividable">dividable</a><span class="special">;</span>
- <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">,</span> <span class="keyword">typename</span> U <span class="special">=</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">typename</span> R <span class="special">=</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/modable.html" title="Struct template modable">modable</a><span class="special">;</span>
- <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">,</span> <span class="keyword">typename</span> U <span class="special">=</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">typename</span> R <span class="special">=</span> <span class="identifier">T</span><span class="special">&gt;</span>
- <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/left_shiftable.html" title="Struct template left_shiftable">left_shiftable</a><span class="special">;</span>
- <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">,</span> <span class="keyword">typename</span> U <span class="special">=</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">typename</span> R <span class="special">=</span> <span class="identifier">T</span><span class="special">&gt;</span>
- <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/right_shiftable.html" title="Struct template right_shiftable">right_shiftable</a><span class="special">;</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">,</span> <span class="keyword">typename</span> U <span class="special">=</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/bitand_assignable.html" title="Struct template bitand_assignable">bitand_assignable</a><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">,</span> <span class="keyword">typename</span> U <span class="special">=</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">typename</span> R <span class="special">=</span> <span class="identifier">T</span><span class="special">&gt;</span>
<span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/bitandable.html" title="Struct template bitandable">bitandable</a><span class="special">;</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">,</span> <span class="keyword">typename</span> U <span class="special">=</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/bitor_assignable.html" title="Struct template bitor_assignable">bitor_assignable</a><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">,</span> <span class="keyword">typename</span> U <span class="special">=</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">typename</span> R <span class="special">=</span> <span class="identifier">T</span><span class="special">&gt;</span>
<span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/bitorable.html" title="Struct template bitorable">bitorable</a><span class="special">;</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">,</span> <span class="keyword">typename</span> U <span class="special">=</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/bitxor_assignable.html" title="Struct template bitxor_assignable">bitxor_assignable</a><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">,</span> <span class="keyword">typename</span> U <span class="special">=</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">typename</span> R <span class="special">=</span> <span class="identifier">T</span><span class="special">&gt;</span>
<span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/bitxorable.html" title="Struct template bitxorable">bitxorable</a><span class="special">;</span>
- <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">,</span> <span class="keyword">typename</span> U <span class="special">=</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/add_assignable.html" title="Struct template add_assignable">add_assignable</a><span class="special">;</span>
- <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">,</span> <span class="keyword">typename</span> U <span class="special">=</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/subtract_assignable.html" title="Struct template subtract_assignable">subtract_assignable</a><span class="special">;</span>
- <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">,</span> <span class="keyword">typename</span> U <span class="special">=</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/multiply_assignable.html" title="Struct template multiply_assignable">multiply_assignable</a><span class="special">;</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">,</span> <span class="keyword">typename</span> R <span class="special">=</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/complementable.html" title="Struct template complementable">complementable</a><span class="special">;</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/decrementable.html" title="Struct template decrementable">decrementable</a><span class="special">;</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> R<span class="special">,</span> <span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/dereferenceable.html" title="Struct template dereferenceable">dereferenceable</a><span class="special">;</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">,</span> <span class="keyword">typename</span> U <span class="special">=</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">typename</span> R <span class="special">=</span> <span class="identifier">T</span><span class="special">&gt;</span>
+ <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/dividable.html" title="Struct template dividable">dividable</a><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">,</span> <span class="keyword">typename</span> U <span class="special">=</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/divide_assignable.html" title="Struct template divide_assignable">divide_assignable</a><span class="special">;</span>
- <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">,</span> <span class="keyword">typename</span> U <span class="special">=</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/mod_assignable.html" title="Struct template mod_assignable">mod_assignable</a><span class="special">;</span>
- <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">,</span> <span class="keyword">typename</span> U <span class="special">=</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/left_shift_assignable.html" title="Struct template left_shift_assignable">left_shift_assignable</a><span class="special">;</span>
- <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">,</span> <span class="keyword">typename</span> U <span class="special">=</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/right_shift_assignable.html" title="Struct template right_shift_assignable">right_shift_assignable</a><span class="special">;</span>
- <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">,</span> <span class="keyword">typename</span> U <span class="special">=</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/bitand_assignable.html" title="Struct template bitand_assignable">bitand_assignable</a><span class="special">;</span>
- <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">,</span> <span class="keyword">typename</span> U <span class="special">=</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/bitor_assignable.html" title="Struct template bitor_assignable">bitor_assignable</a><span class="special">;</span>
- <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">,</span> <span class="keyword">typename</span> U <span class="special">=</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/bitxor_assignable.html" title="Struct template bitxor_assignable">bitxor_assignable</a><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">,</span> <span class="keyword">typename</span> U <span class="special">=</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/equality_comparable.html" title="Struct template equality_comparable">equality_comparable</a><span class="special">;</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/incrementable.html" title="Struct template incrementable">incrementable</a><span class="special">;</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Is <span class="special">=</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">istream</span><span class="special">,</span> <span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/istreamable.html" title="Struct template istreamable">istreamable</a><span class="special">;</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">,</span> <span class="keyword">typename</span> U <span class="special">=</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/left_shift_assignable.html" title="Struct template left_shift_assignable">left_shift_assignable</a><span class="special">;</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">,</span> <span class="keyword">typename</span> U <span class="special">=</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">typename</span> R <span class="special">=</span> <span class="identifier">T</span><span class="special">&gt;</span>
+ <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/left_shiftable.html" title="Struct template left_shiftable">left_shiftable</a><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">,</span> <span class="keyword">typename</span> U <span class="special">=</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/less_than_comparable.html" title="Struct template less_than_comparable">less_than_comparable</a><span class="special">;</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">,</span> <span class="keyword">typename</span> U <span class="special">=</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/mod_assignable.html" title="Struct template mod_assignable">mod_assignable</a><span class="special">;</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">,</span> <span class="keyword">typename</span> U <span class="special">=</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">typename</span> R <span class="special">=</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/modable.html" title="Struct template modable">modable</a><span class="special">;</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">,</span> <span class="keyword">typename</span> U <span class="special">=</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">typename</span> R <span class="special">=</span> <span class="identifier">T</span><span class="special">&gt;</span>
+ <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/multipliable.html" title="Struct template multipliable">multipliable</a><span class="special">;</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">,</span> <span class="keyword">typename</span> U <span class="special">=</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/multiply_assignable.html" title="Struct template multiply_assignable">multiply_assignable</a><span class="special">;</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">,</span> <span class="keyword">typename</span> R <span class="special">=</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/negatable.html" title="Struct template negatable">negatable</a><span class="special">;</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Os <span class="special">=</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">ostream</span><span class="special">,</span> <span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/ostreamable.html" title="Struct template ostreamable">ostreamable</a><span class="special">;</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">,</span> <span class="keyword">typename</span> U <span class="special">=</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/right_shift_assignable.html" title="Struct template right_shift_assignable">right_shift_assignable</a><span class="special">;</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">,</span> <span class="keyword">typename</span> U <span class="special">=</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">typename</span> R <span class="special">=</span> <span class="identifier">T</span><span class="special">&gt;</span>
+ <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/right_shiftable.html" title="Struct template right_shiftable">right_shiftable</a><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> R<span class="special">,</span> <span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">,</span> <span class="keyword">typename</span> N <span class="special">=</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">ptrdiff_t</span><span class="special">&gt;</span>
<span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/subscriptable.html" title="Struct template subscriptable">subscriptable</a><span class="special">;</span>
- <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Os <span class="special">=</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">ostream</span><span class="special">,</span> <span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/ostreamable.html" title="Struct template ostreamable">ostreamable</a><span class="special">;</span>
- <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Is <span class="special">=</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">istream</span><span class="special">,</span> <span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/istreamable.html" title="Struct template istreamable">istreamable</a><span class="special">;</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">,</span> <span class="keyword">typename</span> U <span class="special">=</span> <span class="identifier">T</span><span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/subtract_assignable.html" title="Struct template subtract_assignable">subtract_assignable</a><span class="special">;</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T <span class="special">=</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">,</span> <span class="keyword">typename</span> U <span class="special">=</span> <span class="identifier">T</span><span class="special">,</span> <span class="keyword">typename</span> R <span class="special">=</span> <span class="identifier">T</span><span class="special">&gt;</span>
+ <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/subtractable.html" title="Struct template subtractable">subtractable</a><span class="special">;</span>
<span class="special">}</span>
<span class="special">}</span></pre>
</div>
@@ -331,7 +326,6 @@
<a name="header.boost.type_erasure.placeholder_hpp"></a>Header &lt;<a href="../../../boost/type_erasure/placeholder.hpp" target="_top">boost/type_erasure/placeholder.hpp</a>&gt;</h3></div></div></div>
<pre class="synopsis"><span class="keyword">namespace</span> <span class="identifier">boost</span> <span class="special">{</span>
<span class="keyword">namespace</span> <span class="identifier">type_erasure</span> <span class="special">{</span>
- <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/placeholder.html" title="Struct placeholder">placeholder</a><span class="special">;</span>
<span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/_a.html" title="Struct _a">_a</a><span class="special">;</span>
<span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/_b.html" title="Struct _b">_b</a><span class="special">;</span>
<span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/_c.html" title="Struct _c">_c</a><span class="special">;</span>
@@ -340,6 +334,7 @@
<span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/_f.html" title="Struct _f">_f</a><span class="special">;</span>
<span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/_g.html" title="Struct _g">_g</a><span class="special">;</span>
<span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/_self.html" title="Struct _self">_self</a><span class="special">;</span>
+ <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/placeholder.html" title="Struct placeholder">placeholder</a><span class="special">;</span>
<span class="special">}</span>
<span class="special">}</span></pre>
</div>
@@ -366,7 +361,7 @@
<a name="header.boost.type_erasure.relaxed_hpp"></a>Header &lt;<a href="../../../boost/type_erasure/relaxed.hpp" target="_top">boost/type_erasure/relaxed.hpp</a>&gt;</h3></div></div></div>
<pre class="synopsis"><span class="keyword">namespace</span> <span class="identifier">boost</span> <span class="special">{</span>
<span class="keyword">namespace</span> <span class="identifier">type_erasure</span> <span class="special">{</span>
- <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T<span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/is_relaxed.html" title="Struct template is_relaxed">is_relaxed</a><span class="special">;</span>
+ <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Concept<span class="special">&gt;</span> <span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/is_relaxed.html" title="Struct template is_relaxed">is_relaxed</a><span class="special">;</span>
<span class="keyword">struct</span> <a class="link" href="../boost/type_erasure/relaxed.html" title="Struct relaxed">relaxed</a><span class="special">;</span>
<span class="special">}</span>
<span class="special">}</span></pre>
@@ -377,7 +372,7 @@
<pre class="synopsis"><span class="keyword">namespace</span> <span class="identifier">boost</span> <span class="special">{</span>
<span class="keyword">namespace</span> <span class="identifier">type_erasure</span> <span class="special">{</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Concept<span class="special">,</span> <span class="keyword">typename</span> Op<span class="special">,</span> <span class="keyword">class</span><span class="special">...</span> U<span class="special">&gt;</span>
- <span class="keyword">void</span> <a class="link" href="../boost/type_erasure/require_match.html" title="Function require_match"><span class="identifier">require_match</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="../boost/type_erasure/binding.html" title="Class template binding">binding</a><span class="special">&lt;</span> <span class="identifier">Concept</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Op</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">U</span> <span class="special">&amp;&amp;</span><span class="special">...</span><span class="special">)</span><span class="special">;</span>
+ <span class="keyword">void</span> <a class="link" href="../boost/type_erasure/require_match.html" title="Function require_match"><span class="identifier">require_match</span></a><span class="special">(</span><span class="keyword">const</span> binding<span class="special">&lt;</span> <span class="identifier">Concept</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">Op</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">U</span> <span class="special">&amp;&amp;</span><span class="special">...</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Op<span class="special">,</span> <span class="keyword">class</span><span class="special">...</span> U<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="../boost/type_erasure/require_match.html" title="Function require_match"><span class="identifier">require_match</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">Op</span> <span class="special">&amp;</span><span class="special">,</span> <span class="identifier">U</span> <span class="special">&amp;&amp;</span><span class="special">...</span><span class="special">)</span><span class="special">;</span>
<span class="special">}</span>
<span class="special">}</span></pre>
@@ -408,9 +403,9 @@
<span class="keyword">namespace</span> <span class="identifier">type_erasure</span> <span class="special">{</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Concept<span class="special">,</span> <span class="keyword">class</span><span class="special">...</span> T<span class="special">&gt;</span> <span class="keyword">class</span> <a class="link" href="../boost/type_erasure/tuple.html" title="Class template tuple">tuple</a><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">int</span> N<span class="special">,</span> <span class="keyword">typename</span> Concept<span class="special">,</span> <span class="keyword">class</span><span class="special">...</span> T<span class="special">&gt;</span>
- <a class="link" href="../boost/any.html" title="Class any">any</a><span class="special">&lt;</span> <span class="identifier">Concept</span><span class="special">,</span> <span class="identifier">TN</span> <span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="../boost/type_erasure/get_idp219744944.html" title="Function get"><span class="identifier">get</span></a><span class="special">(</span><a class="link" href="../boost/type_erasure/tuple.html" title="Class template tuple">tuple</a><span class="special">&lt;</span> <span class="identifier">Concept</span><span class="special">,</span> <span class="identifier">T</span><span class="special">...</span><span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
+ <a class="link" href="../boost/any.html" title="Class any">any</a><span class="special">&lt;</span> <span class="identifier">Concept</span><span class="special">,</span> <span class="identifier">TN</span> <span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="../boost/type_erasure/get_idp309547072.html" title="Function get"><span class="identifier">get</span></a><span class="special">(</span><a class="link" href="../boost/type_erasure/tuple.html" title="Class template tuple">tuple</a><span class="special">&lt;</span> <span class="identifier">Concept</span><span class="special">,</span> <span class="identifier">T</span><span class="special">...</span><span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">int</span> N<span class="special">,</span> <span class="keyword">typename</span> Concept<span class="special">,</span> <span class="keyword">class</span><span class="special">...</span> T<span class="special">&gt;</span>
- <span class="keyword">const</span> <a class="link" href="../boost/any.html" title="Class any">any</a><span class="special">&lt;</span> <span class="identifier">Concept</span><span class="special">,</span> <span class="identifier">TN</span> <span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="../boost/type_erasure/get_idp219744944.html" title="Function get"><span class="identifier">get</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="../boost/type_erasure/tuple.html" title="Class template tuple">tuple</a><span class="special">&lt;</span> <span class="identifier">Concept</span><span class="special">,</span> <span class="identifier">T</span><span class="special">...</span><span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
+ <span class="keyword">const</span> <a class="link" href="../boost/any.html" title="Class any">any</a><span class="special">&lt;</span> <span class="identifier">Concept</span><span class="special">,</span> <span class="identifier">TN</span> <span class="special">&gt;</span> <span class="special">&amp;</span> <a class="link" href="../boost/type_erasure/get_idp309547072.html" title="Function get"><span class="identifier">get</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="../boost/type_erasure/tuple.html" title="Class template tuple">tuple</a><span class="special">&lt;</span> <span class="identifier">Concept</span><span class="special">,</span> <span class="identifier">T</span><span class="special">...</span><span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
<span class="special">}</span>
<span class="special">}</span></pre>
</div>
@@ -422,7 +417,7 @@
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Concept<span class="special">,</span> <span class="keyword">typename</span> T<span class="special">&gt;</span>
<span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">type_info</span> <span class="special">&amp;</span> <a class="link" href="../boost/type_erasure/typeid_of.html" title="Function typeid_of"><span class="identifier">typeid_of</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="../boost/any.html" title="Class any">any</a><span class="special">&lt;</span> <span class="identifier">Concept</span><span class="special">,</span> <span class="identifier">T</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
<span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T<span class="special">,</span> <span class="keyword">typename</span> Concept<span class="special">&gt;</span>
- <span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">type_info</span> <span class="special">&amp;</span> <a class="link" href="../boost/type_erasure/typeid_of.html" title="Function typeid_of"><span class="identifier">typeid_of</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="../boost/type_erasure/binding.html" title="Class template binding">binding</a><span class="special">&lt;</span> <span class="identifier">Concept</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
+ <span class="keyword">const</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">type_info</span> <span class="special">&amp;</span> <a class="link" href="../boost/type_erasure/typeid_of.html" title="Function typeid_of"><span class="identifier">typeid_of</span></a><span class="special">(</span><span class="keyword">const</span> binding<span class="special">&lt;</span> <span class="identifier">Concept</span> <span class="special">&gt;</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span>
<span class="special">}</span>
<span class="special">}</span></pre>
</div>
@@ -437,7 +432,7 @@
</tr></table>
<hr>
<div class="spirit-nav">
-<a accesskey="p" href="predef.html"><img src="../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../boost_typeerasure.html"><img src="../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../boost/type_erasure/constructible.html"><img src="../../../doc/src/images/next.png" alt="Next"></a>
+<a accesskey="p" href="predef.html"><img src="../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../boost_typeerasure.html"><img src="../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../boost/type_erasure/any_Concept___idp302429456.html"><img src="../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>