1 <!DOCTYPE HTML PUBLIC
"-//W3C//DTD HTML 4.01 Transitional//EN">
4 <TITLE>Function Template putback
</TITLE>
5 <LINK REL=
"stylesheet" HREF=
"../../../../boost.css">
6 <LINK REL=
"stylesheet" HREF=
"../theme/iostreams.css">
12 <H1 CLASS=
"title">Function Template
<CODE>putback
</CODE></H1>
17 <DL class=
"page-index">
18 <DT><A href=
"#overview">Overview
</A></DT>
19 <DT><A href=
"#headers">Headers
</A></DT>
20 <DT><A href=
"#reference">Reference
</A></DT>
23 <A NAME=
"overview"></A>
27 The function template
<CODE>putback
</CODE> provides a uniform interface for putting back characters read from models of
<A HREF=
"../concepts/peekable.html">Peekable
</A>, for use in the definitions of
<A HREF=
"../concepts/filter.html">Filters
</A>.
30 <A NAME=
"headers"></A>
34 <DT><A CLASS=
"header" HREF=
"../../../../boost/iostreams/operations.hpp"><CODE><boost/iostreams/operations.hpp
></CODE></A></DT>
35 <DT><A CLASS=
"header" HREF=
"../../../../boost/iostreams/putback.hpp"><CODE><boost/iostreams/putback.hpp
></CODE></A></DT>
38 <A NAME=
"reference"></A>
41 <A NAME=
"description"></A>
44 <P>Attempt to putback a character to a given instance of the template parameter
<CODE>Peekable
</CODE>, returning
<CODE>true
</CODE> for success.
</P>
46 <A NAME=
"synopsis"></A>
49 <PRE CLASS=
"broken_ie"><SPAN CLASS=
"keyword">namespace
</SPAN> boost {
<SPAN CLASS=
"keyword">namespace
</SPAN> iostreams {
51 <SPAN CLASS=
"keyword">template
</SPAN><<SPAN CLASS=
"keyword">typename
</SPAN> <A CLASS=
"documented" HREF=
"#template_params">Peekable
</A>>
52 <SPAN CLASS=
"keyword">bool
</SPAN> <A CLASS=
"documented" HREF=
"#semantics">putback
</A>(Peekable
& peekable,
<SPAN CLASS=
"keyword">typename
</SPAN> <A CLASS=
"documented" HREF=
"../guide/traits.html#char_type_of_ref">char_type_of
</A><Peekable
>::type c);
54 } }
<SPAN CLASS=
"comment">// End namespace boost::io
</SPAN></PRE>
56 <A NAME=
"template_params"></A>
57 <H4>Template Parameters
</H4>
59 <TABLE STYLE=
"margin-left:2em" BORDER=
0 CELLPADDING=
2>
62 <TD VALIGN=
"top"><I>Peekable
</I></TD><TD WIDTH=
"2em" VALIGN=
"top">-
</TD>
63 <TD>A model of
<A HREF=
"../concepts/peekable.html">Peekable
</A>.
67 <A NAME=
"semantics"></A>
70 <P>The semantics of
<CODE>putback
</CODE> depends on the
<A HREF=
"../guide/traits.html#category">category
</A> of
<CODE>Peekable
</CODE> as follows:
</P>
72 <TABLE STYLE=
"margin:0,0,2em,2em" BORDER=
1 CELLPADDING=
4>
73 <TR><TH><CODE>category_of
<Peekable
>::type
</CODE></TH><TH>semantics
</TH></TR>
75 <TD VALIGN=
"top">convertible to
<A HREF=
"../guide/traits.html#category_tags"><CODE>istream_tag
</CODE></A></TD>
76 <TD>invokes
<CODE>peekable.rdbuf()-
>putback(c)
</CODE> and returns
<CODE>true
</CODE> if the operation was successful
</CODE></TD>
79 <TD VALIGN=
"top">convertible to
<A HREF=
"../guide/traits.html#category_tags"><CODE>streambuf_tag
</CODE></A> but not to
<A HREF=
"../guide/traits.html#category_tags"><CODE>istream_tag
</CODE></A></TD>
80 <TD>invokes
<CODE>peekable.sputbackc(c)
</CODE> and returns
<CODE>true
</CODE> if the operation was successful
</TD>
83 <TD VALIGN=
"top">convertible to
<A HREF=
"../guide/traits.html#category_tags"><CODE>peekable_tag
</CODE></A> but not to
<A HREF=
"../guide/traits.html#category_tags"><CODE>streambuf_tag
</CODE></A> or
<A HREF=
"../guide/traits.html#category_tags"><CODE>istream_tag
</CODE></A></TD>
84 <TD>returns
<CODE>peekable.putback(c)
</CODE></TD>
87 <TD VALIGN=
"top">otherwise
</TD>
88 <TD>compile-time error
</CODE></TD>
96 <P CLASS=
"copyright">© Copyright
2008 <a href=
"http://www.coderage.com/" target=
"_top">CodeRage, LLC
</a><br/>© Copyright
2004-
2007 <a href=
"http://www.coderage.com/turkanis/" target=
"_top">Jonathan Turkanis
</a></P>
98 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>)