1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889 |
- <?xml version="1.0" encoding="utf-8"?>
- <!--
- Copyright 2012 Eric Niebler
- Distributed under the Boost
- Software License, Version 1.0. (See accompanying
- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
- -->
- <header name="boost/proto/functional/fusion/pop_front.hpp">
- <para>Includes Proto callable <computeroutput><classname>boost::proto::functional::pop_front</classname></computeroutput>.</para>
- <namespace name="boost">
- <namespace name="proto">
- <namespace name="functional">
- <!-- proto::functional::pop_front -->
- <struct name="pop_front">
- <purpose>A <conceptname>PolymorphicFunctionObject</conceptname> type that invokes the
- <computeroutput>fusion::pop_front()</computeroutput> algorithm on its argument.</purpose>
- <description>
- <para>
- A <conceptname>PolymorphicFunctionObject</conceptname> type that invokes the
- <computeroutput>fusion::pop_front()</computeroutput> algorithm on its argument. This is
- useful for defining a <conceptname>CallableTransform</conceptname> such as
- <computeroutput>pop_front(_)</computeroutput>, which removes the first child from a Proto
- expression node. Such a transform might be used as the first argument to the
- <computeroutput><classname alt="proto::fold">proto::fold<></classname></computeroutput>
- transform; that is, fold all but the first child.
- </para>
- </description>
- <inherit>
- <type><classname>proto::callable</classname></type>
- </inherit>
- <struct-specialization name="result">
- <template>
- <template-type-parameter name="This"/>
- <template-type-parameter name="Seq"/>
- </template>
- <specialization>
- <template-arg>This(Seq)</template-arg>
- </specialization>
- <inherit>
- <type>result< This(Seq const &) ></type>
- </inherit>
- </struct-specialization>
- <struct-specialization name="result">
- <template>
- <template-type-parameter name="This"/>
- <template-type-parameter name="Seq"/>
- </template>
- <specialization>
- <template-arg>This(Seq &)</template-arg>
- </specialization>
- <inherit>
- <type>fusion::result_of::pop_front< Seq ></type>
- </inherit>
- </struct-specialization>
- <method-group name="public member functions">
- <method name="operator()" cv="const">
- <type>typename fusion::result_of::pop_front< Seq >::type</type>
- <template>
- <template-type-parameter name="Seq"/>
- </template>
- <parameter name="seq">
- <paramtype>Seq &</paramtype>
- </parameter>
- <returns>
- <para><computeroutput>fusion::pop_front(seq)</computeroutput></para>
- </returns>
- </method>
- <method name="operator()" cv="const">
- <type>typename fusion::result_of::pop_front< Seq const >::type</type>
- <template>
- <template-type-parameter name="Seq"/>
- </template>
- <parameter name="seq">
- <paramtype>Seq const &</paramtype>
- </parameter>
- <returns>
- <para><computeroutput>fusion::pop_front(seq)</computeroutput></para>
- </returns>
- </method>
- </method-group>
- </struct>
- </namespace>
- </namespace>
- </namespace>
- </header>
|