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.10"/>
7 <title>Property proxy API: src/php_propro_api.h File Reference
</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=
"projectalign" style=
"padding-left: 0.5em;">
34 <div id=
"projectname">Property proxy API
36 <div id=
"projectbrief">A facility to manage extension object properties tied to C-struct members
</div>
42 <!-- end header part -->
43 <!-- Generated by Doxygen 1.8.10 -->
44 <script type=
"text/javascript">
45 var searchBox = new SearchBox(
"searchBox",
"search",false,'Search');
47 <div id=
"navrow1" class=
"tabs">
49 <li><a href=
"index.html"><span>Main
 Page
</span></a></li>
50 <li><a href=
"annotated.html"><span>Data
 Structures
</span></a></li>
51 <li class=
"current"><a href=
"files.html"><span>Files
</span></a></li>
53 <div id=
"MSearchBox" class=
"MSearchBoxInactive">
55 <img id=
"MSearchSelect" src=
"search/mag_sel.png"
56 onmouseover=
"return searchBox.OnSearchSelectShow()"
57 onmouseout=
"return searchBox.OnSearchSelectHide()"
59 <input type=
"text" id=
"MSearchField" value=
"Search" accesskey=
"S"
60 onfocus=
"searchBox.OnSearchFieldFocus(true)"
61 onblur=
"searchBox.OnSearchFieldFocus(false)"
62 onkeyup=
"searchBox.OnSearchFieldChange(event)"/>
63 </span><span class=
"right">
64 <a id=
"MSearchClose" href=
"javascript:searchBox.CloseResultsWindow()"><img id=
"MSearchCloseImg" border=
"0" src=
"search/close.png" alt=
""/></a>
70 <div id=
"navrow2" class=
"tabs2">
72 <li><a href=
"files.html"><span>File
 List
</span></a></li>
73 <li><a href=
"globals.html"><span>Globals
</span></a></li>
77 <div id=
"side-nav" class=
"ui-resizable side-nav-resizable">
79 <div id=
"nav-tree-contents">
80 <div id=
"nav-sync" class=
"sync"></div>
83 <div id=
"splitbar" style=
"-moz-user-select:none;"
84 class=
"ui-resizable-handle">
87 <script type=
"text/javascript">
88 $(document).ready(function(){initNavTree('php__propro__api_8h.html','');});
90 <div id=
"doc-content">
91 <!-- window showing the filter options -->
92 <div id=
"MSearchSelectWindow"
93 onmouseover=
"return searchBox.OnSearchSelectShow()"
94 onmouseout=
"return searchBox.OnSearchSelectHide()"
95 onkeydown=
"return searchBox.OnSearchSelectKey(event)">
98 <!-- iframe showing the search results (closed by default) -->
99 <div id=
"MSearchResultsWindow">
100 <iframe src=
"javascript:void(0)" frameborder=
"0"
101 name=
"MSearchResults" id=
"MSearchResults">
106 <div class=
"summary">
107 <a href=
"#nested-classes">Data Structures
</a> |
108 <a href=
"#typedef-members">Typedefs
</a> |
109 <a href=
"#func-members">Functions
</a> </div>
110 <div class=
"headertitle">
111 <div class=
"title">php_propro_api.h File Reference
</div> </div>
113 <div class=
"contents">
114 <div class=
"textblock"><code>#include
"<a class=
"el" href=
"php__propro_8h_source.html">php_propro.h
</a>"</code><br />
115 </div><div class=
"textblock"><div class=
"dynheader">
116 Include dependency graph for php_propro_api.h:
</div>
117 <div class=
"dyncontent">
118 <div class=
"center"><img src=
"php__propro__api_8h__incl.png" border=
"0" usemap=
"#src_2php__propro__api_8h" alt=
""/></div>
119 <map name=
"src_2php__propro__api_8h" id=
"src_2php__propro__api_8h">
120 <area shape=
"rect" id=
"node2" href=
"php__propro_8h.html" title=
"php_propro.h" alt=
"" coords=
"28,80,125,107"/>
123 </div><div class=
"textblock"><div class=
"dynheader">
124 This graph shows which files directly or indirectly include this file:
</div>
125 <div class=
"dyncontent">
126 <div class=
"center"><img src=
"php__propro__api_8h__dep__incl.png" border=
"0" usemap=
"#src_2php__propro__api_8hdep" alt=
""/></div>
127 <map name=
"src_2php__propro__api_8hdep" id=
"src_2php__propro__api_8hdep">
128 <area shape=
"rect" id=
"node2" href=
"php__propro_8h.html" title=
"php_propro.h" alt=
"" coords=
"28,80,125,107"/>
129 <area shape=
"rect" id=
"node3" href=
"php__propro__api_8c.html" title=
"src/php_propro_api.c" alt=
"" coords=
"149,80,292,107"/>
133 <p><a href=
"php__propro__api_8h_source.html">Go to the source code of this file.
</a></p>
134 <table class=
"memberdecls">
135 <tr class=
"heading"><td colspan=
"2"><h2 class=
"groupheader"><a name=
"nested-classes"></a>
136 Data Structures
</h2></td></tr>
137 <tr class=
"memitem:structphp__property__proxy"><td class=
"memItemLeft" align=
"right" valign=
"top">struct
 </td><td class=
