D7net Mini Sh3LL v1
Current File : /var/../usr/share/dpkg/../doc/ncurses-term/../libaprutil1-dev/html/structapr__bucket.html |
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Apache Portable Runtime Utility Library: apr_bucket Struct Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Apache Portable Runtime Utility Library
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> |
<a href="#pub-attribs">Data Fields</a> </div>
<div class="headertitle">
<div class="title">apr_bucket Struct Reference<div class="ingroups"><a class="el" href="group___a_p_r___util.html">APR Utility Functions</a> » <a class="el" href="group___a_p_r___util___bucket___brigades.html">Bucket Brigades</a></div></div> </div>
</div><!--header-->
<div class="contents">
<p><code>#include <<a class="el" href="apr__buckets_8h_source.html">apr_buckets.h</a>></code></p>
<div class="dynheader">
Collaboration diagram for apr_bucket:</div>
<div class="dyncontent">
<div class="center"><img src="structapr__bucket__coll__graph.png" border="0" usemap="#apr__bucket_coll__map" alt="Collaboration graph"/></div>
<!-- MAP 0 -->
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:ab1acff965e57e067dfde80321d04dea7"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__bucket.html#ab1acff965e57e067dfde80321d04dea7">APR_RING_ENTRY</a> (<a class="el" href="structapr__bucket.html">apr_bucket</a>) link</td></tr>
<tr class="separator:ab1acff965e57e067dfde80321d04dea7"><td class="memSeparator" colspan="2"> </td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
Data Fields</h2></td></tr>
<tr class="memitem:ac27fa5ce798e688ad243ebe1615937fc"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structapr__bucket__type__t.html">apr_bucket_type_t</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__bucket.html#ac27fa5ce798e688ad243ebe1615937fc">type</a></td></tr>
<tr class="separator:ac27fa5ce798e688ad243ebe1615937fc"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a0898dfc78d9275187189b9a745e619bf"><td class="memItemLeft" align="right" valign="top">apr_size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__bucket.html#a0898dfc78d9275187189b9a745e619bf">length</a></td></tr>
<tr class="separator:a0898dfc78d9275187189b9a745e619bf"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a4a8791b606b3ad613b8672ec94145628"><td class="memItemLeft" align="right" valign="top">apr_off_t </td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__bucket.html#a4a8791b606b3ad613b8672ec94145628">start</a></td></tr>
<tr class="separator:a4a8791b606b3ad613b8672ec94145628"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a7fc4604750889b3f762bda1a786d276a"><td class="memItemLeft" align="right" valign="top">void * </td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__bucket.html#a7fc4604750889b3f762bda1a786d276a">data</a></td></tr>
<tr class="separator:a7fc4604750889b3f762bda1a786d276a"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a0949c5d398756496e69449c2633975f1"><td class="memItemLeft" align="right" valign="top">void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__bucket.html#a0949c5d398756496e69449c2633975f1">free</a> )(void *e)</td></tr>
<tr class="separator:a0949c5d398756496e69449c2633975f1"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a5a500b80105834621514d6c0814d0966"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group___a_p_r___util___bucket___brigades.html#ga9a30babfeb6e290db124d8f9b69e49e4">apr_bucket_alloc_t</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__bucket.html#a5a500b80105834621514d6c0814d0966">list</a></td></tr>
<tr class="separator:a5a500b80105834621514d6c0814d0966"><td class="memSeparator" colspan="2"> </td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p><a class="el" href="structapr__bucket.html">apr_bucket</a> structures are allocated on the malloc() heap and their lifetime is controlled by the parent <a class="el" href="structapr__bucket__brigade.html">apr_bucket_brigade</a> structure. Buckets can move from one brigade to another e.g. by calling <a class="el" href="group___a_p_r___util___bucket___brigades.html#ga7cecbc89be912ce9ab24c889eb8f955b">APR_BRIGADE_CONCAT()</a>. In general the data in a bucket has the same lifetime as the bucket and is freed when the bucket is destroyed; if the data is shared by more than one bucket (e.g. after a split) the data is freed when the last bucket goes away. </p>
</div><h2 class="groupheader">Member Function Documentation</h2>
<a id="ab1acff965e57e067dfde80321d04dea7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab1acff965e57e067dfde80321d04dea7">◆ </a></span>APR_RING_ENTRY()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">apr_bucket::APR_RING_ENTRY </td>
<td>(</td>
<td class="paramtype"><a class="el" href="structapr__bucket.html">apr_bucket</a> </td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Links to the rest of the brigade </p>
</div>
</div>
<h2 class="groupheader">Field Documentation</h2>
<a id="a7fc4604750889b3f762bda1a786d276a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7fc4604750889b3f762bda1a786d276a">◆ </a></span>data</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void* apr_bucket::data</td>
</tr>
</table>
</div><div class="memdoc">
<p>type-dependent data hangs off this pointer </p>
</div>
</div>
<a id="a0949c5d398756496e69449c2633975f1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0949c5d398756496e69449c2633975f1">◆ </a></span>free</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void(* apr_bucket::free) (void *e)</td>
</tr>
</table>
</div><div class="memdoc">
<p>Pointer to function used to free the bucket. This function should always be defined and it should be consistent with the memory function used to allocate the bucket. For example, if malloc() is used to allocate the bucket, this pointer should point to <a class="el" href="structapr__bucket.html#a0949c5d398756496e69449c2633975f1">free()</a>. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">e</td><td>Pointer to the bucket being freed </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a0898dfc78d9275187189b9a745e619bf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0898dfc78d9275187189b9a745e619bf">◆ </a></span>length</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">apr_size_t apr_bucket::length</td>
</tr>
</table>
</div><div class="memdoc">
<p>The length of the data in the bucket. This could have been implemented with a function, but this is an optimization, because the most common thing to do will be to get the length. If the length is unknown, the value of this field will be (apr_size_t)(-1). </p>
</div>
</div>
<a id="a5a500b80105834621514d6c0814d0966"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5a500b80105834621514d6c0814d0966">◆ </a></span>list</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="group___a_p_r___util___bucket___brigades.html#ga9a30babfeb6e290db124d8f9b69e49e4">apr_bucket_alloc_t</a>* apr_bucket::list</td>
</tr>
</table>
</div><div class="memdoc">
<p>The freelist from which this bucket was allocated </p>
</div>
</div>
<a id="a4a8791b606b3ad613b8672ec94145628"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4a8791b606b3ad613b8672ec94145628">◆ </a></span>start</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">apr_off_t apr_bucket::start</td>
</tr>
</table>
</div><div class="memdoc">
<p>The start of the data in the bucket relative to the private base pointer. The vast majority of bucket types allow a fixed block of data to be referenced by multiple buckets, each bucket pointing to a different segment of the data. That segment starts at base+start and ends at base+start+length. <br />
If the length == (apr_size_t)(-1), then start == -1. </p>
</div>
</div>
<a id="ac27fa5ce798e688ad243ebe1615937fc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac27fa5ce798e688ad243ebe1615937fc">◆ </a></span>type</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="structapr__bucket__type__t.html">apr_bucket_type_t</a>* apr_bucket::type</td>
</tr>
</table>
</div><div class="memdoc">
<p>The type of bucket. <br />
</p>
</div>
</div>
<hr/>The documentation for this struct was generated from the following file:<ul>
<li><a class="el" href="apr__buckets_8h_source.html">apr_buckets.h</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by  <a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.17
</small></address>
</body>
</html>
AnonSec - 2021 | Recode By D7net