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">
4 <meta http-equiv=
"Content-Type" content=
"text/xhtml;charset=UTF-8"/>
5 <meta http-equiv=
"X-UA-Compatible" content=
"IE=9"/>
6 <meta name=
"generator" content=
"Doxygen 1.8.9.1"/>
7 <title>Resource and persistent handle factory API: php_raphf.h Source File
</title>
8 <link href=
"tabs.css" rel=
"stylesheet" type=
"text/css"/>
9 <script type=
"text/javascript" src=
"jquery.js"></script>
10 <script type=
"text/javascript" src=
"dynsections.js"></script>
11 <link href=
"navtree.css" rel=
"stylesheet" type=
"text/css"/>
12 <script type=
"text/javascript" src=
"resize.js"></script>
13 <script type=
"text/javascript" src=
"navtreedata.js"></script>
14 <script type=
"text/javascript" src=
"navtree.js"></script>
15 <script type=
"text/javascript">
16 $(document).ready(initResizable);
17 $(window).load(resizeHeight);
19 <link href=
"search/search.css" rel=
"stylesheet" type=
"text/css"/>
20 <script type=
"text/javascript" src=
"search/searchdata.js"></script>
21 <script type=
"text/javascript" src=
"search/search.js"></script>
22 <script type=
"text/javascript">
23 $(document).ready(function() { init_search(); });
25 <link href=
"doxygen.css" rel=
"stylesheet" type=
"text/css" />
28 <div id=
"top"><!-- do not remove this div, it is closed by doxygen! -->
30 <table cellspacing=
"0" cellpadding=
"0">
32 <tr style=
"height: 56px;">
33 <td id=
"projectlogo"><img alt=
"Logo" src=
"raphf.png"/></td>
34 <td style=
"padding-left: 0.5em;">
35 <div id=
"projectname">Resource and persistent handle factory API
37 <div id=
"projectbrief">A facility to manage possibly persistent resources with a comprehensible API. Provides simliar functionality like the zend_list API, but with more flexiblity and freedom.
</div>
43 <!-- end header part -->
44 <!-- Generated by Doxygen 1.8.9.1 -->
45 <script type=
"text/javascript">
46 var searchBox = new SearchBox(
"searchBox",
"search",false,'Search');
48 <div id=
"navrow1" class=
"tabs">
50 <li><a href=
"index.html"><span>Main
 Page
</span></a></li>
51 <li><a href=
"annotated.html"><span>Data
 Structures
</span></a></li>
52 <li class=
"current"><a href=
"files.html"><span>Files
</span></a></li>
54 <div id=
"MSearchBox" class=
"MSearchBoxInactive">
56 <img id=
"MSearchSelect" src=
"search/mag_sel.png"
57 onmouseover=
"return searchBox.OnSearchSelectShow()"
58 onmouseout=
"return searchBox.OnSearchSelectHide()"
60 <input type=
"text" id=
"MSearchField" value=
"Search" accesskey=
"S"
61 onfocus=
"searchBox.OnSearchFieldFocus(true)"
62 onblur=
"searchBox.OnSearchFieldFocus(false)"
63 onkeyup=
"searchBox.OnSearchFieldChange(event)"/>
64 </span><span class=
"right">
65 <a id=
"MSearchClose" href=
"javascript:searchBox.CloseResultsWindow()"><img id=
"MSearchCloseImg" border=
"0" src=
"search/close.png" alt=
""/></a>
71 <div id=
"navrow2" class=
"tabs2">
73 <li><a href=
"files.html"><span>File
 List