"memItemRight" valign=
"bottom"><a class=
"el" href=
"php__propro__api_8h.html#structphp__property__proxy">php_property_proxy
</a></td></tr>
138 <tr class=
"memdesc:structphp__property__proxy"><td class=
"mdescLeft"> </td><td class=
"mdescRight">The internal property proxy.
<a href=
"php__propro__api_8h.html#structphp__property__proxy">More...
</a><br /></td></tr>
139 <tr class=
"separator:structphp__property__proxy"><td class=
"memSeparator" colspan=
"2"> </td></tr>
140 <tr class=
"memitem:structphp__property__proxy__object"><td class=
"memItemLeft" align=
"right" valign=
"top">struct
 </td><td class=
"memItemRight" valign=
"bottom"><a class=
"el" href=
"php__propro__api_8h.html#structphp__property__proxy__object">php_property_proxy_object
</a></td></tr>
141 <tr class=
"memdesc:structphp__property__proxy__object"><td class=
"mdescLeft"> </td><td class=
"mdescRight">The userland object.
<a href=
"php__propro__api_8h.html#structphp__property__proxy__object">More...
</a><br /></td></tr>
142 <tr class=
"separator:structphp__property__proxy__object"><td class=
"memSeparator" colspan=
"2"> </td></tr>
143 </table><table class=
"memberdecls">
144 <tr class=
"heading"><td colspan=
"2"><h2 class=
"groupheader"><a name=
"typedef-members"></a>
145 Typedefs
</h2></td></tr>
146 <tr class=
"memitem:ac27c374d9d0cf65b52b16ea407df9eac"><td class=
"memItemLeft" align=
"right" valign=
"top">typedef struct
<a class=
"el" href=
"php__propro__api_8h.html#structphp__property__proxy">php_property_proxy
</a> </td><td class=
"memItemRight" valign=
"bottom"><a class=
"el" href=
"php__propro__api_8h.html#ac27c374d9d0cf65b52b16ea407df9eac">php_property_proxy_t
</a></td></tr>
147 <tr class=
"separator:ac27c374d9d0cf65b52b16ea407df9eac"><td class=
"memSeparator" colspan=
"2"> </td></tr>
148 <tr class=
"memitem:aaf59f3ba6014a701909054115f812451"><td class=
"memItemLeft" align=
"right" valign=
"top">typedef struct
<a class=
"el" href=
"php__propro__api_8h.html#structphp__property__proxy__object">php_property_proxy_object
</a> </td><td class=
"memItemRight" valign=
"bottom"><a class=
"el" href=
"php__propro__api_8h.html#aaf59f3ba6014a701909054115f812451">php_property_proxy_object_t
</a></td></tr>
149 <tr class=
"separator:aaf59f3ba6014a701909054115f812451"><td class=
"memSeparator" colspan=
"2"> </td></tr>
150 </table><table class=
"memberdecls">
151 <tr class=
"heading"><td colspan=
"2"><h2 class=
"groupheader"><a name=
"func-members"></a>
152 Functions
</h2></td></tr>
153 <tr class=
"memitem:a83d5ddbca9a25a062eded906182f205c"><td class=
"memItemLeft" align=
"right" valign=
"top"><a class=
"el" href=
"php__propro__api_8h.html#ac27c374d9d0cf65b52b16ea407df9eac">php_property_proxy_t
</a> *
 </td><td class=
