<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
<title>Struct template vararg</title>
<link rel="stylesheet" href="../../../../doc/src/boostbook.css" type="text/css">
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="../../index.html" title="The Boost C++ Libraries BoostBook Documentation Subset">
<link rel="up" href="../../proto/reference.html#header.boost.proto.matches_hpp" title="Header &lt;boost/proto/matches.hpp&gt;">
<link rel="prev" href="convertible_to.html" title="Struct template convertible_to">
<link rel="next" href="matches.html" title="Struct template matches">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table cellpadding="2" width="100%"><tr>
<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../boost.png"></td>
<td align="center"><a href="../../../../index.html">Home</a></td>
<td align="center"><a href="../../../../libs/libraries.htm">Libraries</a></td>
<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
<td align="center"><a href="../../../../more/index.htm">More</a></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="convertible_to.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../proto/reference.html#header.boost.proto.matches_hpp"><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="matches.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
</div>
<div class="refentry">
<a name="boost.proto.vararg"></a><div class="titlepage"></div>
<div class="refnamediv">
<h2><span class="refentrytitle">Struct template vararg</span></h2>
<p>boost::proto::vararg &#8212; For matching a Grammar to a variable number of sub-expressions.</p>
</div>
<h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2>
<div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis"><span class="comment">// In header: &lt;<a class="link" href="../../proto/reference.html#header.boost.proto.matches_hpp" title="Header &lt;boost/proto/matches.hpp&gt;">boost/proto/matches.hpp</a>&gt;

</span><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Grammar<span class="special">&gt;</span> 
<span class="keyword">struct</span> <a class="link" href="vararg.html" title="Struct template vararg">vararg</a> <span class="special">{</span>
<span class="special">}</span><span class="special">;</span></pre></div>
<div class="refsect1">
<a name="id2332745"></a><h2>Description</h2>
<p>
            An expression type <code class="computeroutput"><a class="link" href="basic_expr.html" title="Struct template basic_expr">proto::basic_expr</a>&lt;AT,
            <a class="link" href="listN.html" title="Struct template listN">proto::listN</a>&lt;A<sub>0</sub>,...A<sub>n</sub>,U<sub>0</sub>,...U<sub>m</sub>&gt; &gt;</code>
            matches a grammar <code class="computeroutput"><a class="link" href="basic_expr.html" title="Struct template basic_expr">proto::basic_expr</a>&lt;BT,
            <a class="link" href="listN.html" title="Struct template listN">proto::listM</a>&lt;B<sub>0</sub>,...B<sub>n</sub>,proto::vararg&lt;V&gt; &gt; &gt;</code>
            if <code class="computeroutput">BT</code> is <code class="computeroutput"><a class="link" href="_.html" title="Struct _">proto::_</a></code>
            or <code class="computeroutput">AT</code>, and if
            <code class="computeroutput">A<sub>x</sub></code> matches
            <code class="computeroutput">B<sub>x</sub></code>
            for each <code class="computeroutput">x</code> in <code class="computeroutput">[0,n]</code>
            and if <code class="computeroutput">U<sub>x</sub></code> matches
            <code class="computeroutput">V</code> for each <code class="computeroutput">x</code> in <code class="computeroutput">[0,m]</code>.
          </p>
<p>For example:</p>
<p>
            </p>
<pre class="programlisting"><span class="comment">// Match any function call expression, regardless</span>
<span class="comment">// of the number of function arguments:</span>
<span class="keyword">struct</span> <span class="identifier">Function</span> <span class="special">:</span>
  <a class="link" href="function.html" title="Struct template function">proto::function</a><span class="special">&lt;</span> <span class="identifier">proto</span><span class="special">::</span><span class="identifier">vararg</span><span class="special">&lt;</span><span class="identifier">proto</span><span class="special">::</span><span class="identifier">_</span><span class="special">&gt;</span> <span class="special">&gt;</span>
<span class="special">{</span><span class="special">}</span><span class="special">;</span></pre>
<p>
          </p>
<p>
            When used as a transform, <code class="computeroutput">proto::vararg&lt;G&gt;</code>
            applies <code class="computeroutput">G</code>'s transform.
          </p>
</div>
</div>
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
<td align="left"></td>
<td align="right"><div class="copyright-footer">Copyright &#169; 2008 Eric Niebler<p>
        Distributed under the Boost Software License, Version 1.0. (See accompanying
        file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
      </p>
</div></td>
</tr></table>
<hr>
<div class="spirit-nav">
<a accesskey="p" href="convertible_to.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../proto/reference.html#header.boost.proto.matches_hpp"><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="matches.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
</div>
</body>
</html>
