Imported Upstream version 0.10
[platform/upstream/json-c.git] / doc / html / printbuf_8h.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2 <html xmlns="http://www.w3.org/1999/xhtml">
3 <head>
4 <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
5 <title>json-c: printbuf.h File Reference</title>
6 <link href="tabs.css" rel="stylesheet" type="text/css"/>
7 <link href="doxygen.css" rel="stylesheet" type="text/css"/>
8 </head>
9 <body>
10 <!-- Generated by Doxygen 1.6.3 -->
11 <div class="navigation" id="top">
12   <div class="tabs">
13     <ul>
14       <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
15       <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
16       <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
17       <li class="current"><a href="files.html"><span>Files</span></a></li>
18     </ul>
19   </div>
20   <div class="tabs">
21     <ul>
22       <li><a href="files.html"><span>File&nbsp;List</span></a></li>
23       <li><a href="globals.html"><span>Globals</span></a></li>
24     </ul>
25   </div>
26 </div>
27 <div class="contents">
28 <h1>printbuf.h File Reference</h1><table border="0" cellpadding="0" cellspacing="0">
29 <tr><td colspan="2"><h2>Data Structures</h2></td></tr>
30 <tr><td class="memItemLeft" align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structprintbuf.html">printbuf</a></td></tr>
31 <tr><td colspan="2"><h2>Defines</h2></td></tr>
32 <tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="printbuf_8h.html#a6f3a4dc87fab41c37e3eff42f40dc346">printbuf_memappend_fast</a>(p, bufptr, bufsize)</td></tr>
33 <tr><td class="memItemLeft" align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="printbuf_8h.html#acdd84ad88987c0166b7ba0e3f1f8f1bb">printbuf_length</a>(p)&nbsp;&nbsp;&nbsp;((p)-&gt;bpos)</td></tr>
34 <tr><td colspan="2"><h2>Functions</h2></td></tr>
35 <tr><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structprintbuf.html">printbuf</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="printbuf_8h.html#a3e390ebc7660a18335edd89f640fd415">printbuf_new</a> (void)</td></tr>
36 <tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="printbuf_8h.html#a22f09779a19db59a83e7cb8c2ce4c75f">printbuf_memappend</a> (struct <a class="el" href="structprintbuf.html">printbuf</a> *p, const char *buf, int size)</td></tr>
37 <tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="printbuf_8h.html#ad7fc6ec4c296e85abf404244614cded5">printbuf_memset</a> (struct <a class="el" href="structprintbuf.html">printbuf</a> *pb, int offset, int charvalue, int len)</td></tr>
38 <tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="printbuf_8h.html#adf6214db6c8ce994c7f7f1180863c8a4">sprintbuf</a> (struct <a class="el" href="structprintbuf.html">printbuf</a> *p, const char *msg,...)</td></tr>
39 <tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="printbuf_8h.html#a4393ee3dedb376af11c96fe97532292e">printbuf_reset</a> (struct <a class="el" href="structprintbuf.html">printbuf</a> *p)</td></tr>
40 <tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="printbuf_8h.html#ab525221c767ac65c58ddeea8a655a4e8">printbuf_free</a> (struct <a class="el" href="structprintbuf.html">printbuf</a> *p)</td></tr>
41 </table>
42 <hr/><h2>Define Documentation</h2>
43 <a class="anchor" id="acdd84ad88987c0166b7ba0e3f1f8f1bb"></a><!-- doxytag: member="printbuf.h::printbuf_length" ref="acdd84ad88987c0166b7ba0e3f1f8f1bb" args="(p)" -->
44 <div class="memitem">
45 <div class="memproto">
46       <table class="memname">
47         <tr>
48           <td class="memname">#define printbuf_length</td>
49           <td>(</td>
50           <td class="paramtype">p&nbsp;</td>
51           <td class="paramname"></td>
52           <td>&nbsp;)&nbsp;</td>
53           <td>&nbsp;&nbsp;&nbsp;((p)-&gt;bpos)</td>
54         </tr>
55       </table>
56 </div>
57 <div class="memdoc">
58
59 </div>
60 </div>
61 <a class="anchor" id="a6f3a4dc87fab41c37e3eff42f40dc346"></a><!-- doxytag: member="printbuf.h::printbuf_memappend_fast" ref="a6f3a4dc87fab41c37e3eff42f40dc346" args="(p, bufptr, bufsize)" -->
62 <div class="memitem">
63 <div class="memproto">
64       <table class="memname">
65         <tr>
66           <td class="memname">#define printbuf_memappend_fast</td>
67           <td>(</td>
68           <td class="paramtype">p, </td>
69         </tr>
70         <tr>
71           <td class="paramkey"></td>
72           <td></td>
73           <td class="paramtype">bufptr, </td>
74         </tr>
75         <tr>
76           <td class="paramkey"></td>
77           <td></td>
78           <td class="paramtype">bufsize&nbsp;</td>
79           <td class="paramname"></td>
80           <td>&nbsp;)&nbsp;</td>
81           <td></td>
82         </tr>
83       </table>
84 </div>
85 <div class="memdoc">
86 <b>Value:</b><div class="fragment"><pre class="fragment"><span class="keywordflow">do</span> {                                                         \
87   <span class="keywordflow">if</span> ((p-&gt;size - p-&gt;bpos) &gt; bufsize) {                       \
88     memcpy(p-&gt;buf + p-&gt;bpos, (bufptr), bufsize);             \
89     p-&gt;bpos += bufsize;                                      \
90     p-&gt;buf[p-&gt;bpos]= <span class="charliteral">&#39;\0&#39;</span>;                                   \
91   } <span class="keywordflow">else</span> {  <a class="code" href="printbuf_8h.html#a22f09779a19db59a83e7cb8c2ce4c75f">printbuf_memappend</a>(p, (bufptr), bufsize); }      \
92 } <span class="keywordflow">while</span> (0)
93 </pre></div>
94 </div>
95 </div>
96 <hr/><h2>Function Documentation</h2>
97 <a class="anchor" id="ab525221c767ac65c58ddeea8a655a4e8"></a><!-- doxytag: member="printbuf.h::printbuf_free" ref="ab525221c767ac65c58ddeea8a655a4e8" args="(struct printbuf *p)" -->
98 <div class="memitem">
99 <div class="memproto">
100       <table class="memname">
101         <tr>
102           <td class="memname">void printbuf_free </td>
103           <td>(</td>
104           <td class="paramtype">struct <a class="el" href="structprintbuf.html">printbuf</a> *&nbsp;</td>
105           <td class="paramname"> <em>p</em></td>
106           <td>&nbsp;)&nbsp;</td>
107           <td></td>
108         </tr>
109       </table>
110 </div>
111 <div class="memdoc">
112
113 </div>
114 </div>
115 <a class="anchor" id="a22f09779a19db59a83e7cb8c2ce4c75f"></a><!-- doxytag: member="printbuf.h::printbuf_memappend" ref="a22f09779a19db59a83e7cb8c2ce4c75f" args="(struct printbuf *p, const char *buf, int size)" -->
116 <div class="memitem">
117 <div class="memproto">
118       <table class="memname">
119         <tr>
120           <td class="memname">int printbuf_memappend </td>
121           <td>(</td>
122           <td class="paramtype">struct <a class="el" href="structprintbuf.html">printbuf</a> *&nbsp;</td>
123           <td class="paramname"> <em>p</em>, </td>
124         </tr>
125         <tr>
126           <td class="paramkey"></td>
127           <td></td>
128           <td class="paramtype">const char *&nbsp;</td>
129           <td class="paramname"> <em>buf</em>, </td>
130         </tr>
131         <tr>
132           <td class="paramkey"></td>
133           <td></td>
134           <td class="paramtype">int&nbsp;</td>
135           <td class="paramname"> <em>size</em></td><td>&nbsp;</td>
136         </tr>
137         <tr>
138           <td></td>
139           <td>)</td>
140           <td></td><td></td><td></td>
141         </tr>
142       </table>
143 </div>
144 <div class="memdoc">
145
146 </div>
147 </div>
148 <a class="anchor" id="ad7fc6ec4c296e85abf404244614cded5"></a><!-- doxytag: member="printbuf.h::printbuf_memset" ref="ad7fc6ec4c296e85abf404244614cded5" args="(struct printbuf *pb, int offset, int charvalue, int len)" -->
149 <div class="memitem">
150 <div class="memproto">
151       <table class="memname">
152         <tr>
153           <td class="memname">int printbuf_memset </td>
154           <td>(</td>
155           <td class="paramtype">struct <a class="el" href="structprintbuf.html">printbuf</a> *&nbsp;</td>
156           <td class="paramname"> <em>pb</em>, </td>
157         </tr>
158         <tr>
159           <td class="paramkey"></td>
160           <td></td>
161           <td class="paramtype">int&nbsp;</td>
162           <td class="paramname"> <em>offset</em>, </td>
163         </tr>
164         <tr>
165           <td class="paramkey"></td>
166           <td></td>
167           <td class="paramtype">int&nbsp;</td>
168           <td class="paramname"> <em>charvalue</em>, </td>
169         </tr>
170         <tr>
171           <td class="paramkey"></td>
172           <td></td>
173           <td class="paramtype">int&nbsp;</td>
174           <td class="paramname"> <em>len</em></td><td>&nbsp;</td>
175         </tr>
176         <tr>
177           <td></td>
178           <td>)</td>
179           <td></td><td></td><td></td>
180         </tr>
181       </table>
182 </div>
183 <div class="memdoc">
184 <p>Set len bytes of the buffer to charvalue, starting at offset offset. Similar to calling memset(x, charvalue, len);</p>
185 <p>The memory allocated for the buffer is extended as necessary.</p>
186 <p>If offset is -1, this starts at the end of the current data in the buffer. </p>
187
188 </div>
189 </div>
190 <a class="anchor" id="a3e390ebc7660a18335edd89f640fd415"></a><!-- doxytag: member="printbuf.h::printbuf_new" ref="a3e390ebc7660a18335edd89f640fd415" args="(void)" -->
191 <div class="memitem">
192 <div class="memproto">
193       <table class="memname">
194         <tr>
195           <td class="memname">struct <a class="el" href="structprintbuf.html">printbuf</a>* printbuf_new </td>
196           <td>(</td>
197           <td class="paramtype">void&nbsp;</td>
198           <td class="paramname"></td>
199           <td>&nbsp;)&nbsp;</td>
200           <td><code> [read]</code></td>
201         </tr>
202       </table>
203 </div>
204 <div class="memdoc">
205
206 </div>
207 </div>
208 <a class="anchor" id="a4393ee3dedb376af11c96fe97532292e"></a><!-- doxytag: member="printbuf.h::printbuf_reset" ref="a4393ee3dedb376af11c96fe97532292e" args="(struct printbuf *p)" -->
209 <div class="memitem">
210 <div class="memproto">
211       <table class="memname">
212         <tr>
213           <td class="memname">void printbuf_reset </td>
214           <td>(</td>
215           <td class="paramtype">struct <a class="el" href="structprintbuf.html">printbuf</a> *&nbsp;</td>
216           <td class="paramname"> <em>p</em></td>
217           <td>&nbsp;)&nbsp;</td>
218           <td></td>
219         </tr>
220       </table>
221 </div>
222 <div class="memdoc">
223
224 </div>
225 </div>
226 <a class="anchor" id="adf6214db6c8ce994c7f7f1180863c8a4"></a><!-- doxytag: member="printbuf.h::sprintbuf" ref="adf6214db6c8ce994c7f7f1180863c8a4" args="(struct printbuf *p, const char *msg,...)" -->
227 <div class="memitem">
228 <div class="memproto">
229       <table class="memname">
230         <tr>
231           <td class="memname">int sprintbuf </td>
232           <td>(</td>
233           <td class="paramtype">struct <a class="el" href="structprintbuf.html">printbuf</a> *&nbsp;</td>
234           <td class="paramname"> <em>p</em>, </td>
235         </tr>
236         <tr>
237           <td class="paramkey"></td>
238           <td></td>
239           <td class="paramtype">const char *&nbsp;</td>
240           <td class="paramname"> <em>msg</em>, </td>
241         </tr>
242         <tr>
243           <td class="paramkey"></td>
244           <td></td>
245           <td class="paramtype">&nbsp;</td>
246           <td class="paramname"> <em>...</em></td><td>&nbsp;</td>
247         </tr>
248         <tr>
249           <td></td>
250           <td>)</td>
251           <td></td><td></td><td></td>
252         </tr>
253       </table>
254 </div>
255 <div class="memdoc">
256
257 </div>
258 </div>
259 </div>
260 <hr class="footer"/><address style="text-align: right;"><small>Generated on Sat Apr 28 15:52:47 2012 for json-c by&nbsp;
261 <a href="http://www.doxygen.org/index.html">
262 <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.3 </small></address>
263 </body>
264 </html>