"memItemRight" valign=
"bottom"><a class=
"el" href=
"php__propro__api_8h.html#a83d5ddbca9a25a062eded906182f205c">php_property_proxy_init
</a> (zval *container, const char *member_str, size_t member_len)
</td></tr>
154 <tr class=
"memdesc:a83d5ddbca9a25a062eded906182f205c"><td class=
"mdescLeft"> </td><td class=
"mdescRight">Create a property proxy.
<a href=
"#a83d5ddbca9a25a062eded906182f205c">More...
</a><br /></td></tr>
155 <tr class=
"separator:a83d5ddbca9a25a062eded906182f205c"><td class=
"memSeparator" colspan=
"2"> </td></tr>
156 <tr class=
"memitem:ae185a0f79aac26679cf1dd0de2e46f57"><td class=
"memItemLeft" align=
"right" valign=
"top">void
 </td><td class=
"memItemRight" valign=
"bottom"><a class=
"el" href=
"php__propro__api_8h.html#ae185a0f79aac26679cf1dd0de2e46f57">php_property_proxy_free
</a> (
<a class=
"el" href=
"php__propro__api_8h.html#ac27c374d9d0cf65b52b16ea407df9eac">php_property_proxy_t
</a> **proxy)
</td></tr>
157 <tr class=
"memdesc:ae185a0f79aac26679cf1dd0de2e46f57"><td class=
"mdescLeft"> </td><td class=
"mdescRight">Destroy and free a property proxy.
<a href=
"#ae185a0f79aac26679cf1dd0de2e46f57">More...
</a><br /></td></tr>
158 <tr class=
"separator:ae185a0f79aac26679cf1dd0de2e46f57"><td class=
"memSeparator" colspan=
"2"> </td></tr>
159 <tr class=
"memitem:a15c4fce513dc952c575cd72332835aa4"><td class=
"memItemLeft" align=
"right" valign=
"top">zend_class_entry *
 </td><td class=
"memItemRight" valign=
"bottom"><a class=
"el" href=
"php__propro__api_8h.html#a15c4fce513dc952c575cd72332835aa4">php_property_proxy_get_class_entry
</a> (void)
</td></tr>
160 <tr class=
"memdesc:a15c4fce513dc952c575cd72332835aa4"><td class=
"mdescLeft"> </td><td class=
"mdescRight">Get the zend_class_entry of php\PropertyProxy.
<a href=
"#a15c4fce513dc952c575cd72332835aa4">More...
</a><br /></td></tr>
161 <tr class=
"separator:a15c4fce513dc952c575cd72332835aa4"><td class=
"memSeparator" colspan=
"2"> </td></tr>
162 <tr class=
"memitem:a35874bda7876fa60b796a9fd90623c1f"><td class=
"memItemLeft" align=
"right" valign=
"top">zend_object_value
 </td><td class=
"memItemRight" valign=
"bottom"><a class=
"el" href=
"php__propro__api_8h.html#a35874bda7876fa60b796a9fd90623c1f">php_property_proxy_object_new
</a> (zend_class_entry *ce)
</td></tr>
163 <tr class=
"memdesc:a35874bda7876fa60b796a9fd90623c1f"><td class=
"mdescLeft"> </td><td class=
"mdescRight">Instantiate a new php\PropertyProxy.
<a href=
"#a35874bda7876fa60b796a9fd90623c1f">More...
</a><br /></td></tr>
164 <tr class=
"separator:a35874bda7876fa60b796a9fd90623c1f"><td class=
"memSeparator" colspan=
"2"> </td></tr>
165 <tr class=
"memitem:a8972f05941efb141dd78c42bef70db2f"><td class=
"memItemLeft" align=
"right" valign=
"top">zend_object_value
 </td><td class=
