1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 2<HTML> 3<HEAD> 4 <TITLE>Pipable</TITLE> 5 <LINK REL="stylesheet" HREF="../../../../boost.css"> 6 <LINK REL="stylesheet" HREF="../theme/iostreams.css"> 7</HEAD> 8<BODY> 9 10<!-- Begin Banner --> 11 12 <H1 CLASS="title">Pipable</H1> 13 <HR CLASS="banner"> 14 15<!-- End Banner --> 16 17<H2>Description</H2> 18 19<P> 20 A Pipable Filter can appear as a component of a <A HREF="../guide/pipelines.html">pipline</A>. 21</P> 22 23<P> 24 Certian overloads of <CODE>operator|</CODE> must be defined to make a Filter Pipable; this is achieved by invoking the macro <A HREF="../guide/pipelines.html#boost_iostreams_pipable"><CODE>BOOST_IOSTREAMS_PIPABLE</CODE></A>. 25</P> 26 27<H2>Refinement of</H2> 28 29<A HREF="filter.html">Filter</A>. 30 31<A NAME="types"></A> 32<H2>Associated Types</H2> 33 34Same as <A HREF="filter.html">Filter</A>. 35 36<H2>Notation</H2> 37 38<TABLE CELLPADDING="2"> 39 <TR><TD><CODE>P</CODE></TD><TD>-</TD><TD>A type which is a model of Pipable</TD></TR> 40 <TR><TD><CODE>C</CODE></TD><TD>-</TD><TD>A type which is a model of <A HREF="filter.html">Filter</A> or <A HREF="device.html">Device</A> and which is <A HREF="../../../../doc/html/CopyConstructible.html" TARGET="_top">CopyConstructible</A><A CLASS='footnote_ref' NAME='note_1_ref' HREF="#note_1"><SUP>[1]</A></SUP></TD></TR> 41 <TR><TD><CODE>p</CODE></TD><TD>-</TD><TD>Object of type <CODE>P</CODE></TD></TR> 42 <TR><TD><CODE>c</CODE></TD><TD>-</TD><TD>Object of type <CODE>C</CODE></TD></TR> 43</TABLE> 44 45<H2>Valid Expressions / Semantics</H2> 46 47<TABLE CELLPADDING="5" BORDER="1"> 48 <TR><TH>Expression</TH><TH>Expression Type</TH><TH>Semantics</TH></TR> 49 <TR> 50 <TD> 51 <PRE CLASS="plain_code"><CODE>f | c</CODE></PRE> 52 </TD> 53 <TD><I>implementation-defined</I></TD> 54 <TD> 55 Returns a pipeline corresponding to the sequence <CODE>f</CODE>, <CODE>c</CODE> 56 </TD> 57 </TR> 58</TABLE> 59 60<H2>Exceptions</H2> 61 62<P> 63 None. 64</P> 65 66<H2>Models</H2> 67<UL> 68 <LI>All the Filters provided by the Iostreams library. 69</UL> 70 71<!-- Begin Footnotes --> 72 73<HR> 74 75<P> 76 <A CLASS="footnote_ref" NAME="note_1" HREF="#note_1_ref"><SUP>[1]</SUP></A>This requirement prevents streams and stream buffers from appearing in pipelines without the use of <A HREF="../../../../doc/html/ref.html">reference wrappers</A>. This restriction may be removed in a future version of the Iostreams library. 77</P> 78 79<!-- End Footnotes --> 80 81<!-- Begin Footer --> 82 83<HR> 84 85<P CLASS="copyright">© Copyright 2008 <a href="http://www.coderage.com/" target="_top">CodeRage, LLC</a><br/>© Copyright 2004-2007 <a href="https://www.boost.org/users/people/jonathan_turkanis.html" target="_top">Jonathan Turkanis</a></P> 86<P CLASS="copyright"> 87 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">http://www.boost.org/LICENSE_1_0.txt</A>) 88</P> 89 90<!-- End Footer --> 91 92</BODY>