xref: /PHP-8.2/ext/oci8/oci8_arginfo.h (revision ef4f0883)
1 /* This is a generated file, edit the .stub.php file instead.
2  * Stub hash: 850d4e63296c95a27cdfc1244d63b1ed496acd54 */
3 
4 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_oci_define_by_name, 0, 3, _IS_BOOL, 0)
5 	ZEND_ARG_INFO(0, statement)
6 	ZEND_ARG_TYPE_INFO(0, column, IS_STRING, 0)
7 	ZEND_ARG_TYPE_INFO(1, var, IS_MIXED, 0)
8 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, type, IS_LONG, 0, "0")
9 ZEND_END_ARG_INFO()
10 
11 #define arginfo_ocidefinebyname arginfo_oci_define_by_name
12 
13 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_oci_bind_by_name, 0, 3, _IS_BOOL, 0)
14 	ZEND_ARG_INFO(0, statement)
15 	ZEND_ARG_TYPE_INFO(0, param, IS_STRING, 0)
16 	ZEND_ARG_TYPE_INFO(1, var, IS_MIXED, 0)
17 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, max_length, IS_LONG, 0, "-1")
18 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, type, IS_LONG, 0, "0")
19 ZEND_END_ARG_INFO()
20 
21 #define arginfo_ocibindbyname arginfo_oci_bind_by_name
22 
23 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_oci_bind_array_by_name, 0, 4, _IS_BOOL, 0)
24 	ZEND_ARG_INFO(0, statement)
25 	ZEND_ARG_TYPE_INFO(0, param, IS_STRING, 0)
26 	ZEND_ARG_INFO(1, var)
27 	ZEND_ARG_TYPE_INFO(0, max_array_length, IS_LONG, 0)
28 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, max_item_length, IS_LONG, 0, "-1")
29 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, type, IS_LONG, 0, "SQLT_AFC")
30 ZEND_END_ARG_INFO()
31 
32 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_oci_free_descriptor, 0, 1, _IS_BOOL, 0)
33 	ZEND_ARG_OBJ_INFO(0, lob, OCILob, 0)
34 ZEND_END_ARG_INFO()
35 
36 #define arginfo_ocifreedesc arginfo_oci_free_descriptor
37 
38 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_oci_lob_save, 0, 2, _IS_BOOL, 0)
39 	ZEND_ARG_OBJ_INFO(0, lob, OCILob, 0)
40 	ZEND_ARG_TYPE_INFO(0, data, IS_STRING, 0)
41 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, offset, IS_LONG, 0, "0")
42 ZEND_END_ARG_INFO()
43 
44 #define arginfo_ocisavelob arginfo_oci_lob_save
45 
46 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_oci_lob_import, 0, 2, _IS_BOOL, 0)
47 	ZEND_ARG_OBJ_INFO(0, lob, OCILob, 0)
48 	ZEND_ARG_TYPE_INFO(0, filename, IS_STRING, 0)
49 ZEND_END_ARG_INFO()
50 
51 #define arginfo_ocisavelobfile arginfo_oci_lob_import
52 
53 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_oci_lob_load, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
54 	ZEND_ARG_OBJ_INFO(0, lob, OCILob, 0)
55 ZEND_END_ARG_INFO()
56 
57 #define arginfo_ociloadlob arginfo_oci_lob_load
58 
59 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_oci_lob_read, 0, 2, MAY_BE_STRING|MAY_BE_FALSE)
60 	ZEND_ARG_OBJ_INFO(0, lob, OCILob, 0)
61 	ZEND_ARG_TYPE_INFO(0, length, IS_LONG, 0)
62 ZEND_END_ARG_INFO()
63 
64 #define arginfo_oci_lob_eof arginfo_oci_free_descriptor
65 
66 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_oci_lob_tell, 0, 1, MAY_BE_LONG|MAY_BE_FALSE)
67 	ZEND_ARG_OBJ_INFO(0, lob, OCILob, 0)
68 ZEND_END_ARG_INFO()
69 
70 #define arginfo_oci_lob_rewind arginfo_oci_free_descriptor
71 
72 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_oci_lob_seek, 0, 2, _IS_BOOL, 0)
73 	ZEND_ARG_OBJ_INFO(0, lob, OCILob, 0)
74 	ZEND_ARG_TYPE_INFO(0, offset, IS_LONG, 0)
75 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, whence, IS_LONG, 0, "OCI_SEEK_SET")
76 ZEND_END_ARG_INFO()
77 
78 #define arginfo_oci_lob_size arginfo_oci_lob_tell
79 
80 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_oci_lob_write, 0, 2, MAY_BE_LONG|MAY_BE_FALSE)
81 	ZEND_ARG_OBJ_INFO(0, lob, OCILob, 0)
82 	ZEND_ARG_TYPE_INFO(0, data, IS_STRING, 0)
83 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, length, IS_LONG, 1, "null")
84 ZEND_END_ARG_INFO()
85 
86 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_oci_lob_append, 0, 2, _IS_BOOL, 0)
87 	ZEND_ARG_OBJ_INFO(0, to, OCILob, 0)
88 	ZEND_ARG_OBJ_INFO(0, from, OCILob, 0)
89 ZEND_END_ARG_INFO()
90 
91 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_oci_lob_truncate, 0, 1, _IS_BOOL, 0)
92 	ZEND_ARG_OBJ_INFO(0, lob, OCILob, 0)
93 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, length, IS_LONG, 0, "0")
94 ZEND_END_ARG_INFO()
95 
96 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_oci_lob_erase, 0, 1, MAY_BE_LONG|MAY_BE_FALSE)
97 	ZEND_ARG_OBJ_INFO(0, lob, OCILob, 0)
98 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, offset, IS_LONG, 1, "null")
99 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, length, IS_LONG, 1, "null")
100 ZEND_END_ARG_INFO()
101 
102 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_oci_lob_flush, 0, 1, _IS_BOOL, 0)
103 	ZEND_ARG_OBJ_INFO(0, lob, OCILob, 0)
104 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, flag, IS_LONG, 0, "0")
105 ZEND_END_ARG_INFO()
106 
107 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_ocisetbufferinglob, 0, 2, _IS_BOOL, 0)
108 	ZEND_ARG_OBJ_INFO(0, lob, OCILob, 0)
109 	ZEND_ARG_TYPE_INFO(0, mode, _IS_BOOL, 0)
110 ZEND_END_ARG_INFO()
111 
112 #define arginfo_ocigetbufferinglob arginfo_oci_free_descriptor
113 
114 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_oci_lob_copy, 0, 2, _IS_BOOL, 0)
115 	ZEND_ARG_OBJ_INFO(0, to, OCILob, 0)
116 	ZEND_ARG_OBJ_INFO(0, from, OCILob, 0)
117 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, length, IS_LONG, 1, "null")
118 ZEND_END_ARG_INFO()
119 
120 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_oci_lob_is_equal, 0, 2, _IS_BOOL, 0)
121 	ZEND_ARG_OBJ_INFO(0, lob1, OCILob, 0)
122 	ZEND_ARG_OBJ_INFO(0, lob2, OCILob, 0)
123 ZEND_END_ARG_INFO()
124 
125 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_oci_lob_export, 0, 2, _IS_BOOL, 0)
126 	ZEND_ARG_OBJ_INFO(0, lob, OCILob, 0)
127 	ZEND_ARG_TYPE_INFO(0, filename, IS_STRING, 0)
128 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, offset, IS_LONG, 1, "null")
129 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, length, IS_LONG, 1, "null")
130 ZEND_END_ARG_INFO()
131 
132 #define arginfo_ociwritelobtofile arginfo_oci_lob_export
133 
134 ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_oci_new_descriptor, 0, 1, OCILob, 1)
135 	ZEND_ARG_INFO(0, connection)
136 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, type, IS_LONG, 0, "OCI_DTYPE_LOB")
137 ZEND_END_ARG_INFO()
138 
139 #define arginfo_ocinewdescriptor arginfo_oci_new_descriptor
140 
141 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_oci_rollback, 0, 1, _IS_BOOL, 0)
142 	ZEND_ARG_INFO(0, connection)
143 ZEND_END_ARG_INFO()
144 
145 #define arginfo_ocirollback arginfo_oci_rollback
146 
147 #define arginfo_oci_commit arginfo_oci_rollback
148 
149 #define arginfo_ocicommit arginfo_oci_rollback
150 
151 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_oci_field_name, 0, 2, MAY_BE_STRING|MAY_BE_FALSE)
152 	ZEND_ARG_INFO(0, statement)
153 	ZEND_ARG_TYPE_MASK(0, column, MAY_BE_STRING|MAY_BE_LONG, NULL)
154 ZEND_END_ARG_INFO()
155 
156 #define arginfo_ocicolumnname arginfo_oci_field_name
157 
158 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_oci_field_size, 0, 2, MAY_BE_LONG|MAY_BE_FALSE)
159 	ZEND_ARG_INFO(0, statement)
160 	ZEND_ARG_TYPE_MASK(0, column, MAY_BE_STRING|MAY_BE_LONG, NULL)
161 ZEND_END_ARG_INFO()
162 
163 #define arginfo_ocicolumnsize arginfo_oci_field_size
164 
165 #define arginfo_oci_field_scale arginfo_oci_field_size
166 
167 #define arginfo_ocicolumnscale arginfo_oci_field_size
168 
169 #define arginfo_oci_field_precision arginfo_oci_field_size
170 
171 #define arginfo_ocicolumnprecision arginfo_oci_field_size
172 
173 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_oci_field_type, 0, 2, MAY_BE_STRING|MAY_BE_LONG|MAY_BE_FALSE)
174 	ZEND_ARG_INFO(0, statement)
175 	ZEND_ARG_TYPE_MASK(0, column, MAY_BE_STRING|MAY_BE_LONG, NULL)
176 ZEND_END_ARG_INFO()
177 
178 #define arginfo_ocicolumntype arginfo_oci_field_type
179 
180 #define arginfo_oci_field_type_raw arginfo_oci_field_size
181 
182 #define arginfo_ocicolumntyperaw arginfo_oci_field_size
183 
184 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_oci_field_is_null, 0, 2, _IS_BOOL, 0)
185 	ZEND_ARG_INFO(0, statement)
186 	ZEND_ARG_TYPE_MASK(0, column, MAY_BE_STRING|MAY_BE_LONG, NULL)
187 ZEND_END_ARG_INFO()
188 
189 #define arginfo_ocicolumnisnull arginfo_oci_field_is_null
190 
191 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_oci_execute, 0, 1, _IS_BOOL, 0)
192 	ZEND_ARG_INFO(0, statement)
193 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, mode, IS_LONG, 0, "OCI_COMMIT_ON_SUCCESS")
194 ZEND_END_ARG_INFO()
195 
196 #define arginfo_ociexecute arginfo_oci_execute
197 
198 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_oci_cancel, 0, 1, _IS_BOOL, 0)
199 	ZEND_ARG_INFO(0, statement)
200 ZEND_END_ARG_INFO()
201 
202 #define arginfo_ocicancel arginfo_oci_cancel
203 
204 #define arginfo_oci_fetch arginfo_oci_cancel
205 
206 #define arginfo_ocifetch arginfo_oci_cancel
207 
208 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_ocifetchinto, 0, 2, MAY_BE_LONG|MAY_BE_FALSE)
209 	ZEND_ARG_INFO(0, statement)
210 	ZEND_ARG_INFO(1, result)
211 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, mode, IS_LONG, 0, "OCI_NUM")
212 ZEND_END_ARG_INFO()
213 
214 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_oci_fetch_all, 0, 2, IS_LONG, 0)
215 	ZEND_ARG_INFO(0, statement)
216 	ZEND_ARG_INFO(1, output)
217 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, offset, IS_LONG, 0, "0")
218 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, limit, IS_LONG, 0, "-1")
219 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, flags, IS_LONG, 0, "OCI_FETCHSTATEMENT_BY_COLUMN | OCI_ASSOC")
220 ZEND_END_ARG_INFO()
221 
222 #define arginfo_ocifetchstatement arginfo_oci_fetch_all
223 
224 ZEND_BEGIN_ARG_WITH_RETURN_OBJ_TYPE_MASK_EX(arginfo_oci_fetch_object, 0, 1, stdClass, MAY_BE_FALSE)
225 	ZEND_ARG_INFO(0, statement)
226 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, mode, IS_LONG, 0, "OCI_ASSOC | OCI_RETURN_NULLS")
227 ZEND_END_ARG_INFO()
228 
229 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_oci_fetch_row, 0, 1, MAY_BE_ARRAY|MAY_BE_FALSE)
230 	ZEND_ARG_INFO(0, statement)
231 ZEND_END_ARG_INFO()
232 
233 #define arginfo_oci_fetch_assoc arginfo_oci_fetch_row
234 
235 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_oci_fetch_array, 0, 1, MAY_BE_ARRAY|MAY_BE_FALSE)
236 	ZEND_ARG_INFO(0, statement)
237 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, mode, IS_LONG, 0, "OCI_BOTH | OCI_RETURN_NULLS")
238 ZEND_END_ARG_INFO()
239 
240 #define arginfo_oci_free_statement arginfo_oci_cancel
241 
242 #define arginfo_ocifreestatement arginfo_oci_cancel
243 
244 #define arginfo_oci_free_cursor arginfo_oci_cancel
245 
246 #define arginfo_ocifreecursor arginfo_oci_cancel
247 
248 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_oci_close, 0, 1, _IS_BOOL, 1)
249 	ZEND_ARG_INFO(0, connection)
250 ZEND_END_ARG_INFO()
251 
252 #define arginfo_ocilogoff arginfo_oci_close
253 
254 ZEND_BEGIN_ARG_INFO_EX(arginfo_oci_new_connect, 0, 0, 2)
255 	ZEND_ARG_TYPE_INFO(0, username, IS_STRING, 0)
256 	ZEND_ARG_TYPE_INFO(0, password, IS_STRING, 0)
257 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, connection_string, IS_STRING, 1, "null")
258 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, encoding, IS_STRING, 0, "\"\"")
259 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, session_mode, IS_LONG, 0, "OCI_DEFAULT")
260 ZEND_END_ARG_INFO()
261 
262 #define arginfo_ocinlogon arginfo_oci_new_connect
263 
264 #define arginfo_oci_connect arginfo_oci_new_connect
265 
266 #define arginfo_ocilogon arginfo_oci_new_connect
267 
268 #define arginfo_oci_pconnect arginfo_oci_new_connect
269 
270 #define arginfo_ociplogon arginfo_oci_new_connect
271 
272 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_oci_error, 0, 0, MAY_BE_ARRAY|MAY_BE_FALSE)
273 	ZEND_ARG_INFO_WITH_DEFAULT_VALUE(0, connection_or_statement, "null")
274 ZEND_END_ARG_INFO()
275 
276 #define arginfo_ocierror arginfo_oci_error
277 
278 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_oci_num_fields, 0, 1, IS_LONG, 0)
279 	ZEND_ARG_INFO(0, statement)
280 ZEND_END_ARG_INFO()
281 
282 #define arginfo_ocinumcols arginfo_oci_num_fields
283 
284 ZEND_BEGIN_ARG_INFO_EX(arginfo_oci_parse, 0, 0, 2)
285 	ZEND_ARG_INFO(0, connection)
286 	ZEND_ARG_TYPE_INFO(0, sql, IS_STRING, 0)
287 ZEND_END_ARG_INFO()
288 
289 #define arginfo_ociparse arginfo_oci_parse
290 
291 ZEND_BEGIN_ARG_INFO_EX(arginfo_oci_get_implicit_resultset, 0, 0, 1)
292 	ZEND_ARG_INFO(0, statement)
293 ZEND_END_ARG_INFO()
294 
295 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_oci_set_prefetch, 0, 2, _IS_BOOL, 0)
296 	ZEND_ARG_INFO(0, statement)
297 	ZEND_ARG_TYPE_INFO(0, rows, IS_LONG, 0)
298 ZEND_END_ARG_INFO()
299 
300 #define arginfo_ocisetprefetch arginfo_oci_set_prefetch
301 
302 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_oci_set_prefetch_lob, 0, 2, _IS_BOOL, 0)
303 	ZEND_ARG_INFO(0, statement)
304 	ZEND_ARG_TYPE_INFO(0, prefetch_lob_size, IS_LONG, 0)
305 ZEND_END_ARG_INFO()
306 
307 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_oci_set_client_identifier, 0, 2, _IS_BOOL, 0)
308 	ZEND_ARG_INFO(0, connection)
309 	ZEND_ARG_TYPE_INFO(0, client_id, IS_STRING, 0)
310 ZEND_END_ARG_INFO()
311 
312 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_oci_set_edition, 0, 1, _IS_BOOL, 0)
313 	ZEND_ARG_TYPE_INFO(0, edition, IS_STRING, 0)
314 ZEND_END_ARG_INFO()
315 
316 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_oci_set_module_name, 0, 2, _IS_BOOL, 0)
317 	ZEND_ARG_INFO(0, connection)
318 	ZEND_ARG_TYPE_INFO(0, name, IS_STRING, 0)
319 ZEND_END_ARG_INFO()
320 
321 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_oci_set_action, 0, 2, _IS_BOOL, 0)
322 	ZEND_ARG_INFO(0, connection)
323 	ZEND_ARG_TYPE_INFO(0, action, IS_STRING, 0)
324 ZEND_END_ARG_INFO()
325 
326 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_oci_set_client_info, 0, 2, _IS_BOOL, 0)
327 	ZEND_ARG_INFO(0, connection)
328 	ZEND_ARG_TYPE_INFO(0, client_info, IS_STRING, 0)
329 ZEND_END_ARG_INFO()
330 
331 #define arginfo_oci_set_db_operation arginfo_oci_set_action
332 
333 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_oci_set_call_timeout, 0, 2, _IS_BOOL, 0)
334 	ZEND_ARG_INFO(0, connection)
335 	ZEND_ARG_TYPE_INFO(0, timeout, IS_LONG, 0)
336 ZEND_END_ARG_INFO()
337 
338 ZEND_BEGIN_ARG_INFO_EX(arginfo_oci_password_change, 0, 0, 4)
339 	ZEND_ARG_INFO(0, connection)
340 	ZEND_ARG_TYPE_INFO(0, username, IS_STRING, 0)
341 	ZEND_ARG_TYPE_INFO(0, old_password, IS_STRING, 0)
342 	ZEND_ARG_TYPE_INFO(0, new_password, IS_STRING, 0)
343 ZEND_END_ARG_INFO()
344 
345 #define arginfo_ocipasswordchange arginfo_oci_password_change
346 
347 ZEND_BEGIN_ARG_INFO_EX(arginfo_oci_new_cursor, 0, 0, 1)
348 	ZEND_ARG_INFO(0, connection)
349 ZEND_END_ARG_INFO()
350 
351 #define arginfo_ocinewcursor arginfo_oci_new_cursor
352 
353 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_oci_result, 0, 2, IS_MIXED, 0)
354 	ZEND_ARG_INFO(0, statement)
355 	ZEND_ARG_TYPE_MASK(0, column, MAY_BE_STRING|MAY_BE_LONG, NULL)
356 ZEND_END_ARG_INFO()
357 
358 #define arginfo_ociresult arginfo_oci_result
359 
360 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_oci_client_version, 0, 0, IS_STRING, 0)
361 ZEND_END_ARG_INFO()
362 
363 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_oci_server_version, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
364 	ZEND_ARG_INFO(0, connection)
365 ZEND_END_ARG_INFO()
366 
367 #define arginfo_ociserverversion arginfo_oci_server_version
368 
369 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_oci_statement_type, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
370 	ZEND_ARG_INFO(0, statement)
371 ZEND_END_ARG_INFO()
372 
373 #define arginfo_ocistatementtype arginfo_oci_statement_type
374 
375 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_oci_num_rows, 0, 1, MAY_BE_LONG|MAY_BE_FALSE)
376 	ZEND_ARG_INFO(0, statement)
377 ZEND_END_ARG_INFO()
378 
379 #define arginfo_ocirowcount arginfo_oci_num_rows
380 
381 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_oci_free_collection, 0, 1, _IS_BOOL, 0)
382 	ZEND_ARG_OBJ_INFO(0, collection, OCICollection, 0)
383 ZEND_END_ARG_INFO()
384 
385 #define arginfo_ocifreecollection arginfo_oci_free_collection
386 
387 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_oci_collection_append, 0, 2, _IS_BOOL, 0)
388 	ZEND_ARG_OBJ_INFO(0, collection, OCICollection, 0)
389 	ZEND_ARG_TYPE_INFO(0, value, IS_STRING, 0)
390 ZEND_END_ARG_INFO()
391 
392 #define arginfo_ocicollappend arginfo_oci_collection_append
393 
394 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_oci_collection_element_get, 0, 2, MAY_BE_STRING|MAY_BE_DOUBLE|MAY_BE_NULL|MAY_BE_FALSE)
395 	ZEND_ARG_OBJ_INFO(0, collection, OCICollection, 0)
396 	ZEND_ARG_TYPE_INFO(0, index, IS_LONG, 0)
397 ZEND_END_ARG_INFO()
398 
399 #define arginfo_ocicollgetelem arginfo_oci_collection_element_get
400 
401 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_oci_collection_assign, 0, 2, _IS_BOOL, 0)
402 	ZEND_ARG_OBJ_INFO(0, to, OCICollection, 0)
403 	ZEND_ARG_OBJ_INFO(0, from, OCICollection, 0)
404 ZEND_END_ARG_INFO()
405 
406 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_oci_collection_element_assign, 0, 3, _IS_BOOL, 0)
407 	ZEND_ARG_OBJ_INFO(0, collection, OCICollection, 0)
408 	ZEND_ARG_TYPE_INFO(0, index, IS_LONG, 0)
409 	ZEND_ARG_TYPE_INFO(0, value, IS_STRING, 0)
410 ZEND_END_ARG_INFO()
411 
412 #define arginfo_ocicollassignelem arginfo_oci_collection_element_assign
413 
414 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_oci_collection_size, 0, 1, MAY_BE_LONG|MAY_BE_FALSE)
415 	ZEND_ARG_OBJ_INFO(0, collection, OCICollection, 0)
416 ZEND_END_ARG_INFO()
417 
418 #define arginfo_ocicollsize arginfo_oci_collection_size
419 
420 #define arginfo_oci_collection_max arginfo_oci_collection_size
421 
422 #define arginfo_ocicollmax arginfo_oci_collection_size
423 
424 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_oci_collection_trim, 0, 2, _IS_BOOL, 0)
425 	ZEND_ARG_OBJ_INFO(0, collection, OCICollection, 0)
426 	ZEND_ARG_TYPE_INFO(0, num, IS_LONG, 0)
427 ZEND_END_ARG_INFO()
428 
429 #define arginfo_ocicolltrim arginfo_oci_collection_trim
430 
431 ZEND_BEGIN_ARG_WITH_RETURN_OBJ_TYPE_MASK_EX(arginfo_oci_new_collection, 0, 2, OCICollection, MAY_BE_FALSE)
432 	ZEND_ARG_INFO(0, connection)
433 	ZEND_ARG_TYPE_INFO(0, type_name, IS_STRING, 0)
434 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, schema, IS_STRING, 1, "null")
435 ZEND_END_ARG_INFO()
436 
437 #define arginfo_ocinewcollection arginfo_oci_new_collection
438 
439 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_oci_register_taf_callback, 0, 2, _IS_BOOL, 0)
440 	ZEND_ARG_INFO(0, connection)
441 	ZEND_ARG_TYPE_INFO(0, callback, IS_CALLABLE, 1)
442 ZEND_END_ARG_INFO()
443 
444 #define arginfo_oci_unregister_taf_callback arginfo_oci_rollback
445 
446 ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_OCILob_save, 0, 1, _IS_BOOL, 0)
447 	ZEND_ARG_TYPE_INFO(0, data, IS_STRING, 0)
448 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, offset, IS_LONG, 0, "0")
449 ZEND_END_ARG_INFO()
450 
451 ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_OCILob_import, 0, 1, _IS_BOOL, 0)
452 	ZEND_ARG_TYPE_INFO(0, filename, IS_STRING, 0)
453 ZEND_END_ARG_INFO()
454 
455 #define arginfo_class_OCILob_saveFile arginfo_class_OCILob_import
456 
457 ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_MASK_EX(arginfo_class_OCILob_load, 0, 0, MAY_BE_STRING|MAY_BE_FALSE)
458 ZEND_END_ARG_INFO()
459 
460 ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_MASK_EX(arginfo_class_OCILob_read, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
461 	ZEND_ARG_TYPE_INFO(0, length, IS_LONG, 0)
462 ZEND_END_ARG_INFO()
463 
464 ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_OCILob_eof, 0, 0, _IS_BOOL, 0)
465 ZEND_END_ARG_INFO()
466 
467 ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_MASK_EX(arginfo_class_OCILob_tell, 0, 0, MAY_BE_LONG|MAY_BE_FALSE)
468 ZEND_END_ARG_INFO()
469 
470 #define arginfo_class_OCILob_rewind arginfo_class_OCILob_eof
471 
472 ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_OCILob_seek, 0, 1, _IS_BOOL, 0)
473 	ZEND_ARG_TYPE_INFO(0, offset, IS_LONG, 0)
474 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, whence, IS_LONG, 0, "OCI_SEEK_SET")
475 ZEND_END_ARG_INFO()
476 
477 #define arginfo_class_OCILob_size arginfo_class_OCILob_tell
478 
479 ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_MASK_EX(arginfo_class_OCILob_write, 0, 1, MAY_BE_LONG|MAY_BE_FALSE)
480 	ZEND_ARG_TYPE_INFO(0, data, IS_STRING, 0)
481 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, length, IS_LONG, 1, "null")
482 ZEND_END_ARG_INFO()
483 
484 ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_OCILob_append, 0, 1, _IS_BOOL, 0)
485 	ZEND_ARG_OBJ_INFO(0, from, OCILob, 0)
486 ZEND_END_ARG_INFO()
487 
488 ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_OCILob_truncate, 0, 0, _IS_BOOL, 0)
489 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, length, IS_LONG, 0, "0")
490 ZEND_END_ARG_INFO()
491 
492 ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_MASK_EX(arginfo_class_OCILob_erase, 0, 0, MAY_BE_LONG|MAY_BE_FALSE)
493 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, offset, IS_LONG, 1, "null")
494 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, length, IS_LONG, 1, "null")
495 ZEND_END_ARG_INFO()
496 
497 ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_OCILob_flush, 0, 0, _IS_BOOL, 0)
498 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, flag, IS_LONG, 0, "0")
499 ZEND_END_ARG_INFO()
500 
501 ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_OCILob_setBuffering, 0, 1, _IS_BOOL, 0)
502 	ZEND_ARG_TYPE_INFO(0, mode, _IS_BOOL, 0)
503 ZEND_END_ARG_INFO()
504 
505 #define arginfo_class_OCILob_getBuffering arginfo_class_OCILob_eof
506 
507 ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_OCILob_writeToFile, 0, 1, _IS_BOOL, 0)
508 	ZEND_ARG_TYPE_INFO(0, filename, IS_STRING, 0)
509 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, offset, IS_LONG, 1, "null")
510 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, length, IS_LONG, 1, "null")
511 ZEND_END_ARG_INFO()
512 
513 #define arginfo_class_OCILob_export arginfo_class_OCILob_writeToFile
514 
515 ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_OCILob_writeTemporary, 0, 1, _IS_BOOL, 0)
516 	ZEND_ARG_TYPE_INFO(0, data, IS_STRING, 0)
517 	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, type, IS_LONG, 0, "OCI_TEMP_CLOB")
518 ZEND_END_ARG_INFO()
519 
520 #define arginfo_class_OCILob_close arginfo_class_OCILob_eof
521 
522 #define arginfo_class_OCILob_free arginfo_class_OCILob_eof
523 
524 #define arginfo_class_OCICollection_free arginfo_class_OCILob_eof
525 
526 ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_OCICollection_append, 0, 1, _IS_BOOL, 0)
527 	ZEND_ARG_TYPE_INFO(0, value, IS_STRING, 0)
528 ZEND_END_ARG_INFO()
529 
530 ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_MASK_EX(arginfo_class_OCICollection_getElem, 0, 1, MAY_BE_STRING|MAY_BE_DOUBLE|MAY_BE_NULL|MAY_BE_FALSE)
531 	ZEND_ARG_TYPE_INFO(0, index, IS_LONG, 0)
532 ZEND_END_ARG_INFO()
533 
534 ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_OCICollection_assign, 0, 1, _IS_BOOL, 0)
535 	ZEND_ARG_OBJ_INFO(0, from, OCICollection, 0)
536 ZEND_END_ARG_INFO()
537 
538 ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_OCICollection_assignElem, 0, 2, _IS_BOOL, 0)
539 	ZEND_ARG_TYPE_INFO(0, index, IS_LONG, 0)
540 	ZEND_ARG_TYPE_INFO(0, value, IS_STRING, 0)
541 ZEND_END_ARG_INFO()
542 
543 #define arginfo_class_OCICollection_size arginfo_class_OCILob_tell
544 
545 #define arginfo_class_OCICollection_max arginfo_class_OCILob_tell
546 
547 ZEND_BEGIN_ARG_WITH_TENTATIVE_RETURN_TYPE_INFO_EX(arginfo_class_OCICollection_trim, 0, 1, _IS_BOOL, 0)
548 	ZEND_ARG_TYPE_INFO(0, num, IS_LONG, 0)
549 ZEND_END_ARG_INFO()
550 
551 
552 ZEND_FUNCTION(oci_define_by_name);
553 ZEND_FUNCTION(oci_bind_by_name);
554 ZEND_FUNCTION(oci_bind_array_by_name);
555 ZEND_FUNCTION(oci_free_descriptor);
556 ZEND_FUNCTION(oci_lob_save);
557 ZEND_FUNCTION(oci_lob_import);
558 ZEND_FUNCTION(oci_lob_load);
559 ZEND_FUNCTION(oci_lob_read);
560 ZEND_FUNCTION(oci_lob_eof);
561 ZEND_FUNCTION(oci_lob_tell);
562 ZEND_FUNCTION(oci_lob_rewind);
563 ZEND_FUNCTION(oci_lob_seek);
564 ZEND_FUNCTION(oci_lob_size);
565 ZEND_FUNCTION(oci_lob_write);
566 ZEND_FUNCTION(oci_lob_append);
567 ZEND_FUNCTION(oci_lob_truncate);
568 ZEND_FUNCTION(oci_lob_erase);
569 ZEND_FUNCTION(oci_lob_flush);
570 ZEND_FUNCTION(ocisetbufferinglob);
571 ZEND_FUNCTION(ocigetbufferinglob);
572 ZEND_FUNCTION(oci_lob_copy);
573 ZEND_FUNCTION(oci_lob_is_equal);
574 ZEND_FUNCTION(oci_lob_export);
575 ZEND_FUNCTION(oci_new_descriptor);
576 ZEND_FUNCTION(oci_rollback);
577 ZEND_FUNCTION(oci_commit);
578 ZEND_FUNCTION(oci_field_name);
579 ZEND_FUNCTION(oci_field_size);
580 ZEND_FUNCTION(oci_field_scale);
581 ZEND_FUNCTION(oci_field_precision);
582 ZEND_FUNCTION(oci_field_type);
583 ZEND_FUNCTION(oci_field_type_raw);
584 ZEND_FUNCTION(oci_field_is_null);
585 ZEND_FUNCTION(oci_execute);
586 ZEND_FUNCTION(oci_cancel);
587 ZEND_FUNCTION(oci_fetch);
588 ZEND_FUNCTION(ocifetchinto);
589 ZEND_FUNCTION(oci_fetch_all);
590 ZEND_FUNCTION(oci_fetch_object);
591 ZEND_FUNCTION(oci_fetch_row);
592 ZEND_FUNCTION(oci_fetch_assoc);
593 ZEND_FUNCTION(oci_fetch_array);
594 ZEND_FUNCTION(oci_free_statement);
595 ZEND_FUNCTION(oci_close);
596 ZEND_FUNCTION(oci_new_connect);
597 ZEND_FUNCTION(oci_connect);
598 ZEND_FUNCTION(oci_pconnect);
599 ZEND_FUNCTION(oci_error);
600 ZEND_FUNCTION(oci_num_fields);
601 ZEND_FUNCTION(oci_parse);
602 ZEND_FUNCTION(oci_get_implicit_resultset);
603 ZEND_FUNCTION(oci_set_prefetch);
604 ZEND_FUNCTION(oci_set_prefetch_lob);
605 ZEND_FUNCTION(oci_set_client_identifier);
606 ZEND_FUNCTION(oci_set_edition);
607 ZEND_FUNCTION(oci_set_module_name);
608 ZEND_FUNCTION(oci_set_action);
609 ZEND_FUNCTION(oci_set_client_info);
610 ZEND_FUNCTION(oci_set_db_operation);
611 ZEND_FUNCTION(oci_set_call_timeout);
612 ZEND_FUNCTION(oci_password_change);
613 ZEND_FUNCTION(oci_new_cursor);
614 ZEND_FUNCTION(oci_result);
615 ZEND_FUNCTION(oci_client_version);
616 ZEND_FUNCTION(oci_server_version);
617 ZEND_FUNCTION(oci_statement_type);
618 ZEND_FUNCTION(oci_num_rows);
619 ZEND_FUNCTION(oci_free_collection);
620 ZEND_FUNCTION(oci_collection_append);
621 ZEND_FUNCTION(oci_collection_element_get);
622 ZEND_FUNCTION(oci_collection_assign);
623 ZEND_FUNCTION(oci_collection_element_assign);
624 ZEND_FUNCTION(oci_collection_size);
625 ZEND_FUNCTION(oci_collection_max);
626 ZEND_FUNCTION(oci_collection_trim);
627 ZEND_FUNCTION(oci_new_collection);
628 ZEND_FUNCTION(oci_register_taf_callback);
629 ZEND_FUNCTION(oci_unregister_taf_callback);
630 ZEND_METHOD(OCILob, writeTemporary);
631 ZEND_METHOD(OCILob, close);
632 
633 
634 static const zend_function_entry ext_functions[] = {
635 	ZEND_FE(oci_define_by_name, arginfo_oci_define_by_name)
636 	ZEND_DEP_FALIAS(ocidefinebyname, oci_define_by_name, arginfo_ocidefinebyname)
637 	ZEND_FE(oci_bind_by_name, arginfo_oci_bind_by_name)
638 	ZEND_DEP_FALIAS(ocibindbyname, oci_bind_by_name, arginfo_ocibindbyname)
639 	ZEND_FE(oci_bind_array_by_name, arginfo_oci_bind_array_by_name)
640 	ZEND_FE(oci_free_descriptor, arginfo_oci_free_descriptor)
641 	ZEND_DEP_FALIAS(ocifreedesc, oci_free_descriptor, arginfo_ocifreedesc)
642 	ZEND_FE(oci_lob_save, arginfo_oci_lob_save)
643 	ZEND_DEP_FALIAS(ocisavelob, oci_lob_save, arginfo_ocisavelob)
644 	ZEND_FE(oci_lob_import, arginfo_oci_lob_import)
645 	ZEND_DEP_FALIAS(ocisavelobfile, oci_lob_import, arginfo_ocisavelobfile)
646 	ZEND_FE(oci_lob_load, arginfo_oci_lob_load)
647 	ZEND_DEP_FALIAS(ociloadlob, oci_lob_load, arginfo_ociloadlob)
648 	ZEND_FE(oci_lob_read, arginfo_oci_lob_read)
649 	ZEND_FE(oci_lob_eof, arginfo_oci_lob_eof)
650 	ZEND_FE(oci_lob_tell, arginfo_oci_lob_tell)
651 	ZEND_FE(oci_lob_rewind, arginfo_oci_lob_rewind)
652 	ZEND_FE(oci_lob_seek, arginfo_oci_lob_seek)
653 	ZEND_FE(oci_lob_size, arginfo_oci_lob_size)
654 	ZEND_FE(oci_lob_write, arginfo_oci_lob_write)
655 	ZEND_FE(oci_lob_append, arginfo_oci_lob_append)
656 	ZEND_FE(oci_lob_truncate, arginfo_oci_lob_truncate)
657 	ZEND_FE(oci_lob_erase, arginfo_oci_lob_erase)
658 	ZEND_FE(oci_lob_flush, arginfo_oci_lob_flush)
659 	ZEND_FE(ocisetbufferinglob, arginfo_ocisetbufferinglob)
660 	ZEND_FE(ocigetbufferinglob, arginfo_ocigetbufferinglob)
661 	ZEND_FE(oci_lob_copy, arginfo_oci_lob_copy)
662 	ZEND_FE(oci_lob_is_equal, arginfo_oci_lob_is_equal)
663 	ZEND_FE(oci_lob_export, arginfo_oci_lob_export)
664 	ZEND_DEP_FALIAS(ociwritelobtofile, oci_lob_export, arginfo_ociwritelobtofile)
665 	ZEND_FE(oci_new_descriptor, arginfo_oci_new_descriptor)
666 	ZEND_DEP_FALIAS(ocinewdescriptor, oci_new_descriptor, arginfo_ocinewdescriptor)
667 	ZEND_FE(oci_rollback, arginfo_oci_rollback)
668 	ZEND_DEP_FALIAS(ocirollback, oci_rollback, arginfo_ocirollback)
669 	ZEND_FE(oci_commit, arginfo_oci_commit)
670 	ZEND_DEP_FALIAS(ocicommit, oci_commit, arginfo_ocicommit)
671 	ZEND_FE(oci_field_name, arginfo_oci_field_name)
672 	ZEND_DEP_FALIAS(ocicolumnname, oci_field_name, arginfo_ocicolumnname)
673 	ZEND_FE(oci_field_size, arginfo_oci_field_size)
674 	ZEND_DEP_FALIAS(ocicolumnsize, oci_field_size, arginfo_ocicolumnsize)
675 	ZEND_FE(oci_field_scale, arginfo_oci_field_scale)
676 	ZEND_DEP_FALIAS(ocicolumnscale, oci_field_scale, arginfo_ocicolumnscale)
677 	ZEND_FE(oci_field_precision, arginfo_oci_field_precision)
678 	ZEND_DEP_FALIAS(ocicolumnprecision, oci_field_precision, arginfo_ocicolumnprecision)
679 	ZEND_FE(oci_field_type, arginfo_oci_field_type)
680 	ZEND_DEP_FALIAS(ocicolumntype, oci_field_type, arginfo_ocicolumntype)
681 	ZEND_FE(oci_field_type_raw, arginfo_oci_field_type_raw)
682 	ZEND_DEP_FALIAS(ocicolumntyperaw, oci_field_type_raw, arginfo_ocicolumntyperaw)
683 	ZEND_FE(oci_field_is_null, arginfo_oci_field_is_null)
684 	ZEND_DEP_FALIAS(ocicolumnisnull, oci_field_is_null, arginfo_ocicolumnisnull)
685 	ZEND_FE(oci_execute, arginfo_oci_execute)
686 	ZEND_DEP_FALIAS(ociexecute, oci_execute, arginfo_ociexecute)
687 	ZEND_FE(oci_cancel, arginfo_oci_cancel)
688 	ZEND_DEP_FALIAS(ocicancel, oci_cancel, arginfo_ocicancel)
689 	ZEND_FE(oci_fetch, arginfo_oci_fetch)
690 	ZEND_DEP_FALIAS(ocifetch, oci_fetch, arginfo_ocifetch)
691 	ZEND_DEP_FE(ocifetchinto, arginfo_ocifetchinto)
692 	ZEND_FE(oci_fetch_all, arginfo_oci_fetch_all)
693 	ZEND_DEP_FALIAS(ocifetchstatement, oci_fetch_all, arginfo_ocifetchstatement)
694 	ZEND_FE(oci_fetch_object, arginfo_oci_fetch_object)
695 	ZEND_FE(oci_fetch_row, arginfo_oci_fetch_row)
696 	ZEND_FE(oci_fetch_assoc, arginfo_oci_fetch_assoc)
697 	ZEND_FE(oci_fetch_array, arginfo_oci_fetch_array)
698 	ZEND_FE(oci_free_statement, arginfo_oci_free_statement)
699 	ZEND_DEP_FALIAS(ocifreestatement, oci_free_statement, arginfo_ocifreestatement)
700 	ZEND_FALIAS(oci_free_cursor, oci_free_statement, arginfo_oci_free_cursor)
701 	ZEND_DEP_FALIAS(ocifreecursor, oci_free_statement, arginfo_ocifreecursor)
702 	ZEND_FE(oci_close, arginfo_oci_close)
703 	ZEND_DEP_FALIAS(ocilogoff, oci_close, arginfo_ocilogoff)
704 	ZEND_FE(oci_new_connect, arginfo_oci_new_connect)
705 	ZEND_DEP_FALIAS(ocinlogon, oci_new_connect, arginfo_ocinlogon)
706 	ZEND_FE(oci_connect, arginfo_oci_connect)
707 	ZEND_DEP_FALIAS(ocilogon, oci_connect, arginfo_ocilogon)
708 	ZEND_FE(oci_pconnect, arginfo_oci_pconnect)
709 	ZEND_DEP_FALIAS(ociplogon, oci_pconnect, arginfo_ociplogon)
710 	ZEND_FE(oci_error, arginfo_oci_error)
711 	ZEND_DEP_FALIAS(ocierror, oci_error, arginfo_ocierror)
712 	ZEND_FE(oci_num_fields, arginfo_oci_num_fields)
713 	ZEND_DEP_FALIAS(ocinumcols, oci_num_fields, arginfo_ocinumcols)
714 	ZEND_FE(oci_parse, arginfo_oci_parse)
715 	ZEND_DEP_FALIAS(ociparse, oci_parse, arginfo_ociparse)
716 	ZEND_FE(oci_get_implicit_resultset, arginfo_oci_get_implicit_resultset)
717 	ZEND_FE(oci_set_prefetch, arginfo_oci_set_prefetch)
718 	ZEND_DEP_FALIAS(ocisetprefetch, oci_set_prefetch, arginfo_ocisetprefetch)
719 	ZEND_FE(oci_set_prefetch_lob, arginfo_oci_set_prefetch_lob)
720 	ZEND_FE(oci_set_client_identifier, arginfo_oci_set_client_identifier)
721 	ZEND_FE(oci_set_edition, arginfo_oci_set_edition)
722 	ZEND_FE(oci_set_module_name, arginfo_oci_set_module_name)
723 	ZEND_FE(oci_set_action, arginfo_oci_set_action)
724 	ZEND_FE(oci_set_client_info, arginfo_oci_set_client_info)
725 	ZEND_FE(oci_set_db_operation, arginfo_oci_set_db_operation)
726 	ZEND_FE(oci_set_call_timeout, arginfo_oci_set_call_timeout)
727 	ZEND_FE(oci_password_change, arginfo_oci_password_change)
728 	ZEND_DEP_FALIAS(ocipasswordchange, oci_password_change, arginfo_ocipasswordchange)
729 	ZEND_FE(oci_new_cursor, arginfo_oci_new_cursor)
730 	ZEND_DEP_FALIAS(ocinewcursor, oci_new_cursor, arginfo_ocinewcursor)
731 	ZEND_FE(oci_result, arginfo_oci_result)
732 	ZEND_DEP_FALIAS(ociresult, oci_result, arginfo_ociresult)
733 	ZEND_FE(oci_client_version, arginfo_oci_client_version)
734 	ZEND_FE(oci_server_version, arginfo_oci_server_version)
735 	ZEND_DEP_FALIAS(ociserverversion, oci_server_version, arginfo_ociserverversion)
736 	ZEND_FE(oci_statement_type, arginfo_oci_statement_type)
737 	ZEND_DEP_FALIAS(ocistatementtype, oci_statement_type, arginfo_ocistatementtype)
738 	ZEND_FE(oci_num_rows, arginfo_oci_num_rows)
739 	ZEND_DEP_FALIAS(ocirowcount, oci_num_rows, arginfo_ocirowcount)
740 	ZEND_FE(oci_free_collection, arginfo_oci_free_collection)
741 	ZEND_DEP_FALIAS(ocifreecollection, oci_free_collection, arginfo_ocifreecollection)
742 	ZEND_FE(oci_collection_append, arginfo_oci_collection_append)
743 	ZEND_DEP_FALIAS(ocicollappend, oci_collection_append, arginfo_ocicollappend)
744 	ZEND_FE(oci_collection_element_get, arginfo_oci_collection_element_get)
745 	ZEND_DEP_FALIAS(ocicollgetelem, oci_collection_element_get, arginfo_ocicollgetelem)
746 	ZEND_FE(oci_collection_assign, arginfo_oci_collection_assign)
747 	ZEND_FE(oci_collection_element_assign, arginfo_oci_collection_element_assign)
748 	ZEND_DEP_FALIAS(ocicollassignelem, oci_collection_element_assign, arginfo_ocicollassignelem)
749 	ZEND_FE(oci_collection_size, arginfo_oci_collection_size)
750 	ZEND_DEP_FALIAS(ocicollsize, oci_collection_size, arginfo_ocicollsize)
751 	ZEND_FE(oci_collection_max, arginfo_oci_collection_max)
752 	ZEND_DEP_FALIAS(ocicollmax, oci_collection_max, arginfo_ocicollmax)
753 	ZEND_FE(oci_collection_trim, arginfo_oci_collection_trim)
754 	ZEND_DEP_FALIAS(ocicolltrim, oci_collection_trim, arginfo_ocicolltrim)
755 	ZEND_FE(oci_new_collection, arginfo_oci_new_collection)
756 	ZEND_DEP_FALIAS(ocinewcollection, oci_new_collection, arginfo_ocinewcollection)
757 	ZEND_FE(oci_register_taf_callback, arginfo_oci_register_taf_callback)
758 	ZEND_FE(oci_unregister_taf_callback, arginfo_oci_unregister_taf_callback)
759 	ZEND_FE_END
760 };
761 
762 
763 static const zend_function_entry class_OCILob_methods[] = {
764 	ZEND_ME_MAPPING(save, oci_lob_save, arginfo_class_OCILob_save, ZEND_ACC_PUBLIC)
765 	ZEND_ME_MAPPING(import, oci_lob_import, arginfo_class_OCILob_import, ZEND_ACC_PUBLIC)
766 	ZEND_ME_MAPPING(saveFile, oci_lob_import, arginfo_class_OCILob_saveFile, ZEND_ACC_PUBLIC)
767 	ZEND_ME_MAPPING(load, oci_lob_load, arginfo_class_OCILob_load, ZEND_ACC_PUBLIC)
768 	ZEND_ME_MAPPING(read, oci_lob_read, arginfo_class_OCILob_read, ZEND_ACC_PUBLIC)
769 	ZEND_ME_MAPPING(eof, oci_lob_eof, arginfo_class_OCILob_eof, ZEND_ACC_PUBLIC)
770 	ZEND_ME_MAPPING(tell, oci_lob_tell, arginfo_class_OCILob_tell, ZEND_ACC_PUBLIC)
771 	ZEND_ME_MAPPING(rewind, oci_lob_rewind, arginfo_class_OCILob_rewind, ZEND_ACC_PUBLIC)
772 	ZEND_ME_MAPPING(seek, oci_lob_seek, arginfo_class_OCILob_seek, ZEND_ACC_PUBLIC)
773 	ZEND_ME_MAPPING(size, oci_lob_size, arginfo_class_OCILob_size, ZEND_ACC_PUBLIC)
774 	ZEND_ME_MAPPING(write, oci_lob_write, arginfo_class_OCILob_write, ZEND_ACC_PUBLIC)
775 	ZEND_ME_MAPPING(append, oci_lob_append, arginfo_class_OCILob_append, ZEND_ACC_PUBLIC)
776 	ZEND_ME_MAPPING(truncate, oci_lob_truncate, arginfo_class_OCILob_truncate, ZEND_ACC_PUBLIC)
777 	ZEND_ME_MAPPING(erase, oci_lob_erase, arginfo_class_OCILob_erase, ZEND_ACC_PUBLIC)
778 	ZEND_ME_MAPPING(flush, oci_lob_flush, arginfo_class_OCILob_flush, ZEND_ACC_PUBLIC)
779 	ZEND_ME_MAPPING(setBuffering, ocisetbufferinglob, arginfo_class_OCILob_setBuffering, ZEND_ACC_PUBLIC)
780 	ZEND_ME_MAPPING(getBuffering, ocigetbufferinglob, arginfo_class_OCILob_getBuffering, ZEND_ACC_PUBLIC)
781 	ZEND_ME_MAPPING(writeToFile, oci_lob_export, arginfo_class_OCILob_writeToFile, ZEND_ACC_PUBLIC)
782 	ZEND_ME_MAPPING(export, oci_lob_export, arginfo_class_OCILob_export, ZEND_ACC_PUBLIC)
783 	ZEND_ME(OCILob, writeTemporary, arginfo_class_OCILob_writeTemporary, ZEND_ACC_PUBLIC)
784 	ZEND_ME(OCILob, close, arginfo_class_OCILob_close, ZEND_ACC_PUBLIC)
785 	ZEND_ME_MAPPING(free, oci_free_descriptor, arginfo_class_OCILob_free, ZEND_ACC_PUBLIC)
786 	ZEND_FE_END
787 };
788 
789 
790 static const zend_function_entry class_OCICollection_methods[] = {
791 	ZEND_ME_MAPPING(free, oci_free_collection, arginfo_class_OCICollection_free, ZEND_ACC_PUBLIC)
792 	ZEND_ME_MAPPING(append, oci_collection_append, arginfo_class_OCICollection_append, ZEND_ACC_PUBLIC)
793 	ZEND_ME_MAPPING(getElem, oci_collection_element_get, arginfo_class_OCICollection_getElem, ZEND_ACC_PUBLIC)
794 	ZEND_ME_MAPPING(assign, oci_collection_assign, arginfo_class_OCICollection_assign, ZEND_ACC_PUBLIC)
795 	ZEND_ME_MAPPING(assignElem, oci_collection_element_assign, arginfo_class_OCICollection_assignElem, ZEND_ACC_PUBLIC)
796 	ZEND_ME_MAPPING(size, oci_collection_size, arginfo_class_OCICollection_size, ZEND_ACC_PUBLIC)
797 	ZEND_ME_MAPPING(max, oci_collection_max, arginfo_class_OCICollection_max, ZEND_ACC_PUBLIC)
798 	ZEND_ME_MAPPING(trim, oci_collection_trim, arginfo_class_OCICollection_trim, ZEND_ACC_PUBLIC)
799 	ZEND_FE_END
800 };
801 
register_oci8_symbols(int module_number)802 static void register_oci8_symbols(int module_number)
803 {
804 	REGISTER_LONG_CONSTANT("OCI_DEFAULT", OCI_DEFAULT, CONST_PERSISTENT);
805 	REGISTER_LONG_CONSTANT("OCI_SYSOPER", OCI_SYSOPER, CONST_PERSISTENT);
806 	REGISTER_LONG_CONSTANT("OCI_SYSDBA", OCI_SYSDBA, CONST_PERSISTENT);
807 	REGISTER_LONG_CONSTANT("OCI_CRED_EXT", PHP_OCI_CRED_EXT, CONST_PERSISTENT);
808 	REGISTER_LONG_CONSTANT("OCI_DESCRIBE_ONLY", OCI_DESCRIBE_ONLY, CONST_PERSISTENT);
809 	REGISTER_LONG_CONSTANT("OCI_COMMIT_ON_SUCCESS", OCI_COMMIT_ON_SUCCESS, CONST_PERSISTENT);
810 	REGISTER_LONG_CONSTANT("OCI_NO_AUTO_COMMIT", OCI_DEFAULT, CONST_PERSISTENT);
811 	REGISTER_LONG_CONSTANT("OCI_EXACT_FETCH", OCI_EXACT_FETCH, CONST_PERSISTENT);
812 	REGISTER_LONG_CONSTANT("OCI_SEEK_SET", PHP_OCI_SEEK_SET, CONST_PERSISTENT);
813 	REGISTER_LONG_CONSTANT("OCI_SEEK_CUR", PHP_OCI_SEEK_CUR, CONST_PERSISTENT);
814 	REGISTER_LONG_CONSTANT("OCI_SEEK_END", PHP_OCI_SEEK_END, CONST_PERSISTENT);
815 	REGISTER_LONG_CONSTANT("OCI_LOB_BUFFER_FREE", OCI_LOB_BUFFER_FREE, CONST_PERSISTENT);
816 	REGISTER_LONG_CONSTANT("SQLT_BFILEE", SQLT_BFILEE, CONST_PERSISTENT);
817 	REGISTER_LONG_CONSTANT("SQLT_CFILEE", SQLT_CFILEE, CONST_PERSISTENT);
818 	REGISTER_LONG_CONSTANT("SQLT_CLOB", SQLT_CLOB, CONST_PERSISTENT);
819 	REGISTER_LONG_CONSTANT("SQLT_BLOB", SQLT_BLOB, CONST_PERSISTENT);
820 	REGISTER_LONG_CONSTANT("SQLT_RDD", SQLT_RDD, CONST_PERSISTENT);
821 	REGISTER_LONG_CONSTANT("SQLT_INT", SQLT_INT, CONST_PERSISTENT);
822 	REGISTER_LONG_CONSTANT("SQLT_NUM", SQLT_NUM, CONST_PERSISTENT);
823 	REGISTER_LONG_CONSTANT("SQLT_RSET", SQLT_RSET, CONST_PERSISTENT);
824 	REGISTER_LONG_CONSTANT("SQLT_AFC", SQLT_AFC, CONST_PERSISTENT);
825 	REGISTER_LONG_CONSTANT("SQLT_CHR", SQLT_CHR, CONST_PERSISTENT);
826 	REGISTER_LONG_CONSTANT("SQLT_VCS", SQLT_VCS, CONST_PERSISTENT);
827 	REGISTER_LONG_CONSTANT("SQLT_AVC", SQLT_AVC, CONST_PERSISTENT);
828 	REGISTER_LONG_CONSTANT("SQLT_STR", SQLT_STR, CONST_PERSISTENT);
829 	REGISTER_LONG_CONSTANT("SQLT_LVC", SQLT_LVC, CONST_PERSISTENT);
830 	REGISTER_LONG_CONSTANT("SQLT_FLT", SQLT_FLT, CONST_PERSISTENT);
831 	REGISTER_LONG_CONSTANT("SQLT_UIN", SQLT_UIN, CONST_PERSISTENT);
832 	REGISTER_LONG_CONSTANT("SQLT_LNG", SQLT_LNG, CONST_PERSISTENT);
833 	REGISTER_LONG_CONSTANT("SQLT_LBI", SQLT_LBI, CONST_PERSISTENT);
834 	REGISTER_LONG_CONSTANT("SQLT_BIN", SQLT_BIN, CONST_PERSISTENT);
835 	REGISTER_LONG_CONSTANT("SQLT_ODT", SQLT_ODT, CONST_PERSISTENT);
836 	REGISTER_LONG_CONSTANT("SQLT_BDOUBLE", SQLT_BDOUBLE, CONST_PERSISTENT);
837 	REGISTER_LONG_CONSTANT("SQLT_BFLOAT", SQLT_BFLOAT, CONST_PERSISTENT);
838 #if OCI_MAJOR_VERSION >= 12
839 	REGISTER_LONG_CONSTANT("SQLT_BOL", SQLT_BOL, CONST_PERSISTENT);
840 #endif
841 	REGISTER_LONG_CONSTANT("OCI_B_NTY", SQLT_NTY, CONST_PERSISTENT);
842 	REGISTER_LONG_CONSTANT("SQLT_NTY", SQLT_NTY, CONST_PERSISTENT);
843 	REGISTER_STRING_CONSTANT("OCI_SYSDATE", "SYSDATE", CONST_PERSISTENT);
844 	REGISTER_LONG_CONSTANT("OCI_B_BFILE", SQLT_BFILEE, CONST_PERSISTENT);
845 	REGISTER_LONG_CONSTANT("OCI_B_CFILEE", SQLT_CFILEE, CONST_PERSISTENT);
846 	REGISTER_LONG_CONSTANT("OCI_B_CLOB", SQLT_CLOB, CONST_PERSISTENT);
847 	REGISTER_LONG_CONSTANT("OCI_B_BLOB", SQLT_BLOB, CONST_PERSISTENT);
848 	REGISTER_LONG_CONSTANT("OCI_B_ROWID", SQLT_RDD, CONST_PERSISTENT);
849 	REGISTER_LONG_CONSTANT("OCI_B_CURSOR", SQLT_RSET, CONST_PERSISTENT);
850 	REGISTER_LONG_CONSTANT("OCI_B_BIN", SQLT_BIN, CONST_PERSISTENT);
851 	REGISTER_LONG_CONSTANT("OCI_B_INT", SQLT_INT, CONST_PERSISTENT);
852 	REGISTER_LONG_CONSTANT("OCI_B_NUM", SQLT_NUM, CONST_PERSISTENT);
853 #if OCI_MAJOR_VERSION >= 12
854 	REGISTER_LONG_CONSTANT("OCI_B_BOL", SQLT_BOL, CONST_PERSISTENT);
855 #endif
856 	REGISTER_LONG_CONSTANT("OCI_FETCHSTATEMENT_BY_COLUMN", PHP_OCI_FETCHSTATEMENT_BY_COLUMN, CONST_PERSISTENT);
857 	REGISTER_LONG_CONSTANT("OCI_FETCHSTATEMENT_BY_ROW", PHP_OCI_FETCHSTATEMENT_BY_ROW, CONST_PERSISTENT);
858 	REGISTER_LONG_CONSTANT("OCI_ASSOC", PHP_OCI_ASSOC, CONST_PERSISTENT);
859 	REGISTER_LONG_CONSTANT("OCI_NUM", PHP_OCI_NUM, CONST_PERSISTENT);
860 	REGISTER_LONG_CONSTANT("OCI_BOTH", PHP_OCI_BOTH, CONST_PERSISTENT);
861 	REGISTER_LONG_CONSTANT("OCI_RETURN_NULLS", PHP_OCI_RETURN_NULLS, CONST_PERSISTENT);
862 	REGISTER_LONG_CONSTANT("OCI_RETURN_LOBS", PHP_OCI_RETURN_LOBS, CONST_PERSISTENT);
863 	REGISTER_LONG_CONSTANT("OCI_DTYPE_FILE", OCI_DTYPE_FILE, CONST_PERSISTENT);
864 	REGISTER_LONG_CONSTANT("OCI_DTYPE_LOB", OCI_DTYPE_LOB, CONST_PERSISTENT);
865 	REGISTER_LONG_CONSTANT("OCI_DTYPE_ROWID", OCI_DTYPE_ROWID, CONST_PERSISTENT);
866 	REGISTER_LONG_CONSTANT("OCI_D_FILE", OCI_DTYPE_FILE, CONST_PERSISTENT);
867 	REGISTER_LONG_CONSTANT("OCI_D_LOB", OCI_DTYPE_LOB, CONST_PERSISTENT);
868 	REGISTER_LONG_CONSTANT("OCI_D_ROWID", OCI_DTYPE_ROWID, CONST_PERSISTENT);
869 	REGISTER_LONG_CONSTANT("OCI_TEMP_CLOB", OCI_TEMP_CLOB, CONST_PERSISTENT);
870 	REGISTER_LONG_CONSTANT("OCI_TEMP_BLOB", OCI_TEMP_BLOB, CONST_PERSISTENT);
871 	REGISTER_LONG_CONSTANT("OCI_FO_END", OCI_FO_END, CONST_PERSISTENT);
872 	REGISTER_LONG_CONSTANT("OCI_FO_ABORT", OCI_FO_ABORT, CONST_PERSISTENT);
873 	REGISTER_LONG_CONSTANT("OCI_FO_REAUTH", OCI_FO_REAUTH, CONST_PERSISTENT);
874 	REGISTER_LONG_CONSTANT("OCI_FO_BEGIN", OCI_FO_BEGIN, CONST_PERSISTENT);
875 	REGISTER_LONG_CONSTANT("OCI_FO_ERROR", OCI_FO_ERROR, CONST_PERSISTENT);
876 	REGISTER_LONG_CONSTANT("OCI_FO_NONE", OCI_FO_NONE, CONST_PERSISTENT);
877 	REGISTER_LONG_CONSTANT("OCI_FO_SESSION", OCI_FO_SESSION, CONST_PERSISTENT);
878 	REGISTER_LONG_CONSTANT("OCI_FO_SELECT", OCI_FO_SELECT, CONST_PERSISTENT);
879 	REGISTER_LONG_CONSTANT("OCI_FO_TXNAL", OCI_FO_TXNAL, CONST_PERSISTENT);
880 	REGISTER_LONG_CONSTANT("OCI_FO_RETRY", OCI_FO_RETRY, CONST_PERSISTENT);
881 
882 
883 	zend_add_parameter_attribute(zend_hash_str_find_ptr(CG(function_table), "oci_new_connect", sizeof("oci_new_connect") - 1), 1, ZSTR_KNOWN(ZEND_STR_SENSITIVEPARAMETER), 0);
884 
885 	zend_add_parameter_attribute(zend_hash_str_find_ptr(CG(function_table), "ocinlogon", sizeof("ocinlogon") - 1), 1, ZSTR_KNOWN(ZEND_STR_SENSITIVEPARAMETER), 0);
886 
887 	zend_add_parameter_attribute(zend_hash_str_find_ptr(CG(function_table), "oci_connect", sizeof("oci_connect") - 1), 1, ZSTR_KNOWN(ZEND_STR_SENSITIVEPARAMETER), 0);
888 
889 	zend_add_parameter_attribute(zend_hash_str_find_ptr(CG(function_table), "ocilogon", sizeof("ocilogon") - 1), 1, ZSTR_KNOWN(ZEND_STR_SENSITIVEPARAMETER), 0);
890 
891 	zend_add_parameter_attribute(zend_hash_str_find_ptr(CG(function_table), "oci_pconnect", sizeof("oci_pconnect") - 1), 1, ZSTR_KNOWN(ZEND_STR_SENSITIVEPARAMETER), 0);
892 
893 	zend_add_parameter_attribute(zend_hash_str_find_ptr(CG(function_table), "ociplogon", sizeof("ociplogon") - 1), 1, ZSTR_KNOWN(ZEND_STR_SENSITIVEPARAMETER), 0);
894 }
895 
register_class_OCILob(void)896 static zend_class_entry *register_class_OCILob(void)
897 {
898 	zend_class_entry ce, *class_entry;
899 
900 	INIT_CLASS_ENTRY(ce, "OCILob", class_OCILob_methods);
901 	class_entry = zend_register_internal_class_ex(&ce, NULL);
902 	class_entry->ce_flags |= ZEND_ACC_ALLOW_DYNAMIC_PROPERTIES;
903 
904 	zend_string *attribute_name_AllowDynamicProperties_class_OCILob = zend_string_init_interned("AllowDynamicProperties", sizeof("AllowDynamicProperties") - 1, 1);
905 	zend_add_class_attribute(class_entry, attribute_name_AllowDynamicProperties_class_OCILob, 0);
906 	zend_string_release(attribute_name_AllowDynamicProperties_class_OCILob);
907 
908 	return class_entry;
909 }
910 
register_class_OCICollection(void)911 static zend_class_entry *register_class_OCICollection(void)
912 {
913 	zend_class_entry ce, *class_entry;
914 
915 	INIT_CLASS_ENTRY(ce, "OCICollection", class_OCICollection_methods);
916 	class_entry = zend_register_internal_class_ex(&ce, NULL);
917 	class_entry->ce_flags |= ZEND_ACC_ALLOW_DYNAMIC_PROPERTIES;
918 
919 	zend_string *attribute_name_AllowDynamicProperties_class_OCICollection = zend_string_init_interned("AllowDynamicProperties", sizeof("AllowDynamicProperties") - 1, 1);
920 	zend_add_class_attribute(class_entry, attribute_name_AllowDynamicProperties_class_OCICollection, 0);
921 	zend_string_release(attribute_name_AllowDynamicProperties_class_OCICollection);
922 
923 	return class_entry;
924 }
925