"memItemRight" valign=
"bottom"><a class=
"el" href=
"php__propro__api_8h.html#a8972f05941efb141dd78c42bef70db2f">php_property_proxy_object_new_ex
</a> (zend_class_entry *ce,
<a class=
"el" href=
"php__propro__api_8h.html#ac27c374d9d0cf65b52b16ea407df9eac">php_property_proxy_t
</a> *proxy,
<a class=
"el" href=
"php__propro__api_8h.html#aaf59f3ba6014a701909054115f812451">php_property_proxy_object_t
</a> **ptr)
</td></tr>
166 <tr class=
"memdesc:a8972f05941efb141dd78c42bef70db2f"><td class=
"mdescLeft"> </td><td class=
"mdescRight">Instantiate a new php\PropertyProxy with
<em>proxy
</em>.
<a href=
"#a8972f05941efb141dd78c42bef70db2f">More...
</a><br /></td></tr>
167 <tr class=
"separator:a8972f05941efb141dd78c42bef70db2f"><td class=
"memSeparator" colspan=
"2"> </td></tr>
169 <hr/><h2 class=
"groupheader">Data Structure Documentation
</h2>
170 <a name=
"structphp__property__proxy" id=
"structphp__property__proxy"></a>
171 <div class=
"memitem">
172 <div class=
"memproto">
173 <table class=
"memname">
175 <td class=
"memname">struct php_property_proxy
</td>
178 </div><div class=
"memdoc">
179 <div class=
"textblock"><p>The internal property proxy.
</p>
180 <p>Container for the object/array holding the proxied property.
</p>
181 </div><table class=
"fieldtable">
182 <tr><th colspan=
"3">Data Fields
</th></tr>
183 <tr><td class=
"fieldtype">
184 <a class=
"anchor" id=
"ac0fdbd3fa8f961d7732b89ad81d83f4f"></a>zval *
</td>
185 <td class=
"fieldname">
187 <td class=
"fielddoc">
188 The container holding the property.
</td></tr>
189 <tr><td class=
"fieldtype">
190 <a class=
"anchor" id=
"ab9d36c8980c76898ce3f4c08f5c8748e"></a>size_t
</td>
191 <td class=
"fieldname">
193 <td class=
"fielddoc">
194 The length of the name.
</td></tr>
195 <tr><td class=
"fieldtype">
196 <a class=
"anchor" id=
"ad6a7b61daa9561ff8bfc13e99dd68f51"></a>char *
</td>
197 <td class=
"fieldname">
199 <td class=
"fielddoc">
200 The name of the proxied property.
</td></tr>
205 <a name=
"structphp__property__proxy__object" id=
"structphp__property__proxy__object"></a>
206 <div class=
"memitem">
207 <div class=
"memproto">
208 <table class=
"memname">
210 <td class=
"memname">struct php_property_proxy_object
</td>
213 </div><div class=
"memdoc">
214 <div class=
"textblock"><p>The userland object.
</p>
215 <p>Return an object instance of php\PropertyProxy to make your C-struct member accessible by reference from PHP userland.
</p>
217 <li><p class=
"startli">~~~~~~~~~~{.c} static zval *my_read_prop(zval *object, zval *member, int type, zend_literal *key TSRMLS_DC) { my_object_t *obj = zend_object_store_get_object(object TSRMLS_CC); my_prophandler_t *handler; zval *return_value, *copy = my_cast(IS_STRING, member);
</p>
218 <p class=
"startli">if (SUCCESS == my_get_prophandler(Z_STRVAL_P(copy), Z_STRLEN_P(copy),
&handler)) { ALLOC_ZVAL(return_value); Z_SET_REFCOUNT_P(return_value,
0); Z_UNSET_ISREF_P(return_value);
</p>
219 <p class=
"startli">if (type == BP_VAR_R) { handler-
>read(obj, return_value TSRMLS_CC); } else { // // This is the interesting part // php_property_proxy_t *proxy; zend_object_value proxy_ov; zend_class_entry *proxy_ce;
</p>
220 <p class=
"startli">proxy = php_property_proxy_init(object, Z_STRVAL_P(copy), Z_STRLEN_P(copy) TSRMLS_CC); proxy_ce =
<a class=
"el" href=
"php__propro__api_8c.html#a15c4fce513dc952c575cd72332835aa4" title=
"Get the zend_class_entry of php\PropertyProxy. ">php_property_proxy_get_class_entry()
</a>; proxy_ov = php_property_proxy_object_new_ex(proxy_ce, proxy, NULL TSRMLS_CC); RETVAL_OBJVAL(proxy_ov,
0); } } else { zend_object_handlers *oh = zend_get_std_object_handlers(); return_value = oh-
>read_property(object, member, type, key TSRMLS_CC); }
</p>
221 <p class=
"startli">zval_ptr_dtor(
&copy);
</p>
222 <p class=
"startli">return return_value; }
</p>
226 </div><div class=
"dynheader">
227 Collaboration diagram for php_property_proxy_object:
</div>
228 <div class=
"dyncontent">
229 <div class=
"center"><img src=
"structphp__property__proxy__object__coll__graph.png" border=
"0" usemap=
"#php__property__proxy__object_coll__map" alt=
"Collaboration graph"/></div>
230 <map name=
"php__property__proxy__object_coll__map" id=
"php__property__proxy__object_coll__map">
231 <area shape=
"rect" id=
"node2" href=
"php__propro__api_8h.html#structphp__property__proxy" title=
"The internal property proxy. " alt=
"" coords=
"5,5,141,32"/>
233 <center><span class=
"legend">[
<a target=
"top" href=
"graph_legend.html">legend
</a>]
</span></center></div>
234 <table class=
"fieldtable">
235 <tr><th colspan=
"3">Data Fields
</th></tr>
236 <tr><td class=
"fieldtype">
237 <a class=
"anchor" id=
"acc1787566cbeff6448101dc27c274294"></a>struct
<a class=
"el" href=
"php__propro__api_8h.html#structphp__property__proxy__object">php_property_proxy_object
</a> *
</td>
238 <td class=
"fieldname">
240 <td class=
"fielddoc">
241 A reference to any parent property proxy object.
</td></tr>
242 <tr><td class=
"fieldtype">
243 <a class=
"anchor" id=
"a87b08fb8c8dd5a44bccfac6fb81d2103"></a><a class=
"el" href=
"php__propro__api_8h.html#ac27c374d9d0cf65b52b16ea407df9eac">php_property_proxy_t
</a> *
</td>
244 <td class=
"fieldname">
246 <td class=
"fielddoc">
247 The actual property proxy.
</td></tr>
248 <tr><td class=
"fieldtype">
249 <a class=
"anchor" id=
"a613d3470bf10261b3903e12d1b94f635"></a>zend_object
</td>
250 <td class=
"fieldname">
252 <td class=
"fielddoc">
253 The std zend_object.
</td></tr>
254 <tr><td class=
"fieldtype">
255 <a class=
"anchor" id=
"aefc91dcb332c026b37d3c222d338fe34"></a>zend_object_value
</td>
256 <td class=
"fieldname">
258 <td class=
"fielddoc">
259 The object value for easy zval creation.
</td></tr>
264 <h2 class=
"groupheader">Typedef Documentation
</h2>
265 <a class=
"anchor" id=
"aaf59f3ba6014a701909054115f812451"></a>
266 <div class=
"memitem">
267 <div class=
"memproto">
268 <table class=
"memname">
270 <td class=
"memname">typedef struct
<a class=
"el" href=
"php__propro__api_8h.html#structphp__property__proxy__object">php_property_proxy_object
</a> <a class=
"el" href=
"php__propro__api_8h.html#aaf59f3ba6014a701909054115f812451">php_property_proxy_object_t
</a></td>
273 </div><div class=
"memdoc">
277 <a class=
"anchor" id=
"ac27c374d9d0cf65b52b16ea407df9eac"></a>
278 <div class=
"memitem">
279 <div class=
"memproto">
280 <table class=
"memname">
282 <td class=
"memname">typedef struct
<a class=
"el" href=
"php__propro__api_8h.html#structphp__property__proxy">php_property_proxy
</a> <a class=
"el" href=
"php__propro__api_8h.html#ac27c374d9d0cf65b52b16ea407df9eac">php_property_proxy_t
</a></td>
285 </div><div class=
"memdoc">
289 <h2 class=
"groupheader">Function Documentation
</h2>
290 <a class=
"anchor" id=
"ae185a0f79aac26679cf1dd0de2e46f57"></a>
291 <div class=
"memitem">
292 <div class=
"memproto">
293 <table class=
"memname">
295 <td class=
"memname">void php_property_proxy_free
</td>
297 <td class=
"paramtype"><a class=
"el" href=
"php__propro__api_8h.html#ac27c374d9d0cf65b52b16ea407df9eac">php_property_proxy_t
</a> **
 </td>
