mirror of
https://github.com/boostorg/callable_traits.git
synced 2026-02-27 17:02:12 +00:00
Merge remote-tracking branch 'refs/remotes/origin/master' into gh-pages
This commit is contained in:
@@ -200,7 +200,7 @@ The use cases for [libname] are closely related to those of [@http://www.boost.o
|
||||
|
||||
[*3.] [libname] is designed to comply with [invoke] rules, with one unobtrusive and beneficial deviation: [link_fn] types types are compatible with all relevant type operations that do not specifically require an invocation.
|
||||
|
||||
[*4.] [namespace_scoped][link_arg_at]`<2, Callable>` is more flexible (arguable more readable) than `typename boost::function_traits<Callable>::arg3_type`.
|
||||
[*4.] [namespace_scoped][link_arg_at]`<2, Callable>` is more flexible than `typename boost::function_traits<Callable>::arg3_type`.
|
||||
|
||||
[*5.] [link_can_invoke] is used to test `INVOKE`-ability at compile-time, with value semantics. For the craziest metaprogrammers, [link_can_invoke_constexpr] does the same as `can_invoke` for [link_constexpr_constructible] types, with an added check for `constexpr`-ness
|
||||
|
||||
@@ -502,7 +502,7 @@ The simplest way to use [libname] is to include the main header file:
|
||||
[endsect][/section:headers]
|
||||
|
||||
|
||||
[template msvc_incompatible[] is not compatible with the Microsoft Visual C++ compiler in Visual Studio (a.k.a. MSVC). Accordingly, the example(s) below will not compile in MSVC. However, Windows users can still use clang-cl. Refer to the [link_msvc_issues] section for more information.]
|
||||
[template msvc_incompatible[] is not compatible with the Microsoft Visual C++ compiler in Visual Studio (a.k.a. MSVC). Accordingly, the example(s) below will not compile in MSVC. However, Visual Studio users can still use Clang-cl. Refer to the [link_msvc_issues] section for more information.]
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -35,7 +35,7 @@
|
||||
<code class="literal">callable_traits::</code><code class="computeroutput"><span class="identifier">bind</span></code>
|
||||
is not compatible with the Microsoft Visual C++ compiler in Visual Studio
|
||||
(a.k.a. MSVC). Accordingly, the example(s) below will not compile in MSVC.
|
||||
However, Windows users can still use clang-cl. Refer to the <a class="link" href="compatibility.html#callable_traits.compatibility.msvc_issues" title="MSVC Issues">MSVC
|
||||
However, Visual Studio users can still use Clang-cl. Refer to the <a class="link" href="compatibility.html#callable_traits.compatibility.msvc_issues" title="MSVC Issues">MSVC
|
||||
Issues</a> section for more information.
|
||||
</p></td></tr>
|
||||
</table></div>
|
||||
@@ -116,18 +116,19 @@
|
||||
<span class="phrase"><a name="callable_traits.ref_bind.notes"></a></span><a class="link" href="ref_bind.html#callable_traits.ref_bind.notes">Notes</a>
|
||||
</h4>
|
||||
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
|
||||
<p class="simpara">
|
||||
<code class="literal">callable_traits::</code><code class="computeroutput"><span class="identifier">bind</span></code>
|
||||
is the only feature of <code class="literal">CallableTraits</code> with non-constexpr
|
||||
behavior. However, the runtime behavior is only provided for convenience
|
||||
-- <code class="literal">callable_traits::</code><code class="computeroutput"><span class="identifier">bind</span></code>
|
||||
is designed to be a metaprogramming tool, and may be used in unevaluated
|
||||
contexts.
|
||||
</li></ul></div>
|
||||
</p>
|
||||
<h4>
|
||||
<a name="callable_traits.ref_bind.h3"></a>
|
||||
<span class="phrase"><a name="callable_traits.ref_bind.example_1"></a></span><a class="link" href="ref_bind.html#callable_traits.ref_bind.example_1">Example
|
||||
1</a>
|
||||
</h4>
|
||||
<span class="phrase"><a name="callable_traits.ref_bind.example_1"></a></span><a class="link" href="ref_bind.html#callable_traits.ref_bind.example_1">Example
|
||||
1</a>
|
||||
</h4>
|
||||
<pre class="programlisting"><span class="comment">/* In this example, the last _1 placeholder in the bind
|
||||
expression forces all other _1 slots to accept ScaryMonster,
|
||||
because ScaryMonster is the narrowest of all _1 parameters. */</span>
|
||||
@@ -200,9 +201,9 @@ because ScaryMonster is the narrowest of all _1 parameters. */</span>
|
||||
</pre>
|
||||
<h4>
|
||||
<a name="callable_traits.ref_bind.h4"></a>
|
||||
<span class="phrase"><a name="callable_traits.ref_bind.example_2"></a></span><a class="link" href="ref_bind.html#callable_traits.ref_bind.example_2">Example
|
||||
2</a>
|
||||
</h4>
|
||||
<span class="phrase"><a name="callable_traits.ref_bind.example_2"></a></span><a class="link" href="ref_bind.html#callable_traits.ref_bind.example_2">Example
|
||||
2</a>
|
||||
</h4>
|
||||
<pre class="programlisting"><span class="preprocessor">#include</span> <span class="special"><</span><span class="identifier">cassert</span><span class="special">></span>
|
||||
<span class="preprocessor">#include</span> <span class="special"><</span><span class="identifier">type_traits</span><span class="special">></span>
|
||||
<span class="preprocessor">#include</span> <span class="special"><</span><span class="identifier">functional</span><span class="special">></span>
|
||||
@@ -253,6 +254,7 @@ because ScaryMonster is the narrowest of all _1 parameters. */</span>
|
||||
<span class="keyword">return</span> <span class="number">0</span><span class="special">;</span>
|
||||
<span class="special">}</span>
|
||||
</pre>
|
||||
</li></ul></div>
|
||||
<h4>
|
||||
<a name="callable_traits.ref_bind.h5"></a>
|
||||
<span class="phrase"><a name="callable_traits.ref_bind.see_also"></a></span><a class="link" href="ref_bind.html#callable_traits.ref_bind.see_also">See
|
||||
|
||||
@@ -35,7 +35,7 @@
|
||||
<code class="computeroutput"><span class="identifier">can_invoke_constexpr</span></code> is not
|
||||
compatible with the Microsoft Visual C++ compiler in Visual Studio (a.k.a.
|
||||
MSVC). Accordingly, the example(s) below will not compile in MSVC. However,
|
||||
Windows users can still use clang-cl. Refer to the <a class="link" href="compatibility.html#callable_traits.compatibility.msvc_issues" title="MSVC Issues">MSVC
|
||||
Visual Studio users can still use Clang-cl. Refer to the <a class="link" href="compatibility.html#callable_traits.compatibility.msvc_issues" title="MSVC Issues">MSVC
|
||||
Issues</a> section for more information.
|
||||
</p></td></tr>
|
||||
</table></div>
|
||||
|
||||
@@ -535,8 +535,7 @@
|
||||
<p>
|
||||
<span class="bold"><strong>4.</strong></span> <code class="literal">callable_traits::</code><a class="link" href="callable_traits/ref_arg_at.html" title="arg_at"><code class="literal">arg_at</code></a><code class="computeroutput"><span class="special"><</span><span class="number">2</span><span class="special">,</span>
|
||||
<span class="identifier">Callable</span><span class="special">></span></code>
|
||||
is more flexible (arguable more readable) than <code class="computeroutput"><span class="keyword">typename</span>
|
||||
<span class="identifier">boost</span><span class="special">::</span><span class="identifier">function_traits</span><span class="special"><</span><span class="identifier">Callable</span><span class="special">>::</span><span class="identifier">arg3_type</span></code>.
|
||||
is more flexible than <code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">function_traits</span><span class="special"><</span><span class="identifier">Callable</span><span class="special">>::</span><span class="identifier">arg3_type</span></code>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><strong>5.</strong></span> <a class="link" href="callable_traits/ref_can_invoke.html" title="can_invoke"><code class="literal">can_invoke</code></a>
|
||||
|
||||
Reference in New Issue
Block a user