com_extension_arginfo.h 9.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291
  1. /* This is a generated file, edit the .stub.php file instead.
  2. * Stub hash: 5aae202b026bd12924ca628718f087f581ab4c3a */
  3. ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_variant_set, 0, 2, IS_VOID, 0)
  4. ZEND_ARG_OBJ_INFO(0, variant, variant, 0)
  5. ZEND_ARG_TYPE_INFO(0, value, IS_MIXED, 0)
  6. ZEND_END_ARG_INFO()
  7. ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_variant_add, 0, 2, variant, 0)
  8. ZEND_ARG_TYPE_INFO(0, left, IS_MIXED, 0)
  9. ZEND_ARG_TYPE_INFO(0, right, IS_MIXED, 0)
  10. ZEND_END_ARG_INFO()
  11. #define arginfo_variant_cat arginfo_variant_add
  12. #define arginfo_variant_sub arginfo_variant_add
  13. #define arginfo_variant_mul arginfo_variant_add
  14. #define arginfo_variant_and arginfo_variant_add
  15. #define arginfo_variant_div arginfo_variant_add
  16. #define arginfo_variant_eqv arginfo_variant_add
  17. #define arginfo_variant_idiv arginfo_variant_add
  18. #define arginfo_variant_imp arginfo_variant_add
  19. #define arginfo_variant_mod arginfo_variant_add
  20. #define arginfo_variant_or arginfo_variant_add
  21. #define arginfo_variant_pow arginfo_variant_add
  22. #define arginfo_variant_xor arginfo_variant_add
  23. ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_variant_abs, 0, 1, variant, 0)
  24. ZEND_ARG_TYPE_INFO(0, value, IS_MIXED, 0)
  25. ZEND_END_ARG_INFO()
  26. #define arginfo_variant_fix arginfo_variant_abs
  27. #define arginfo_variant_int arginfo_variant_abs
  28. #define arginfo_variant_neg arginfo_variant_abs
  29. #define arginfo_variant_not arginfo_variant_abs
  30. ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_variant_round, 0, 2, variant, 1)
  31. ZEND_ARG_TYPE_INFO(0, value, IS_MIXED, 0)
  32. ZEND_ARG_TYPE_INFO(0, decimals, IS_LONG, 0)
  33. ZEND_END_ARG_INFO()
  34. ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_variant_cmp, 0, 2, IS_LONG, 0)
  35. ZEND_ARG_TYPE_INFO(0, left, IS_MIXED, 0)
  36. ZEND_ARG_TYPE_INFO(0, right, IS_MIXED, 0)
  37. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, locale_id, IS_LONG, 0, "LOCALE_SYSTEM_DEFAULT")
  38. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, flags, IS_LONG, 0, "0")
  39. ZEND_END_ARG_INFO()
  40. ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_variant_date_to_timestamp, 0, 1, IS_LONG, 1)
  41. ZEND_ARG_OBJ_INFO(0, variant, variant, 0)
  42. ZEND_END_ARG_INFO()
  43. ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_variant_date_from_timestamp, 0, 1, variant, 0)
  44. ZEND_ARG_TYPE_INFO(0, timestamp, IS_LONG, 0)
  45. ZEND_END_ARG_INFO()
  46. ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_variant_get_type, 0, 1, IS_LONG, 0)
  47. ZEND_ARG_OBJ_INFO(0, variant, variant, 0)
  48. ZEND_END_ARG_INFO()
  49. ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_variant_set_type, 0, 2, IS_VOID, 0)
  50. ZEND_ARG_OBJ_INFO(0, variant, variant, 0)
  51. ZEND_ARG_TYPE_INFO(0, type, IS_LONG, 0)
  52. ZEND_END_ARG_INFO()
  53. ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_variant_cast, 0, 2, variant, 0)
  54. ZEND_ARG_OBJ_INFO(0, variant, variant, 0)
  55. ZEND_ARG_TYPE_INFO(0, type, IS_LONG, 0)
  56. ZEND_END_ARG_INFO()
  57. ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_com_get_active_object, 0, 1, variant, 0)
  58. ZEND_ARG_TYPE_INFO(0, prog_id, IS_STRING, 0)
  59. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, codepage, IS_LONG, 1, "null")
  60. ZEND_END_ARG_INFO()
  61. ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_com_create_guid, 0, 0, MAY_BE_STRING|MAY_BE_FALSE)
  62. ZEND_END_ARG_INFO()
  63. ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_com_event_sink, 0, 2, _IS_BOOL, 0)
  64. ZEND_ARG_OBJ_INFO(0, variant, variant, 0)
  65. ZEND_ARG_TYPE_INFO(0, sink_object, IS_OBJECT, 0)
  66. ZEND_ARG_TYPE_MASK(0, sink_interface, MAY_BE_ARRAY|MAY_BE_STRING|MAY_BE_NULL, "null")
  67. ZEND_END_ARG_INFO()
  68. ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_com_print_typeinfo, 0, 1, _IS_BOOL, 0)
  69. ZEND_ARG_OBJ_TYPE_MASK(0, variant, variant, MAY_BE_STRING, NULL)
  70. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, dispatch_interface, IS_STRING, 1, "null")
  71. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, display_sink, _IS_BOOL, 0, "false")
  72. ZEND_END_ARG_INFO()
  73. ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_com_message_pump, 0, 0, _IS_BOOL, 0)
  74. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, timeout_milliseconds, IS_LONG, 0, "0")
  75. ZEND_END_ARG_INFO()
  76. ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_com_load_typelib, 0, 1, _IS_BOOL, 0)
  77. ZEND_ARG_TYPE_INFO(0, typelib, IS_STRING, 0)
  78. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, case_insensitive, _IS_BOOL, 0, "true")
  79. ZEND_END_ARG_INFO()
  80. ZEND_BEGIN_ARG_INFO_EX(arginfo_class_variant___construct, 0, 0, 0)
  81. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, value, IS_MIXED, 0, "null")
  82. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, type, IS_LONG, 0, "VT_EMPTY")
  83. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, codepage, IS_LONG, 0, "CP_ACP")
  84. ZEND_END_ARG_INFO()
  85. ZEND_BEGIN_ARG_INFO_EX(arginfo_class_com___construct, 0, 0, 1)
  86. ZEND_ARG_TYPE_INFO(0, module_name, IS_STRING, 0)
  87. ZEND_ARG_TYPE_MASK(0, server_name, MAY_BE_ARRAY|MAY_BE_STRING|MAY_BE_NULL, "null")
  88. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, codepage, IS_LONG, 0, "CP_ACP")
  89. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, typelib, IS_STRING, 0, "\"\"")
  90. ZEND_END_ARG_INFO()
  91. #if HAVE_MSCOREE_H
  92. ZEND_BEGIN_ARG_INFO_EX(arginfo_class_dotnet___construct, 0, 0, 2)
  93. ZEND_ARG_TYPE_INFO(0, assembly_name, IS_STRING, 0)
  94. ZEND_ARG_TYPE_INFO(0, datatype_name, IS_STRING, 0)
  95. ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, codepage, IS_LONG, 0, "CP_ACP")
  96. ZEND_END_ARG_INFO()
  97. #endif
  98. ZEND_FUNCTION(variant_set);
  99. ZEND_FUNCTION(variant_add);
  100. ZEND_FUNCTION(variant_cat);
  101. ZEND_FUNCTION(variant_sub);
  102. ZEND_FUNCTION(variant_mul);
  103. ZEND_FUNCTION(variant_and);
  104. ZEND_FUNCTION(variant_div);
  105. ZEND_FUNCTION(variant_eqv);
  106. ZEND_FUNCTION(variant_idiv);
  107. ZEND_FUNCTION(variant_imp);
  108. ZEND_FUNCTION(variant_mod);
  109. ZEND_FUNCTION(variant_or);
  110. ZEND_FUNCTION(variant_pow);
  111. ZEND_FUNCTION(variant_xor);
  112. ZEND_FUNCTION(variant_abs);
  113. ZEND_FUNCTION(variant_fix);
  114. ZEND_FUNCTION(variant_int);
  115. ZEND_FUNCTION(variant_neg);
  116. ZEND_FUNCTION(variant_not);
  117. ZEND_FUNCTION(variant_round);
  118. ZEND_FUNCTION(variant_cmp);
  119. ZEND_FUNCTION(variant_date_to_timestamp);
  120. ZEND_FUNCTION(variant_date_from_timestamp);
  121. ZEND_FUNCTION(variant_get_type);
  122. ZEND_FUNCTION(variant_set_type);
  123. ZEND_FUNCTION(variant_cast);
  124. ZEND_FUNCTION(com_get_active_object);
  125. ZEND_FUNCTION(com_create_guid);
  126. ZEND_FUNCTION(com_event_sink);
  127. ZEND_FUNCTION(com_print_typeinfo);
  128. ZEND_FUNCTION(com_message_pump);
  129. ZEND_FUNCTION(com_load_typelib);
  130. ZEND_METHOD(variant, __construct);
  131. ZEND_METHOD(com, __construct);
  132. #if HAVE_MSCOREE_H
  133. ZEND_METHOD(dotnet, __construct);
  134. #endif
  135. static const zend_function_entry ext_functions[] = {
  136. ZEND_FE(variant_set, arginfo_variant_set)
  137. ZEND_FE(variant_add, arginfo_variant_add)
  138. ZEND_FE(variant_cat, arginfo_variant_cat)
  139. ZEND_FE(variant_sub, arginfo_variant_sub)
  140. ZEND_FE(variant_mul, arginfo_variant_mul)
  141. ZEND_FE(variant_and, arginfo_variant_and)
  142. ZEND_FE(variant_div, arginfo_variant_div)
  143. ZEND_FE(variant_eqv, arginfo_variant_eqv)
  144. ZEND_FE(variant_idiv, arginfo_variant_idiv)
  145. ZEND_FE(variant_imp, arginfo_variant_imp)
  146. ZEND_FE(variant_mod, arginfo_variant_mod)
  147. ZEND_FE(variant_or, arginfo_variant_or)
  148. ZEND_FE(variant_pow, arginfo_variant_pow)
  149. ZEND_FE(variant_xor, arginfo_variant_xor)
  150. ZEND_FE(variant_abs, arginfo_variant_abs)
  151. ZEND_FE(variant_fix, arginfo_variant_fix)
  152. ZEND_FE(variant_int, arginfo_variant_int)
  153. ZEND_FE(variant_neg, arginfo_variant_neg)
  154. ZEND_FE(variant_not, arginfo_variant_not)
  155. ZEND_FE(variant_round, arginfo_variant_round)
  156. ZEND_FE(variant_cmp, arginfo_variant_cmp)
  157. ZEND_FE(variant_date_to_timestamp, arginfo_variant_date_to_timestamp)
  158. ZEND_FE(variant_date_from_timestamp, arginfo_variant_date_from_timestamp)
  159. ZEND_FE(variant_get_type, arginfo_variant_get_type)
  160. ZEND_FE(variant_set_type, arginfo_variant_set_type)
  161. ZEND_FE(variant_cast, arginfo_variant_cast)
  162. ZEND_FE(com_get_active_object, arginfo_com_get_active_object)
  163. ZEND_FE(com_create_guid, arginfo_com_create_guid)
  164. ZEND_FE(com_event_sink, arginfo_com_event_sink)
  165. ZEND_FE(com_print_typeinfo, arginfo_com_print_typeinfo)
  166. ZEND_FE(com_message_pump, arginfo_com_message_pump)
  167. ZEND_FE(com_load_typelib, arginfo_com_load_typelib)
  168. ZEND_FE_END
  169. };
  170. static const zend_function_entry class_variant_methods[] = {
  171. ZEND_ME(variant, __construct, arginfo_class_variant___construct, ZEND_ACC_PUBLIC)
  172. ZEND_FE_END
  173. };
  174. static const zend_function_entry class_com_methods[] = {
  175. ZEND_ME(com, __construct, arginfo_class_com___construct, ZEND_ACC_PUBLIC)
  176. ZEND_FE_END
  177. };
  178. static const zend_function_entry class_dotnet_methods[] = {
  179. #if HAVE_MSCOREE_H
  180. ZEND_ME(dotnet, __construct, arginfo_class_dotnet___construct, ZEND_ACC_PUBLIC)
  181. #endif
  182. ZEND_FE_END
  183. };
  184. static const zend_function_entry class_com_safearray_proxy_methods[] = {
  185. ZEND_FE_END
  186. };
  187. static const zend_function_entry class_com_exception_methods[] = {
  188. ZEND_FE_END
  189. };
  190. static zend_class_entry *register_class_variant(void)
  191. {
  192. zend_class_entry ce, *class_entry;
  193. INIT_CLASS_ENTRY(ce, "variant", class_variant_methods);
  194. class_entry = zend_register_internal_class_ex(&ce, NULL);
  195. class_entry->ce_flags |= ZEND_ACC_NOT_SERIALIZABLE;
  196. return class_entry;
  197. }
  198. static zend_class_entry *register_class_com(zend_class_entry *class_entry_variant)
  199. {
  200. zend_class_entry ce, *class_entry;
  201. INIT_CLASS_ENTRY(ce, "com", class_com_methods);
  202. class_entry = zend_register_internal_class_ex(&ce, class_entry_variant);
  203. return class_entry;
  204. }
  205. static zend_class_entry *register_class_dotnet(zend_class_entry *class_entry_variant)
  206. {
  207. zend_class_entry ce, *class_entry;
  208. INIT_CLASS_ENTRY(ce, "dotnet", class_dotnet_methods);
  209. class_entry = zend_register_internal_class_ex(&ce, class_entry_variant);
  210. return class_entry;
  211. }
  212. static zend_class_entry *register_class_com_safearray_proxy(void)
  213. {
  214. zend_class_entry ce, *class_entry;
  215. INIT_CLASS_ENTRY(ce, "com_safearray_proxy", class_com_safearray_proxy_methods);
  216. class_entry = zend_register_internal_class_ex(&ce, NULL);
  217. class_entry->ce_flags |= ZEND_ACC_FINAL;
  218. return class_entry;
  219. }
  220. static zend_class_entry *register_class_com_exception(zend_class_entry *class_entry_Exception)
  221. {
  222. zend_class_entry ce, *class_entry;
  223. INIT_CLASS_ENTRY(ce, "com_exception", class_com_exception_methods);
  224. class_entry = zend_register_internal_class_ex(&ce, class_entry_Exception);
  225. class_entry->ce_flags |= ZEND_ACC_FINAL;
  226. return class_entry;
  227. }