298 <td class=
"paramname"><em>proxy
</em></td><td>)
</td>
302 </div><div class=
"memdoc">
304 <p>Destroy and free a property proxy.
</p>
305 <p>The destruction of the property proxy object calls this.
</p>
306 <dl class=
"params"><dt>Parameters
</dt><dd>
307 <table class=
"params">
308 <tr><td class=
"paramname">proxy
</td><td>a pointer to the allocated property proxy
</td></tr>
315 <a class=
"anchor" id=
"a15c4fce513dc952c575cd72332835aa4"></a>
316 <div class=
"memitem">
317 <div class=
"memproto">
318 <table class=
"memname">
320 <td class=
"memname">zend_class_entry* php_property_proxy_get_class_entry
</td>
322 <td class=
"paramtype">void
 </td>
323 <td class=
"paramname"></td><td>)
</td>
327 </div><div class=
"memdoc">
329 <p>Get the zend_class_entry of php\PropertyProxy.
</p>
330 <dl class=
"section return"><dt>Returns
</dt><dd>the class entry pointer
</dd></dl>
334 <a class=
"anchor" id=
"a83d5ddbca9a25a062eded906182f205c"></a>
335 <div class=
"memitem">
336 <div class=
"memproto">
337 <table class=
"memname">
339 <td class=
"memname"><a class=
"el" href=
"php__propro__api_8h.html#ac27c374d9d0cf65b52b16ea407df9eac">php_property_proxy_t
</a>* php_property_proxy_init
</td>
341 <td class=
"paramtype">zval *
 </td>