</span></a></li>
74 <li><a href=
"globals.html"><span>Globals
</span></a></li>
78 <div id=
"side-nav" class=
"ui-resizable side-nav-resizable">
80 <div id=
"nav-tree-contents">
81 <div id=
"nav-sync" class=
"sync"></div>
84 <div id=
"splitbar" style=
"-moz-user-select:none;"
85 class=
"ui-resizable-handle">
88 <script type=
"text/javascript">
89 $(document).ready(function(){initNavTree('php__raphf_8h_source.html','');});
91 <div id=
"doc-content">
92 <!-- window showing the filter options -->
93 <div id=
"MSearchSelectWindow"
94 onmouseover=
"return searchBox.OnSearchSelectShow()"
95 onmouseout=
"return searchBox.OnSearchSelectHide()"
96 onkeydown=
"return searchBox.OnSearchSelectKey(event)">
99 <!-- iframe showing the search results (closed by default) -->
100 <div id=
"MSearchResultsWindow">
101 <iframe src=
"javascript:void(0)" frameborder=
"0"
102 name=
"MSearchResults" id=
"MSearchResults">
107 <div class=
"headertitle">
108 <div class=
"title">php_raphf.h
</div> </div>
110 <div class=
"contents">
111 <a href=
"php__raphf_8h.html">Go to the documentation of this file.
</a><div class=
"fragment"><div class=
"line"><a name=
"l00001"></a><span class=
"lineno"> 1</span> <span class=
"comment">/*
</span></div>
112 <div class=
"line"><a name=
"l00002"></a><span class=
"lineno"> 2</span> <span class=
"comment"> +--------------------------------------------------------------------+
</span></div>
113 <div class=
"line"><a name=
"l00003"></a><span class=
"lineno"> 3</span> <span class=
"comment"> | PECL :: raphf |
</span></div>
114 <div class=
"line"><a name=
"l00004"></a><span class=
"lineno"> 4</span> <span class=
"comment"> +--------------------------------------------------------------------+
</span></div>
115 <div class=
"line"><a name=
"l00005"></a><span class=
"lineno"> 5</span> <span class=
"comment"> | Redistribution and use in source and binary forms, with or without |
</span></div>
116 <div class=
"line"><a name=
"l00006"></a><span class=
"lineno"> 6</span> <span class=
"comment"> | modification, are permitted provided that the conditions mentioned |
</span></div>
117 <div class=
"line"><a name=
"l00007"></a><span class=
"lineno"> 7</span> <span class=
"comment"> | in the accompanying LICENSE file are met. |
</span></div>
118 <div class=
"line"><a name=
"l00008"></a><span class=
"lineno"> 8</span> <span class=
"comment"> +--------------------------------------------------------------------+
</span></div>
119 <div class=
"line"><a name=
"l00009"></a><span class=
"lineno"> 9</span> <span class=
"comment"> | Copyright (c)
2013, Michael Wallner
<mike@php.net
> |
</span></div>
120 <div class=
"line"><a name=
"l00010"></a><span class=
"lineno"> 10</span> <span class=
"comment"> +--------------------------------------------------------------------+
</span></div>
121 <div class=
"line"><a name=
"l00011"></a><span class=
"lineno"> 11</span> <span class=
"comment">*/
</span></div>
122 <div class=
"line"><a name=
"l00012"></a><span class=
"lineno"> 12</span> </div>
123 <div class=
"line"><a name=
"l00013"></a><span class=
"lineno"> 13</span> <span class=
"preprocessor">#ifndef PHP_RAPHF_H
</span></div>
124 <div class=
"line"><a name=
"l00014"></a><span class=
"lineno"> 14</span> <span class=
"preprocessor">#define PHP_RAPHF_H
</span></div>
125 <div class=
"line"><a name=
"l00015"></a><span class=
"lineno"> 15</span> </div>
126 <div class=
"line"><a name=
"l00016"></a><span class=
"lineno"> 16</span> <span class=
"preprocessor">#ifndef DOXYGEN
</span></div>
127 <div class=
"line"><a name=
"l00017"></a><span class=
"lineno"> 17</span> </div>
128 <div class=
"line"><a name=
"l00018"></a><span class=
"lineno"> 18</span> <span class=
"keyword">extern
</span> zend_module_entry raphf_module_entry;
</div>
129 <div class=
"line"><a name=
"l00019"></a><span class=
"lineno"> 19</span> <span class=
"preprocessor">#define phpext_raphf_ptr
&raphf_module_entry
</span></div>
130 <div class=
"line"><a name=
"l00020"></a><span class=
"lineno"> 20</span> </div>
131 <div class=
"line"><a name=
"l00021"></a><span class=
"lineno"> 21</span> <span class=
"preprocessor">#define PHP_RAPHF_VERSION
"1.1.0"</span></div>
132 <div class=
"line"><a name=
"l00022"></a><span class=
"lineno"> 22</span> </div>
133 <div class=
"line"><a name=
"l00023"></a><span class=
"lineno"> 23</span> <span class=
"preprocessor">#ifdef PHP_WIN32
</span></div>
134 <div class=
"line"><a name=
"l00024"></a><span class=
"lineno"> 24</span> <span class=
"preprocessor"># define PHP_RAPHF_API __declspec(dllexport)
</span></div>
135 <div class=
"line"><a name=
"l00025"></a><span class=
"lineno"> 25</span> <span class=
"preprocessor">#elif defined(__GNUC__)
&& __GNUC__
>=
4</span></div>
136 <div class=
"line"><a name=
"l00026"></a><span class=
"lineno"> 26</span> <span class=
"preprocessor"># define PHP_RAPHF_API extern __attribute__ ((visibility(
"default
")))
</span></div>
137 <div class=
"line"><a name=
"l00027"></a><span class=
"lineno"> 27</span> <span class=
"preprocessor">#else
</span></div>
138 <div class=
"line"><a name=
"l00028"></a><span class=
"lineno"> 28</span> <span class=
"preprocessor"># define PHP_RAPHF_API extern
</span></div>
139 <div class=
"line"><a name=
"l00029"></a><span class=
"lineno"> 29</span> <span class=
"preprocessor">#endif
</span></div>
140 <div class=
"line"><a name=
"l00030"></a><span class=
"lineno"> 30</span> </div>
141 <div class=
"line"><a name=
"l00031"></a><span class=
"lineno"> 31</span> <span class=
"preprocessor">#ifdef ZTS
</span></div>
142 <div class=
"line"><a name=
"l00032"></a><span class=
"lineno"> 32</span> <span class=
"preprocessor"># include
"TSRM.h
"</span></div>
143 <div class=
"line"><a name=
"l00033"></a><span class=
"lineno"> 33</span> <span class=
"preprocessor">#endif
</span></div>
144 <div class=
"line"><a name=
"l00034"></a><span class=
"lineno"> 34</span> </div>
145 <div class=
"line"><a name=
"l00035"></a><span class=
"lineno"> 35</span> <span class=
"preprocessor">#endif
</span></div>
146 <div class=
"line"><a name=
"l00036"></a><span class=
"lineno"> 36</span> </div>
147 <div class=
"line"><a name=
"l00044"></a><span class=
"lineno"><a class=
"line" href=
"php__raphf_8h.html#abadff49d810f7ce220bd3537bdaecef7"> 44</a></span> <span class=
"keyword">typedef
</span> <span class=
"keywordtype">void
</span> *(*php_resource_factory_handle_ctor_t)(
<span class=
"keywordtype">void
</span> *opaque,
</div>
148 <div class=
"line"><a name=
"l00045"></a><span class=
"lineno"> 45</span>  <span class=
"keywordtype">void
</span> *init_arg TSRMLS_DC);
</div>
149 <div class=
"line"><a name=
"l00046"></a><span class=
"lineno"> 46</span> </div>
150 <div class=
"line"><a name=
"l00053"></a><span class=
"lineno"><a class=
"line" href=
"php__raphf_8h.html#a23b073aa7b8b7dd182b336b07494288f"> 53</a></span> <span class=
"keyword">typedef
</span> <span class=
"keywordtype">void
</span> *(*php_resource_factory_handle_copy_t)(
<span class=
"keywordtype">void
</span> *opaque,
</div>
151 <div class=
"line"><a name=
"l00054"></a><span class=
"lineno"> 54</span>  <span class=
"keywordtype">void
</span> *handle TSRMLS_DC);
</div>
152 <div class=
"line"><a name=
"l00055"></a><span class=
"lineno"> 55</span> </div>
153 <div class=
"line"><a name=
"l00062"></a><span class=
"lineno"><a class=
"line" href=
"php__raphf_8h.html#a1b826c765392c93336db79bd6697e33d"> 62</a></span> <span class=
"keyword">typedef
</span> void (*
<a class=
"code" href=
"php__raphf_8h.html#a1b826c765392c93336db79bd6697e33d">php_resource_factory_handle_dtor_t
</a>)(
<span class=
"keywordtype">void
</span> *opaque,
</div>
154 <div class=
"line"><a name=
"l00063"></a><span class=
"lineno"> 63</span>  <span class=
"keywordtype">void
</span> *handle TSRMLS_DC);
</div>
155 <div class=
"line"><a name=
"l00064"></a><span class=
"lineno"> 64</span> </div>
156 <div class=
"line"><a name=
"l00071"></a><span class=
"lineno"><a class=
"line" href=
"php__raphf_8h.html"> 71</a></span> <span class=
"keyword">typedef
</span> <span class=
"keyword">struct
</span><a class=
"code" href=
"php__raphf_8h.html#structphp__resource__factory__ops">php_resource_factory_ops
</a> {
</div>
157 <div class=
"line"><a name=
"l00073"></a><span class=
"lineno"><a class=
"line" href=
"php__raphf_8h.html#a044b07071758dbc53f87bfd212400ac0"> 73</a></span>  <a class=
"code" href=
"php__raphf_8h.html#abadff49d810f7ce220bd3537bdaecef7">php_resource_factory_handle_ctor_t
</a> <a class=
"code" href=
"php__raphf_8h.html#a044b07071758dbc53f87bfd212400ac0">ctor
</a>;
</div>
158 <div class=
"line"><a name=
"l00075"></a><span class=
"lineno"><a class=
"line" href=
"php__raphf_8h.html#a8094f85df976aff73148bc579ae72e38"> 75</a></span>  <a class=
"code" href=
"php__raphf_8h.html#a23b073aa7b8b7dd182b336b07494288f">php_resource_factory_handle_copy_t
</a> <a class=
"code" href=
"php__raphf_8h.html#a8094f85df976aff73148bc579ae72e38">copy
</a>;
</div>
159 <div class=
"line"><a name=
"l00077"></a><span class=
"lineno"><a class=
"line" href=
"php__raphf_8h.html#acb8a7a04b86f08db41a2d6232676c65c"> 77</a></span>  <a class=
"code" href=
"php__raphf_8h.html#a1b826c765392c93336db79bd6697e33d">php_resource_factory_handle_dtor_t
</a> <a class=
"code" href=
"php__raphf_8h.html#acb8a7a04b86f08db41a2d6232676c65c">dtor
</a>;
</div>
160 <div class=
"line"><a name=
"l00078"></a><span class=
"lineno"> 78</span> }
<a class=
"code" href=
"php__raphf_8h.html#a29e0d7a66e441a5265ddf2f0adbbb3af">php_resource_factory_ops_t
</a>;
</div>
161 <div class=
"line"><a name=
"l00079"></a><span class=
"lineno"> 79</span> </div>
162 <div class=
"line"><a name=
"l00083"></a><span class=
"lineno"><a class=
"line" href=
"structphp__resource__factory.html"> 83</a></span> <span class=
"keyword">typedef
</span> <span class=
"keyword">struct
</span><a class=
"code" href=
"structphp__resource__factory.html">php_resource_factory
</a> {
</div>
163 <div class=
"line"><a name=
"l00085"></a><span class=
"lineno"><a class=
"line" href=
"structphp__resource__factory.html#af46453098d0078f9015184549b363824"> 85</a></span>  <a class=
"code" href=
"php__raphf_8h.html#structphp__resource__factory__ops">php_resource_factory_ops_t
</a> <a class=
"code" href=
"structphp__resource__factory.html#af46453098d0078f9015184549b363824">fops
</a>;
</div>
164 <div class=
"line"><a name=
"l00087"></a><span class=
"lineno"><a class=
"line" href=
"structphp__resource__factory.html#af2be7546c9d94eccc9350df812830d12"> 87</a></span>  <span class=
"keywordtype">void
</span> *
<a class=
"code" href=
"structphp__resource__factory.html#af2be7546c9d94eccc9350df812830d12">data
</a>;
</div>
165 <div class=
"line"><a name=
"l00089"></a><span class=
"lineno"><a class=
"line" href=
"structphp__resource__factory.html#a7d6c89f9c6035be8a5e166a6a86cd1c7"> 89</a></span>  void (*
<a class=
"code" href=
"structphp__resource__factory.html#a7d6c89f9c6035be8a5e166a6a86cd1c7">dtor
</a>)(
<span class=
"keywordtype">void
</span> *
<a class=
"code" href=
"structphp__resource__factory.html#af2be7546c9d94eccc9350df812830d12">data
</a>);
</div>
166 <div class=
"line"><a name=
"l00091"></a><span class=
"lineno"><a class=
"line" href=
"structphp__resource__factory.html#a00ebf2bd2227f5d4826751b3b475769f"> 91</a></span>  <span class=
"keywordtype">unsigned
</span> <a class=
"code" href=
"structphp__resource__factory.html#a00ebf2bd2227f5d4826751b3b475769f">refcount
</a>;
</div>
167 <div class=
"line"><a name=
"l00092"></a><span class=
"lineno"> 92</span> }
<a class=
"code" href=
"php__raphf_8h.html#a4817c4b3d4077c48dff36376487ba8d4">php_resource_factory_t
</a>;
</div>
168 <div class=
"line"><a name=
"l00093"></a><span class=
"lineno"> 93</span> </div>
169 <div class=
"line"><a name=
"l00108"></a><span class=
"lineno"> 108</span> PHP_RAPHF_API
<a class=
"code" href=
"structphp__resource__factory.html">php_resource_factory_t
</a> *
<a class=
"code" href=
"php__raphf_8h.html#ad20f10c53e3f33756638da98819367f0">php_resource_factory_init
</a>(
</div>
170 <div class=
"line"><a name=
"l00109"></a><span class=
"lineno"> 109</span>  <a class=
"code" href=
"structphp__resource__factory.html">php_resource_factory_t
</a> *f,
<a class=
"code" href=
"php__raphf_8h.html#structphp__resource__factory__ops">php_resource_factory_ops_t
</a> *fops,
<span class=
"keywordtype">void
</span> *data,
</div>
171 <div class=
"line"><a name=
"l00110"></a><span class=
"lineno"> 110</span>  <span class=
"keywordtype">void
</span> (*dtor)(
<span class=
"keywordtype">void
</span> *data));
</div>
172 <div class=
"line"><a name=
"l00111"></a><span class=
"lineno"> 111</span> </div>
173 <div class=
"line"><a name=
"l00118"></a><span class=
"lineno"> 118</span> PHP_RAPHF_API
<span class=
"keywordtype">unsigned
</span> <a class=
"code" href=
"php__raphf_8h.html#ae8be369197905047ffbd05c0ca80f245">php_resource_factory_addref
</a>(
<a class=
"code" href=
"structphp__resource__factory.html">php_resource_factory_t
</a> *rf);
</div>
174 <div class=
"line"><a name=
"l00119"></a><span class=
"lineno"> 119</span> </div>
175 <div class=
"line"><a name=
"l00127"></a><span class=
"lineno"> 127</span> PHP_RAPHF_API
<span class=
"keywordtype">void
</span> <a class=
"code" href=
"php__raphf_8h.html#a016b8a4159e698f915ab967711696847">php_resource_factory_dtor
</a>(
<a class=
"code" href=
"structphp__resource__factory.html">php_resource_factory_t
</a> *f);
</div>
176 <div class=
"line"><a name=
"l00128"></a><span class=
"lineno"> 128</span> </div>
177 <div class=
"line"><a name=
"l00137"></a><span class=
"lineno"> 137</span> PHP_RAPHF_API
<span class=
"keywordtype">void
</span> <a class=
"code" href=
"php__raphf_8h.html#a7f012d685f5f7c08f50288b61232e689">php_resource_factory_free
</a>(
<a class=
"code" href=
"structphp__resource__factory.html">php_resource_factory_t
</a> **f);
</div>
178 <div class=
"line"><a name=
"l00138"></a><span class=
"lineno"> 138</span> </div>
179 <div class=
"line"><a name=
"l00146"></a><span class=
"lineno"> 146</span> PHP_RAPHF_API
<span class=
"keywordtype">void
</span> *
<a class=
"code" href=
"php__raphf_8h.html#a98d02dc80dd83095b8f901954350840c">php_resource_factory_handle_ctor
</a>(
<a class=
"code" href=
"structphp__resource__factory.html">php_resource_factory_t
</a> *f,
</div>
180 <div class=
"line"><a name=
"l00147"></a><span class=
"lineno"> 147</span>  <span class=
"keywordtype">void
</span> *init_arg TSRMLS_DC);
</div>
181 <div class=
"line"><a name=
"l00148"></a><span class=
"lineno"> 148</span> </div>
182 <div class=
"line"><a name=
"l00156"></a><span class=
"lineno"> 156</span> PHP_RAPHF_API
<span class=
"keywordtype">void
</span> *
<a class=
"code" href=
"php__raphf_8h.html#a08db5f3698f2d0bf3d2f20dcf4e7b2b4">php_resource_factory_handle_copy
</a>(
<a class=
"code" href=
"structphp__resource__factory.html">php_resource_factory_t
</a> *f,
</div>
183 <div class=
"line"><a name=
"l00157"></a><span class=
"lineno"> 157</span>  <span class=
"keywordtype">void
</span> *handle TSRMLS_DC);
</div>
184 <div class=
"line"><a name=
"l00158"></a><span class=
"lineno"> 158</span> </div>
185 <div class=
"line"><a name=
"l00165"></a><span class=
"lineno"> 165</span> PHP_RAPHF_API
<span class=
"keywordtype">void
</span> <a class=
"code" href=
"php__raphf_8h.html#a97dbb9d342f33205b92374c586676bc6">php_resource_factory_handle_dtor
</a>(
<a class=
"code" href=
"structphp__resource__factory.html">php_resource_factory_t
</a> *f,
</div>
186 <div class=
"line"><a name=
"l00166"></a><span class=
"lineno"> 166</span>  <span class=
"keywordtype">void
</span> *handle TSRMLS_DC);
</div>
187 <div class=
"line"><a name=
"l00167"></a><span class=
"lineno"> 167</span> </div>
188 <div class=
"line"><a name=
"l00171"></a><span class=
"lineno"><a class=
"line" href=
"php__raphf_8h.html"> 171</a></span> <span class=
"keyword">typedef
</span> <span class=
"keyword">struct
</span><a class=
"code" href=
"php__raphf_8h.html#structphp__persistent__handle__list">php_persistent_handle_list
</a> {
</div>
189 <div class=
"line"><a name=
"l00173"></a><span class=
"lineno"><a class=
"line" href=
"php__raphf_8h.html#a653a4a0e9c39ad942e9573e197f62974"> 173</a></span>  HashTable
<a class=
"code" href=
"php__raphf_8h.html#a653a4a0e9c39ad942e9573e197f62974">free
</a>;
</div>
190 <div class=
"line"><a name=
"l00175"></a><span class=
"lineno"><a class=
"line" href=
"php__raphf_8h.html#a119a44fd9f5ae066b6d77e7a35a25cd0"> 175</a></span>  ulong
<a class=
"code" href=
"php__raphf_8h.html#a119a44fd9f5ae066b6d77e7a35a25cd0">used
</a>;
</div>
191 <div class=
"line"><a name=
"l00176"></a><span class=
"lineno"> 176</span> }
<a class=
"code" href=
"php__raphf_8h.html#a07f599598d2b87b188f39871d026c177">php_persistent_handle_list_t
</a>;
</div>
192 <div class=
"line"><a name=
"l00177"></a><span class=
"lineno"> 177</span> </div>
193 <div class=
"line"><a name=
"l00182"></a><span class=
"lineno"><a class=
"line" href=
"php__raphf_8h.html"> 182</a></span> <span class=
"keyword">typedef
</span> <span class=
"keyword">struct
</span><a class=
"code" href=
"php__raphf_8h.html#structphp__persistent__handle__provider">php_persistent_handle_provider
</a> {
</div>
194 <div class=
"line"><a name=
"l00188"></a><span class=
"lineno"><a class=
"line" href=
"php__raphf_8h.html#a4935f6446b1d4a2feb7a22dfc4e5d6d0"> 188</a></span>  <a class=
"code" href=
"php__raphf_8h.html#structphp__persistent__handle__list">php_persistent_handle_list_t
</a> <a class=
"code" href=
"php__raphf_8h.html#a4935f6446b1d4a2feb7a22dfc4e5d6d0">list
</a>;
</div>
195 <div class=
"line"><a name=
"l00189"></a><span class=
"lineno"> 189</span> </div>
196 <div class=
"line"><a name=
"l00194"></a><span class=
"lineno"><a class=
"line" href=
"php__raphf_8h.html#a8204714f100b74b028652951ca40abd3"> 194</a></span>  <a class=
"code" href=
"structphp__resource__factory.html">php_resource_factory_t
</a> <a class=
"code" href=
"php__raphf_8h.html#a8204714f100b74b028652951ca40abd3">rf
</a>;
</div>
197 <div class=
"line"><a name=
"l00195"></a><span class=
"lineno"> 195</span> }
<a class=
"code" href=
"php__raphf_8h.html#a31f0595f4f726f762790cef844568fc4">php_persistent_handle_provider_t
</a>;
</div>
198 <div class=
"line"><a name=
"l00196"></a><span class=
"lineno"> 196</span> </div>
199 <div class=
"line"><a name=
"l00197"></a><span class=
"lineno"><a class=
"line" href=
"php__raphf_8h.html#a833eaa62ffcc217e5749c26c18885b17"> 197</a></span> <span class=
"keyword">typedef
</span> <span class=
"keyword">struct
</span><a class=
"code" href=
"php__raphf_8h.html#structphp__persistent__handle__factory">php_persistent_handle_factory
</a> <a class=
"code" href=
"php__raphf_8h.html#structphp__persistent__handle__factory">php_persistent_handle_factory_t
</a>;
</div>
200 <div class=
"line"><a name=
"l00198"></a><span class=
"lineno"> 198</span> </div>
201 <div class=
"line"><a name=
"l00202"></a><span class=
"lineno"><a class=
"line" href=
"php__raphf_8h.html#a59f5566ecc4c76e048ad53469eb20142"> 202</a></span> <span class=
"keyword">typedef
</span> void (*
<a class=
"code" href=
"php__raphf_8h.html#a59f5566ecc4c76e048ad53469eb20142">php_persistent_handle_wakeup_t
</a>)(
</div>
202 <div class=
"line"><a name=
"l00203"></a><span class=
"lineno"> 203</span>  <a class=
"code" href=
"php__raphf_8h.html#structphp__persistent__handle__factory">php_persistent_handle_factory_t
</a> *f,
<span class=
"keywordtype">void
</span> **handle TSRMLS_DC);
</div>
203 <div class=
"line"><a name=
"l00207"></a><span class=
"lineno"><a class=
"line" href=
"php__raphf_8h.html#a85e9e715d308dc5d98b980c9c57d02bf"> 207</a></span> <span class=
"keyword">typedef
</span> void (*
<a class=
"code" href=
"php__raphf_8h.html#a85e9e715d308dc5d98b980c9c57d02bf">php_persistent_handle_retire_t
</a>)(
</div>
204 <div class=
"line"><a name=
"l00208"></a><span class=
"lineno"> 208</span>  <a class=
"code" href=
"php__raphf_8h.html#structphp__persistent__handle__factory">php_persistent_handle_factory_t
</a> *f,
<span class=
"keywordtype">void
</span> **handle TSRMLS_DC);
</div>
205 <div class=
"line"><a name=
"l00209"></a><span class=
"lineno"> 209</span> </div>
206 <div class=
"line"><a name=
"l00217"></a><span class=
"lineno"><a class=
"line" href=
"php__raphf_8h.html"> 217</a></span> <span class=
"keyword">struct
</span><a class=
"code" href=
"php__raphf_8h.html#structphp__persistent__handle__factory">php_persistent_handle_factory
</a> {
</div>
207 <div class=
"line"><a name=
"l00219"></a><span class=
"lineno"><a class=
"line" href=
"php__raphf_8h.html#a43aabcbe7ec4b5ff463f74cfcf788f51"> 219</a></span>  <a class=
"code" href=
"php__raphf_8h.html#structphp__persistent__handle__provider">php_persistent_handle_provider_t
</a> *
<a class=
"code" href=
"php__raphf_8h.html#a43aabcbe7ec4b5ff463f74cfcf788f51">provider
</a>;
</div>
208 <div class=
"line"><a name=
"l00221"></a><span class=
"lineno"><a class=
"line" href=
"php__raphf_8h.html#a6633b7c860e4538942e0367d64ed5af7"> 221</a></span>  <a class=
"code" href=
"php__raphf_8h.html#a59f5566ecc4c76e048ad53469eb20142">php_persistent_handle_wakeup_t
</a> <a class=
"code" href=
"php__raphf_8h.html#a6633b7c860e4538942e0367d64ed5af7">wakeup
</a>;
</div>
209 <div class=
"line"><a name=
"l00223"></a><span class=
"lineno"><a class=
"line" href=
"php__raphf_8h.html#a9299f3f0821061ad93d15c10cf735b6b"> 223</a></span>  <a class=
"code" href=
"php__raphf_8h.html#a85e9e715d308dc5d98b980c9c57d02bf">php_persistent_handle_retire_t
</a> <a class=
"code" href=
"php__raphf_8h.html#a9299f3f0821061ad93d15c10cf735b6b">retire
</a>;
</div>
210 <div class=
"line"><a name=
"l00224"></a><span class=
"lineno"> 224</span> </div>
211 <div class=
"line"><a name=
"l00226"></a><span class=
"lineno"><a class=
"line" href=
"php__raphf_8h.html"> 226</a></span>  <span class=
"keyword">struct
</span>{
</div>
212 <div class=
"line"><a name=
"l00228"></a><span class=
"lineno"> 228</span>  <span class=
"keywordtype">char
</span> *str;
</div>
213 <div class=
"line"><a name=
"l00230"></a><span class=
"lineno"> 230</span>  <span class=
"keywordtype">size_t
</span> len;
</div>
214 <div class=
"line"><a name=
"l00231"></a><span class=
"lineno"> 231</span>  }
<a class=
"code" href=
"php__raphf_8h.html#ae874c03caffa8eaa265dd52ebf593c02">ident
</a>;
</div>
215 <div class=
"line"><a name=
"l00232"></a><span class=
"lineno"> 232</span> </div>
216 <div class=
"line"><a name=
"l00234"></a><span class=
"lineno"><a class=
"line" href=
"php__raphf_8h.html#a84ffa94401b9869e14c190be4bb1b6be"> 234</a></span>  <span class=
"keywordtype">unsigned
</span> <a class=
"code" href=
"php__raphf_8h.html#a84ffa94401b9869e14c190be4bb1b6be">free_on_abandon
</a>:
1;
</div>
217 <div class=
"line"><a name=
"l00235"></a><span class=
"lineno"> 235</span> };
</div>
218 <div class=
"line"><a name=
"l00236"></a><span class=
"lineno"> 236</span> </div>
219 <div class=
"line"><a name=
"l00257"></a><span class=
"lineno"> 257</span> PHP_RAPHF_API
<span class=
"keywordtype">int
</span> <span class=
"comment">/* SUCCESS|FAILURE */
</span> <a class=
"code" href=
"php__raphf_8h.html#a3cbbe29c8a4ed9858c921c8ee539de59">php_persistent_handle_provide
</a>(
</div>
220 <div class=
"line"><a name=
"l00258"></a><span class=
"lineno"> 258</span>  <span class=
"keyword">const
</span> <span class=
"keywordtype">char
</span> *name_str,
<span class=
"keywordtype">size_t
</span> name_len,
<a class=
"code" href=
"php__raphf_8h.html#structphp__resource__factory__ops">php_resource_factory_ops_t
</a> *fops,
</div>
221 <div class=
"line"><a name=
"l00259"></a><span class=
"lineno"> 259</span>  <span class=
"keywordtype">void
</span> *data,
<span class=
"keywordtype">void
</span> (*dtor)(
<span class=
"keywordtype">void
</span> *) TSRMLS_DC);
</div>
222 <div class=
"line"><a name=
"l00260"></a><span class=
"lineno"> 260</span> </div>
223 <div class=
"line"><a name=
"l00280"></a><span class=
"lineno"> 280</span> PHP_RAPHF_API
<a class=
"code" href=
"php__raphf_8h.html#structphp__persistent__handle__factory">php_persistent_handle_factory_t
</a> *
<a class=
"code" href=
"php__raphf_8h.html#a0a266874dafb69cf2b040378d4033901">php_persistent_handle_concede
</a>(
</div>
224 <div class=
"line"><a name=
"l00281"></a><span class=
"lineno"> 281</span>  <a class=
"code" href=
"php__raphf_8h.html#structphp__persistent__handle__factory">php_persistent_handle_factory_t
</a> *a,
<span class=
"keyword">const
</span> <span class=
"keywordtype">char
</span> *name_str,
</div>
225 <div class=
"line"><a name=
"l00282"></a><span class=
"lineno"> 282</span>  <span class=
"keywordtype">size_t
</span> name_len,
<span class=
"keyword">const
</span> <span class=
"keywordtype">char
</span> *ident_str,
<span class=
"keywordtype">size_t
</span> ident_len,
</div>
226 <div class=
"line"><a name=
"l00283"></a><span class=
"lineno"> 283</span>  <a class=
"code" href=
"php__raphf_8h.html#a59f5566ecc4c76e048ad53469eb20142">php_persistent_handle_wakeup_t
</a> wakeup,
</div>
227 <div class=
"line"><a name=
"l00284"></a><span class=
"lineno"> 284</span>  <a class=
"code" href=
"php__raphf_8h.html#a85e9e715d308dc5d98b980c9c57d02bf">php_persistent_handle_retire_t
</a> retire TSRMLS_DC);
</div>
228 <div class=
"line"><a name=
"l00285"></a><span class=
"lineno"> 285</span> </div>
229 <div class=
"line"><a name=
"l00295"></a><span class=
"lineno"> 295</span> PHP_RAPHF_API
<span class=
"keywordtype">void
</span> <a class=
"code" href=
"php__raphf_8h.html#ab12ec2da7189e16fbed40a3b73bc9ee2">php_persistent_handle_abandon
</a>(
</div>
230 <div class=
"line"><a name=
"l00296"></a><span class=
"lineno"> 296</span>  <a class=
"code" href=
"php__raphf_8h.html#structphp__persistent__handle__factory">php_persistent_handle_factory_t
</a> *a);
</div>
231 <div class=
"line"><a name=
"l00297"></a><span class=
"lineno"> 297</span> </div>
232 <div class=
"line"><a name=
"l00311"></a><span class=
"lineno"> 311</span> PHP_RAPHF_API
<span class=
"keywordtype">void
</span> *
<a class=
"code" href=
"php__raphf_8h.html#af6636e870497be0699d2781e5fc8a2a9">php_persistent_handle_acquire
</a>(
</div>
233 <div class=
"line"><a name=
"l00312"></a><span class=
"lineno"> 312</span>  <a class=
"code" href=
"php__raphf_8h.html#structphp__persistent__handle__factory">php_persistent_handle_factory_t
</a> *a,
<span class=
"keywordtype">void
</span> *init_arg TSRMLS_DC);
</div>
234 <div class=
"line"><a name=
"l00313"></a><span class=
"lineno"> 313</span> </div>
235 <div class=
"line"><a name=
"l00327"></a><span class=
"lineno"> 327</span> PHP_RAPHF_API
<span class=
"keywordtype">void
</span> <a class=
"code" href=
"php__raphf_8h.html#af08ee05c51d52200755d24f6f52df144">php_persistent_handle_release
</a>(
</div>
236 <div class=
"line"><a name=
"l00328"></a><span class=
"lineno"> 328</span>  <a class=
"code" href=
"php__raphf_8h.html#structphp__persistent__handle__factory">php_persistent_handle_factory_t
</a> *a,
<span class=
"keywordtype">void
</span> *handle TSRMLS_DC);
</div>
237 <div class=
"line"><a name=
"l00329"></a><span class=
"lineno"> 329</span> </div>
238 <div class=
"line"><a name=
"l00338"></a><span class=
"lineno"> 338</span> PHP_RAPHF_API
<span class=
"keywordtype">void
</span> *
<a class=
"code" href=
"php__raphf_8h.html#ae8124f3f73e96e2193ae03c5519d2763">php_persistent_handle_accrete
</a>(
</div>
239 <div class=
"line"><a name=
"l00339"></a><span class=
"lineno"> 339</span>  <a class=
"code" href=
"php__raphf_8h.html#structphp__persistent__handle__factory">php_persistent_handle_factory_t
</a> *a,
<span class=
"keywordtype">void
</span> *handle TSRMLS_DC);
</div>
240 <div class=
"line"><a name=
"l00340"></a><span class=
"lineno"> 340</span> </div>
241 <div class=
"line"><a name=
"l00373"></a><span class=
"lineno"> 373</span> PHP_RAPHF_API
<a class=
"code" href=
"php__raphf_8h.html#structphp__resource__factory__ops">php_resource_factory_ops_t
</a> *
</div>
242 <div class=
"line"><a name=
"l00374"></a><span class=
"lineno"> 374</span> <a class=
"code" href=
"php__raphf_8h.html#a93458ab12d810f0fd545fb1464ba9eca">php_persistent_handle_get_resource_factory_ops
</a>(
<span class=
"keywordtype">void
</span>);
</div>
243 <div class=
"line"><a name=
"l00375"></a><span class=
"lineno"> 375</span> </div>
244 <div class=
"line"><a name=
"l00385"></a><span class=
"lineno"> 385</span> PHP_RAPHF_API
<a class=
"code" href=
"structphp__resource__factory.html">php_resource_factory_t
</a> *
</div>
245 <div class=
"line"><a name=
"l00386"></a><span class=
"lineno"> 386</span> <a class=
"code" href=
"php__raphf_8h.html#ab754f4d59dab5de0edf702a9ab2f4e03">php_persistent_handle_resource_factory_init
</a>(
<a class=
"code" href=
"structphp__resource__factory.html">php_resource_factory_t
</a> *a,
</div>
246 <div class=
"line"><a name=
"l00387"></a><span class=
"lineno"> 387</span>  <a class=
"code" href=
"php__raphf_8h.html#structphp__persistent__handle__factory">php_persistent_handle_factory_t
</a> *pf);
</div>
247 <div class=
"line"><a name=
"l00388"></a><span class=
"lineno"> 388</span> </div>
248 <div class=
"line"><a name=
"l00394"></a><span class=
"lineno"> 394</span> PHP_RAPHF_API zend_bool
<a class=
"code" href=
"php__raphf_8h.html#a617d2cc656ab6427388b938597194ebb">php_resource_factory_is_persistent
</a>(
</div>
249 <div class=
"line"><a name=
"l00395"></a><span class=
"lineno"> 395</span>  <a class=
"code" href=
"structphp__resource__factory.html">php_resource_factory_t
</a> *a);
</div>
250 <div class=
"line"><a name=
"l00396"></a><span class=
"lineno"> 396</span> </div>
251 <div class=
"line"><a name=
"l00421"></a><span class=
"lineno"> 421</span> PHP_RAPHF_API
<span class=
"keywordtype">void
</span> <a class=
"code" href=
"php__raphf_8h.html#a0d661d1f880270146012eb8781e5343e">php_persistent_handle_cleanup
</a>(
<span class=
"keyword">const
</span> <span class=
"keywordtype">char
</span> *name_str,
</div>
252 <div class=
"line"><a name=
"l00422"></a><span class=
"lineno"> 422</span>  <span class=
"keywordtype">size_t
</span> name_len,
<span class=
"keyword">const
</span> <span class=
"keywordtype">char
</span> *ident_str,
<span class=
"keywordtype">size_t
</span> ident_len TSRMLS_DC);
</div>
253 <div class=
"line"><a name=
"l00423"></a><span class=
"lineno"> 423</span> </div>
254 <div class=
"line"><a name=
"l00439"></a><span class=
"lineno"> 439</span> PHP_RAPHF_API HashTable *
<a class=
"code" href=
"php__raphf_8h.html#ae174fbe124d4cb6010e218a68379bd18">php_persistent_handle_statall
</a>(HashTable *ht TSRMLS_DC);
</div>
255 <div class=
"line"><a name=
"l00440"></a><span class=
"lineno"> 440</span> </div>
256 <div class=
"line"><a name=
"l00441"></a><span class=
"lineno"> 441</span> <span class=
"preprocessor">#endif
</span><span class=
"comment">/* PHP_RAPHF_H */
</span><span class=
"preprocessor"></span></div>
257 <div class=
"line"><a name=
"l00442"></a><span class=
"lineno"> 442</span> </div>
258 <div class=
"line"><a name=
"l00443"></a><span class=
"lineno"> 443</span> </div>
259 <div class=
"line"><a name=
"l00444"></a><span class=
"lineno"> 444</span> <span class=
"comment">/*
</span></div>
260 <div class=
"line"><a name=
"l00445"></a><span class=
"lineno"> 445</span> <span class=
"comment"> * Local variables:
</span></div>
261 <div class=
"line"><a name=
"l00446"></a><span class=
"lineno"> 446</span> <span class=
"comment"> * tab-width:
4</span></div>
262 <div class=
"line"><a name=
"l00447"></a><span class=
"lineno"> 447</span> <span class=
"comment"> * c-basic-offset:
4</span></div>
263 <div class=
"line"><a name=
"l00448"></a><span class=
"lineno"> 448</span> <span class=
"comment"> * End:
</span></div>
264 <div class=
"line"><a name=
"l00449"></a><span class=
"lineno"> 449</span> <span class=
"comment"> * vim600: noet sw=
4 ts=
4 fdm=marker
</span></div>
265 <div class=
"line"><a name=
"l00450"></a><span class=
"lineno"> 450</span> <span class=
"comment"> * vim
<600: noet sw=
4 ts=
4</span></div>
266 <div class=
"line"><a name=
"l00451"></a><span class=
"lineno"> 451</span> <span class=
"comment"> */
</span></div>
267 <div class=
"ttc" id=
"structphp__resource__factory_html_a7d6c89f9c6035be8a5e166a6a86cd1c7"><div class=
"ttname"><a href=
"structphp__resource__factory.html#a7d6c89f9c6035be8a5e166a6a86cd1c7">php_resource_factory::dtor
</a></div><div class=
"ttdeci">void(* dtor)(void *data)
</div><div class=
"ttdoc">User data destructor.
</div><div class=
"ttdef"><b>Definition:
</b> php_raphf.h:
89</div></div>
268 <div class=
"ttc" id=
"structphp__resource__factory_html_af2be7546c9d94eccc9350df812830d12"><div class=
"ttname"><a href=
"structphp__resource__factory.html#af2be7546c9d94eccc9350df812830d12">php_resource_factory::data
</a></div><div class=
"ttdeci">void * data
</div><div class=
"ttdoc">Opaque user data.
</div><div class=
"ttdef"><b>Definition:
</b> php_raphf.h:
87</div></div>
269 <div class=
"ttc" id=
"php__raphf_8h_html_a8094f85df976aff73148bc579ae72e38"><div class=
"ttname"><a href=
"php__raphf_8h.html#a8094f85df976aff73148bc579ae72e38">php_resource_factory_ops::copy
</a></div><div class=
"ttdeci">php_resource_factory_handle_copy_t copy
</div><div class=
"ttdoc">The resource
's copy constructor.
</div><div class=
"ttdef"><b>Definition:
</b> php_raphf.h:
75</div></div>
270 <div class=
"ttc" id=
"php__raphf_8h_html_a119a44fd9f5ae066b6d77e7a35a25cd0"><div class=
"ttname"><a href=
"php__raphf_8h.html#a119a44fd9f5ae066b6d77e7a35a25cd0">php_persistent_handle_list::used
</a></div><div class=
"ttdeci">ulong used
</div><div class=
"ttdoc">Count of acquired resources.
</div><div class=
"ttdef"><b>Definition:
</b> php_raphf.h:
175</div></div>
271 <div class=
"ttc" id=
"php__raphf_8h_html_a4935f6446b1d4a2feb7a22dfc4e5d6d0"><div class=
"ttname"><a href=
"php__raphf_8h.html#a4935f6446b1d4a2feb7a22dfc4e5d6d0">php_persistent_handle_provider::list
</a></div><div class=
"ttdeci">php_persistent_handle_list_t list
</div><div class=
"ttdoc">The list of free handles.
</div><div class=
"ttdef"><b>Definition:
</b> php_raphf.h:
188</div></div>
272 <div class=
"ttc" id=
"php__raphf_8h_html_a7f012d685f5f7c08f50288b61232e689"><div class=
"ttname"><a href=
"php__raphf_8h.html#a7f012d685f5f7c08f50288b61232e689">php_resource_factory_free
</a></div><div class=
"ttdeci">void php_resource_factory_free(php_resource_factory_t **f)
</div><div class=
"ttdoc">Destroy and free the resource factory.
</div></div>
273 <div class=
"ttc" id=
"php__raphf_8h_html_a85e9e715d308dc5d98b980c9c57d02bf"><div class=
"ttname"><a href=
"php__raphf_8h.html#a85e9e715d308dc5d98b980c9c57d02bf">php_persistent_handle_retire_t
</a></div><div class=
"ttdeci">void(* php_persistent_handle_retire_t)(php_persistent_handle_factory_t *f, void **handle)
</div><div class=
"ttdoc">Retire the persistent handle on release.
</div><div class=
"ttdef"><b>Definition:
</b> php_raphf.h:
207</div></div>
274 <div class=
"ttc" id=
"php__raphf_8h_html_abadff49d810f7ce220bd3537bdaecef7"><div class=
"ttname"><a href=
"php__raphf_8h.html#abadff49d810f7ce220bd3537bdaecef7">php_resource_factory_handle_ctor_t
</a></div><div class=
"ttdeci">void *(* php_resource_factory_handle_ctor_t)(void *opaque, void *init_arg)
</div><div class=
"ttdoc">A resource constructor.
</div><div class=
"ttdef"><b>Definition:
</b> php_raphf.h:
44</div></div>
275 <div class=
"ttc" id=
"php__raphf_8h_html_acb8a7a04b86f08db41a2d6232676c65c"><div class=
"ttname"><a href=
"php__raphf_8h.html#acb8a7a04b86f08db41a2d6232676c65c">php_resource_factory_ops::dtor
</a></div><div class=
"ttdeci">php_resource_factory_handle_dtor_t dtor
</div><div class=
"ttdoc">The resource
's destructor.
</div><div class=
"ttdef"><b>Definition:
</b> php_raphf.h:
77</div></div>
276 <div class=
"ttc" id=
"php__raphf_8h_html_a617d2cc656ab6427388b938597194ebb"><div class=
"ttname"><a href=
"php__raphf_8h.html#a617d2cc656ab6427388b938597194ebb">php_resource_factory_is_persistent
</a></div><div class=
"ttdeci">zend_bool php_resource_factory_is_persistent(php_resource_factory_t *a)
</div><div class=
"ttdoc">Check whether a resource factory is a persistent handle resource factory.
</div></div>
277 <div class=
"ttc" id=
"php__raphf_8h_html_a0a266874dafb69cf2b040378d4033901"><div class=
"ttname"><a href=
"php__raphf_8h.html#a0a266874dafb69cf2b040378d4033901">php_persistent_handle_concede
</a></div><div class=
"ttdeci">php_persistent_handle_factory_t * php_persistent_handle_concede(php_persistent_handle_factory_t *a, const char *name_str, size_t name_len, const char *ident_str, size_t ident_len, php_persistent_handle_wakeup_t wakeup, php_persistent_handle_retire_t retire)
</div><div class=
"ttdoc">Retrieve a persistent handle factory at runtime.
</div></div>
278 <div class=
"ttc" id=
"php__raphf_8h_html_ae8be369197905047ffbd05c0ca80f245"><div class=
"ttname"><a href=
"php__raphf_8h.html#ae8be369197905047ffbd05c0ca80f245">php_resource_factory_addref
</a></div><div class=
"ttdeci">unsigned php_resource_factory_addref(php_resource_factory_t *rf)
</div><div class=
"ttdoc">Increase the refcount of the resource factory.
</div></div>
279 <div class=
"ttc" id=
"php__raphf_8h_html_ad20f10c53e3f33756638da98819367f0"><div class=
"ttname"><a href=
"php__raphf_8h.html#ad20f10c53e3f33756638da98819367f0">php_resource_factory_init
</a></div><div class=
"ttdeci">php_resource_factory_t * php_resource_factory_init(php_resource_factory_t *f, php_resource_factory_ops_t *fops, void *data, void(*dtor)(void *data))
</div><div class=
"ttdoc">Initialize a resource factory.
</div></div>
280 <div class=
"ttc" id=
"php__raphf_8h_html_af08ee05c51d52200755d24f6f52df144"><div class=
"ttname"><a href=
"php__raphf_8h.html#af08ee05c51d52200755d24f6f52df144">php_persistent_handle_release
</a></div><div class=
"ttdeci">void php_persistent_handle_release(php_persistent_handle_factory_t *a, void *handle)
</div><div class=
"ttdoc">Release a persistent handle.
</div></div>
281 <div class=
"ttc" id=
"php__raphf_8h_html_structphp__resource__factory__ops"><div class=
"ttname"><a href=
"php__raphf_8h.html#structphp__resource__factory__ops">php_resource_factory_ops
</a></div><div class=
"ttdoc">The resource ops consisting of a ctor, a copy ctor and a dtor.
</div><div class=
"ttdef"><b>Definition:
</b> php_raphf.h:
71</div></div>
282 <div class=
"ttc" id=
"structphp__resource__factory_html_a00ebf2bd2227f5d4826751b3b475769f"><div class=
"ttname"><a href=
"structphp__resource__factory.html#a00ebf2bd2227f5d4826751b3b475769f">php_resource_factory::refcount
</a></div><div class=
"ttdeci">unsigned refcount
</div><div class=
"ttdoc">How often this factory is referenced.
</div><div class=
"ttdef"><b>Definition:
</b> php_raphf.h:
91</div></div>
283 <div class=
"ttc" id=
"php__raphf_8h_html_a97dbb9d342f33205b92374c586676bc6"><div class=
"ttname"><a href=
"php__raphf_8h.html#a97dbb9d342f33205b92374c586676bc6">php_resource_factory_handle_dtor
</a></div><div class=
"ttdeci">void php_resource_factory_handle_dtor(php_resource_factory_t *f, void *handle)
</div><div class=
"ttdoc">Destroy (and free) the resource.
</div></div>
284 <div class=
"ttc" id=
"php__raphf_8h_html_a29e0d7a66e441a5265ddf2f0adbbb3af"><div class=
"ttname"><a href=
"php__raphf_8h.html#a29e0d7a66e441a5265ddf2f0adbbb3af">php_resource_factory_ops_t
</a></div><div class=
"ttdeci">struct php_resource_factory_ops php_resource_factory_ops_t
</div><div class=
"ttdoc">The resource ops consisting of a ctor, a copy ctor and a dtor.
</div></div>
285 <div class=
"ttc" id=
"php__raphf_8h_html_a016b8a4159e698f915ab967711696847"><div class=
"ttname"><a href=
"php__raphf_8h.html#a016b8a4159e698f915ab967711696847">php_resource_factory_dtor
</a></div><div class=
"ttdeci">void php_resource_factory_dtor(php_resource_factory_t *f)
</div><div class=
"ttdoc">Destroy the resource factory.
</div></div>
286 <div class=
"ttc" id=
"php__raphf_8h_html_a23b073aa7b8b7dd182b336b07494288f"><div class=
"ttname"><a href=
"php__raphf_8h.html#a23b073aa7b8b7dd182b336b07494288f">php_resource_factory_handle_copy_t
</a></div><div class=
"ttdeci">void *(* php_resource_factory_handle_copy_t)(void *opaque, void *handle)
</div><div class=
"ttdoc">The copy constructor of a resource.
</div><div class=
"ttdef"><b>Definition:
</b> php_raphf.h:
53</div></div>
287 <div class=
"ttc" id=
"php__raphf_8h_html_structphp__persistent__handle__list"><div class=
"ttname"><a href=
"php__raphf_8h.html#structphp__persistent__handle__list">php_persistent_handle_list
</a></div><div class=
"ttdoc">Persistent handles storage.
</div><div class=
"ttdef"><b>Definition:
</b> php_raphf.h:
171</div></div>
288 <div class=
"ttc" id=
"php__raphf_8h_html_a9299f3f0821061ad93d15c10cf735b6b"><div class=
"ttname"><a href=
"php__raphf_8h.html#a9299f3f0821061ad93d15c10cf735b6b">php_persistent_handle_factory::retire
</a></div><div class=
"ttdeci">php_persistent_handle_retire_t retire
</div><div class=
"ttdoc">The persistent handle retire routine; may be NULL.
</div><div class=
"ttdef"><b>Definition:
</b> php_raphf.h:
223</div></div>
289 <div class=
"ttc" id=
"php__raphf_8h_html_ae174fbe124d4cb6010e218a68379bd18"><div class=
"ttname"><a href=
"php__raphf_8h.html#ae174fbe124d4cb6010e218a68379bd18">php_persistent_handle_statall
</a></div><div class=
"ttdeci">HashTable * php_persistent_handle_statall(HashTable *ht)
</div><div class=
"ttdoc">Retrieve statistics about the current process/thread
's persistent handles.
</div></div>
290 <div class=
"ttc" id=
"php__raphf_8h_html_a653a4a0e9c39ad942e9573e197f62974"><div class=
"ttname"><a href=
"php__raphf_8h.html#a653a4a0e9c39ad942e9573e197f62974">php_persistent_handle_list::free
</a></div><div class=
"ttdeci">HashTable free
</div><div class=
"ttdoc">Storage of free resources.
</div><div class=
"ttdef"><b>Definition:
</b> php_raphf.h:
173</div></div>
291 <div class=
"ttc" id=
"php__raphf_8h_html_structphp__persistent__handle__factory"><div class=
"ttname"><a href=
"php__raphf_8h.html#structphp__persistent__handle__factory">php_persistent_handle_factory
</a></div><div class=
"ttdoc">Definition of a persistent handle factory.
</div><div class=
"ttdef"><b>Definition:
</b> php_raphf.h:
217</div></div>
292 <div class=
"ttc" id=
"php__raphf_8h_html_a1b826c765392c93336db79bd6697e33d"><div class=
"ttname"><a href=
"php__raphf_8h.html#a1b826c765392c93336db79bd6697e33d">php_resource_factory_handle_dtor_t
</a></div><div class=
"ttdeci">void(* php_resource_factory_handle_dtor_t)(void *opaque, void *handle)
</div><div class=
"ttdoc">The destructor of a resource.
</div><div class=
"ttdef"><b>Definition:
</b> php_raphf.h:
62</div></div>
293 <div class=
"ttc" id=
"php__raphf_8h_html_ab754f4d59dab5de0edf702a9ab2f4e03"><div class=
"ttname"><a href=
"php__raphf_8h.html#ab754f4d59dab5de0edf702a9ab2f4e03">php_persistent_handle_resource_factory_init
</a></div><div class=
"ttdeci">php_resource_factory_t * php_persistent_handle_resource_factory_init(php_resource_factory_t *a, php_persistent_handle_factory_t *pf)
</div><div class=
"ttdoc">Create a resource factory for persistent handles.
</div></div>
294 <div class=
"ttc" id=
"php__raphf_8h_html_structphp__persistent__handle__provider"><div class=
"ttname"><a href=
"php__raphf_8h.html#structphp__persistent__handle__provider">php_persistent_handle_provider
</a></div><div class=
"ttdoc">Definition of a persistent handle provider.
</div><div class=
"ttdef"><b>Definition:
</b> php_raphf.h:
182</div></div>
295 <div class=
"ttc" id=
"php__raphf_8h_html_a4817c4b3d4077c48dff36376487ba8d4"><div class=
"ttname"><a href=
"php__raphf_8h.html#a4817c4b3d4077c48dff36376487ba8d4">php_resource_factory_t
</a></div><div class=
"ttdeci">struct php_resource_factory php_resource_factory_t
</div><div class=
"ttdoc">The resource factory.
</div></div>
296 <div class=
"ttc" id=
"php__raphf_8h_html_a43aabcbe7ec4b5ff463f74cfcf788f51"><div class=
"ttname"><a href=
"php__raphf_8h.html#a43aabcbe7ec4b5ff463f74cfcf788f51">php_persistent_handle_factory::provider
</a></div><div class=
"ttdeci">php_persistent_handle_provider_t * provider
</div><div class=
"ttdoc">The persistent handle provider.
</div><div class=
"ttdef"><b>Definition:
</b> php_raphf.h:
219</div></div>
297 <div class=
"ttc" id=
"php__raphf_8h_html_a59f5566ecc4c76e048ad53469eb20142"><div class=
"ttname"><a href=
"php__raphf_8h.html#a59f5566ecc4c76e048ad53469eb20142">php_persistent_handle_wakeup_t
</a></div><div class=
"ttdeci">void(* php_persistent_handle_wakeup_t)(php_persistent_handle_factory_t *f, void **handle)
</div><div class=
"ttdoc">Wakeup the persistent handle on re-acquisition.
</div><div class=
"ttdef"><b>Definition:
</b> php_raphf.h:
202</div></div>
298 <div class=
"ttc" id=
"php__raphf_8h_html_a08db5f3698f2d0bf3d2f20dcf4e7b2b4"><div class=
"ttname"><a href=
"php__raphf_8h.html#a08db5f3698f2d0bf3d2f20dcf4e7b2b4">php_resource_factory_handle_copy
</a></div><div class=
"ttdeci">void * php_resource_factory_handle_copy(php_resource_factory_t *f, void *handle)
</div><div class=
"ttdoc">Create a copy of the resource handle.
</div></div>
299 <div class=
"ttc" id=
"php__raphf_8h_html_a8204714f100b74b028652951ca40abd3"><div class=
"ttname"><a href=
"php__raphf_8h.html#a8204714f100b74b028652951ca40abd3">php_persistent_handle_provider::rf
</a></div><div class=
"ttdeci">php_resource_factory_t rf
</div><div class=
"ttdoc">The resource factory.
</div><div class=
"ttdef"><b>Definition:
</b> php_raphf.h:
194</div></div>
300 <div class=
"ttc" id=
"php__raphf_8h_html_ae8124f3f73e96e2193ae03c5519d2763"><div class=
"ttname"><a href=
"php__raphf_8h.html#ae8124f3f73e96e2193ae03c5519d2763">php_persistent_handle_accrete
</a></div><div class=
"ttdeci">void * php_persistent_handle_accrete(php_persistent_handle_factory_t *a, void *handle)
</div><div class=
"ttdoc">Copy a persistent handle.
</div></div>
301 <div class=
"ttc" id=
"php__raphf_8h_html_a31f0595f4f726f762790cef844568fc4"><div class=
"ttname"><a href=
"php__raphf_8h.html#a31f0595f4f726f762790cef844568fc4">php_persistent_handle_provider_t
</a></div><div class=
"ttdeci">struct php_persistent_handle_provider php_persistent_handle_provider_t
</div><div class=
"ttdoc">Definition of a persistent handle provider.
</div></div>
302 <div class=
"ttc" id=
"php__raphf_8h_html_a044b07071758dbc53f87bfd212400ac0"><div class=
"ttname"><a href=
"php__raphf_8h.html#a044b07071758dbc53f87bfd212400ac0">php_resource_factory_ops::ctor
</a></div><div class=
"ttdeci">php_resource_factory_handle_ctor_t ctor
</div><div class=
"ttdoc">The resource constructor.
</div><div class=
"ttdef"><b>Definition:
</b> php_raphf.h:
73</div></div>
303 <div class=
"ttc" id=
"php__raphf_8h_html_af6636e870497be0699d2781e5fc8a2a9"><div class=
"ttname"><a href=
"php__raphf_8h.html#af6636e870497be0699d2781e5fc8a2a9">php_persistent_handle_acquire
</a></div><div class=
"ttdeci">void * php_persistent_handle_acquire(php_persistent_handle_factory_t *a, void *init_arg)
</div><div class=
"ttdoc">Acquire a persistent handle.
</div></div>
304 <div class=
"ttc" id=
"php__raphf_8h_html_a98d02dc80dd83095b8f901954350840c"><div class=
"ttname"><a href=
"php__raphf_8h.html#a98d02dc80dd83095b8f901954350840c">php_resource_factory_handle_ctor
</a></div><div class=
"ttdeci">void * php_resource_factory_handle_ctor(php_resource_factory_t *f, void *init_arg)
</div><div class=
"ttdoc">Construct a resource by the resource factory f.
</div></div>
305 <div class=
"ttc" id=
"structphp__resource__factory_html"><div class=
"ttname"><a href=
"structphp__resource__factory.html">php_resource_factory
</a></div><div class=
"ttdoc">The resource factory.
</div><div class=
"ttdef"><b>Definition:
</b> php_raphf.h:
83</div></div>
306 <div class=
"ttc" id=
"php__raphf_8h_html_a93458ab12d810f0fd545fb1464ba9eca"><div class=
"ttname"><a href=
"php__raphf_8h.html#a93458ab12d810f0fd545fb1464ba9eca">php_persistent_handle_get_resource_factory_ops
</a></div><div class=
"ttdeci">php_resource_factory_ops_t * php_persistent_handle_get_resource_factory_ops(void)
</div><div class=
"ttdoc">Retrieve persistent handle resource factory ops.
</div></div>
307 <div class=
"ttc" id=
"php__raphf_8h_html_a07f599598d2b87b188f39871d026c177"><div class=
"ttname"><a href=
"php__raphf_8h.html#a07f599598d2b87b188f39871d026c177">php_persistent_handle_list_t
</a></div><div class=
"ttdeci">struct php_persistent_handle_list php_persistent_handle_list_t
</div><div class=
"ttdoc">Persistent handles storage.
</div></div>
308 <div class=
"ttc" id=
"php__raphf_8h_html_a0d661d1f880270146012eb8781e5343e"><div class=
"ttname"><a href=
"php__raphf_8h.html#a0d661d1f880270146012eb8781e5343e">php_persistent_handle_cleanup
</a></div><div class=
"ttdeci">void php_persistent_handle_cleanup(const char *name_str, size_t name_len, const char *ident_str, size_t ident_len)
</div><div class=
"ttdoc">Clean persistent handles up.
</div></div>
309 <div class=
"ttc" id=
"php__raphf_8h_html_a3cbbe29c8a4ed9858c921c8ee539de59"><div class=
"ttname"><a href=
"php__raphf_8h.html#a3cbbe29c8a4ed9858c921c8ee539de59">php_persistent_handle_provide
</a></div><div class=
"ttdeci">int php_persistent_handle_provide(const char *name_str, size_t name_len, php_resource_factory_ops_t *fops, void *data, void(*dtor)(void *))
</div><div class=
"ttdoc">Register a persistent handle provider in MINIT.
</div></div>
310 <div class=
"ttc" id=
"php__raphf_8h_html_ab12ec2da7189e16fbed40a3b73bc9ee2"><div class=
"ttname"><a href=
"php__raphf_8h.html#ab12ec2da7189e16fbed40a3b73bc9ee2">php_persistent_handle_abandon
</a></div><div class=
"ttdeci">void php_persistent_handle_abandon(php_persistent_handle_factory_t *a)
</div><div class=
"ttdoc">Abandon the persistent handle factory.
</div></div>
311 <div class=
"ttc" id=
"php__raphf_8h_html_a84ffa94401b9869e14c190be4bb1b6be"><div class=
"ttname"><a href=
"php__raphf_8h.html#a84ffa94401b9869e14c190be4bb1b6be">php_persistent_handle_factory::free_on_abandon
</a></div><div class=
"ttdeci">unsigned free_on_abandon
</div><div class=
"ttdoc">Whether it has to be free
'd on php_persistent_handle_abandon()
</div><div class=
"ttdef"><b>Definition:
</b> php_raphf.h:
234</div></div>
312 <div class=
"ttc" id=
"structphp__resource__factory_html_af46453098d0078f9015184549b363824"><div class=
"ttname"><a href=
"structphp__resource__factory.html#af46453098d0078f9015184549b363824">php_resource_factory::fops
</a></div><div class=
"ttdeci">php_resource_factory_ops_t fops
</div><div class=
"ttdoc">The resource ops.
</div><div class=
"ttdef"><b>Definition:
</b> php_raphf.h:
85</div></div>
313 <div class=
"ttc" id=
"php__raphf_8h_html_ae874c03caffa8eaa265dd52ebf593c02"><div class=
"ttname"><a href=
"php__raphf_8h.html#ae874c03caffa8eaa265dd52ebf593c02">php_persistent_handle_factory::ident
</a></div><div class=
"ttdeci">struct php_persistent_handle_factory::@
0 ident
</div><div class=
"ttdoc">The ident for which this factory manages resources.
</div></div>
314 <div class=
"ttc" id=
"php__raphf_8h_html_a6633b7c860e4538942e0367d64ed5af7"><div class=
"ttname"><a href=
"php__raphf_8h.html#a6633b7c860e4538942e0367d64ed5af7">php_persistent_handle_factory::wakeup
</a></div><div class=
"ttdeci">php_persistent_handle_wakeup_t wakeup
</div><div class=
"ttdoc">The persistent handle wakeup routine; may be NULL.
</div><div class=
"ttdef"><b>Definition:
</b> php_raphf.h:
221</div></div>
315 </div><!-- fragment --></div><!-- contents -->
316 </div><!-- doc-content -->
317 <!-- start footer part -->
318 <div id=
"nav-path" class=
"navpath"><!-- id is needed for treeview function! -->
320 <li class=
"navelem"><a class=
"el" href=
"php__raphf_8h.html">php_raphf.h
</a></li>
321 <li class=
"footer">Generated by
322 <a href=
"http://www.doxygen.org/index.html">
323 <img class=
"footer" src=
"doxygen.png" alt=
"doxygen"/></a> 1.8.9.1 </li>