Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Newer
Older
100644 98 lines (76 sloc) 4.322 kb
573b460 andigutmans Zend Library
andigutmans authored
1 /*
2 +----------------------------------------------------------------------+
3 | Zend Engine |
4 +----------------------------------------------------------------------+
5 | Copyright (c) 1998, 1999 Andi Gutmans, Zeev Suraski |
6 +----------------------------------------------------------------------+
7 | This source file is subject to the Zend license, that is bundled |
8 | with this package in the file LICENSE. If you did not receive a |
9 | copy of the Zend license, please mail us at zend@zend.com so we can |
10 | send you a copy immediately. |
11 +----------------------------------------------------------------------+
12 | Authors: Andi Gutmans <andi@zend.com> |
13 | Zeev Suraski <zeev@zend.com> |
14 +----------------------------------------------------------------------+
15 */
16
17 #ifndef _ZEND_API_H
18 #define _ZEND_API_H
19
20 #include "modules.h"
21 #include "zend_list.h"
22
23
24 int zend_next_free_module(void);
25
39a7f4c Zeev Suraski This patch is a go. Not fully optimized yet, but working properly.
zsuraski authored
26 int getParameters(int ht, int param_count,...);
27 int getParametersArray(int ht, int param_count, zval **argument_array);
39f9487 andigutmans -Tiny patches
andigutmans authored
28 int getParametersEx(int param_count,...);
29 int getParametersArrayEx(int param_count, zval ***argument_array);
30
573b460 andigutmans Zend Library
andigutmans authored
31 int getThis(zval **this);
39f9487 andigutmans -Tiny patches
andigutmans authored
32
33
39a7f4c Zeev Suraski This patch is a go. Not fully optimized yet, but working properly.
zsuraski authored
34 int ParameterPassedByReference(int ht, uint n);
573b460 andigutmans Zend Library
andigutmans authored
35 int register_functions(function_entry *functions);
36 void unregister_functions(function_entry *functions, int count);
37 int register_module(zend_module_entry *module_entry);
38 zend_class_entry *register_internal_class(zend_class_entry *class_entry);
39
40 ZEND_API void wrong_param_count(void);
41
42 #define WRONG_PARAM_COUNT { wrong_param_count(); return; }
43 #define WRONG_PARAM_COUNT_WITH_RETVAL(ret) { wrong_param_count(); return ret; }
39a7f4c Zeev Suraski This patch is a go. Not fully optimized yet, but working properly.
zsuraski authored
44 #define ARG_COUNT(ht) (ht)
573b460 andigutmans Zend Library
andigutmans authored
45
46 #define BYREF_NONE 0
47 #define BYREF_FORCE 1
48 #define BYREF_ALLOW 2
49
50 #if !MSVC5
51 #define DLEXPORT
52 #endif
53
54 int zend_startup_module(zend_module_entry *module);
55
56 ZEND_API int array_init(zval *arg);
57 ZEND_API int object_init(zval *arg);
58 ZEND_API int object_init_ex(zval *arg, zend_class_entry *ce);
59 ZEND_API int add_assoc_long(zval *arg, char *key, long n);
60 ZEND_API int add_assoc_double(zval *arg, char *key, double d);
61 ZEND_API int add_assoc_string(zval *arg, char *key, char *str, int duplicate);
62 ZEND_API int add_assoc_stringl(zval *arg, char *key, char *str, uint length, int duplicate);
63 ZEND_API int add_assoc_function(zval *arg, char *key,void (*function_ptr)(INTERNAL_FUNCTION_PARAMETERS));
64 ZEND_API int add_index_long(zval *arg, uint idx, long n);
65 ZEND_API int add_index_double(zval *arg, uint idx, double d);
66 ZEND_API int add_index_string(zval *arg, uint idx, char *str, int duplicate);
67 ZEND_API int add_index_stringl(zval *arg, uint idx, char *str, uint length, int duplicate);
68 ZEND_API int add_next_index_long(zval *arg, long n);
69 ZEND_API int add_next_index_double(zval *arg, double d);
70 ZEND_API int add_next_index_string(zval *arg, char *str, int duplicate);
71 ZEND_API int add_next_index_stringl(zval *arg, char *str, uint length, int duplicate);
72
73 ZEND_API int add_get_assoc_string(zval *arg, char *key, char *str, void **dest, int duplicate);
74 ZEND_API int add_get_assoc_stringl(zval *arg, char *key, char *str, uint length, void **dest, int duplicate);
75 ZEND_API int add_get_index_long(zval *arg, uint idx, long l, void **dest);
76 ZEND_API int add_get_index_double(zval *arg, uint idx, double d, void **dest);
77 ZEND_API int add_get_index_string(zval *arg, uint idx, char *str, void **dest, int duplicate);
78 ZEND_API int add_get_index_stringl(zval *arg, uint idx, char *str, uint length, void **dest, int duplicate);
79
80 ZEND_API int call_user_function(HashTable *function_table, zval *object, zval *function_name, zval *retval, int param_count, zval *params[]);
81
82
83 ZEND_API int add_property_long(zval *arg, char *key, long l);
84 ZEND_API int add_property_double(zval *arg, char *key, double d);
85 ZEND_API int add_property_string(zval *arg, char *key, char *str, int duplicate);
86 ZEND_API int add_property_stringl(zval *arg, char *key, char *str, uint length, int duplicate);
87
88 #define add_method(arg,key,method) add_assoc_function((arg),(key),(method))
89
90 #endif /* _ZEND_API_H */
91
92 /*
93 * Local variables:
94 * tab-width: 4
95 * c-basic-offset: 4
96 * End:
97 */
Something went wrong with that request. Please try again.