342 <td class=
"paramname"><em>container
</em>,
</td>
345 <td class=
"paramkey"></td>
347 <td class=
"paramtype">const char *
 </td>
348 <td class=
"paramname"><em>member_str
</em>,
</td>
351 <td class=
"paramkey"></td>
353 <td class=
"paramtype">size_t
 </td>
354 <td class=
"paramname"><em>member_len
</em> </td>
362 </div><div class=
"memdoc">
364 <p>Create a property proxy.
</p>
365 <p>The property proxy will forward reads and writes to itself to the proxied property with name
<em>member_str
</em> of
<em>container
</em>.
</p>
366 <dl class=
"params"><dt>Parameters
</dt><dd>
367 <table class=
"params">
368 <tr><td class=
"paramname">container
</td><td>the container holding the property
</td></tr>
369 <tr><td class=
"paramname">member_str
</td><td>the name of the proxied property
</td></tr>
370 <tr><td class=
"paramname">member_len
</td><td>the length of the name
</td></tr>
374 <dl class=
"section return"><dt>Returns
</dt><dd>a new property proxy
</dd></dl>
378 <a class=
"anchor" id=
"a35874bda7876fa60b796a9fd90623c1f"></a>
379 <div class=
"memitem">
380 <div class=
"memproto">
381 <table class=
"memname">
383 <td class=
"memname">zend_object_value php_property_proxy_object_new
</td>
385 <td class=
"paramtype">zend_class_entry *
 </td>
386 <td class=
"paramname"><em>ce
</em></td><td>)
</td>
390 </div><div class=
"memdoc">
392 <p>Instantiate a new php\PropertyProxy.
</p>
393 <dl class=
"params"><dt>Parameters
</dt><dd>
394 <table class=
"params">
395 <tr><td class=
"paramname">ce
</td><td>the property proxy or derived class entry
</td></tr>
399 <dl class=
"section return"><dt>Returns
</dt><dd>the zval object value
</dd></dl>
401 <p><div class=
"dynheader">
402 Here is the call graph for this function:
</div>
403 <div class=
"dyncontent">
404 <div class=
"center"><img src=
"php__propro__api_8h_a35874bda7876fa60b796a9fd90623c1f_cgraph.png" border=
"0" usemap=
"#php__propro__api_8h_a35874bda7876fa60b796a9fd90623c1f_cgraph" alt=
""/></div>
405 <map name=
"php__propro__api_8h_a35874bda7876fa60b796a9fd90623c1f_cgraph" id=
"php__propro__api_8h_a35874bda7876fa60b796a9fd90623c1f_cgraph">
406 <area shape=
"rect" id=
"node2" href=
"php__propro__api_8c.html#a8972f05941efb141dd78c42bef70db2f" title=
"Instantiate a new php\PropertyProxy with proxy. " alt=
"" coords=
"189,5,325,47"/>
413 <a class=
"anchor" id=
"a8972f05941efb141dd78c42bef70db2f"></a>
414 <div class=
"memitem">
415 <div class=
"memproto">
416 <table class=
"memname">
418 <td class=
"memname">zend_object_value php_property_proxy_object_new_ex
</td>
420 <td class=
"paramtype">zend_class_entry *
 </td>
421 <td class=
"paramname"><em>ce
</em>,
</td>
424 <td class=
"paramkey"></td>
426 <td class=
"paramtype"><a class=
"el" href=
"php__propro__api_8h.html#ac27c374d9d0cf65b52b16ea407df9eac">php_property_proxy_t
</a> *
 </td>
427 <td class=
"paramname"><em>proxy
</em>,
</td>
430 <td class=
"paramkey"></td>
432 <td class=
"paramtype"><a class=
"el" href=
"php__propro__api_8h.html#aaf59f3ba6014a701909054115f812451">php_property_proxy_object_t
</a> **
 </td>
433 <td class=
"paramname"><em>ptr
</em> </td>
441 </div><div class=
"memdoc">
443 <p>Instantiate a new php\PropertyProxy with
<em>proxy
</em>.
</p>
444 <dl class=
"params"><dt>Parameters
</dt><dd>
445 <table class=
"params">
446 <tr><td class=
"paramname">ce
</td><td>the property proxy or derived class entry
</td></tr>
447 <tr><td class=
"paramname">proxy
</td><td>the internal property proxy
</td></tr>
448 <tr><td class=
"paramname">ptr
</td><td>a pointer to store the resulting property proxy object
</td></tr>
452 <dl class=
"section return"><dt>Returns
</dt><dd>the zval object value
</dd></dl>
454 <p>Referenced by
<a class=
"el" href=
"php__propro__api_8h.html#a35874bda7876fa60b796a9fd90623c1f">php_property_proxy_object_new()
</a>.
</p>
456 <p><div class=
"dynheader">
457 Here is the caller graph for this function:
</div>
458 <div class=
"dyncontent">
459 <div class=
"center"><img src=
"php__propro__api_8h_a8972f05941efb141dd78c42bef70db2f_icgraph.png" border=
"0" usemap=
"#php__propro__api_8h_a8972f05941efb141dd78c42bef70db2f_icgraph" alt=
""/></div>
460 <map name=
"php__propro__api_8h_a8972f05941efb141dd78c42bef70db2f_icgraph" id=
"php__propro__api_8h_a8972f05941efb141dd78c42bef70db2f_icgraph">
461 <area shape=
"rect" id=
"node2" href=
"php__propro__api_8h.html#a35874bda7876fa60b796a9fd90623c1f" title=
"Instantiate a new php\PropertyProxy. " alt=
"" coords=
"189,5,325,47"/>
468 </div><!-- contents -->
469 </div><!-- doc-content -->
470 <!-- start footer part -->
471 <div id=
"nav-path" class=
"navpath"><!-- id is needed for treeview function! -->
473 <li class=
"navelem"><a class=
"el" href=
"dir_68267d1309a1af8e8297ef4c3efbcdba.html">src
</a></li><li class=
"navelem"><a class=
"el" href=
"php__propro__api_8h.html">php_propro_api.h
</a></li>
474 <li class=
"footer">Generated by
475 <a href=
"http://www.doxygen.org/index.html">
476 <img class=
"footer" src=
"doxygen.png" alt=
"doxygen"/></a> 1.8.10 </li>