]> granicus.if.org Git - php/commitdiff
Do not include the same stub multiple times
authorMáté Kocsis <kocsismate@woohoolabs.com>
Sun, 29 Mar 2020 18:24:16 +0000 (20:24 +0200)
committerMáté Kocsis <kocsismate@woohoolabs.com>
Fri, 3 Apr 2020 12:23:54 +0000 (14:23 +0200)
Closes GH-5322

105 files changed:
Zend/zend_builtin_functions_arginfo.h
ext/curl/curl_file.c
ext/curl/curl_file.stub.php
ext/dom/attr.c
ext/dom/attr.stub.php [new file with mode: 0644]
ext/dom/attr_arginfo.h [new file with mode: 0644]
ext/dom/cdatasection.c
ext/dom/cdatasection.stub.php [new file with mode: 0644]
ext/dom/cdatasection_arginfo.h [new file with mode: 0644]
ext/dom/characterdata.c
ext/dom/characterdata.stub.php [new file with mode: 0644]
ext/dom/characterdata_arginfo.h [new file with mode: 0644]
ext/dom/comment.c
ext/dom/comment.stub.php [new file with mode: 0644]
ext/dom/comment_arginfo.h [new file with mode: 0644]
ext/dom/document.c
ext/dom/document.stub.php [new file with mode: 0644]
ext/dom/document_arginfo.h [new file with mode: 0644]
ext/dom/documentfragment.c
ext/dom/documentfragment.stub.php [new file with mode: 0644]
ext/dom/documentfragment_arginfo.h [new file with mode: 0644]
ext/dom/dom.stub.php
ext/dom/dom_arginfo.h
ext/dom/domimplementation.c
ext/dom/domimplementation.stub.php [new file with mode: 0644]
ext/dom/domimplementation_arginfo.h [new file with mode: 0644]
ext/dom/element.c
ext/dom/element.stub.php [new file with mode: 0644]
ext/dom/element_arginfo.h [new file with mode: 0644]
ext/dom/entityreference.c
ext/dom/entityreference.stub.php [new file with mode: 0644]
ext/dom/entityreference_arginfo.h [new file with mode: 0644]
ext/dom/namednodemap.c
ext/dom/namednodemap.stub.php [new file with mode: 0644]
ext/dom/namednodemap_arginfo.h [new file with mode: 0644]
ext/dom/node.c
ext/dom/node.stub.php [new file with mode: 0644]
ext/dom/node_arginfo.h [new file with mode: 0644]
ext/dom/nodelist.c
ext/dom/nodelist.stub.php [new file with mode: 0644]
ext/dom/nodelist_arginfo.h [new file with mode: 0644]
ext/dom/parentnode.c
ext/dom/parentnode.stub.php [new file with mode: 0644]
ext/dom/parentnode_arginfo.h [new file with mode: 0644]
ext/dom/processinginstruction.c
ext/dom/processinginstruction.stub.php [new file with mode: 0644]
ext/dom/processinginstruction_arginfo.h [new file with mode: 0644]
ext/dom/text.c
ext/dom/text.stub.php [new file with mode: 0644]
ext/dom/text_arginfo.h [new file with mode: 0644]
ext/dom/xpath.c
ext/dom/xpath.stub.php [new file with mode: 0644]
ext/dom/xpath_arginfo.h [new file with mode: 0644]
ext/intl/calendar/calendar.stub.php
ext/intl/calendar/calendar_arginfo.h
ext/intl/collator/collator.stub.php
ext/intl/collator/collator_arginfo.h
ext/intl/collator/collator_functions_arginfo.h [new file with mode: 0644]
ext/intl/common/common.stub.php
ext/intl/common/common_arginfo.h
ext/intl/dateformat/dateformat.stub.php
ext/intl/dateformat/dateformat_arginfo.h
ext/intl/formatter/formatter.stub.php
ext/intl/formatter/formatter_arginfo.h
ext/intl/formatter/formatter_functions_arginfo.h [new file with mode: 0644]
ext/intl/grapheme/grapheme.stub.php [deleted file]
ext/intl/grapheme/grapheme_arginfo.h [deleted file]
ext/intl/idn/idn.stub.php [deleted file]
ext/intl/idn/idn_arginfo.h [deleted file]
ext/intl/locale/locale.stub.php
ext/intl/locale/locale_arginfo.h
ext/intl/msgformat/msgformat.stub.php
ext/intl/msgformat/msgformat_arginfo.h
ext/intl/normalizer/normalizer.stub.php
ext/intl/normalizer/normalizer_arginfo.h
ext/intl/php_intl.c
ext/intl/php_intl.stub.php [new file with mode: 0644]
ext/intl/php_intl_arginfo.h [new file with mode: 0644]
ext/intl/resourcebundle/resourcebundle.stub.php
ext/intl/resourcebundle/resourcebundle_arginfo.h
ext/intl/timezone/timezone.stub.php
ext/intl/timezone/timezone_arginfo.h
ext/intl/transliterator/transliterator.stub.php
ext/intl/transliterator/transliterator_arginfo.h
ext/mysqli/mysqli.stub.php
ext/mysqli/mysqli_arginfo.h
ext/mysqli/mysqli_warning.c
ext/mysqli/mysqli_warning.stub.php [new file with mode: 0644]
ext/mysqli/mysqli_warning_arginfo.h [new file with mode: 0644]
ext/pdo/pdo.stub.php
ext/pdo/pdo_arginfo.h
ext/pdo/pdo_dbh.c
ext/pdo/pdo_dbh.stub.php [new file with mode: 0644]
ext/pdo/pdo_dbh_arginfo.h [new file with mode: 0644]
ext/pdo/pdo_stmt.c
ext/pdo/pdo_stmt.stub.php [new file with mode: 0644]
ext/pdo/pdo_stmt_arginfo.h [new file with mode: 0644]
ext/standard/basic_functions.stub.php
ext/standard/basic_functions_arginfo.h
ext/standard/dir.c
ext/standard/dir.stub.php [new file with mode: 0755]
ext/standard/dir_arginfo.h [new file with mode: 0644]
ext/standard/user_filters.c
ext/standard/user_filters.stub.php [new file with mode: 0755]
ext/standard/user_filters_arginfo.h [new file with mode: 0644]

index 1dd9b6f712c53a25746db898be5df3b239f66895..78393d28ecff7fcbf733cabbbd02e35cc66bba94 100644 (file)
@@ -32,7 +32,7 @@ ZEND_END_ARG_INFO()
 
 #define arginfo_strncasecmp arginfo_strncmp
 
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_error_reporting, 0, 0, IS_LONG, 1)
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_error_reporting, 0, 0, IS_LONG, 0)
        ZEND_ARG_INFO(0, new_error_level)
 ZEND_END_ARG_INFO()
 
index d08d77fb516b78952385f27411526a4e23c3d8cb..e034babd0feada7a6ef91dc2fc727bc7a9630e46 100644 (file)
@@ -22,7 +22,6 @@
 #include "Zend/zend_exceptions.h"
 #include "Zend/zend_interfaces.h"
 #include "php_curl.h"
-#include "curl_arginfo.h"
 #include "curl_file_arginfo.h"
 #if HAVE_CURL
 
index e6e21f9a02f1df0053ba8fd37553c3a5d92f1fc1..e1b289bd975aa0c75fc1c8675714aef8578814b9 100644 (file)
@@ -1,6 +1,7 @@
 <?php
 
-class CURLFile {
+class CURLFile
+{
     public function __construct(
         string $filename,
         string $mimetype = UNKNOWN,
index 1f24869f0d1849a8716ce4ac54d685bb50c261cd..9c097eb8430a2d103fa5eca2c5fe81ac7c92a3f2 100644 (file)
@@ -24,7 +24,7 @@
 #if HAVE_LIBXML && HAVE_DOM
 
 #include "php_dom.h"
-#include "dom_arginfo.h"
+#include "attr_arginfo.h"
 
 /*
 * class DOMAttr extends DOMNode
diff --git a/ext/dom/attr.stub.php b/ext/dom/attr.stub.php
new file mode 100644 (file)
index 0000000..0d8f748
--- /dev/null
@@ -0,0 +1,9 @@
+<?php
+
+class DOMAttr
+{
+    public function __construct(string $name, string $value = "") {}
+
+    /** @return bool */
+    public function isId() {}
+}
diff --git a/ext/dom/attr_arginfo.h b/ext/dom/attr_arginfo.h
new file mode 100644 (file)
index 0000000..4675aca
--- /dev/null
@@ -0,0 +1,9 @@
+/* This is a generated file, edit the .stub.php file instead. */
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMAttr___construct, 0, 0, 1)
+       ZEND_ARG_TYPE_INFO(0, name, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, value, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMAttr_isId, 0, 0, 0)
+ZEND_END_ARG_INFO()
index ee660feda0ce0c0fa2510ddc693c61ac4d446b27..613b6b9169b303ea1ca76f40821c00a8aa668b80 100644 (file)
@@ -22,7 +22,7 @@
 #include "php.h"
 #if HAVE_LIBXML && HAVE_DOM
 #include "php_dom.h"
-#include "dom_arginfo.h"
+#include "cdatasection_arginfo.h"
 
 /*
 * class DOMCdataSection extends DOMText
diff --git a/ext/dom/cdatasection.stub.php b/ext/dom/cdatasection.stub.php
new file mode 100644 (file)
index 0000000..bd56bef
--- /dev/null
@@ -0,0 +1,6 @@
+<?php
+
+class DOMCdataSection
+{
+    public function __construct(string $value) {}
+}
diff --git a/ext/dom/cdatasection_arginfo.h b/ext/dom/cdatasection_arginfo.h
new file mode 100644 (file)
index 0000000..33417e5
--- /dev/null
@@ -0,0 +1,5 @@
+/* This is a generated file, edit the .stub.php file instead. */
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMCdataSection___construct, 0, 0, 1)
+       ZEND_ARG_TYPE_INFO(0, value, IS_STRING, 0)
+ZEND_END_ARG_INFO()
index cff745a522a6d710e5f5d80e0a45d78e41fe66d7..d9203708f701602ce3b985bbba3d8efb741c735d 100644 (file)
@@ -22,7 +22,7 @@
 #include "php.h"
 #if HAVE_LIBXML && HAVE_DOM
 #include "php_dom.h"
-#include "dom_arginfo.h"
+#include "characterdata_arginfo.h"
 
 /*
 * class DOMCharacterData extends DOMNode
@@ -37,10 +37,10 @@ const zend_function_entry php_dom_characterdata_class_functions[] = {
        PHP_ME(domcharacterdata, insertData, arginfo_class_DOMCharacterData_insertData, ZEND_ACC_PUBLIC)
        PHP_ME(domcharacterdata, deleteData, arginfo_class_DOMCharacterData_deleteData, ZEND_ACC_PUBLIC)
        PHP_ME(domcharacterdata, replaceData, arginfo_class_DOMCharacterData_replaceData, ZEND_ACC_PUBLIC)
-       PHP_ME(domcharacterdata, remove, arginfo_class_DOMChildNode_remove, ZEND_ACC_PUBLIC)
-       PHP_ME(domcharacterdata, after, arginfo_class_DOMChildNode_after, ZEND_ACC_PUBLIC)
-       PHP_ME(domcharacterdata, before, arginfo_class_DOMChildNode_before, ZEND_ACC_PUBLIC)
-       PHP_ME(domcharacterdata, replaceWith, arginfo_class_DOMChildNode_replaceWith, ZEND_ACC_PUBLIC)
+       PHP_ME(domcharacterdata, remove, arginfo_class_DOMCharacterData_remove, ZEND_ACC_PUBLIC)
+       PHP_ME(domcharacterdata, after, arginfo_class_DOMCharacterData_after, ZEND_ACC_PUBLIC)
+       PHP_ME(domcharacterdata, before, arginfo_class_DOMCharacterData_before, ZEND_ACC_PUBLIC)
+       PHP_ME(domcharacterdata, replaceWith, arginfo_class_DOMCharacterData_replaceWith, ZEND_ACC_PUBLIC)
        PHP_FE_END
 };
 
diff --git a/ext/dom/characterdata.stub.php b/ext/dom/characterdata.stub.php
new file mode 100644 (file)
index 0000000..b7ddb6b
--- /dev/null
@@ -0,0 +1,30 @@
+<?php
+
+class DOMCharacterData implements DOMChildNode
+{
+    /** @return bool */
+    public function appendData(string $data) {}
+
+    /** @return string|false */
+    public function substringData(int $offset, int $count) {}
+
+    /** @return bool */
+    public function insertData(int $offset, string $data) {}
+
+    /** @return bool */
+    public function deleteData(int $offset, int $count) {}
+
+    /** @return bool */
+    public function replaceData(int $offset, int $count, string $data) {}
+
+    /** @var ...DOMNode|string $nodes */
+    public function replaceWith(...$nodes): void {}
+
+    public function remove(): void {}
+
+    /** @var ...DOMNode|string $nodes */
+    public function before(... $nodes): void {}
+
+    /** @var ...DOMNode|string $nodes */
+    public function after(...$nodes): void {}
+}
diff --git a/ext/dom/characterdata_arginfo.h b/ext/dom/characterdata_arginfo.h
new file mode 100644 (file)
index 0000000..191d934
--- /dev/null
@@ -0,0 +1,34 @@
+/* This is a generated file, edit the .stub.php file instead. */
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMCharacterData_appendData, 0, 0, 1)
+       ZEND_ARG_TYPE_INFO(0, data, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMCharacterData_substringData, 0, 0, 2)
+       ZEND_ARG_TYPE_INFO(0, offset, IS_LONG, 0)
+       ZEND_ARG_TYPE_INFO(0, count, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMCharacterData_insertData, 0, 0, 2)
+       ZEND_ARG_TYPE_INFO(0, offset, IS_LONG, 0)
+       ZEND_ARG_TYPE_INFO(0, data, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_DOMCharacterData_deleteData arginfo_class_DOMCharacterData_substringData
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMCharacterData_replaceData, 0, 0, 3)
+       ZEND_ARG_TYPE_INFO(0, offset, IS_LONG, 0)
+       ZEND_ARG_TYPE_INFO(0, count, IS_LONG, 0)
+       ZEND_ARG_TYPE_INFO(0, data, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_class_DOMCharacterData_replaceWith, 0, 0, IS_VOID, 0)
+       ZEND_ARG_VARIADIC_INFO(0, nodes)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_class_DOMCharacterData_remove, 0, 0, IS_VOID, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_DOMCharacterData_before arginfo_class_DOMCharacterData_replaceWith
+
+#define arginfo_class_DOMCharacterData_after arginfo_class_DOMCharacterData_replaceWith
index 370b8c4a9fab84073184f02c593d87c8fa0c3802..d54688390e4686b570d6c7b09ab9db0c932f493e 100644 (file)
@@ -22,7 +22,7 @@
 #include "php.h"
 #if HAVE_LIBXML && HAVE_DOM
 #include "php_dom.h"
-#include "dom_arginfo.h"
+#include "comment_arginfo.h"
 
 /*
 * class DOMComment extends DOMCharacterData
diff --git a/ext/dom/comment.stub.php b/ext/dom/comment.stub.php
new file mode 100644 (file)
index 0000000..e6131ce
--- /dev/null
@@ -0,0 +1,6 @@
+<?php
+
+class DOMComment
+{
+    public function __construct(string $value = "") {}
+}
diff --git a/ext/dom/comment_arginfo.h b/ext/dom/comment_arginfo.h
new file mode 100644 (file)
index 0000000..0b6e1c9
--- /dev/null
@@ -0,0 +1,5 @@
+/* This is a generated file, edit the .stub.php file instead. */
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMComment___construct, 0, 0, 0)
+       ZEND_ARG_TYPE_INFO(0, value, IS_STRING, 0)
+ZEND_END_ARG_INFO()
index 5cb114d45cb2fa34f40c46e889fda96f1bbb2d50..389f5dc6eaa889fdc4a4acb5a47afca0bbed6936 100644 (file)
@@ -22,7 +22,7 @@
 #include "php.h"
 #if HAVE_LIBXML && HAVE_DOM
 #include "php_dom.h"
-#include "dom_arginfo.h"
+#include "document_arginfo.h"
 #include <libxml/SAX.h>
 #ifdef LIBXML_SCHEMAS_ENABLED
 #include <libxml/relaxng.h>
@@ -82,8 +82,8 @@ const zend_function_entry php_dom_document_class_functions[] = { /* {{{ */
        PHP_ME(domdocument, relaxNGValidateSource, arginfo_class_DOMDocument_relaxNGValidateSource, ZEND_ACC_PUBLIC)
 #endif
        PHP_ME(domdocument, registerNodeClass, arginfo_class_DOMDocument_registerNodeClass, ZEND_ACC_PUBLIC)
-       PHP_ME(domdocument, append, arginfo_class_DOMParentNode_append, ZEND_ACC_PUBLIC)
-       PHP_ME(domdocument, prepend, arginfo_class_DOMParentNode_prepend, ZEND_ACC_PUBLIC)
+       PHP_ME(domdocument, append, arginfo_class_DOMDocument_append, ZEND_ACC_PUBLIC)
+       PHP_ME(domdocument, prepend, arginfo_class_DOMDocument_prepend, ZEND_ACC_PUBLIC)
        PHP_FE_END
 };
 /* }}} */
diff --git a/ext/dom/document.stub.php b/ext/dom/document.stub.php
new file mode 100644 (file)
index 0000000..02c10c5
--- /dev/null
@@ -0,0 +1,109 @@
+<?php
+
+class DOMDocument implements DOMParentNode
+{
+    public function __construct(string $version = "1.0", string $encoding = UNKNOWN) {}
+
+    /** @return DOMAttr|false */
+    public function createAttribute(string $name) {}
+
+    /** @return DOMAttr|false */
+    public function createAttributeNS(?string $namespaceURI, string $qualifiedName) {}
+
+    /** @return DOMCdataSection|false */
+    public function createCDATASection(string $data) {}
+
+    /** @return DOMComment|false */
+    public function createComment(string $data) {}
+
+    /** @return DOMDocumentFragment|false */
+    public function createDocumentFragment() {}
+
+    /** @return DOMElement|false */
+    public function createElement(string $tagName, string $value = "") {}
+
+    /** @return DOMElement|false */
+    public function createElementNS(?string $namespaceURI, string $qualifiedName, string $value = "") {}
+
+    /** @return DOMEntityReference|false */
+    public function createEntityReference(string $name) {}
+
+    /** @return DOMProcessingInstruction|false */
+    public function createProcessingInstruction(string $target, string $data = "") {}
+
+    /** @return DOMText|false */
+    public function createTextNode(string $data) {}
+
+    /** @return ?DOMElement */
+    public function getElementById(string $elementId) {}
+
+    /** @return DOMNodeList */
+    public function getElementsByTagName(string $tagName) {}
+
+    /** @return DOMNodeList */
+    public function getElementsByTagNameNS(string $namespaceURI, string $localName) {}
+
+    /** @return DOMNode|false */
+    public function importNode(DOMNode $importedNode, bool $deep = false) {}
+
+    /** @return DOMDocument|bool */
+    public function load(string $filename, int $options = 0) {}
+
+    /** @return DOMDocument|bool */
+    public function loadXML(string $source, int $options = 0) {}
+
+    /** @return void */
+    public function normalizeDocument() {}
+
+    /** @return bool */
+    public function registerNodeClass(string $baseclass, ?string $extendedclass) {}
+
+    /** @return int|false */
+    public function save(string $filename, int $options = 0) {}
+
+#if defined(LIBXML_HTML_ENABLED)
+    /** @return DOMDocument|bool */
+    public function loadHTML(string $source, int $options = 0) {}
+
+    /** @return DOMDocument|bool */
+    public function loadHTMLFile(string $filename, int $options = 0) {}
+
+    /** @return string|false */
+    public function saveHTML(?DOMNode $node = null) {}
+
+    /** @return int|false */
+    public function saveHTMLFile(string $filename) {}
+#endif
+
+    /** @return string|false */
+    public function saveXML(?DOMNode $node = null, int $options = 0) {}
+
+#if defined(LIBXML_SCHEMAS_ENABLED)
+    /** @return bool */
+    public function schemaValidate(string $filename, int $flags = 0) {}
+
+    /** @return bool */
+    public function schemaValidateSource(string $source, int $flags = 0) {}
+
+    /** @return bool */
+    public function relaxNGValidate(string $filename) {}
+
+    /** @return bool */
+    public function relaxNGValidateSource(string $source) {}
+#endif
+
+    /** @return bool */
+    public function validate() {}
+
+    /** @return int|false */
+    public function xinclude(int $options = 0) {}
+
+    /** @return DOMNode|false */
+    public function adoptNode(DOMNode $source) {}
+
+    /** @var ...DOMNode|string $nodes */
+    public function append(...$nodes): void {}
+
+    /** @var ...DOMNode|string $nodes */
+    public function prepend(...$nodes): void {}
+}
diff --git a/ext/dom/document_arginfo.h b/ext/dom/document_arginfo.h
new file mode 100644 (file)
index 0000000..eba9075
--- /dev/null
@@ -0,0 +1,154 @@
+/* This is a generated file, edit the .stub.php file instead. */
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMDocument___construct, 0, 0, 0)
+       ZEND_ARG_TYPE_INFO(0, version, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, encoding, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMDocument_createAttribute, 0, 0, 1)
+       ZEND_ARG_TYPE_INFO(0, name, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMDocument_createAttributeNS, 0, 0, 2)
+       ZEND_ARG_TYPE_INFO(0, namespaceURI, IS_STRING, 1)
+       ZEND_ARG_TYPE_INFO(0, qualifiedName, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMDocument_createCDATASection, 0, 0, 1)
+       ZEND_ARG_TYPE_INFO(0, data, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_DOMDocument_createComment arginfo_class_DOMDocument_createCDATASection
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMDocument_createDocumentFragment, 0, 0, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMDocument_createElement, 0, 0, 1)
+       ZEND_ARG_TYPE_INFO(0, tagName, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, value, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMDocument_createElementNS, 0, 0, 2)
+       ZEND_ARG_TYPE_INFO(0, namespaceURI, IS_STRING, 1)
+       ZEND_ARG_TYPE_INFO(0, qualifiedName, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, value, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_DOMDocument_createEntityReference arginfo_class_DOMDocument_createAttribute
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMDocument_createProcessingInstruction, 0, 0, 1)
+       ZEND_ARG_TYPE_INFO(0, target, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, data, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_DOMDocument_createTextNode arginfo_class_DOMDocument_createCDATASection
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMDocument_getElementById, 0, 0, 1)
+       ZEND_ARG_TYPE_INFO(0, elementId, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMDocument_getElementsByTagName, 0, 0, 1)
+       ZEND_ARG_TYPE_INFO(0, tagName, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMDocument_getElementsByTagNameNS, 0, 0, 2)
+       ZEND_ARG_TYPE_INFO(0, namespaceURI, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, localName, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMDocument_importNode, 0, 0, 1)
+       ZEND_ARG_OBJ_INFO(0, importedNode, DOMNode, 0)
+       ZEND_ARG_TYPE_INFO(0, deep, _IS_BOOL, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMDocument_load, 0, 0, 1)
+       ZEND_ARG_TYPE_INFO(0, filename, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, options, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMDocument_loadXML, 0, 0, 1)
+       ZEND_ARG_TYPE_INFO(0, source, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, options, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_DOMDocument_normalizeDocument arginfo_class_DOMDocument_createDocumentFragment
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMDocument_registerNodeClass, 0, 0, 2)
+       ZEND_ARG_TYPE_INFO(0, baseclass, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, extendedclass, IS_STRING, 1)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_DOMDocument_save arginfo_class_DOMDocument_load
+
+#if defined(LIBXML_HTML_ENABLED)
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMDocument_loadHTML, 0, 0, 1)
+       ZEND_ARG_TYPE_INFO(0, source, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, options, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+#endif
+
+#if defined(LIBXML_HTML_ENABLED)
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMDocument_loadHTMLFile, 0, 0, 1)
+       ZEND_ARG_TYPE_INFO(0, filename, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, options, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+#endif
+
+#if defined(LIBXML_HTML_ENABLED)
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMDocument_saveHTML, 0, 0, 0)
+       ZEND_ARG_OBJ_INFO(0, node, DOMNode, 1)
+ZEND_END_ARG_INFO()
+#endif
+
+#if defined(LIBXML_HTML_ENABLED)
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMDocument_saveHTMLFile, 0, 0, 1)
+       ZEND_ARG_TYPE_INFO(0, filename, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+#endif
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMDocument_saveXML, 0, 0, 0)
+       ZEND_ARG_OBJ_INFO(0, node, DOMNode, 1)
+       ZEND_ARG_TYPE_INFO(0, options, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+#if defined(LIBXML_SCHEMAS_ENABLED)
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMDocument_schemaValidate, 0, 0, 1)
+       ZEND_ARG_TYPE_INFO(0, filename, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, flags, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+#endif
+
+#if defined(LIBXML_SCHEMAS_ENABLED)
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMDocument_schemaValidateSource, 0, 0, 1)
+       ZEND_ARG_TYPE_INFO(0, source, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, flags, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+#endif
+
+#if defined(LIBXML_SCHEMAS_ENABLED)
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMDocument_relaxNGValidate, 0, 0, 1)
+       ZEND_ARG_TYPE_INFO(0, filename, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+#endif
+
+#if defined(LIBXML_SCHEMAS_ENABLED)
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMDocument_relaxNGValidateSource, 0, 0, 1)
+       ZEND_ARG_TYPE_INFO(0, source, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+#endif
+
+#define arginfo_class_DOMDocument_validate arginfo_class_DOMDocument_createDocumentFragment
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMDocument_xinclude, 0, 0, 0)
+       ZEND_ARG_TYPE_INFO(0, options, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMDocument_adoptNode, 0, 0, 1)
+       ZEND_ARG_OBJ_INFO(0, source, DOMNode, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_class_DOMDocument_append, 0, 0, IS_VOID, 0)
+       ZEND_ARG_VARIADIC_INFO(0, nodes)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_DOMDocument_prepend arginfo_class_DOMDocument_append
index d6e1060d349d5648874bb377d2a08dbc2df59ff0..dddfc8f446149f113f0df6e290e9934b78fa2918 100644 (file)
@@ -22,7 +22,7 @@
 #include "php.h"
 #if HAVE_LIBXML && HAVE_DOM
 #include "php_dom.h"
-#include "dom_arginfo.h"
+#include "documentfragment_arginfo.h"
 
 /*
 * class DOMDocumentFragment extends DOMNode
@@ -34,8 +34,8 @@
 const zend_function_entry php_dom_documentfragment_class_functions[] = {
        PHP_ME(domdocumentfragment, __construct, arginfo_class_DOMDocumentFragment___construct, ZEND_ACC_PUBLIC)
        PHP_ME(domdocumentfragment, appendXML, arginfo_class_DOMDocumentFragment_appendXML, ZEND_ACC_PUBLIC)
-       PHP_ME(domdocumentfragment, append, arginfo_class_DOMParentNode_append, ZEND_ACC_PUBLIC)
-       PHP_ME(domdocumentfragment, prepend, arginfo_class_DOMParentNode_prepend, ZEND_ACC_PUBLIC)
+       PHP_ME(domdocumentfragment, append, arginfo_class_DOMDocumentFragment_append, ZEND_ACC_PUBLIC)
+       PHP_ME(domdocumentfragment, prepend, arginfo_class_DOMDocumentFragment_prepend, ZEND_ACC_PUBLIC)
        PHP_FE_END
 };
 
diff --git a/ext/dom/documentfragment.stub.php b/ext/dom/documentfragment.stub.php
new file mode 100644 (file)
index 0000000..dc40bee
--- /dev/null
@@ -0,0 +1,15 @@
+<?php
+
+class DOMDocumentFragment implements DOMParentNode
+{
+    public function __construct() {}
+
+    /** @return bool */
+    public function appendXML(string $data) {}
+
+    /** @var ...DOMNode|string $nodes */
+    public function append(...$nodes): void {}
+
+    /** @var ...DOMNode|string $nodes */
+    public function prepend(...$nodes): void {}
+}
diff --git a/ext/dom/documentfragment_arginfo.h b/ext/dom/documentfragment_arginfo.h
new file mode 100644 (file)
index 0000000..a74fc3d
--- /dev/null
@@ -0,0 +1,14 @@
+/* This is a generated file, edit the .stub.php file instead. */
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMDocumentFragment___construct, 0, 0, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMDocumentFragment_appendXML, 0, 0, 1)
+       ZEND_ARG_TYPE_INFO(0, data, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_class_DOMDocumentFragment_append, 0, 0, IS_VOID, 0)
+       ZEND_ARG_VARIADIC_INFO(0, nodes)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_DOMDocumentFragment_prepend arginfo_class_DOMDocumentFragment_append
index e87c2917c9e7a4823929365fdcf8329a8d70485f..de192878a15d666f8ec6e0323fa6fa6e03200c06 100644 (file)
@@ -1,353 +1,5 @@
 <?php
 
-interface DOMChildNode
-{
-    public function remove(): void;
-
-    /** @var ...DOMNode|string $nodes */
-    public function before(... $nodes): void;
-
-    /** @var ...DOMNode|string $nodes */
-    public function after(...$nodes): void;
-
-    /** @var ...DOMNode|string $nodes */
-    public function replaceWith(...$nodes): void;
-}
-
-interface DOMParentNode
-{
-    /** @var ...DOMNode|string $nodes */
-    public function append(...$nodes): void;
-
-    /** @var ...DOMNode|string $nodes */
-    public function prepend(...$nodes): void;
-}
-
-class DOMNode {
-    /** @return DOMNode|false */
-    public function appendChild(DOMNode $newChild) {}
-
-    /** @return string|false */
-    public function C14N(bool $exclusive = false, bool $with_comments = false, ?array $xpath = null, ?array $ns_prefixes = null) {}
-
-    /** @return int|false */
-    public function C14NFile(string $uri, bool $exclusive = false, bool $with_comments = false, ?array $xpath = null, ?array $ns_prefixes = null) {}
-
-    /** @return DOMNode|false */
-    public function cloneNode(bool $recursive = false) {}
-
-    /** @return int */
-    public function getLineNo() {}
-
-    /** @return ?string */
-    public function getNodePath() {}
-
-    /** @return bool */
-    public function hasAttributes() {}
-
-    /** @return bool */
-    public function hasChildNodes() {}
-
-    /** @return DOMNode|false */
-    public function insertBefore(DOMNode $newChild, ?DOMNode $refChild = null) {}
-
-    /** @return bool */
-    public function isDefaultNamespace(string $namespaceURI) {}
-
-    /** @return bool */
-    public function isSameNode(DOMNode $other) {}
-
-    /** @return bool */
-    public function isSupported(string $feature, string $version) {}
-
-    /** @return ?string */
-    public function lookupNamespaceUri(?string $prefix) {}
-
-    /** @return ?string */
-    public function lookupPrefix(string $namespaceURI) {}
-
-    /** @return void */
-    public function normalize() {}
-
-    /** @return DOMNode|false */
-    public function removeChild(DOMNode $oldChild) {}
-
-    /** @return DOMNode|false */
-    public function replaceChild(DOMNode $newChild, DOMNode $oldChild) {}
-}
-
-class DOMAttr {
-    public function __construct(string $name, string $value = "") {}
-    /** @return bool */
-    public function isId() {}
-}
-
-class DOMCdataSection {
-    public function __construct(string $value) {}
-}
-
-class DOMCharacterData implements DOMChildNode {
-    /** @return bool */
-    public function appendData(string $data) {}
-
-    /** @return string|false */
-    public function substringData(int $offset, int $count) {}
-
-    /** @return bool */
-    public function insertData(int $offset, string $data) {}
-
-    /** @return bool */
-    public function deleteData(int $offset, int $count) {}
-
-    /** @return bool */
-    public function replaceData(int $offset, int $count, string $data) {}
-}
-
-class DOMComment {
-    public function __construct(string $value = "") {}
-}
-
-class DOMDocument implements DOMParentNode {
-    public function __construct(string $version = "1.0", string $encoding = UNKNOWN) {}
-
-    /** @return DOMAttr|false */
-    public function createAttribute(string $name) {}
-
-    /** @return DOMAttr|false */
-    public function createAttributeNS(?string $namespaceURI, string $qualifiedName) {}
-
-    /** @return DOMCdataSection|false */
-    public function createCDATASection(string $data) {}
-
-    /** @return DOMComment|false */
-    public function createComment(string $data) {}
-
-    /** @return DOMDocumentFragment|false */
-    public function createDocumentFragment() {}
-
-    /** @return DOMElement|false */
-    public function createElement(string $tagName, string $value = "") {}
-
-    /** @return DOMElement|false */
-    public function createElementNS(?string $namespaceURI, string $qualifiedName, string $value = "") {}
-
-    /** @return DOMEntityReference|false */
-    public function createEntityReference(string $name) {}
-
-    /** @return DOMProcessingInstruction|false */
-    public function createProcessingInstruction(string $target, string $data = "") {}
-
-    /** @return DOMText|false */
-    public function createTextNode(string $data) {}
-
-    /** @return ?DOMElement */
-    public function getElementById(string $elementId) {}
-
-    /** @return DOMNodeList */
-    public function getElementsByTagName(string $tagName) {}
-
-    /** @return DOMNodeList */
-    public function getElementsByTagNameNS(string $namespaceURI, string $localName) {}
-
-    /** @return DOMNode|false */
-    public function importNode(DOMNode $importedNode, bool $deep = false) {}
-
-    /** @return DOMDocument|bool */
-    public function load(string $filename, int $options = 0) {}
-
-    /** @return DOMDocument|bool */
-    public function loadXML(string $source, int $options = 0) {}
-
-    /** @return void */
-    public function normalizeDocument() {}
-
-    /** @return bool */
-    public function registerNodeClass(string $baseclass, ?string $extendedclass) {}
-
-    /** @return int|false */
-    public function save(string $filename, int $options = 0) {}
-
-#if defined(LIBXML_HTML_ENABLED)
-    /** @return DOMDocument|bool */
-    public function loadHTML(string $source, int $options = 0) {}
-
-    /** @return DOMDocument|bool */
-    public function loadHTMLFile(string $filename, int $options = 0) {}
-
-    /** @return string|false */
-    public function saveHTML(?DOMNode $node = null) {}
-
-    /** @return int|false */
-    public function saveHTMLFile(string $filename) {}
-#endif
-
-    /** @return string|false */
-    public function saveXML(?DOMNode $node = null, int $options = 0) {}
-
-#if defined(LIBXML_SCHEMAS_ENABLED)
-    /** @return bool */
-    public function schemaValidate(string $filename, int $flags = 0) {}
-
-    /** @return bool */
-    public function schemaValidateSource(string $source, int $flags = 0) {}
-
-    /** @return bool */
-    public function relaxNGValidate(string $filename) {}
-
-    /** @return bool */
-    public function relaxNGValidateSource(string $source) {}
-#endif
-
-    /** @return bool */
-    public function validate() {}
-
-    /** @return int|false */
-    public function xinclude(int $options = 0) {}
-
-    /** @return DOMNode|false */
-    public function adoptNode(DOMNode $source) {}
-}
-
-class DOMDocumentFragment implements DOMParentNode {
-    public function __construct() {}
-
-    /** @return bool */
-    public function appendXML(string $data) {}
-}
-
-class DOMElement implements DOMParentNode, DOMChildNode {
-    public function __construct(string $name, ?string $value = null, string $uri = "") {}
-
-    /** @return string */
-    public function getAttribute(string $name) {}
-
-    /** @return string */
-    public function getAttributeNS(?string $namespaceURI, string $localName) {}
-
-    /** @return DOMAttr|DOMNamespaceNode|false */
-    public function getAttributeNode(string $name) {}
-
-    /** @return DOMAttr|DOMNamespaceNode|null */
-    public function getAttributeNodeNS(?string $namespaceURI, string $localName) {}
-
-    /** @return DOMNodeList */
-    public function getElementsByTagName(string $name) {}
-
-    /** @return DOMNodeList */
-    public function getElementsByTagNameNS(string $namespaceURI, string $localName) {}
-
-    /** @return bool */
-    public function hasAttribute(string $name) {}
-
-    /** @return bool */
-    public function hasAttributeNS(?string $namespaceURI, string $localName) {}
-
-    /** @return bool */
-    public function removeAttribute(string $name) {}
-
-    /** @return DOMAttr|false */
-    public function removeAttributeNS(?string $namespaceURI, string $localName) {}
-
-    /** @return DOMAttr|false */
-    public function removeAttributeNode(string $name) {}
-
-    /** @return DOMAttr|bool */
-    public function setAttribute(string $name, string $value) {}
-
-    /** @return null|false */
-    public function setAttributeNS(?string $namespaceURI, string $localName, string $value) {}
-
-    /** @return DOMAttr|null|false */
-    public function setAttributeNode(DOMAttr $attr) {}
-
-    /** @return DOMAttr|null|false */
-    public function setAttributeNodeNS(DOMAttr $attr) {}
-
-    /** @return void */
-    public function setIdAttribute(string $name, bool $isId) {}
-
-    /** @return void */
-    public function setIdAttributeNS(string $namespaceURI, string $localName, bool $isId) {}
-
-    /** @return void */
-    public function setIdAttributeNode(DOMAttr $attr, bool $isId) {}
-}
-
-class DOMEntityReference {
-    public function __construct(string $name) {}
-}
-
-class DOMImplementation {
-    public function getFeature(string $feature, string $version) {}
-
-    /** @return bool */
-    public function hasFeature(string $feature, string $version) {}
-
-    /** @return DOMDocumentType|false */
-    public function createDocumentType(
-        string $qualifiedName, string $publicId = "", string $systemId = "") {}
-
-    /** @return DOMDocument|false */
-    public function createDocument(string $namespaceURI = "", string $qualifiedName = "", DOMDocumentType $doctype = UNKNOWN) {}
-}
-
-class DOMNamedNodeMap {
-    /** @return ?DOMNode */
-    public function getNamedItem(string $name) {}
-
-    /** @return ?DOMNode */
-    public function getNamedItemNS(?string $namespaceURI, string $localName) {}
-
-    /** @return ?DOMNode */
-    public function item(int $index) {}
-
-    /** @return int|false */
-    public function count() {}
-}
-
-class DOMNodeList {
-    /** @return int|false */
-    public function count() {}
-
-    /** @return ?DOMNode */
-    public function item(int $index) {}
-}
-
-class DOMProcessingInstruction {
-    public function __construct(string $name, string $value = "") {}
-}
-
-class DOMText {
-    public function __construct(string $value = "") {}
-
-    /** @return bool */
-    public function isWhitespaceInElementContent() {}
-
-    /** @return bool */
-    public function isElementContentWhitespace() {}
-
-    /** @return DOMText|false */
-    public function splitText(int $offset) {}
-}
-
-#if defined(LIBXML_XPATH_ENABLED)
-class DOMXPath {
-    public function __construct(DOMDocument $doc, bool $registerNodeNS = true) {}
-
-    /** @return mixed */
-    public function evaluate(string $expr, ?DOMNode $context = null, bool $registerNodeNS = true) {}
-
-    /** @return mixed */
-    public function query(string $expr, ?DOMNode $context = null, bool $registerNodeNS = true) {}
-
-    /** @return bool */
-    public function registerNamespace(string $prefix, string $namespaceURI) {}
-
-    /** @param string|array $restrict */
-    public function registerPhpFunctions($restrict = null) {}
-}
-#endif
-
 class DOMDocumentType {
 }
 
index 07ddb19d7e256983be424117e566874a765f46eb..8faed43ab23bc4cc200c4d0e4e495ad15b53573a 100644 (file)
@@ -1,412 +1,5 @@
 /* This is a generated file, edit the .stub.php file instead. */
 
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_class_DOMChildNode_remove, 0, 0, IS_VOID, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_class_DOMChildNode_before, 0, 0, IS_VOID, 0)
-       ZEND_ARG_VARIADIC_INFO(0, nodes)
-ZEND_END_ARG_INFO()
-
-#define arginfo_class_DOMChildNode_after arginfo_class_DOMChildNode_before
-
-#define arginfo_class_DOMChildNode_replaceWith arginfo_class_DOMChildNode_before
-
-#define arginfo_class_DOMParentNode_append arginfo_class_DOMChildNode_before
-
-#define arginfo_class_DOMParentNode_prepend arginfo_class_DOMChildNode_before
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMNode_appendChild, 0, 0, 1)
-       ZEND_ARG_OBJ_INFO(0, newChild, DOMNode, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMNode_C14N, 0, 0, 0)
-       ZEND_ARG_TYPE_INFO(0, exclusive, _IS_BOOL, 0)
-       ZEND_ARG_TYPE_INFO(0, with_comments, _IS_BOOL, 0)
-       ZEND_ARG_TYPE_INFO(0, xpath, IS_ARRAY, 1)
-       ZEND_ARG_TYPE_INFO(0, ns_prefixes, IS_ARRAY, 1)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMNode_C14NFile, 0, 0, 1)
-       ZEND_ARG_TYPE_INFO(0, uri, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, exclusive, _IS_BOOL, 0)
-       ZEND_ARG_TYPE_INFO(0, with_comments, _IS_BOOL, 0)
-       ZEND_ARG_TYPE_INFO(0, xpath, IS_ARRAY, 1)
-       ZEND_ARG_TYPE_INFO(0, ns_prefixes, IS_ARRAY, 1)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMNode_cloneNode, 0, 0, 0)
-       ZEND_ARG_TYPE_INFO(0, recursive, _IS_BOOL, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMNode_getLineNo, 0, 0, 0)
-ZEND_END_ARG_INFO()
-
-#define arginfo_class_DOMNode_getNodePath arginfo_class_DOMNode_getLineNo
-
-#define arginfo_class_DOMNode_hasAttributes arginfo_class_DOMNode_getLineNo
-
-#define arginfo_class_DOMNode_hasChildNodes arginfo_class_DOMNode_getLineNo
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMNode_insertBefore, 0, 0, 1)
-       ZEND_ARG_OBJ_INFO(0, newChild, DOMNode, 0)
-       ZEND_ARG_OBJ_INFO(0, refChild, DOMNode, 1)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMNode_isDefaultNamespace, 0, 0, 1)
-       ZEND_ARG_TYPE_INFO(0, namespaceURI, IS_STRING, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMNode_isSameNode, 0, 0, 1)
-       ZEND_ARG_OBJ_INFO(0, other, DOMNode, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMNode_isSupported, 0, 0, 2)
-       ZEND_ARG_TYPE_INFO(0, feature, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, version, IS_STRING, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMNode_lookupNamespaceUri, 0, 0, 1)
-       ZEND_ARG_TYPE_INFO(0, prefix, IS_STRING, 1)
-ZEND_END_ARG_INFO()
-
-#define arginfo_class_DOMNode_lookupPrefix arginfo_class_DOMNode_isDefaultNamespace
-
-#define arginfo_class_DOMNode_normalize arginfo_class_DOMNode_getLineNo
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMNode_removeChild, 0, 0, 1)
-       ZEND_ARG_OBJ_INFO(0, oldChild, DOMNode, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMNode_replaceChild, 0, 0, 2)
-       ZEND_ARG_OBJ_INFO(0, newChild, DOMNode, 0)
-       ZEND_ARG_OBJ_INFO(0, oldChild, DOMNode, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMAttr___construct, 0, 0, 1)
-       ZEND_ARG_TYPE_INFO(0, name, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, value, IS_STRING, 0)
-ZEND_END_ARG_INFO()
-
-#define arginfo_class_DOMAttr_isId arginfo_class_DOMNode_getLineNo
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMCdataSection___construct, 0, 0, 1)
-       ZEND_ARG_TYPE_INFO(0, value, IS_STRING, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMCharacterData_appendData, 0, 0, 1)
-       ZEND_ARG_TYPE_INFO(0, data, IS_STRING, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMCharacterData_substringData, 0, 0, 2)
-       ZEND_ARG_TYPE_INFO(0, offset, IS_LONG, 0)
-       ZEND_ARG_TYPE_INFO(0, count, IS_LONG, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMCharacterData_insertData, 0, 0, 2)
-       ZEND_ARG_TYPE_INFO(0, offset, IS_LONG, 0)
-       ZEND_ARG_TYPE_INFO(0, data, IS_STRING, 0)
-ZEND_END_ARG_INFO()
-
-#define arginfo_class_DOMCharacterData_deleteData arginfo_class_DOMCharacterData_substringData
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMCharacterData_replaceData, 0, 0, 3)
-       ZEND_ARG_TYPE_INFO(0, offset, IS_LONG, 0)
-       ZEND_ARG_TYPE_INFO(0, count, IS_LONG, 0)
-       ZEND_ARG_TYPE_INFO(0, data, IS_STRING, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMComment___construct, 0, 0, 0)
-       ZEND_ARG_TYPE_INFO(0, value, IS_STRING, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMDocument___construct, 0, 0, 0)
-       ZEND_ARG_TYPE_INFO(0, version, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, encoding, IS_STRING, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMDocument_createAttribute, 0, 0, 1)
-       ZEND_ARG_TYPE_INFO(0, name, IS_STRING, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMDocument_createAttributeNS, 0, 0, 2)
-       ZEND_ARG_TYPE_INFO(0, namespaceURI, IS_STRING, 1)
-       ZEND_ARG_TYPE_INFO(0, qualifiedName, IS_STRING, 0)
-ZEND_END_ARG_INFO()
-
-#define arginfo_class_DOMDocument_createCDATASection arginfo_class_DOMCharacterData_appendData
-
-#define arginfo_class_DOMDocument_createComment arginfo_class_DOMCharacterData_appendData
-
-#define arginfo_class_DOMDocument_createDocumentFragment arginfo_class_DOMNode_getLineNo
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMDocument_createElement, 0, 0, 1)
-       ZEND_ARG_TYPE_INFO(0, tagName, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, value, IS_STRING, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMDocument_createElementNS, 0, 0, 2)
-       ZEND_ARG_TYPE_INFO(0, namespaceURI, IS_STRING, 1)
-       ZEND_ARG_TYPE_INFO(0, qualifiedName, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, value, IS_STRING, 0)
-ZEND_END_ARG_INFO()
-
-#define arginfo_class_DOMDocument_createEntityReference arginfo_class_DOMDocument_createAttribute
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMDocument_createProcessingInstruction, 0, 0, 1)
-       ZEND_ARG_TYPE_INFO(0, target, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, data, IS_STRING, 0)
-ZEND_END_ARG_INFO()
-
-#define arginfo_class_DOMDocument_createTextNode arginfo_class_DOMCharacterData_appendData
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMDocument_getElementById, 0, 0, 1)
-       ZEND_ARG_TYPE_INFO(0, elementId, IS_STRING, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMDocument_getElementsByTagName, 0, 0, 1)
-       ZEND_ARG_TYPE_INFO(0, tagName, IS_STRING, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMDocument_getElementsByTagNameNS, 0, 0, 2)
-       ZEND_ARG_TYPE_INFO(0, namespaceURI, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, localName, IS_STRING, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMDocument_importNode, 0, 0, 1)
-       ZEND_ARG_OBJ_INFO(0, importedNode, DOMNode, 0)
-       ZEND_ARG_TYPE_INFO(0, deep, _IS_BOOL, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMDocument_load, 0, 0, 1)
-       ZEND_ARG_TYPE_INFO(0, filename, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, options, IS_LONG, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMDocument_loadXML, 0, 0, 1)
-       ZEND_ARG_TYPE_INFO(0, source, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, options, IS_LONG, 0)
-ZEND_END_ARG_INFO()
-
-#define arginfo_class_DOMDocument_normalizeDocument arginfo_class_DOMNode_getLineNo
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMDocument_registerNodeClass, 0, 0, 2)
-       ZEND_ARG_TYPE_INFO(0, baseclass, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, extendedclass, IS_STRING, 1)
-ZEND_END_ARG_INFO()
-
-#define arginfo_class_DOMDocument_save arginfo_class_DOMDocument_load
-
-#if defined(LIBXML_HTML_ENABLED)
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMDocument_loadHTML, 0, 0, 1)
-       ZEND_ARG_TYPE_INFO(0, source, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, options, IS_LONG, 0)
-ZEND_END_ARG_INFO()
-#endif
-
-#if defined(LIBXML_HTML_ENABLED)
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMDocument_loadHTMLFile, 0, 0, 1)
-       ZEND_ARG_TYPE_INFO(0, filename, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, options, IS_LONG, 0)
-ZEND_END_ARG_INFO()
-#endif
-
-#if defined(LIBXML_HTML_ENABLED)
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMDocument_saveHTML, 0, 0, 0)
-       ZEND_ARG_OBJ_INFO(0, node, DOMNode, 1)
-ZEND_END_ARG_INFO()
-#endif
-
-#if defined(LIBXML_HTML_ENABLED)
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMDocument_saveHTMLFile, 0, 0, 1)
-       ZEND_ARG_TYPE_INFO(0, filename, IS_STRING, 0)
-ZEND_END_ARG_INFO()
-#endif
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMDocument_saveXML, 0, 0, 0)
-       ZEND_ARG_OBJ_INFO(0, node, DOMNode, 1)
-       ZEND_ARG_TYPE_INFO(0, options, IS_LONG, 0)
-ZEND_END_ARG_INFO()
-
-#if defined(LIBXML_SCHEMAS_ENABLED)
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMDocument_schemaValidate, 0, 0, 1)
-       ZEND_ARG_TYPE_INFO(0, filename, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, flags, IS_LONG, 0)
-ZEND_END_ARG_INFO()
-#endif
-
-#if defined(LIBXML_SCHEMAS_ENABLED)
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMDocument_schemaValidateSource, 0, 0, 1)
-       ZEND_ARG_TYPE_INFO(0, source, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, flags, IS_LONG, 0)
-ZEND_END_ARG_INFO()
-#endif
-
-#if defined(LIBXML_SCHEMAS_ENABLED)
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMDocument_relaxNGValidate, 0, 0, 1)
-       ZEND_ARG_TYPE_INFO(0, filename, IS_STRING, 0)
-ZEND_END_ARG_INFO()
-#endif
-
-#if defined(LIBXML_SCHEMAS_ENABLED)
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMDocument_relaxNGValidateSource, 0, 0, 1)
-       ZEND_ARG_TYPE_INFO(0, source, IS_STRING, 0)
-ZEND_END_ARG_INFO()
-#endif
-
-#define arginfo_class_DOMDocument_validate arginfo_class_DOMNode_getLineNo
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMDocument_xinclude, 0, 0, 0)
-       ZEND_ARG_TYPE_INFO(0, options, IS_LONG, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMDocument_adoptNode, 0, 0, 1)
-       ZEND_ARG_OBJ_INFO(0, source, DOMNode, 0)
-ZEND_END_ARG_INFO()
-
-#define arginfo_class_DOMDocumentFragment___construct arginfo_class_DOMNode_getLineNo
-
-#define arginfo_class_DOMDocumentFragment_appendXML arginfo_class_DOMCharacterData_appendData
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMElement___construct, 0, 0, 1)
-       ZEND_ARG_TYPE_INFO(0, name, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, value, IS_STRING, 1)
-       ZEND_ARG_TYPE_INFO(0, uri, IS_STRING, 0)
-ZEND_END_ARG_INFO()
-
-#define arginfo_class_DOMElement_getAttribute arginfo_class_DOMDocument_createAttribute
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMElement_getAttributeNS, 0, 0, 2)
-       ZEND_ARG_TYPE_INFO(0, namespaceURI, IS_STRING, 1)
-       ZEND_ARG_TYPE_INFO(0, localName, IS_STRING, 0)
-ZEND_END_ARG_INFO()
-
-#define arginfo_class_DOMElement_getAttributeNode arginfo_class_DOMDocument_createAttribute
-
-#define arginfo_class_DOMElement_getAttributeNodeNS arginfo_class_DOMElement_getAttributeNS
-
-#define arginfo_class_DOMElement_getElementsByTagName arginfo_class_DOMDocument_createAttribute
-
-#define arginfo_class_DOMElement_getElementsByTagNameNS arginfo_class_DOMDocument_getElementsByTagNameNS
-
-#define arginfo_class_DOMElement_hasAttribute arginfo_class_DOMDocument_createAttribute
-
-#define arginfo_class_DOMElement_hasAttributeNS arginfo_class_DOMElement_getAttributeNS
-
-#define arginfo_class_DOMElement_removeAttribute arginfo_class_DOMDocument_createAttribute
-
-#define arginfo_class_DOMElement_removeAttributeNS arginfo_class_DOMElement_getAttributeNS
-
-#define arginfo_class_DOMElement_removeAttributeNode arginfo_class_DOMDocument_createAttribute
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMElement_setAttribute, 0, 0, 2)
-       ZEND_ARG_TYPE_INFO(0, name, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, value, IS_STRING, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMElement_setAttributeNS, 0, 0, 3)
-       ZEND_ARG_TYPE_INFO(0, namespaceURI, IS_STRING, 1)
-       ZEND_ARG_TYPE_INFO(0, localName, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, value, IS_STRING, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMElement_setAttributeNode, 0, 0, 1)
-       ZEND_ARG_OBJ_INFO(0, attr, DOMAttr, 0)
-ZEND_END_ARG_INFO()
-
-#define arginfo_class_DOMElement_setAttributeNodeNS arginfo_class_DOMElement_setAttributeNode
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMElement_setIdAttribute, 0, 0, 2)
-       ZEND_ARG_TYPE_INFO(0, name, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, isId, _IS_BOOL, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMElement_setIdAttributeNS, 0, 0, 3)
-       ZEND_ARG_TYPE_INFO(0, namespaceURI, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, localName, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, isId, _IS_BOOL, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMElement_setIdAttributeNode, 0, 0, 2)
-       ZEND_ARG_OBJ_INFO(0, attr, DOMAttr, 0)
-       ZEND_ARG_TYPE_INFO(0, isId, _IS_BOOL, 0)
-ZEND_END_ARG_INFO()
-
-#define arginfo_class_DOMEntityReference___construct arginfo_class_DOMDocument_createAttribute
-
-#define arginfo_class_DOMImplementation_getFeature arginfo_class_DOMNode_isSupported
-
-#define arginfo_class_DOMImplementation_hasFeature arginfo_class_DOMNode_isSupported
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMImplementation_createDocumentType, 0, 0, 1)
-       ZEND_ARG_TYPE_INFO(0, qualifiedName, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, publicId, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, systemId, IS_STRING, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMImplementation_createDocument, 0, 0, 0)
-       ZEND_ARG_TYPE_INFO(0, namespaceURI, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, qualifiedName, IS_STRING, 0)
-       ZEND_ARG_OBJ_INFO(0, doctype, DOMDocumentType, 0)
-ZEND_END_ARG_INFO()
-
-#define arginfo_class_DOMNamedNodeMap_getNamedItem arginfo_class_DOMDocument_createAttribute
-
-#define arginfo_class_DOMNamedNodeMap_getNamedItemNS arginfo_class_DOMElement_getAttributeNS
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMNamedNodeMap_item, 0, 0, 1)
-       ZEND_ARG_TYPE_INFO(0, index, IS_LONG, 0)
-ZEND_END_ARG_INFO()
-
-#define arginfo_class_DOMNamedNodeMap_count arginfo_class_DOMNode_getLineNo
-
-#define arginfo_class_DOMNodeList_count arginfo_class_DOMNode_getLineNo
-
-#define arginfo_class_DOMNodeList_item arginfo_class_DOMNamedNodeMap_item
-
-#define arginfo_class_DOMProcessingInstruction___construct arginfo_class_DOMAttr___construct
-
-#define arginfo_class_DOMText___construct arginfo_class_DOMComment___construct
-
-#define arginfo_class_DOMText_isWhitespaceInElementContent arginfo_class_DOMNode_getLineNo
-
-#define arginfo_class_DOMText_isElementContentWhitespace arginfo_class_DOMNode_getLineNo
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMText_splitText, 0, 0, 1)
-       ZEND_ARG_TYPE_INFO(0, offset, IS_LONG, 0)
-ZEND_END_ARG_INFO()
-
-#if defined(LIBXML_XPATH_ENABLED)
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMXPath___construct, 0, 0, 1)
-       ZEND_ARG_OBJ_INFO(0, doc, DOMDocument, 0)
-       ZEND_ARG_TYPE_INFO(0, registerNodeNS, _IS_BOOL, 0)
-ZEND_END_ARG_INFO()
-#endif
-
-#if defined(LIBXML_XPATH_ENABLED)
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMXPath_evaluate, 0, 0, 1)
-       ZEND_ARG_TYPE_INFO(0, expr, IS_STRING, 0)
-       ZEND_ARG_OBJ_INFO(0, context, DOMNode, 1)
-       ZEND_ARG_TYPE_INFO(0, registerNodeNS, _IS_BOOL, 0)
-ZEND_END_ARG_INFO()
-#endif
-
-#if defined(LIBXML_XPATH_ENABLED)
-#define arginfo_class_DOMXPath_query arginfo_class_DOMXPath_evaluate
-#endif
-
-#if defined(LIBXML_XPATH_ENABLED)
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMXPath_registerNamespace, 0, 0, 2)
-       ZEND_ARG_TYPE_INFO(0, prefix, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, namespaceURI, IS_STRING, 0)
-ZEND_END_ARG_INFO()
-#endif
-
-#if defined(LIBXML_XPATH_ENABLED)
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMXPath_registerPhpFunctions, 0, 0, 0)
-       ZEND_ARG_INFO(0, restrict)
-ZEND_END_ARG_INFO()
-#endif
-
 ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_dom_import_simplexml, 0, 1, DOMElement, 1)
        ZEND_ARG_TYPE_INFO(0, node, IS_OBJECT, 0)
 ZEND_END_ARG_INFO()
index 97d1f98b92db3563e8bd6d5bc32bda3deb66f5eb..51b946da2a61cebe31fb93e0dc2f0f78d32c1742 100644 (file)
@@ -22,7 +22,7 @@
 #include "php.h"
 #if HAVE_LIBXML && HAVE_DOM
 #include "php_dom.h"
-#include "dom_arginfo.h"
+#include "domimplementation_arginfo.h"
 
 /*
 * class DOMImplementation
diff --git a/ext/dom/domimplementation.stub.php b/ext/dom/domimplementation.stub.php
new file mode 100644 (file)
index 0000000..c103d48
--- /dev/null
@@ -0,0 +1,16 @@
+<?php
+
+class DOMImplementation
+{
+    public function getFeature(string $feature, string $version) {}
+
+    /** @return bool */
+    public function hasFeature(string $feature, string $version) {}
+
+    /** @return DOMDocumentType|false */
+    public function createDocumentType(
+        string $qualifiedName, string $publicId = "", string $systemId = "") {}
+
+    /** @return DOMDocument|false */
+    public function createDocument(string $namespaceURI = "", string $qualifiedName = "", DOMDocumentType $doctype = UNKNOWN) {}
+}
diff --git a/ext/dom/domimplementation_arginfo.h b/ext/dom/domimplementation_arginfo.h
new file mode 100644 (file)
index 0000000..1747bfb
--- /dev/null
@@ -0,0 +1,20 @@
+/* This is a generated file, edit the .stub.php file instead. */
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMImplementation_getFeature, 0, 0, 2)
+       ZEND_ARG_TYPE_INFO(0, feature, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, version, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_DOMImplementation_hasFeature arginfo_class_DOMImplementation_getFeature
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMImplementation_createDocumentType, 0, 0, 1)
+       ZEND_ARG_TYPE_INFO(0, qualifiedName, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, publicId, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, systemId, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMImplementation_createDocument, 0, 0, 0)
+       ZEND_ARG_TYPE_INFO(0, namespaceURI, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, qualifiedName, IS_STRING, 0)
+       ZEND_ARG_OBJ_INFO(0, doctype, DOMDocumentType, 0)
+ZEND_END_ARG_INFO()
index 6dfda8a85c92375ae6712209af045100c040a1fb..012d3a088b6c473e289e12d50b0227352e9f7bbc 100644 (file)
@@ -22,7 +22,7 @@
 #include "php.h"
 #if HAVE_LIBXML && HAVE_DOM
 #include "php_dom.h"
-#include "dom_arginfo.h"
+#include "element_arginfo.h"
 
 /*
 * class DOMElement extends DOMNode
@@ -51,12 +51,12 @@ const zend_function_entry php_dom_element_class_functions[] = { /* {{{ */
        PHP_ME(domelement, setIdAttributeNS, arginfo_class_DOMElement_setIdAttributeNS, ZEND_ACC_PUBLIC)
        PHP_ME(domelement, setIdAttributeNode, arginfo_class_DOMElement_setIdAttributeNode, ZEND_ACC_PUBLIC)
        PHP_ME(domelement, __construct, arginfo_class_DOMElement___construct, ZEND_ACC_PUBLIC)
-       PHP_ME(domelement, remove, arginfo_class_DOMChildNode_remove, ZEND_ACC_PUBLIC)
-       PHP_ME(domelement, after, arginfo_class_DOMChildNode_after, ZEND_ACC_PUBLIC)
-       PHP_ME(domelement, before, arginfo_class_DOMChildNode_before, ZEND_ACC_PUBLIC)
-       PHP_ME(domelement, replaceWith, arginfo_class_DOMChildNode_replaceWith, ZEND_ACC_PUBLIC)
-       PHP_ME(domelement, append, arginfo_class_DOMParentNode_append, ZEND_ACC_PUBLIC)
-       PHP_ME(domelement, prepend, arginfo_class_DOMParentNode_prepend, ZEND_ACC_PUBLIC)
+       PHP_ME(domelement, remove, arginfo_class_DOMElement_remove, ZEND_ACC_PUBLIC)
+       PHP_ME(domelement, after, arginfo_class_DOMElement_after, ZEND_ACC_PUBLIC)
+       PHP_ME(domelement, before, arginfo_class_DOMElement_before, ZEND_ACC_PUBLIC)
+       PHP_ME(domelement, replaceWith, arginfo_class_DOMElement_replaceWith, ZEND_ACC_PUBLIC)
+       PHP_ME(domelement, append, arginfo_class_DOMElement_append, ZEND_ACC_PUBLIC)
+       PHP_ME(domelement, prepend, arginfo_class_DOMElement_prepend, ZEND_ACC_PUBLIC)
        PHP_FE_END
 };
 /* }}} */
diff --git a/ext/dom/element.stub.php b/ext/dom/element.stub.php
new file mode 100644 (file)
index 0000000..6cf959f
--- /dev/null
@@ -0,0 +1,77 @@
+<?php
+
+class DOMElement implements DOMParentNode, DOMChildNode
+{
+    public function __construct(string $name, ?string $value = null, string $uri = "") {}
+
+    /** @return string */
+    public function getAttribute(string $name) {}
+
+    /** @return string */
+    public function getAttributeNS(?string $namespaceURI, string $localName) {}
+
+    /** @return DOMAttr|DOMNamespaceNode|false */
+    public function getAttributeNode(string $name) {}
+
+    /** @return DOMAttr|DOMNamespaceNode|null */
+    public function getAttributeNodeNS(?string $namespaceURI, string $localName) {}
+
+    /** @return DOMNodeList */
+    public function getElementsByTagName(string $name) {}
+
+    /** @return DOMNodeList */
+    public function getElementsByTagNameNS(string $namespaceURI, string $localName) {}
+
+    /** @return bool */
+    public function hasAttribute(string $name) {}
+
+    /** @return bool */
+    public function hasAttributeNS(?string $namespaceURI, string $localName) {}
+
+    /** @return bool */
+    public function removeAttribute(string $name) {}
+
+    /** @return DOMAttr|false */
+    public function removeAttributeNS(?string $namespaceURI, string $localName) {}
+
+    /** @return DOMAttr|false */
+    public function removeAttributeNode(string $name) {}
+
+    /** @return DOMAttr|bool */
+    public function setAttribute(string $name, string $value) {}
+
+    /** @return null|false */
+    public function setAttributeNS(?string $namespaceURI, string $localName, string $value) {}
+
+    /** @return DOMAttr|null|false */
+    public function setAttributeNode(DOMAttr $attr) {}
+
+    /** @return DOMAttr|null|false */
+    public function setAttributeNodeNS(DOMAttr $attr) {}
+
+    /** @return void */
+    public function setIdAttribute(string $name, bool $isId) {}
+
+    /** @return void */
+    public function setIdAttributeNS(string $namespaceURI, string $localName, bool $isId) {}
+
+    /** @return void */
+    public function setIdAttributeNode(DOMAttr $attr, bool $isId) {}
+
+    public function remove(): void {}
+
+    /** @var ...DOMNode|string $nodes */
+    public function before(... $nodes): void {}
+
+    /** @var ...DOMNode|string $nodes */
+    public function after(...$nodes): void {}
+
+    /** @var ...DOMNode|string $nodes */
+    public function replaceWith(...$nodes): void {}
+
+    /** @var ...DOMNode|string $nodes */
+    public function append(...$nodes): void {}
+
+    /** @var ...DOMNode|string $nodes */
+    public function prepend(...$nodes): void {}
+}
diff --git a/ext/dom/element_arginfo.h b/ext/dom/element_arginfo.h
new file mode 100644 (file)
index 0000000..2fe19ba
--- /dev/null
@@ -0,0 +1,85 @@
+/* This is a generated file, edit the .stub.php file instead. */
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMElement___construct, 0, 0, 1)
+       ZEND_ARG_TYPE_INFO(0, name, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, value, IS_STRING, 1)
+       ZEND_ARG_TYPE_INFO(0, uri, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMElement_getAttribute, 0, 0, 1)
+       ZEND_ARG_TYPE_INFO(0, name, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMElement_getAttributeNS, 0, 0, 2)
+       ZEND_ARG_TYPE_INFO(0, namespaceURI, IS_STRING, 1)
+       ZEND_ARG_TYPE_INFO(0, localName, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_DOMElement_getAttributeNode arginfo_class_DOMElement_getAttribute
+
+#define arginfo_class_DOMElement_getAttributeNodeNS arginfo_class_DOMElement_getAttributeNS
+
+#define arginfo_class_DOMElement_getElementsByTagName arginfo_class_DOMElement_getAttribute
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMElement_getElementsByTagNameNS, 0, 0, 2)
+       ZEND_ARG_TYPE_INFO(0, namespaceURI, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, localName, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_DOMElement_hasAttribute arginfo_class_DOMElement_getAttribute
+
+#define arginfo_class_DOMElement_hasAttributeNS arginfo_class_DOMElement_getAttributeNS
+
+#define arginfo_class_DOMElement_removeAttribute arginfo_class_DOMElement_getAttribute
+
+#define arginfo_class_DOMElement_removeAttributeNS arginfo_class_DOMElement_getAttributeNS
+
+#define arginfo_class_DOMElement_removeAttributeNode arginfo_class_DOMElement_getAttribute
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMElement_setAttribute, 0, 0, 2)
+       ZEND_ARG_TYPE_INFO(0, name, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, value, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMElement_setAttributeNS, 0, 0, 3)
+       ZEND_ARG_TYPE_INFO(0, namespaceURI, IS_STRING, 1)
+       ZEND_ARG_TYPE_INFO(0, localName, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, value, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMElement_setAttributeNode, 0, 0, 1)
+       ZEND_ARG_OBJ_INFO(0, attr, DOMAttr, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_DOMElement_setAttributeNodeNS arginfo_class_DOMElement_setAttributeNode
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMElement_setIdAttribute, 0, 0, 2)
+       ZEND_ARG_TYPE_INFO(0, name, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, isId, _IS_BOOL, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMElement_setIdAttributeNS, 0, 0, 3)
+       ZEND_ARG_TYPE_INFO(0, namespaceURI, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, localName, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, isId, _IS_BOOL, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMElement_setIdAttributeNode, 0, 0, 2)
+       ZEND_ARG_OBJ_INFO(0, attr, DOMAttr, 0)
+       ZEND_ARG_TYPE_INFO(0, isId, _IS_BOOL, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_class_DOMElement_remove, 0, 0, IS_VOID, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_class_DOMElement_before, 0, 0, IS_VOID, 0)
+       ZEND_ARG_VARIADIC_INFO(0, nodes)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_DOMElement_after arginfo_class_DOMElement_before
+
+#define arginfo_class_DOMElement_replaceWith arginfo_class_DOMElement_before
+
+#define arginfo_class_DOMElement_append arginfo_class_DOMElement_before
+
+#define arginfo_class_DOMElement_prepend arginfo_class_DOMElement_before
index ac5258ff2f23cb6b34e9fa9049e5fa30a5d4ac27..a050b474a30b4c16dec1d36a2e016160fb82a298 100644 (file)
@@ -22,7 +22,7 @@
 #include "php.h"
 #if HAVE_LIBXML && HAVE_DOM
 #include "php_dom.h"
-#include "dom_arginfo.h"
+#include "entityreference_arginfo.h"
 
 /*
 * class DOMEntityReference extends DOMNode
diff --git a/ext/dom/entityreference.stub.php b/ext/dom/entityreference.stub.php
new file mode 100644 (file)
index 0000000..ff56faf
--- /dev/null
@@ -0,0 +1,6 @@
+<?php
+
+class DOMEntityReference
+{
+    public function __construct(string $name) {}
+}
diff --git a/ext/dom/entityreference_arginfo.h b/ext/dom/entityreference_arginfo.h
new file mode 100644 (file)
index 0000000..d09fe3c
--- /dev/null
@@ -0,0 +1,5 @@
+/* This is a generated file, edit the .stub.php file instead. */
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMEntityReference___construct, 0, 0, 1)
+       ZEND_ARG_TYPE_INFO(0, name, IS_STRING, 0)
+ZEND_END_ARG_INFO()
index 33048fd09babe37c4c5fa9a70524c19a721bdbac..3e06edd8271dff0fb9e24f188a84cb3e20687307 100644 (file)
@@ -22,7 +22,7 @@
 #include "php.h"
 #if HAVE_LIBXML && HAVE_DOM
 #include "php_dom.h"
-#include "dom_arginfo.h"
+#include "namednodemap_arginfo.h"
 
 /*
 * class DOMNamedNodeMap
diff --git a/ext/dom/namednodemap.stub.php b/ext/dom/namednodemap.stub.php
new file mode 100644 (file)
index 0000000..3884e99
--- /dev/null
@@ -0,0 +1,16 @@
+<?php
+
+class DOMNamedNodeMap
+{
+    /** @return ?DOMNode */
+    public function getNamedItem(string $name) {}
+
+    /** @return ?DOMNode */
+    public function getNamedItemNS(?string $namespaceURI, string $localName) {}
+
+    /** @return ?DOMNode */
+    public function item(int $index) {}
+
+    /** @return int|false */
+    public function count() {}
+}
diff --git a/ext/dom/namednodemap_arginfo.h b/ext/dom/namednodemap_arginfo.h
new file mode 100644 (file)
index 0000000..c28c433
--- /dev/null
@@ -0,0 +1,17 @@
+/* This is a generated file, edit the .stub.php file instead. */
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMNamedNodeMap_getNamedItem, 0, 0, 1)
+       ZEND_ARG_TYPE_INFO(0, name, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMNamedNodeMap_getNamedItemNS, 0, 0, 2)
+       ZEND_ARG_TYPE_INFO(0, namespaceURI, IS_STRING, 1)
+       ZEND_ARG_TYPE_INFO(0, localName, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMNamedNodeMap_item, 0, 0, 1)
+       ZEND_ARG_TYPE_INFO(0, index, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMNamedNodeMap_count, 0, 0, 0)
+ZEND_END_ARG_INFO()
index 9029478e1587497d4c47912972c19b479b9b245d..6a3db3b1f58a35ded3715e64a50d501c094ff7a9 100644 (file)
@@ -22,7 +22,7 @@
 #include "php.h"
 #if HAVE_LIBXML && HAVE_DOM
 #include "php_dom.h"
-#include "dom_arginfo.h"
+#include "node_arginfo.h"
 
 /*
 * class DOMNode
diff --git a/ext/dom/node.stub.php b/ext/dom/node.stub.php
new file mode 100644 (file)
index 0000000..50b79a0
--- /dev/null
@@ -0,0 +1,69 @@
+<?php
+
+interface DOMChildNode
+{
+    public function remove(): void;
+
+    /** @var ...DOMNode|string $nodes */
+    public function before(... $nodes): void;
+
+    /** @var ...DOMNode|string $nodes */
+    public function after(...$nodes): void;
+
+    /** @var ...DOMNode|string $nodes */
+    public function replaceWith(...$nodes): void;
+}
+
+class DOMNode
+{
+    /** @return DOMNode|false */
+    public function appendChild(DOMNode $newChild) {}
+
+    /** @return string|false */
+    public function C14N(bool $exclusive = false, bool $with_comments = false, ?array $xpath = null, ?array $ns_prefixes = null) {}
+
+    /** @return int|false */
+    public function C14NFile(string $uri, bool $exclusive = false, bool $with_comments = false, ?array $xpath = null, ?array $ns_prefixes = null) {}
+
+    /** @return DOMNode|false */
+    public function cloneNode(bool $recursive = false) {}
+
+    /** @return int */
+    public function getLineNo() {}
+
+    /** @return ?string */
+    public function getNodePath() {}
+
+    /** @return bool */
+    public function hasAttributes() {}
+
+    /** @return bool */
+    public function hasChildNodes() {}
+
+    /** @return DOMNode|false */
+    public function insertBefore(DOMNode $newChild, ?DOMNode $refChild = null) {}
+
+    /** @return bool */
+    public function isDefaultNamespace(string $namespaceURI) {}
+
+    /** @return bool */
+    public function isSameNode(DOMNode $other) {}
+
+    /** @return bool */
+    public function isSupported(string $feature, string $version) {}
+
+    /** @return ?string */
+    public function lookupNamespaceUri(?string $prefix) {}
+
+    /** @return ?string */
+    public function lookupPrefix(string $namespaceURI) {}
+
+    /** @return void */
+    public function normalize() {}
+
+    /** @return DOMNode|false */
+    public function removeChild(DOMNode $oldChild) {}
+
+    /** @return DOMNode|false */
+    public function replaceChild(DOMNode $newChild, DOMNode $oldChild) {}
+}
diff --git a/ext/dom/node_arginfo.h b/ext/dom/node_arginfo.h
new file mode 100644 (file)
index 0000000..928c289
--- /dev/null
@@ -0,0 +1,79 @@
+/* This is a generated file, edit the .stub.php file instead. */
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_class_DOMChildNode_remove, 0, 0, IS_VOID, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_class_DOMChildNode_before, 0, 0, IS_VOID, 0)
+       ZEND_ARG_VARIADIC_INFO(0, nodes)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_DOMChildNode_after arginfo_class_DOMChildNode_before
+
+#define arginfo_class_DOMChildNode_replaceWith arginfo_class_DOMChildNode_before
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMNode_appendChild, 0, 0, 1)
+       ZEND_ARG_OBJ_INFO(0, newChild, DOMNode, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMNode_C14N, 0, 0, 0)
+       ZEND_ARG_TYPE_INFO(0, exclusive, _IS_BOOL, 0)
+       ZEND_ARG_TYPE_INFO(0, with_comments, _IS_BOOL, 0)
+       ZEND_ARG_TYPE_INFO(0, xpath, IS_ARRAY, 1)
+       ZEND_ARG_TYPE_INFO(0, ns_prefixes, IS_ARRAY, 1)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMNode_C14NFile, 0, 0, 1)
+       ZEND_ARG_TYPE_INFO(0, uri, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, exclusive, _IS_BOOL, 0)
+       ZEND_ARG_TYPE_INFO(0, with_comments, _IS_BOOL, 0)
+       ZEND_ARG_TYPE_INFO(0, xpath, IS_ARRAY, 1)
+       ZEND_ARG_TYPE_INFO(0, ns_prefixes, IS_ARRAY, 1)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMNode_cloneNode, 0, 0, 0)
+       ZEND_ARG_TYPE_INFO(0, recursive, _IS_BOOL, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMNode_getLineNo, 0, 0, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_DOMNode_getNodePath arginfo_class_DOMNode_getLineNo
+
+#define arginfo_class_DOMNode_hasAttributes arginfo_class_DOMNode_getLineNo
+
+#define arginfo_class_DOMNode_hasChildNodes arginfo_class_DOMNode_getLineNo
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMNode_insertBefore, 0, 0, 1)
+       ZEND_ARG_OBJ_INFO(0, newChild, DOMNode, 0)
+       ZEND_ARG_OBJ_INFO(0, refChild, DOMNode, 1)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMNode_isDefaultNamespace, 0, 0, 1)
+       ZEND_ARG_TYPE_INFO(0, namespaceURI, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMNode_isSameNode, 0, 0, 1)
+       ZEND_ARG_OBJ_INFO(0, other, DOMNode, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMNode_isSupported, 0, 0, 2)
+       ZEND_ARG_TYPE_INFO(0, feature, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, version, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMNode_lookupNamespaceUri, 0, 0, 1)
+       ZEND_ARG_TYPE_INFO(0, prefix, IS_STRING, 1)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_DOMNode_lookupPrefix arginfo_class_DOMNode_isDefaultNamespace
+
+#define arginfo_class_DOMNode_normalize arginfo_class_DOMNode_getLineNo
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMNode_removeChild, 0, 0, 1)
+       ZEND_ARG_OBJ_INFO(0, oldChild, DOMNode, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMNode_replaceChild, 0, 0, 2)
+       ZEND_ARG_OBJ_INFO(0, newChild, DOMNode, 0)
+       ZEND_ARG_OBJ_INFO(0, oldChild, DOMNode, 0)
+ZEND_END_ARG_INFO()
index 21addd2d18c145f08338a73e75dee09cdf09481b..65f9887337da6d80d232a3181da9b5bac751586c 100644 (file)
@@ -22,7 +22,7 @@
 #include "php.h"
 #if HAVE_LIBXML && HAVE_DOM
 #include "php_dom.h"
-#include "dom_arginfo.h"
+#include "nodelist_arginfo.h"
 
 /*
 * class DOMNodeList
@@ -37,7 +37,6 @@ const zend_function_entry php_dom_nodelist_class_functions[] = {
        PHP_FE_END
 };
 
-
 /* {{{ length  int
 readonly=yes
 URL: http://www.w3.org/TR/2003/WD-DOM-Level-3-Core-20030226/DOM3-Core.html#ID-203510337
diff --git a/ext/dom/nodelist.stub.php b/ext/dom/nodelist.stub.php
new file mode 100644 (file)
index 0000000..e7e2b7c
--- /dev/null
@@ -0,0 +1,10 @@
+<?php
+
+class DOMNodeList
+{
+    /** @return int|false */
+    public function count() {}
+
+    /** @return ?DOMNode */
+    public function item(int $index) {}
+}
diff --git a/ext/dom/nodelist_arginfo.h b/ext/dom/nodelist_arginfo.h
new file mode 100644 (file)
index 0000000..19afdba
--- /dev/null
@@ -0,0 +1,8 @@
+/* This is a generated file, edit the .stub.php file instead. */
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMNodeList_count, 0, 0, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMNodeList_item, 0, 0, 1)
+       ZEND_ARG_TYPE_INFO(0, index, IS_LONG, 0)
+ZEND_END_ARG_INFO()
index 0e7b49ef4ecdb13bbb17eeaa680ba5cb13bdf65f..11dab851b751f5dd476b8da279eadb761a7d6244 100644 (file)
@@ -23,8 +23,7 @@
 #include "php.h"
 #if HAVE_LIBXML && HAVE_DOM
 #include "php_dom.h"
-#include "dom_arginfo.h"
-
+#include "parentnode_arginfo.h"
 
 /* {{{ DOMParentNode methods */
 const zend_function_entry php_dom_parent_node_class_functions[] = { /* {{{ */
diff --git a/ext/dom/parentnode.stub.php b/ext/dom/parentnode.stub.php
new file mode 100644 (file)
index 0000000..fb2873d
--- /dev/null
@@ -0,0 +1,10 @@
+<?php
+
+interface DOMParentNode
+{
+    /** @var ...DOMNode|string $nodes */
+    public function append(...$nodes): void;
+
+    /** @var ...DOMNode|string $nodes */
+    public function prepend(...$nodes): void;
+}
diff --git a/ext/dom/parentnode_arginfo.h b/ext/dom/parentnode_arginfo.h
new file mode 100644 (file)
index 0000000..3bceebe
--- /dev/null
@@ -0,0 +1,7 @@
+/* This is a generated file, edit the .stub.php file instead. */
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_class_DOMParentNode_append, 0, 0, IS_VOID, 0)
+       ZEND_ARG_VARIADIC_INFO(0, nodes)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_DOMParentNode_prepend arginfo_class_DOMParentNode_append
index 8e250f13010962545f75d70a4d7e1e296780347b..8a6e8fe33ec918e055d1b31a03002e82974cac36 100644 (file)
@@ -22,7 +22,7 @@
 #include "php.h"
 #if HAVE_LIBXML && HAVE_DOM
 #include "php_dom.h"
-#include "dom_arginfo.h"
+#include "processinginstruction_arginfo.h"
 
 /*
 * class DOMProcessingInstruction extends DOMNode
diff --git a/ext/dom/processinginstruction.stub.php b/ext/dom/processinginstruction.stub.php
new file mode 100644 (file)
index 0000000..41108ef
--- /dev/null
@@ -0,0 +1,6 @@
+<?php
+
+class DOMProcessingInstruction
+{
+    public function __construct(string $name, string $value = "") {}
+}
diff --git a/ext/dom/processinginstruction_arginfo.h b/ext/dom/processinginstruction_arginfo.h
new file mode 100644 (file)
index 0000000..4cddede
--- /dev/null
@@ -0,0 +1,6 @@
+/* This is a generated file, edit the .stub.php file instead. */
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMProcessingInstruction___construct, 0, 0, 1)
+       ZEND_ARG_TYPE_INFO(0, name, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, value, IS_STRING, 0)
+ZEND_END_ARG_INFO()
index a20097a36e69d55b9341cad7a916affb95fd7c50..103d94dff89319697dfc39a9ba986506511e8df9 100644 (file)
@@ -23,7 +23,7 @@
 #if HAVE_LIBXML && HAVE_DOM
 #include "php_dom.h"
 #include "dom_ce.h"
-#include "dom_arginfo.h"
+#include "text_arginfo.h"
 
 /*
 * class DOMText extends DOMCharacterData
diff --git a/ext/dom/text.stub.php b/ext/dom/text.stub.php
new file mode 100644 (file)
index 0000000..f45d23f
--- /dev/null
@@ -0,0 +1,14 @@
+<?php
+
+class DOMText {
+    public function __construct(string $value = "") {}
+
+    /** @return bool */
+    public function isWhitespaceInElementContent() {}
+
+    /** @return bool */
+    public function isElementContentWhitespace() {}
+
+    /** @return DOMText|false */
+    public function splitText(int $offset) {}
+}
diff --git a/ext/dom/text_arginfo.h b/ext/dom/text_arginfo.h
new file mode 100644 (file)
index 0000000..2de2464
--- /dev/null
@@ -0,0 +1,14 @@
+/* This is a generated file, edit the .stub.php file instead. */
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMText___construct, 0, 0, 0)
+       ZEND_ARG_TYPE_INFO(0, value, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMText_isWhitespaceInElementContent, 0, 0, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_DOMText_isElementContentWhitespace arginfo_class_DOMText_isWhitespaceInElementContent
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMText_splitText, 0, 0, 1)
+       ZEND_ARG_TYPE_INFO(0, offset, IS_LONG, 0)
+ZEND_END_ARG_INFO()
index 718b433b409218485b8f322d7bbb320a91d833f1..85467b815dd32ba3185407911529bcd3ddce0b08 100644 (file)
@@ -22,7 +22,7 @@
 #include "php.h"
 #if HAVE_LIBXML && HAVE_DOM
 #include "php_dom.h"
-#include "dom_arginfo.h"
+#include "xpath_arginfo.h"
 
 #define PHP_DOM_XPATH_QUERY 0
 #define PHP_DOM_XPATH_EVALUATE 1
diff --git a/ext/dom/xpath.stub.php b/ext/dom/xpath.stub.php
new file mode 100644 (file)
index 0000000..167c5a9
--- /dev/null
@@ -0,0 +1,20 @@
+<?php
+
+#if defined(LIBXML_XPATH_ENABLED)
+class DOMXPath
+{
+    public function __construct(DOMDocument $doc, bool $registerNodeNS = true) {}
+
+    /** @return mixed */
+    public function evaluate(string $expr, ?DOMNode $context = null, bool $registerNodeNS = true) {}
+
+    /** @return mixed */
+    public function query(string $expr, ?DOMNode $context = null, bool $registerNodeNS = true) {}
+
+    /** @return bool */
+    public function registerNamespace(string $prefix, string $namespaceURI) {}
+
+    /** @param string|array $restrict */
+    public function registerPhpFunctions($restrict = null) {}
+}
+#endif
diff --git a/ext/dom/xpath_arginfo.h b/ext/dom/xpath_arginfo.h
new file mode 100644 (file)
index 0000000..64a408b
--- /dev/null
@@ -0,0 +1,33 @@
+/* This is a generated file, edit the .stub.php file instead. */
+
+#if defined(LIBXML_XPATH_ENABLED)
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMXPath___construct, 0, 0, 1)
+       ZEND_ARG_OBJ_INFO(0, doc, DOMDocument, 0)
+       ZEND_ARG_TYPE_INFO(0, registerNodeNS, _IS_BOOL, 0)
+ZEND_END_ARG_INFO()
+#endif
+
+#if defined(LIBXML_XPATH_ENABLED)
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMXPath_evaluate, 0, 0, 1)
+       ZEND_ARG_TYPE_INFO(0, expr, IS_STRING, 0)
+       ZEND_ARG_OBJ_INFO(0, context, DOMNode, 1)
+       ZEND_ARG_TYPE_INFO(0, registerNodeNS, _IS_BOOL, 0)
+ZEND_END_ARG_INFO()
+#endif
+
+#if defined(LIBXML_XPATH_ENABLED)
+#define arginfo_class_DOMXPath_query arginfo_class_DOMXPath_evaluate
+#endif
+
+#if defined(LIBXML_XPATH_ENABLED)
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMXPath_registerNamespace, 0, 0, 2)
+       ZEND_ARG_TYPE_INFO(0, prefix, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, namespaceURI, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+#endif
+
+#if defined(LIBXML_XPATH_ENABLED)
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_DOMXPath_registerPhpFunctions, 0, 0, 0)
+       ZEND_ARG_INFO(0, restrict)
+ZEND_END_ARG_INFO()
+#endif
index 267035e268cb29b267d210719b6715fb12e2fe26..85001da58c4078033a6eb54413c11d477ae22d3f 100644 (file)
@@ -171,108 +171,3 @@ class IntlGregorianCalendar extends IntlCalendar
     /** @return bool */
     public function isLeapYear(int $year) {}
 }
-
-/** @param IntlTimeZone|DateTimeZone|string|null $timeZone */
-function intlcal_create_instance($timeZone = null, ?string $locale = null): IntlCalendar|null {}
-
-function intlcal_get_keyword_values_for_locale(string $key, string $locale, bool $commonlyUsed): IntlIterator|false {}
-
-function intlcal_get_now(): float {}
-
-function intlcal_get_available_locales(): array {}
-
-function intlcal_get(IntlCalendar $calendar, int $field): int|false {}
-
-function intlcal_get_time(IntlCalendar $calendar): float|false {}
-
-function intlcal_set_time(IntlCalendar $calendar, float $date): bool {}
-
-function intlcal_add(IntlCalendar $calendar, int $field, int $amount): bool {}
-
-/** @param IntlTimeZone|DateTimeZone|string|null $timeZone */
-function intlcal_set_time_zone(IntlCalendar $calendar, $timeZone): bool {}
-
-function intlcal_after(IntlCalendar $calendarObject, IntlCalendar $calendar): bool {}
-
-function intlcal_before(IntlCalendar $calendarObject, IntlCalendar $calendar): bool {}
-
-function intlcal_set(IntlCalendar $calendar, int $year, int $month, int $dayOfMonth = UNKNOWN, $hour = UNKNOWN, int $minute = UNKNOWN, int $second = UNKNOWN): bool {}
-
-/** @param int|bool $amountOrUpOrDown */
-function intlcal_roll(IntlCalendar $calendar, int $field, $amountOrUpOrDown): bool {}
-
-function intlcal_clear(IntlCalendar $calendar, ?int $field = null): bool {}
-
-function intlcal_field_difference(IntlCalendar $calendar, float $when, int $field): int|false {}
-
-function intlcal_get_actual_maximum(IntlCalendar $calendar, int $field): int|false {}
-
-function intlcal_get_actual_minimum(IntlCalendar $calendar, int $field): int|false {}
-
-function intlcal_get_day_of_week_type(IntlCalendar $calendar, int $dayOfWeek): int|false {}
-
-function intlcal_get_first_day_of_week(IntlCalendar $calendar): int|false {}
-
-function intlcal_greatest_minimum(IntlCalendar $calendar, int $field): int|false {}
-
-function intlcal_get_least_maximum(IntlCalendar $calendar, int $field): int|false {}
-
-function intlcal_get_greatest_minimum(IntlCalendar $calendar, int $field): int|false {}
-
-function intlcal_get_locale(IntlCalendar $calendar, int $localeType): string|false {}
-
-function intlcal_get_maximum(IntlCalendar $calendar, int $field): int|false {}
-
-function intlcal_get_minimal_days_in_first_week(IntlCalendar $calendar): int|false {}
-
-function intlcal_set_minimal_days_in_first_week(IntlCalendar $calendar, int $numberOfDays): bool {}
-
-function intlcal_get_minimum(IntlCalendar $calendar, int $field): int|false {}
-
-function intlcal_get_time_zone(IntlCalendar $calendar): IntlTimeZone|false {}
-
-function intlcal_get_type(IntlCalendar $calendar): string {}
-
-function intlcal_get_weekend_transition(IntlCalendar $calendar, int $dayOfWeek): int|false {}
-
-function intlcal_in_daylight_time(IntlCalendar $calendar): bool {}
-
-function intlcal_is_lenient(IntlCalendar $calendar): bool {}
-
-function intlcal_is_set(IntlCalendar $calendar, int $field): bool {}
-
-function intlcal_is_equivalent_to(IntlCalendar $calendarObject, IntlCalendar $calendar): bool {}
-
-function intlcal_is_weekend(IntlCalendar $calendar, ?float $date = null): bool {}
-
-function intlcal_set_first_day_of_week(IntlCalendar $calendar, int $dayOfWeek): bool {}
-
-function intlcal_set_lenient(IntlCalendar $calendar, bool $isLenient): bool {}
-
-function intlcal_get_repeated_wall_time_option(IntlCalendar $calendar): int {}
-
-function intlcal_equals(IntlCalendar $calendarObject, IntlCalendar $calendar): bool {}
-
-function intlcal_get_skipped_wall_time_option(IntlCalendar $calendar): int {}
-
-function intlcal_set_repeated_wall_time_option(IntlCalendar $calendar, int $wallTimeOption): bool {}
-
-function intlcal_set_skipped_wall_time_option(IntlCalendar $calendar, int $wallTimeOption): bool {}
-
-/** @param DateTime|string $dateTime */
-function intlcal_from_date_time($dateTime, ?string $locale = null): ?IntlCalendar {}
-
-function intlcal_to_date_time(IntlCalendar $calendar): DateTime|false {}
-
-function intlcal_get_error_code(IntlCalendar $calendar): int|false {}
-
-function intlcal_get_error_message(IntlCalendar $calendar): string|false {}
-
-/** @param IntlTimeZone|DateTimeZone|string|null $timeZone */
-function intlgregcal_create_instance($timeZone = null, ?string $locale = null): ?IntlGregorianCalendar {}
-
-function intlgregcal_set_gregorian_change(IntlGregorianCalendar $calendar, float $change): bool {}
-
-function intlgregcal_get_gregorian_change(IntlGregorianCalendar $calendar): float|false {}
-
-function intlgregcal_is_leap_year(IntlGregorianCalendar $calendar, int $year): bool {}
index efe89030ec718c32298df485c0a090602a0021c8..0d3e5da5414fc80608a4b15d721724ca3e711879 100644 (file)
@@ -154,201 +154,3 @@ ZEND_END_ARG_INFO()
 ZEND_BEGIN_ARG_INFO_EX(arginfo_class_IntlGregorianCalendar_isLeapYear, 0, 0, 1)
        ZEND_ARG_TYPE_INFO(0, year, IS_LONG, 0)
 ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_intlcal_create_instance, 0, 0, IntlCalendar, 1)
-       ZEND_ARG_INFO(0, timeZone)
-       ZEND_ARG_TYPE_INFO(0, locale, IS_STRING, 1)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_OBJ_TYPE_MASK_EX(arginfo_intlcal_get_keyword_values_for_locale, 0, 3, IntlIterator, MAY_BE_FALSE)
-       ZEND_ARG_TYPE_INFO(0, key, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, locale, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, commonlyUsed, _IS_BOOL, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intlcal_get_now, 0, 0, IS_DOUBLE, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intlcal_get_available_locales, 0, 0, IS_ARRAY, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_intlcal_get, 0, 2, MAY_BE_LONG|MAY_BE_FALSE)
-       ZEND_ARG_OBJ_INFO(0, calendar, IntlCalendar, 0)
-       ZEND_ARG_TYPE_INFO(0, field, IS_LONG, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_intlcal_get_time, 0, 1, MAY_BE_DOUBLE|MAY_BE_FALSE)
-       ZEND_ARG_OBJ_INFO(0, calendar, IntlCalendar, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intlcal_set_time, 0, 2, _IS_BOOL, 0)
-       ZEND_ARG_OBJ_INFO(0, calendar, IntlCalendar, 0)
-       ZEND_ARG_TYPE_INFO(0, date, IS_DOUBLE, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intlcal_add, 0, 3, _IS_BOOL, 0)
-       ZEND_ARG_OBJ_INFO(0, calendar, IntlCalendar, 0)
-       ZEND_ARG_TYPE_INFO(0, field, IS_LONG, 0)
-       ZEND_ARG_TYPE_INFO(0, amount, IS_LONG, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intlcal_set_time_zone, 0, 2, _IS_BOOL, 0)
-       ZEND_ARG_OBJ_INFO(0, calendar, IntlCalendar, 0)
-       ZEND_ARG_INFO(0, timeZone)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intlcal_after, 0, 2, _IS_BOOL, 0)
-       ZEND_ARG_OBJ_INFO(0, calendarObject, IntlCalendar, 0)
-       ZEND_ARG_OBJ_INFO(0, calendar, IntlCalendar, 0)
-ZEND_END_ARG_INFO()
-
-#define arginfo_intlcal_before arginfo_intlcal_after
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intlcal_set, 0, 3, _IS_BOOL, 0)
-       ZEND_ARG_OBJ_INFO(0, calendar, IntlCalendar, 0)
-       ZEND_ARG_TYPE_INFO(0, year, IS_LONG, 0)
-       ZEND_ARG_TYPE_INFO(0, month, IS_LONG, 0)
-       ZEND_ARG_TYPE_INFO(0, dayOfMonth, IS_LONG, 0)
-       ZEND_ARG_INFO(0, hour)
-       ZEND_ARG_TYPE_INFO(0, minute, IS_LONG, 0)
-       ZEND_ARG_TYPE_INFO(0, second, IS_LONG, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intlcal_roll, 0, 3, _IS_BOOL, 0)
-       ZEND_ARG_OBJ_INFO(0, calendar, IntlCalendar, 0)
-       ZEND_ARG_TYPE_INFO(0, field, IS_LONG, 0)
-       ZEND_ARG_INFO(0, amountOrUpOrDown)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intlcal_clear, 0, 1, _IS_BOOL, 0)
-       ZEND_ARG_OBJ_INFO(0, calendar, IntlCalendar, 0)
-       ZEND_ARG_TYPE_INFO(0, field, IS_LONG, 1)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_intlcal_field_difference, 0, 3, MAY_BE_LONG|MAY_BE_FALSE)
-       ZEND_ARG_OBJ_INFO(0, calendar, IntlCalendar, 0)
-       ZEND_ARG_TYPE_INFO(0, when, IS_DOUBLE, 0)
-       ZEND_ARG_TYPE_INFO(0, field, IS_LONG, 0)
-ZEND_END_ARG_INFO()
-
-#define arginfo_intlcal_get_actual_maximum arginfo_intlcal_get
-
-#define arginfo_intlcal_get_actual_minimum arginfo_intlcal_get
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_intlcal_get_day_of_week_type, 0, 2, MAY_BE_LONG|MAY_BE_FALSE)
-       ZEND_ARG_OBJ_INFO(0, calendar, IntlCalendar, 0)
-       ZEND_ARG_TYPE_INFO(0, dayOfWeek, IS_LONG, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_intlcal_get_first_day_of_week, 0, 1, MAY_BE_LONG|MAY_BE_FALSE)
-       ZEND_ARG_OBJ_INFO(0, calendar, IntlCalendar, 0)
-ZEND_END_ARG_INFO()
-
-#define arginfo_intlcal_greatest_minimum arginfo_intlcal_get
-
-#define arginfo_intlcal_get_least_maximum arginfo_intlcal_get
-
-#define arginfo_intlcal_get_greatest_minimum arginfo_intlcal_get
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_intlcal_get_locale, 0, 2, MAY_BE_STRING|MAY_BE_FALSE)
-       ZEND_ARG_OBJ_INFO(0, calendar, IntlCalendar, 0)
-       ZEND_ARG_TYPE_INFO(0, localeType, IS_LONG, 0)
-ZEND_END_ARG_INFO()
-
-#define arginfo_intlcal_get_maximum arginfo_intlcal_get
-
-#define arginfo_intlcal_get_minimal_days_in_first_week arginfo_intlcal_get_first_day_of_week
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intlcal_set_minimal_days_in_first_week, 0, 2, _IS_BOOL, 0)
-       ZEND_ARG_OBJ_INFO(0, calendar, IntlCalendar, 0)
-       ZEND_ARG_TYPE_INFO(0, numberOfDays, IS_LONG, 0)
-ZEND_END_ARG_INFO()
-
-#define arginfo_intlcal_get_minimum arginfo_intlcal_get
-
-ZEND_BEGIN_ARG_WITH_RETURN_OBJ_TYPE_MASK_EX(arginfo_intlcal_get_time_zone, 0, 1, IntlTimeZone, MAY_BE_FALSE)
-       ZEND_ARG_OBJ_INFO(0, calendar, IntlCalendar, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intlcal_get_type, 0, 1, IS_STRING, 0)
-       ZEND_ARG_OBJ_INFO(0, calendar, IntlCalendar, 0)
-ZEND_END_ARG_INFO()
-
-#define arginfo_intlcal_get_weekend_transition arginfo_intlcal_get_day_of_week_type
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intlcal_in_daylight_time, 0, 1, _IS_BOOL, 0)
-       ZEND_ARG_OBJ_INFO(0, calendar, IntlCalendar, 0)
-ZEND_END_ARG_INFO()
-
-#define arginfo_intlcal_is_lenient arginfo_intlcal_in_daylight_time
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intlcal_is_set, 0, 2, _IS_BOOL, 0)
-       ZEND_ARG_OBJ_INFO(0, calendar, IntlCalendar, 0)
-       ZEND_ARG_TYPE_INFO(0, field, IS_LONG, 0)
-ZEND_END_ARG_INFO()
-
-#define arginfo_intlcal_is_equivalent_to arginfo_intlcal_after
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intlcal_is_weekend, 0, 1, _IS_BOOL, 0)
-       ZEND_ARG_OBJ_INFO(0, calendar, IntlCalendar, 0)
-       ZEND_ARG_TYPE_INFO(0, date, IS_DOUBLE, 1)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intlcal_set_first_day_of_week, 0, 2, _IS_BOOL, 0)
-       ZEND_ARG_OBJ_INFO(0, calendar, IntlCalendar, 0)
-       ZEND_ARG_TYPE_INFO(0, dayOfWeek, IS_LONG, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intlcal_set_lenient, 0, 2, _IS_BOOL, 0)
-       ZEND_ARG_OBJ_INFO(0, calendar, IntlCalendar, 0)
-       ZEND_ARG_TYPE_INFO(0, isLenient, _IS_BOOL, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intlcal_get_repeated_wall_time_option, 0, 1, IS_LONG, 0)
-       ZEND_ARG_OBJ_INFO(0, calendar, IntlCalendar, 0)
-ZEND_END_ARG_INFO()
-
-#define arginfo_intlcal_equals arginfo_intlcal_after
-
-#define arginfo_intlcal_get_skipped_wall_time_option arginfo_intlcal_get_repeated_wall_time_option
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intlcal_set_repeated_wall_time_option, 0, 2, _IS_BOOL, 0)
-       ZEND_ARG_OBJ_INFO(0, calendar, IntlCalendar, 0)
-       ZEND_ARG_TYPE_INFO(0, wallTimeOption, IS_LONG, 0)
-ZEND_END_ARG_INFO()
-
-#define arginfo_intlcal_set_skipped_wall_time_option arginfo_intlcal_set_repeated_wall_time_option
-
-ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_intlcal_from_date_time, 0, 1, IntlCalendar, 1)
-       ZEND_ARG_INFO(0, dateTime)
-       ZEND_ARG_TYPE_INFO(0, locale, IS_STRING, 1)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_OBJ_TYPE_MASK_EX(arginfo_intlcal_to_date_time, 0, 1, DateTime, MAY_BE_FALSE)
-       ZEND_ARG_OBJ_INFO(0, calendar, IntlCalendar, 0)
-ZEND_END_ARG_INFO()
-
-#define arginfo_intlcal_get_error_code arginfo_intlcal_get_first_day_of_week
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_intlcal_get_error_message, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
-       ZEND_ARG_OBJ_INFO(0, calendar, IntlCalendar, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_intlgregcal_create_instance, 0, 0, IntlGregorianCalendar, 1)
-       ZEND_ARG_INFO(0, timeZone)
-       ZEND_ARG_TYPE_INFO(0, locale, IS_STRING, 1)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intlgregcal_set_gregorian_change, 0, 2, _IS_BOOL, 0)
-       ZEND_ARG_OBJ_INFO(0, calendar, IntlGregorianCalendar, 0)
-       ZEND_ARG_TYPE_INFO(0, change, IS_DOUBLE, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_intlgregcal_get_gregorian_change, 0, 1, MAY_BE_DOUBLE|MAY_BE_FALSE)
-       ZEND_ARG_OBJ_INFO(0, calendar, IntlGregorianCalendar, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intlgregcal_is_leap_year, 0, 2, _IS_BOOL, 0)
-       ZEND_ARG_OBJ_INFO(0, calendar, IntlGregorianCalendar, 0)
-       ZEND_ARG_TYPE_INFO(0, year, IS_LONG, 0)
-ZEND_END_ARG_INFO()
index a7ade53b2a22737397f01e11d4e49e5abe598018..e3d7489fc5349f5cbecdf7fc3c7b78b7548e6463 100644 (file)
@@ -43,29 +43,3 @@ class Collator
     /** @return string|false */
     public function getSortKey(string $str) {}
 }
-
-function collator_create(string $locale): ?Collator {}
-
-function collator_compare(Collator $object, string $str1, string $str2): int|false {}
-
-function collator_get_attribute(Collator $object, int $attr): int|false {}
-
-function collator_set_attribute(Collator $object, int $attr, int $val): bool {}
-
-function collator_get_strength(Collator $object): int {}
-
-function collator_set_strength(Collator $object, int $strength): bool {}
-
-function collator_sort(Collator $object, array &$arr, int $sort_flag = Collator::SORT_REGULAR): bool {}
-
-function collator_sort_with_sort_keys(Collator $object, array &$arr): bool {}
-
-function collator_asort(Collator $object, array &$arr, int $sort_flag = Collator::SORT_REGULAR): bool {}
-
-function collator_get_locale(Collator $object, int $type): string|false {}
-
-function collator_get_error_code(Collator $object): int|false {}
-
-function collator_get_error_message(Collator $object): string|false {}
-
-function collator_get_sort_key(Collator $object, string $str): string|false {}
index ba1a18a2549a39ea3672311bb2642cb5fd741f65..f96cb52f0a46a941add710418f6a29c0d4c92e03 100644 (file)
@@ -52,64 +52,3 @@ ZEND_END_ARG_INFO()
 ZEND_BEGIN_ARG_INFO_EX(arginfo_class_Collator_getSortKey, 0, 0, 1)
        ZEND_ARG_TYPE_INFO(0, str, IS_STRING, 0)
 ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_collator_create, 0, 1, Collator, 1)
-       ZEND_ARG_TYPE_INFO(0, locale, IS_STRING, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_collator_compare, 0, 3, MAY_BE_LONG|MAY_BE_FALSE)
-       ZEND_ARG_OBJ_INFO(0, object, Collator, 0)
-       ZEND_ARG_TYPE_INFO(0, str1, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, str2, IS_STRING, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_collator_get_attribute, 0, 2, MAY_BE_LONG|MAY_BE_FALSE)
-       ZEND_ARG_OBJ_INFO(0, object, Collator, 0)
-       ZEND_ARG_TYPE_INFO(0, attr, IS_LONG, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_collator_set_attribute, 0, 3, _IS_BOOL, 0)
-       ZEND_ARG_OBJ_INFO(0, object, Collator, 0)
-       ZEND_ARG_TYPE_INFO(0, attr, IS_LONG, 0)
-       ZEND_ARG_TYPE_INFO(0, val, IS_LONG, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_collator_get_strength, 0, 1, IS_LONG, 0)
-       ZEND_ARG_OBJ_INFO(0, object, Collator, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_collator_set_strength, 0, 2, _IS_BOOL, 0)
-       ZEND_ARG_OBJ_INFO(0, object, Collator, 0)
-       ZEND_ARG_TYPE_INFO(0, strength, IS_LONG, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_collator_sort, 0, 2, _IS_BOOL, 0)
-       ZEND_ARG_OBJ_INFO(0, object, Collator, 0)
-       ZEND_ARG_TYPE_INFO(1, arr, IS_ARRAY, 0)
-       ZEND_ARG_TYPE_INFO(0, sort_flag, IS_LONG, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_collator_sort_with_sort_keys, 0, 2, _IS_BOOL, 0)
-       ZEND_ARG_OBJ_INFO(0, object, Collator, 0)
-       ZEND_ARG_TYPE_INFO(1, arr, IS_ARRAY, 0)
-ZEND_END_ARG_INFO()
-
-#define arginfo_collator_asort arginfo_collator_sort
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_collator_get_locale, 0, 2, MAY_BE_STRING|MAY_BE_FALSE)
-       ZEND_ARG_OBJ_INFO(0, object, Collator, 0)
-       ZEND_ARG_TYPE_INFO(0, type, IS_LONG, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_collator_get_error_code, 0, 1, MAY_BE_LONG|MAY_BE_FALSE)
-       ZEND_ARG_OBJ_INFO(0, object, Collator, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_collator_get_error_message, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
-       ZEND_ARG_OBJ_INFO(0, object, Collator, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_collator_get_sort_key, 0, 2, MAY_BE_STRING|MAY_BE_FALSE)
-       ZEND_ARG_OBJ_INFO(0, object, Collator, 0)
-       ZEND_ARG_TYPE_INFO(0, str, IS_STRING, 0)
-ZEND_END_ARG_INFO()
diff --git a/ext/intl/collator/collator_functions_arginfo.h b/ext/intl/collator/collator_functions_arginfo.h
new file mode 100644 (file)
index 0000000..4a863d7
--- /dev/null
@@ -0,0 +1,62 @@
+/* This is a generated file, edit the .stub.php file instead. */
+
+ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_collator_create, 0, 1, Collator, 1)
+       ZEND_ARG_TYPE_INFO(0, locale, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_collator_compare, 0, 3, MAY_BE_LONG|MAY_BE_FALSE)
+       ZEND_ARG_OBJ_INFO(0, object, Collator, 0)
+       ZEND_ARG_TYPE_INFO(0, str1, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, str2, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_collator_get_attribute, 0, 2, MAY_BE_LONG|MAY_BE_FALSE)
+       ZEND_ARG_OBJ_INFO(0, object, Collator, 0)
+       ZEND_ARG_TYPE_INFO(0, attr, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_collator_set_attribute, 0, 3, _IS_BOOL, 0)
+       ZEND_ARG_OBJ_INFO(0, object, Collator, 0)
+       ZEND_ARG_TYPE_INFO(0, attr, IS_LONG, 0)
+       ZEND_ARG_TYPE_INFO(0, val, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_collator_get_strength, 0, 1, IS_LONG, 0)
+       ZEND_ARG_OBJ_INFO(0, object, Collator, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_collator_set_strength, 0, 2, _IS_BOOL, 0)
+       ZEND_ARG_OBJ_INFO(0, object, Collator, 0)
+       ZEND_ARG_TYPE_INFO(0, strength, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_collator_sort, 0, 2, _IS_BOOL, 0)
+       ZEND_ARG_OBJ_INFO(0, object, Collator, 0)
+       ZEND_ARG_TYPE_INFO(1, arr, IS_ARRAY, 0)
+       ZEND_ARG_TYPE_INFO(0, sort_flag, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_collator_sort_with_sort_keys, 0, 2, _IS_BOOL, 0)
+       ZEND_ARG_OBJ_INFO(0, object, Collator, 0)
+       ZEND_ARG_TYPE_INFO(1, arr, IS_ARRAY, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_collator_asort arginfo_collator_sort
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_collator_get_locale, 0, 2, MAY_BE_STRING|MAY_BE_FALSE)
+       ZEND_ARG_OBJ_INFO(0, object, Collator, 0)
+       ZEND_ARG_TYPE_INFO(0, type, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_collator_get_error_code, 0, 1, MAY_BE_LONG|MAY_BE_FALSE)
+       ZEND_ARG_OBJ_INFO(0, object, Collator, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_collator_get_error_message, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
+       ZEND_ARG_OBJ_INFO(0, object, Collator, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_collator_get_sort_key, 0, 2, MAY_BE_STRING|MAY_BE_FALSE)
+       ZEND_ARG_OBJ_INFO(0, object, Collator, 0)
+       ZEND_ARG_TYPE_INFO(0, str, IS_STRING, 0)
+ZEND_END_ARG_INFO()
index 61a977f66094a6d63ff014b00f0e36cd9b2421ec..5d7ef874d1a114d98e6ca5b5de9ff8b8645e2a65 100644 (file)
@@ -12,11 +12,3 @@ class IntlIterator implements Iterator
 
     public function valid() {}
 }
-
-function intl_get_error_code(): int {}
-
-function intl_get_error_message(): string {}
-
-function intl_is_failure(int $error_code): bool {}
-
-function intl_error_name(int $error_code): string {}
index 6d1b83635458e0d248f3d3ee9d2d970757ac39cc..156653790f5d6b98433d5266627eccc87b714bbc 100644 (file)
@@ -10,17 +10,3 @@ ZEND_END_ARG_INFO()
 #define arginfo_class_IntlIterator_rewind arginfo_class_IntlIterator_current
 
 #define arginfo_class_IntlIterator_valid arginfo_class_IntlIterator_current
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intl_get_error_code, 0, 0, IS_LONG, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intl_get_error_message, 0, 0, IS_STRING, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intl_is_failure, 0, 1, _IS_BOOL, 0)
-       ZEND_ARG_TYPE_INFO(0, error_code, IS_LONG, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intl_error_name, 0, 1, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, error_code, IS_LONG, 0)
-ZEND_END_ARG_INFO()
index adf8f463f8b01f53d3e25fb6271431e855e7b6f6..615eafd6e2c90fda329b91aa9f49f2c7f94046a2 100644 (file)
@@ -85,54 +85,3 @@ class IntlDateFormatter
     /** @return string */
     public function getErrorMessage() {}
 }
-
-/**
- * @param IntlTimeZone|DateTimeZone|string|null $timezone
- * @param IntlCalendar|int|null $calendar
- */
-function datefmt_create(?string $locale, int $datetype, int $timetype, $timezone = null, $calendar = null, string $pattern = ""): ?IntlDateFormatter {}
-
-function datefmt_get_datetype(IntlDateFormatter $df): int|false {}
-
-function datefmt_get_timetype(IntlDateFormatter $df): int|false {}
-
-function datefmt_get_calendar(IntlDateFormatter $df): int|false {}
-
-/** @param IntlCalendar|int|null $which */
-function datefmt_set_calendar(IntlDateFormatter $df, $which): bool {}
-
-function datefmt_get_timezone_id(IntlDateFormatter $df): string|false {}
-
-function datefmt_get_calendar_object(IntlDateFormatter $df): IntlCalendar|false|null {}
-
-function datefmt_get_timezone(IntlDateFormatter $df): IntlTimeZone|false {}
-
-/** @param IntlTimeZone|DateTimeZone|string|null $zone */
-function datefmt_set_timezone(IntlDateFormatter $df, $zone): ?bool {}
-
-function datefmt_set_pattern(IntlDateFormatter $df, string $pattern): bool {}
-
-function datefmt_get_pattern(IntlDateFormatter $df): string|false {}
-
-function datefmt_get_locale(IntlDateFormatter $df, int $which = UNKNOWN): string|false {}
-
-function datefmt_set_lenient(IntlDateFormatter $df, bool $lenient): void {}
-
-function datefmt_is_lenient(IntlDateFormatter $df): bool {}
-
-/** @param mixed $value */
-function datefmt_format(IntlDateFormatter $df, $value): string|false {}
-
-/**
- * @param IntlCalendar|DateTimeInterface $object
- * @param array|int|string|null $format
- */
-function datefmt_format_object($object, $format = null, ?string $locale = null): string|false {}
-
-function datefmt_parse(IntlDateFormatter $df, string $value, &$position = null): int|float|false {}
-
-function datefmt_localtime(IntlDateFormatter $df, string $value, &$position = null): array|false {}
-
-function datefmt_get_error_code(IntlDateFormatter $df): int {}
-
-function datefmt_get_error_message(IntlDateFormatter $df): string {}
index 6d86c9cde8642fad5fb7037b2c47a389b3e39d19..54e673410d615bcf18ff164c9c87f81d94960698 100644 (file)
@@ -68,94 +68,3 @@ ZEND_END_ARG_INFO()
 #define arginfo_class_IntlDateFormatter_getErrorCode arginfo_class_IntlDateFormatter_getDateType
 
 #define arginfo_class_IntlDateFormatter_getErrorMessage arginfo_class_IntlDateFormatter_getDateType
-
-ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_datefmt_create, 0, 3, IntlDateFormatter, 1)
-       ZEND_ARG_TYPE_INFO(0, locale, IS_STRING, 1)
-       ZEND_ARG_TYPE_INFO(0, datetype, IS_LONG, 0)
-       ZEND_ARG_TYPE_INFO(0, timetype, IS_LONG, 0)
-       ZEND_ARG_INFO(0, timezone)
-       ZEND_ARG_INFO(0, calendar)
-       ZEND_ARG_TYPE_INFO(0, pattern, IS_STRING, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_datefmt_get_datetype, 0, 1, MAY_BE_LONG|MAY_BE_FALSE)
-       ZEND_ARG_OBJ_INFO(0, df, IntlDateFormatter, 0)
-ZEND_END_ARG_INFO()
-
-#define arginfo_datefmt_get_timetype arginfo_datefmt_get_datetype
-
-#define arginfo_datefmt_get_calendar arginfo_datefmt_get_datetype
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_datefmt_set_calendar, 0, 2, _IS_BOOL, 0)
-       ZEND_ARG_OBJ_INFO(0, df, IntlDateFormatter, 0)
-       ZEND_ARG_INFO(0, which)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_datefmt_get_timezone_id, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
-       ZEND_ARG_OBJ_INFO(0, df, IntlDateFormatter, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_OBJ_TYPE_MASK_EX(arginfo_datefmt_get_calendar_object, 0, 1, IntlCalendar, MAY_BE_FALSE|MAY_BE_NULL)
-       ZEND_ARG_OBJ_INFO(0, df, IntlDateFormatter, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_OBJ_TYPE_MASK_EX(arginfo_datefmt_get_timezone, 0, 1, IntlTimeZone, MAY_BE_FALSE)
-       ZEND_ARG_OBJ_INFO(0, df, IntlDateFormatter, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_datefmt_set_timezone, 0, 2, _IS_BOOL, 1)
-       ZEND_ARG_OBJ_INFO(0, df, IntlDateFormatter, 0)
-       ZEND_ARG_INFO(0, zone)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_datefmt_set_pattern, 0, 2, _IS_BOOL, 0)
-       ZEND_ARG_OBJ_INFO(0, df, IntlDateFormatter, 0)
-       ZEND_ARG_TYPE_INFO(0, pattern, IS_STRING, 0)
-ZEND_END_ARG_INFO()
-
-#define arginfo_datefmt_get_pattern arginfo_datefmt_get_timezone_id
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_datefmt_get_locale, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
-       ZEND_ARG_OBJ_INFO(0, df, IntlDateFormatter, 0)
-       ZEND_ARG_TYPE_INFO(0, which, IS_LONG, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_datefmt_set_lenient, 0, 2, IS_VOID, 0)
-       ZEND_ARG_OBJ_INFO(0, df, IntlDateFormatter, 0)
-       ZEND_ARG_TYPE_INFO(0, lenient, _IS_BOOL, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_datefmt_is_lenient, 0, 1, _IS_BOOL, 0)
-       ZEND_ARG_OBJ_INFO(0, df, IntlDateFormatter, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_datefmt_format, 0, 2, MAY_BE_STRING|MAY_BE_FALSE)
-       ZEND_ARG_OBJ_INFO(0, df, IntlDateFormatter, 0)
-       ZEND_ARG_INFO(0, value)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_datefmt_format_object, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
-       ZEND_ARG_INFO(0, object)
-       ZEND_ARG_INFO(0, format)
-       ZEND_ARG_TYPE_INFO(0, locale, IS_STRING, 1)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_datefmt_parse, 0, 2, MAY_BE_LONG|MAY_BE_DOUBLE|MAY_BE_FALSE)
-       ZEND_ARG_OBJ_INFO(0, df, IntlDateFormatter, 0)
-       ZEND_ARG_TYPE_INFO(0, value, IS_STRING, 0)
-       ZEND_ARG_INFO(1, position)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_datefmt_localtime, 0, 2, MAY_BE_ARRAY|MAY_BE_FALSE)
-       ZEND_ARG_OBJ_INFO(0, df, IntlDateFormatter, 0)
-       ZEND_ARG_TYPE_INFO(0, value, IS_STRING, 0)
-       ZEND_ARG_INFO(1, position)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_datefmt_get_error_code, 0, 1, IS_LONG, 0)
-       ZEND_ARG_OBJ_INFO(0, df, IntlDateFormatter, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_datefmt_get_error_message, 0, 1, IS_STRING, 0)
-       ZEND_ARG_OBJ_INFO(0, df, IntlDateFormatter, 0)
-ZEND_END_ARG_INFO()
index 2edc28d6fd4c4d2eacd30636da811689843da229..6badb6e87d77084d4466ffd1b908bc382cc483e0 100644 (file)
@@ -55,36 +55,3 @@ class NumberFormatter
     /** @return string */
     public function getErrorMessage() {}
 }
-
-function numfmt_create(string $locale, int $style, string $pattern = ""): ?NumberFormatter {}
-
-function numfmt_format(NumberFormatter $fmt, int|float $value, int $type = NumberFormatter::TYPE_DEFAULT): string|false {}
-
-function numfmt_parse(NumberFormatter $fmt, string $value, int $type = NumberFormatter::TYPE_DOUBLE, &$position = null): int|float|false {}
-
-function numfmt_format_currency(NumberFormatter $fmt, float $value, string $currency): string|false {}
-
-function numfmt_parse_currency(NumberFormatter $fmt, string $value, &$currency, &$position = null): float|false {}
-
-/** @param int|float $value */
-function numfmt_set_attribute(NumberFormatter $fmt, int $attr, $value): bool {}
-
-function numfmt_get_attribute(NumberFormatter $fmt, int $attr): int|double|false {}
-
-function numfmt_set_text_attribute(NumberFormatter $fmt, int $attr, string $value): bool {}
-
-function numfmt_get_text_attribute(NumberFormatter $fmt, int $attr): string|false {}
-
-function numfmt_set_symbol(NumberFormatter $fmt, int $attr, string $value): bool {}
-
-function numfmt_get_symbol(NumberFormatter $fmt, int $attr): string|false {}
-
-function numfmt_set_pattern(NumberFormatter $fmt, string $pattern): bool {}
-
-function numfmt_get_pattern(NumberFormatter $fmt): string|false {}
-
-function numfmt_get_locale(NumberFormatter $fmt, int $type = ULOC_ACTUAL_LOCALE): string|false {}
-
-function numfmt_get_error_code(NumberFormatter $fmt): int {}
-
-function numfmt_get_error_message(NumberFormatter $fmt): string {}
index eced76d82b4287780f76322f7bf8a495b1127932..d684a4ce2abd8bf21f6daab4e1e17e5f7010bcfd 100644 (file)
@@ -64,83 +64,3 @@ ZEND_END_ARG_INFO()
 #define arginfo_class_NumberFormatter_getErrorCode arginfo_class_NumberFormatter_getPattern
 
 #define arginfo_class_NumberFormatter_getErrorMessage arginfo_class_NumberFormatter_getPattern
-
-ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_numfmt_create, 0, 2, NumberFormatter, 1)
-       ZEND_ARG_TYPE_INFO(0, locale, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, style, IS_LONG, 0)
-       ZEND_ARG_TYPE_INFO(0, pattern, IS_STRING, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_numfmt_format, 0, 2, MAY_BE_STRING|MAY_BE_FALSE)
-       ZEND_ARG_OBJ_INFO(0, fmt, NumberFormatter, 0)
-       ZEND_ARG_TYPE_MASK(0, value, MAY_BE_LONG|MAY_BE_DOUBLE)
-       ZEND_ARG_TYPE_INFO(0, type, IS_LONG, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_numfmt_parse, 0, 2, MAY_BE_LONG|MAY_BE_DOUBLE|MAY_BE_FALSE)
-       ZEND_ARG_OBJ_INFO(0, fmt, NumberFormatter, 0)
-       ZEND_ARG_TYPE_INFO(0, value, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, type, IS_LONG, 0)
-       ZEND_ARG_INFO(1, position)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_numfmt_format_currency, 0, 3, MAY_BE_STRING|MAY_BE_FALSE)
-       ZEND_ARG_OBJ_INFO(0, fmt, NumberFormatter, 0)
-       ZEND_ARG_TYPE_INFO(0, value, IS_DOUBLE, 0)
-       ZEND_ARG_TYPE_INFO(0, currency, IS_STRING, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_numfmt_parse_currency, 0, 3, MAY_BE_DOUBLE|MAY_BE_FALSE)
-       ZEND_ARG_OBJ_INFO(0, fmt, NumberFormatter, 0)
-       ZEND_ARG_TYPE_INFO(0, value, IS_STRING, 0)
-       ZEND_ARG_INFO(1, currency)
-       ZEND_ARG_INFO(1, position)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_numfmt_set_attribute, 0, 3, _IS_BOOL, 0)
-       ZEND_ARG_OBJ_INFO(0, fmt, NumberFormatter, 0)
-       ZEND_ARG_TYPE_INFO(0, attr, IS_LONG, 0)
-       ZEND_ARG_INFO(0, value)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_OBJ_TYPE_MASK_EX(arginfo_numfmt_get_attribute, 0, 2, double, MAY_BE_LONG|MAY_BE_FALSE)
-       ZEND_ARG_OBJ_INFO(0, fmt, NumberFormatter, 0)
-       ZEND_ARG_TYPE_INFO(0, attr, IS_LONG, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_numfmt_set_text_attribute, 0, 3, _IS_BOOL, 0)
-       ZEND_ARG_OBJ_INFO(0, fmt, NumberFormatter, 0)
-       ZEND_ARG_TYPE_INFO(0, attr, IS_LONG, 0)
-       ZEND_ARG_TYPE_INFO(0, value, IS_STRING, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_numfmt_get_text_attribute, 0, 2, MAY_BE_STRING|MAY_BE_FALSE)
-       ZEND_ARG_OBJ_INFO(0, fmt, NumberFormatter, 0)
-       ZEND_ARG_TYPE_INFO(0, attr, IS_LONG, 0)
-ZEND_END_ARG_INFO()
-
-#define arginfo_numfmt_set_symbol arginfo_numfmt_set_text_attribute
-
-#define arginfo_numfmt_get_symbol arginfo_numfmt_get_text_attribute
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_numfmt_set_pattern, 0, 2, _IS_BOOL, 0)
-       ZEND_ARG_OBJ_INFO(0, fmt, NumberFormatter, 0)
-       ZEND_ARG_TYPE_INFO(0, pattern, IS_STRING, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_numfmt_get_pattern, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
-       ZEND_ARG_OBJ_INFO(0, fmt, NumberFormatter, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_numfmt_get_locale, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
-       ZEND_ARG_OBJ_INFO(0, fmt, NumberFormatter, 0)
-       ZEND_ARG_TYPE_INFO(0, type, IS_LONG, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_numfmt_get_error_code, 0, 1, IS_LONG, 0)
-       ZEND_ARG_OBJ_INFO(0, fmt, NumberFormatter, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_numfmt_get_error_message, 0, 1, IS_STRING, 0)
-       ZEND_ARG_OBJ_INFO(0, fmt, NumberFormatter, 0)
-ZEND_END_ARG_INFO()
diff --git a/ext/intl/formatter/formatter_functions_arginfo.h b/ext/intl/formatter/formatter_functions_arginfo.h
new file mode 100644 (file)
index 0000000..ff87c8d
--- /dev/null
@@ -0,0 +1,81 @@
+/* This is a generated file, edit the .stub.php file instead. */
+
+ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_numfmt_create, 0, 2, NumberFormatter, 1)
+       ZEND_ARG_TYPE_INFO(0, locale, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, style, IS_LONG, 0)
+       ZEND_ARG_TYPE_INFO(0, pattern, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_numfmt_format, 0, 2, MAY_BE_STRING|MAY_BE_FALSE)
+       ZEND_ARG_OBJ_INFO(0, fmt, NumberFormatter, 0)
+       ZEND_ARG_TYPE_MASK(0, value, MAY_BE_LONG|MAY_BE_DOUBLE)
+       ZEND_ARG_TYPE_INFO(0, type, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_numfmt_parse, 0, 2, MAY_BE_LONG|MAY_BE_DOUBLE|MAY_BE_FALSE)
+       ZEND_ARG_OBJ_INFO(0, fmt, NumberFormatter, 0)
+       ZEND_ARG_TYPE_INFO(0, value, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, type, IS_LONG, 0)
+       ZEND_ARG_INFO(1, position)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_numfmt_format_currency, 0, 3, MAY_BE_STRING|MAY_BE_FALSE)
+       ZEND_ARG_OBJ_INFO(0, fmt, NumberFormatter, 0)
+       ZEND_ARG_TYPE_INFO(0, value, IS_DOUBLE, 0)
+       ZEND_ARG_TYPE_INFO(0, currency, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_numfmt_parse_currency, 0, 3, MAY_BE_DOUBLE|MAY_BE_FALSE)
+       ZEND_ARG_OBJ_INFO(0, fmt, NumberFormatter, 0)
+       ZEND_ARG_TYPE_INFO(0, value, IS_STRING, 0)
+       ZEND_ARG_INFO(1, currency)
+       ZEND_ARG_INFO(1, position)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_numfmt_set_attribute, 0, 3, _IS_BOOL, 0)
+       ZEND_ARG_OBJ_INFO(0, fmt, NumberFormatter, 0)
+       ZEND_ARG_TYPE_INFO(0, attr, IS_LONG, 0)
+       ZEND_ARG_INFO(0, value)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_OBJ_TYPE_MASK_EX(arginfo_numfmt_get_attribute, 0, 2, double, MAY_BE_LONG|MAY_BE_FALSE)
+       ZEND_ARG_OBJ_INFO(0, fmt, NumberFormatter, 0)
+       ZEND_ARG_TYPE_INFO(0, attr, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_numfmt_set_text_attribute, 0, 3, _IS_BOOL, 0)
+       ZEND_ARG_OBJ_INFO(0, fmt, NumberFormatter, 0)
+       ZEND_ARG_TYPE_INFO(0, attr, IS_LONG, 0)
+       ZEND_ARG_TYPE_INFO(0, value, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_numfmt_get_text_attribute, 0, 2, MAY_BE_STRING|MAY_BE_FALSE)
+       ZEND_ARG_OBJ_INFO(0, fmt, NumberFormatter, 0)
+       ZEND_ARG_TYPE_INFO(0, attr, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_numfmt_set_symbol arginfo_numfmt_set_text_attribute
+
+#define arginfo_numfmt_get_symbol arginfo_numfmt_get_text_attribute
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_numfmt_set_pattern, 0, 2, _IS_BOOL, 0)
+       ZEND_ARG_OBJ_INFO(0, fmt, NumberFormatter, 0)
+       ZEND_ARG_TYPE_INFO(0, pattern, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_numfmt_get_pattern, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
+       ZEND_ARG_OBJ_INFO(0, fmt, NumberFormatter, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_numfmt_get_locale, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
+       ZEND_ARG_OBJ_INFO(0, fmt, NumberFormatter, 0)
+       ZEND_ARG_TYPE_INFO(0, type, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_numfmt_get_error_code, 0, 1, IS_LONG, 0)
+       ZEND_ARG_OBJ_INFO(0, fmt, NumberFormatter, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_numfmt_get_error_message, 0, 1, IS_STRING, 0)
+       ZEND_ARG_OBJ_INFO(0, fmt, NumberFormatter, 0)
+ZEND_END_ARG_INFO()
diff --git a/ext/intl/grapheme/grapheme.stub.php b/ext/intl/grapheme/grapheme.stub.php
deleted file mode 100644 (file)
index 669b590..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-<?php
-
-function grapheme_strlen(string $input): int|false|null {}
-
-function grapheme_strpos(string $haystack, string $needle, int $offset = 0): int|false {}
-
-function grapheme_stripos(string $haystack, string $needle, int $offset = 0): int|false {}
-
-function grapheme_strrpos(string $haystack, string $needle, int $offset = 0): int|false {}
-
-function grapheme_strripos(string $haystack, string $needle, int $offset = 0): int|false {}
-
-function grapheme_substr(string $string, int $start, ?int $length = 0): string|false {}
-
-function grapheme_strstr(string $haystack, string $needle, bool $before_needle = false): string|false {}
-
-function grapheme_stristr(string $haystack, string $needle, bool $before_needle = false): string|false {}
-
-function grapheme_extract(string $haystack, int $size, int $extract_type = GRAPHEME_EXTR_COUNT, int $start = 0, &$next = null): string|false {}
diff --git a/ext/intl/grapheme/grapheme_arginfo.h b/ext/intl/grapheme/grapheme_arginfo.h
deleted file mode 100644 (file)
index 1dc2e95..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-/* This is a generated file, edit the .stub.php file instead. */
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_grapheme_strlen, 0, 1, MAY_BE_LONG|MAY_BE_FALSE|MAY_BE_NULL)
-       ZEND_ARG_TYPE_INFO(0, input, IS_STRING, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_grapheme_strpos, 0, 2, MAY_BE_LONG|MAY_BE_FALSE)
-       ZEND_ARG_TYPE_INFO(0, haystack, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, needle, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, offset, IS_LONG, 0)
-ZEND_END_ARG_INFO()
-
-#define arginfo_grapheme_stripos arginfo_grapheme_strpos
-
-#define arginfo_grapheme_strrpos arginfo_grapheme_strpos
-
-#define arginfo_grapheme_strripos arginfo_grapheme_strpos
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_grapheme_substr, 0, 2, MAY_BE_STRING|MAY_BE_FALSE)
-       ZEND_ARG_TYPE_INFO(0, string, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, start, IS_LONG, 0)
-       ZEND_ARG_TYPE_INFO(0, length, IS_LONG, 1)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_grapheme_strstr, 0, 2, MAY_BE_STRING|MAY_BE_FALSE)
-       ZEND_ARG_TYPE_INFO(0, haystack, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, needle, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, before_needle, _IS_BOOL, 0)
-ZEND_END_ARG_INFO()
-
-#define arginfo_grapheme_stristr arginfo_grapheme_strstr
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_grapheme_extract, 0, 2, MAY_BE_STRING|MAY_BE_FALSE)
-       ZEND_ARG_TYPE_INFO(0, haystack, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, size, IS_LONG, 0)
-       ZEND_ARG_TYPE_INFO(0, extract_type, IS_LONG, 0)
-       ZEND_ARG_TYPE_INFO(0, start, IS_LONG, 0)
-       ZEND_ARG_INFO(1, next)
-ZEND_END_ARG_INFO()
diff --git a/ext/intl/idn/idn.stub.php b/ext/intl/idn/idn.stub.php
deleted file mode 100644 (file)
index 7407b60..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-<?php
-
-function idn_to_ascii(string $domain, int $options = 0, int $variant = INTL_IDNA_VARIANT_UTS46, &$idna_info = null): string|false {}
-
-function idn_to_utf8(string $domain, int $options = 0, int $variant = INTL_IDNA_VARIANT_UTS46, &$idna_info = null): string|false {}
diff --git a/ext/intl/idn/idn_arginfo.h b/ext/intl/idn/idn_arginfo.h
deleted file mode 100644 (file)
index 7e107f4..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-/* This is a generated file, edit the .stub.php file instead. */
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_idn_to_ascii, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
-       ZEND_ARG_TYPE_INFO(0, domain, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, options, IS_LONG, 0)
-       ZEND_ARG_TYPE_INFO(0, variant, IS_LONG, 0)
-       ZEND_ARG_INFO(1, idna_info)
-ZEND_END_ARG_INFO()
-
-#define arginfo_idn_to_utf8 arginfo_idn_to_ascii
index 8ad1c83b8381d812a6be88b1f79453ee5dc7cbc6..e739f601aea84dd21d785c753d79b2412b8f8fd3 100644 (file)
@@ -56,39 +56,3 @@ class Locale
     /** @return string|false */
     public static function acceptFromHttp(string $header) {}
 }
-
-function locale_get_default(): string {}
-
-function locale_set_default(string $name): bool {}
-
-function locale_get_primary_language(string $locale): ?string {}
-
-function locale_get_script(string $locale): ?string {}
-
-function locale_get_region(string $locale): ?string {}
-
-function locale_get_keywords(string $locale): array|false|null {}
-
-function locale_get_display_script(string $locale, ?string $in_locale = null): string|false {}
-
-function locale_get_display_region(string $locale, ?string $in_locale = null): string|false {}
-
-function locale_get_display_name(string $locale, ?string $in_locale = null): string|false {}
-
-function locale_get_display_language(string $locale, ?string $in_locale = null): string|false {}
-
-function locale_get_display_variant(string $locale, ?string $in_locale = null): string|false {}
-
-function locale_compose(array $subtags): string|false {}
-
-function locale_parse(string $locale): ?array {}
-
-function locale_get_all_variants(string $locale): ?array {}
-
-function locale_filter_matches(string $langtag, string $locale, bool $canonicalize = false): ?bool {}
-
-function locale_canonicalize(string $locale): ?string {}
-
-function locale_lookup(array $langtag, string $locale, bool $canonicalize = false, ?string $def = null): ?string {}
-
-function locale_accept_from_http(string $header): string|false {}
index 367d3f7ac8344e1a08f0311a9077d9618f1423a3..f509cef10dfa7180523b90142d24dddb418dcea8 100644 (file)
@@ -54,64 +54,3 @@ ZEND_END_ARG_INFO()
 ZEND_BEGIN_ARG_INFO_EX(arginfo_class_Locale_acceptFromHttp, 0, 0, 1)
        ZEND_ARG_TYPE_INFO(0, header, IS_STRING, 0)
 ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_locale_get_default, 0, 0, IS_STRING, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_locale_set_default, 0, 1, _IS_BOOL, 0)
-       ZEND_ARG_TYPE_INFO(0, name, IS_STRING, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_locale_get_primary_language, 0, 1, IS_STRING, 1)
-       ZEND_ARG_TYPE_INFO(0, locale, IS_STRING, 0)
-ZEND_END_ARG_INFO()
-
-#define arginfo_locale_get_script arginfo_locale_get_primary_language
-
-#define arginfo_locale_get_region arginfo_locale_get_primary_language
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_locale_get_keywords, 0, 1, MAY_BE_ARRAY|MAY_BE_FALSE|MAY_BE_NULL)
-       ZEND_ARG_TYPE_INFO(0, locale, IS_STRING, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_locale_get_display_script, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
-       ZEND_ARG_TYPE_INFO(0, locale, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, in_locale, IS_STRING, 1)
-ZEND_END_ARG_INFO()
-
-#define arginfo_locale_get_display_region arginfo_locale_get_display_script
-
-#define arginfo_locale_get_display_name arginfo_locale_get_display_script
-
-#define arginfo_locale_get_display_language arginfo_locale_get_display_script
-
-#define arginfo_locale_get_display_variant arginfo_locale_get_display_script
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_locale_compose, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
-       ZEND_ARG_TYPE_INFO(0, subtags, IS_ARRAY, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_locale_parse, 0, 1, IS_ARRAY, 1)
-       ZEND_ARG_TYPE_INFO(0, locale, IS_STRING, 0)
-ZEND_END_ARG_INFO()
-
-#define arginfo_locale_get_all_variants arginfo_locale_parse
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_locale_filter_matches, 0, 2, _IS_BOOL, 1)
-       ZEND_ARG_TYPE_INFO(0, langtag, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, locale, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, canonicalize, _IS_BOOL, 0)
-ZEND_END_ARG_INFO()
-
-#define arginfo_locale_canonicalize arginfo_locale_get_primary_language
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_locale_lookup, 0, 2, IS_STRING, 1)
-       ZEND_ARG_TYPE_INFO(0, langtag, IS_ARRAY, 0)
-       ZEND_ARG_TYPE_INFO(0, locale, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, canonicalize, _IS_BOOL, 0)
-       ZEND_ARG_TYPE_INFO(0, def, IS_STRING, 1)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_locale_accept_from_http, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
-       ZEND_ARG_TYPE_INFO(0, header, IS_STRING, 0)
-ZEND_END_ARG_INFO()
index 65d9b5ef1ea07b367fe6aea1ae6f9a3fa9a1bc66..8dbd6b8bba0ce52ba89a8f7e243a9a3e8384100e 100644 (file)
@@ -34,23 +34,3 @@ class MessageFormatter
     /** @return string */
     public function getErrorMessage() {}
 }
-
-function msgfmt_create(string $locale, string $pattern): ?MessageFormatter {}
-
-function msgfmt_format(MessageFormatter $fmt, array $args): string|false {}
-
-function msgfmt_format_message(string $locale, string $pattern, array $args): string|false {}
-
-function msgfmt_parse(MessageFormatter $fmt, string $value): array|false {}
-
-function msgfmt_parse_message(string $locale, string $pattern, string $source): array|false {}
-
-function msgfmt_set_pattern(MessageFormatter $fmt, string $pattern): bool {}
-
-function msgfmt_get_pattern(MessageFormatter $fmt): string|false {}
-
-function msgfmt_get_locale(MessageFormatter $fmt): string {}
-
-function msgfmt_get_error_code(MessageFormatter $fmt): int {}
-
-function msgfmt_get_error_message(MessageFormatter $fmt): string {}
index e03dbffc734b6c45c81e11baf32723fed58b7e53..ef7efb543892deeb3244a9f715f3350f3ec1f154 100644 (file)
@@ -39,49 +39,3 @@ ZEND_END_ARG_INFO()
 #define arginfo_class_MessageFormatter_getErrorCode arginfo_class_MessageFormatter_getPattern
 
 #define arginfo_class_MessageFormatter_getErrorMessage arginfo_class_MessageFormatter_getPattern
-
-ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_msgfmt_create, 0, 2, MessageFormatter, 1)
-       ZEND_ARG_TYPE_INFO(0, locale, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, pattern, IS_STRING, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_msgfmt_format, 0, 2, MAY_BE_STRING|MAY_BE_FALSE)
-       ZEND_ARG_OBJ_INFO(0, fmt, MessageFormatter, 0)
-       ZEND_ARG_TYPE_INFO(0, args, IS_ARRAY, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_msgfmt_format_message, 0, 3, MAY_BE_STRING|MAY_BE_FALSE)
-       ZEND_ARG_TYPE_INFO(0, locale, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, pattern, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, args, IS_ARRAY, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_msgfmt_parse, 0, 2, MAY_BE_ARRAY|MAY_BE_FALSE)
-       ZEND_ARG_OBJ_INFO(0, fmt, MessageFormatter, 0)
-       ZEND_ARG_TYPE_INFO(0, value, IS_STRING, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_msgfmt_parse_message, 0, 3, MAY_BE_ARRAY|MAY_BE_FALSE)
-       ZEND_ARG_TYPE_INFO(0, locale, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, pattern, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, source, IS_STRING, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_msgfmt_set_pattern, 0, 2, _IS_BOOL, 0)
-       ZEND_ARG_OBJ_INFO(0, fmt, MessageFormatter, 0)
-       ZEND_ARG_TYPE_INFO(0, pattern, IS_STRING, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_msgfmt_get_pattern, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
-       ZEND_ARG_OBJ_INFO(0, fmt, MessageFormatter, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_msgfmt_get_locale, 0, 1, IS_STRING, 0)
-       ZEND_ARG_OBJ_INFO(0, fmt, MessageFormatter, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_msgfmt_get_error_code, 0, 1, IS_LONG, 0)
-       ZEND_ARG_OBJ_INFO(0, fmt, MessageFormatter, 0)
-ZEND_END_ARG_INFO()
-
-#define arginfo_msgfmt_get_error_message arginfo_msgfmt_get_locale
index f0d55738f688f710ca5a3633473d46a20019347f..cfa19252627d5a53ced94db2bd3089cf86e2f17e 100644 (file)
@@ -13,11 +13,3 @@ class Normalizer
     public static function getRawDecomposition(string $input, int $form = Normalizer::FORM_C) {}
 #endif
 }
-
-function normalizer_normalize(string $input, int $form = Normalizer::FORM_C): string|false {}
-
-function normalizer_is_normalized(string $input, int $form = Normalizer::FORM_C): bool {}
-
-#if U_ICU_VERSION_MAJOR_NUM >= 56
-function normalizer_get_raw_decomposition(string $input, int $form = Normalizer::FORM_C): ?string {}
-#endif
index 858b2fe12d6674eee4f15b88737f7dbf4057d2aa..9f2a12f97b7d319f86d3789f70e1ae9955117a82 100644 (file)
@@ -13,20 +13,3 @@ ZEND_BEGIN_ARG_INFO_EX(arginfo_class_Normalizer_getRawDecomposition, 0, 0, 1)
        ZEND_ARG_TYPE_INFO(0, form, IS_LONG, 0)
 ZEND_END_ARG_INFO()
 #endif
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_normalizer_normalize, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
-       ZEND_ARG_TYPE_INFO(0, input, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, form, IS_LONG, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_normalizer_is_normalized, 0, 1, _IS_BOOL, 0)
-       ZEND_ARG_TYPE_INFO(0, input, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, form, IS_LONG, 0)
-ZEND_END_ARG_INFO()
-
-#if U_ICU_VERSION_MAJOR_NUM >= 56
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_normalizer_get_raw_decomposition, 0, 1, IS_STRING, 1)
-       ZEND_ARG_TYPE_INFO(0, input, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, form, IS_LONG, 0)
-ZEND_END_ARG_INFO()
-#endif
index dd655e0e03d54e6e4e2741547929e2177c92d540..2997f453e7d1b166486efad7bffcd3864dc36b62 100644 (file)
@@ -21,6 +21,7 @@
 
 
 #include "php_intl.h"
+#include "php_intl_arginfo.h"
 #include "intl_error.h"
 #include "collator/collator_class.h"
 #include "collator/collator.h"
@@ -31,7 +32,6 @@
 #include "collator/collator_locale.h"
 #include "collator/collator_create.h"
 #include "collator/collator_error.h"
-#include "collator/collator_arginfo.h"
 
 #include "converter/converter.h"
 
 #include "formatter/formatter_format.h"
 #include "formatter/formatter_main.h"
 #include "formatter/formatter_parse.h"
-#include "formatter/formatter_arginfo.h"
 
 #include "grapheme/grapheme.h"
-#include "grapheme/grapheme_arginfo.h"
 
 #include "msgformat/msgformat.h"
 #include "msgformat/msgformat_class.h"
 #include "normalizer/normalizer.h"
 #include "normalizer/normalizer_class.h"
 #include "normalizer/normalizer_normalize.h"
-#include "normalizer/normalizer_arginfo.h"
 
 #include "locale/locale.h"
 #include "locale/locale_class.h"
 #include "locale/locale_methods.h"
-#include "locale/locale_arginfo.h"
 
 #include "dateformat/dateformat.h"
 #include "dateformat/dateformat_class.h"
 #include "dateformat/dateformat_format_object.h"
 #include "dateformat/dateformat_parse.h"
 #include "dateformat/dateformat_data.h"
-#include "dateformat/dateformat_arginfo.h"
 
 #include "resourcebundle/resourcebundle_class.h"
-#include "resourcebundle/resourcebundle_arginfo.h"
 
 #include "transliterator/transliterator.h"
 #include "transliterator/transliterator_class.h"
 #include "transliterator/transliterator_methods.h"
-#include "transliterator/transliterator_arginfo.h"
 
 #include "timezone/timezone_class.h"
 #include "timezone/timezone_methods.h"
-#include "timezone/timezone_arginfo.h"
 
 #include "calendar/calendar_class.h"
 #include "calendar/calendar_methods.h"
 #include "calendar/gregoriancalendar_methods.h"
-#include "calendar/calendar_arginfo.h"
 
 #include "breakiterator/breakiterator_class.h"
 #include "breakiterator/breakiterator_iterators.h"
 
 #include "idn/idn.h"
-#include "idn/idn_arginfo.h"
 #include "uchar/uchar.h"
 
 # include "spoofchecker/spoofchecker_class.h"
 # include "spoofchecker/spoofchecker_main.h"
 
 #include "msgformat/msgformat.h"
-#include "msgformat/msgformat_arginfo.h"
 #include "common/common_error.h"
 #include "common/common_enum.h"
-#include "common/common_arginfo.h"
 
 #include <unicode/uloc.h>
 #include <unicode/uclean.h>
diff --git a/ext/intl/php_intl.stub.php b/ext/intl/php_intl.stub.php
new file mode 100644 (file)
index 0000000..dbe905d
--- /dev/null
@@ -0,0 +1,422 @@
+<?php
+
+/* calendar */
+
+/** @param IntlTimeZone|DateTimeZone|string|null $timeZone */
+function intlcal_create_instance($timeZone = null, ?string $locale = null): IntlCalendar|null {}
+
+function intlcal_get_keyword_values_for_locale(string $key, string $locale, bool $commonlyUsed): IntlIterator|false {}
+
+function intlcal_get_now(): float {}
+
+function intlcal_get_available_locales(): array {}
+
+function intlcal_get(IntlCalendar $calendar, int $field): int|false {}
+
+function intlcal_get_time(IntlCalendar $calendar): float|false {}
+
+function intlcal_set_time(IntlCalendar $calendar, float $date): bool {}
+
+function intlcal_add(IntlCalendar $calendar, int $field, int $amount): bool {}
+
+/** @param IntlTimeZone|DateTimeZone|string|null $timeZone */
+function intlcal_set_time_zone(IntlCalendar $calendar, $timeZone): bool {}
+
+function intlcal_after(IntlCalendar $calendarObject, IntlCalendar $calendar): bool {}
+
+function intlcal_before(IntlCalendar $calendarObject, IntlCalendar $calendar): bool {}
+
+function intlcal_set(IntlCalendar $calendar, int $year, int $month, int $dayOfMonth = UNKNOWN, $hour = UNKNOWN, int $minute = UNKNOWN, int $second = UNKNOWN): bool {}
+
+/** @param int|bool $amountOrUpOrDown */
+function intlcal_roll(IntlCalendar $calendar, int $field, $amountOrUpOrDown): bool {}
+
+function intlcal_clear(IntlCalendar $calendar, ?int $field = null): bool {}
+
+function intlcal_field_difference(IntlCalendar $calendar, float $when, int $field): int|false {}
+
+function intlcal_get_actual_maximum(IntlCalendar $calendar, int $field): int|false {}
+
+function intlcal_get_actual_minimum(IntlCalendar $calendar, int $field): int|false {}
+
+function intlcal_get_day_of_week_type(IntlCalendar $calendar, int $dayOfWeek): int|false {}
+
+function intlcal_get_first_day_of_week(IntlCalendar $calendar): int|false {}
+
+function intlcal_greatest_minimum(IntlCalendar $calendar, int $field): int|false {}
+
+function intlcal_get_least_maximum(IntlCalendar $calendar, int $field): int|false {}
+
+function intlcal_get_greatest_minimum(IntlCalendar $calendar, int $field): int|false {}
+
+function intlcal_get_locale(IntlCalendar $calendar, int $localeType): string|false {}
+
+function intlcal_get_maximum(IntlCalendar $calendar, int $field): int|false {}
+
+function intlcal_get_minimal_days_in_first_week(IntlCalendar $calendar): int|false {}
+
+function intlcal_set_minimal_days_in_first_week(IntlCalendar $calendar, int $numberOfDays): bool {}
+
+function intlcal_get_minimum(IntlCalendar $calendar, int $field): int|false {}
+
+function intlcal_get_time_zone(IntlCalendar $calendar): IntlTimeZone|false {}
+
+function intlcal_get_type(IntlCalendar $calendar): string {}
+
+function intlcal_get_weekend_transition(IntlCalendar $calendar, int $dayOfWeek): int|false {}
+
+function intlcal_in_daylight_time(IntlCalendar $calendar): bool {}
+
+function intlcal_is_lenient(IntlCalendar $calendar): bool {}
+
+function intlcal_is_set(IntlCalendar $calendar, int $field): bool {}
+
+function intlcal_is_equivalent_to(IntlCalendar $calendarObject, IntlCalendar $calendar): bool {}
+
+function intlcal_is_weekend(IntlCalendar $calendar, ?float $date = null): bool {}
+
+function intlcal_set_first_day_of_week(IntlCalendar $calendar, int $dayOfWeek): bool {}
+
+function intlcal_set_lenient(IntlCalendar $calendar, bool $isLenient): bool {}
+
+function intlcal_get_repeated_wall_time_option(IntlCalendar $calendar): int {}
+
+function intlcal_equals(IntlCalendar $calendarObject, IntlCalendar $calendar): bool {}
+
+function intlcal_get_skipped_wall_time_option(IntlCalendar $calendar): int {}
+
+function intlcal_set_repeated_wall_time_option(IntlCalendar $calendar, int $wallTimeOption): bool {}
+
+function intlcal_set_skipped_wall_time_option(IntlCalendar $calendar, int $wallTimeOption): bool {}
+
+/** @param DateTime|string $dateTime */
+function intlcal_from_date_time($dateTime, ?string $locale = null): ?IntlCalendar {}
+
+function intlcal_to_date_time(IntlCalendar $calendar): DateTime|false {}
+
+function intlcal_get_error_code(IntlCalendar $calendar): int|false {}
+
+function intlcal_get_error_message(IntlCalendar $calendar): string|false {}
+
+/** @param IntlTimeZone|DateTimeZone|string|null $timeZone */
+function intlgregcal_create_instance($timeZone = null, ?string $locale = null): ?IntlGregorianCalendar {}
+
+function intlgregcal_set_gregorian_change(IntlGregorianCalendar $calendar, float $change): bool {}
+
+function intlgregcal_get_gregorian_change(IntlGregorianCalendar $calendar): float|false {}
+
+function intlgregcal_is_leap_year(IntlGregorianCalendar $calendar, int $year): bool {}
+
+/* collator */
+
+function collator_create(string $locale): ?Collator {}
+
+function collator_compare(Collator $object, string $str1, string $str2): int|false {}
+
+function collator_get_attribute(Collator $object, int $attr): int|false {}
+
+function collator_set_attribute(Collator $object, int $attr, int $val): bool {}
+
+function collator_get_strength(Collator $object): int {}
+
+function collator_set_strength(Collator $object, int $strength): bool {}
+
+function collator_sort(Collator $object, array &$arr, int $sort_flag = Collator::SORT_REGULAR): bool {}
+
+function collator_sort_with_sort_keys(Collator $object, array &$arr): bool {}
+
+function collator_asort(Collator $object, array &$arr, int $sort_flag = Collator::SORT_REGULAR): bool {}
+
+function collator_get_locale(Collator $object, int $type): string|false {}
+
+function collator_get_error_code(Collator $object): int|false {}
+
+function collator_get_error_message(Collator $object): string|false {}
+
+function collator_get_sort_key(Collator $object, string $str): string|false {}
+
+/* common */
+
+function intl_get_error_code(): int {}
+
+function intl_get_error_message(): string {}
+
+function intl_is_failure(int $error_code): bool {}
+
+function intl_error_name(int $error_code): string {}
+
+/* dateformat */
+
+/**
+ * @param IntlTimeZone|DateTimeZone|string|null $timezone
+ * @param IntlCalendar|int|null $calendar
+ */
+function datefmt_create(?string $locale, int $datetype, int $timetype, $timezone = null, $calendar = null, string $pattern = ""): ?IntlDateFormatter {}
+
+function datefmt_get_datetype(IntlDateFormatter $df): int|false {}
+
+function datefmt_get_timetype(IntlDateFormatter $df): int|false {}
+
+function datefmt_get_calendar(IntlDateFormatter $df): int|false {}
+
+/** @param IntlCalendar|int|null $which */
+function datefmt_set_calendar(IntlDateFormatter $df, $which): bool {}
+
+function datefmt_get_timezone_id(IntlDateFormatter $df): string|false {}
+
+function datefmt_get_calendar_object(IntlDateFormatter $df): IntlCalendar|false|null {}
+
+function datefmt_get_timezone(IntlDateFormatter $df): IntlTimeZone|false {}
+
+/** @param IntlTimeZone|DateTimeZone|string|null $zone */
+function datefmt_set_timezone(IntlDateFormatter $df, $zone): ?bool {}
+
+function datefmt_set_pattern(IntlDateFormatter $df, string $pattern): bool {}
+
+function datefmt_get_pattern(IntlDateFormatter $df): string|false {}
+
+function datefmt_get_locale(IntlDateFormatter $df, int $which = UNKNOWN): string|false {}
+
+function datefmt_set_lenient(IntlDateFormatter $df, bool $lenient): void {}
+
+function datefmt_is_lenient(IntlDateFormatter $df): bool {}
+
+/** @param mixed $value */
+function datefmt_format(IntlDateFormatter $df, $value): string|false {}
+
+/**
+ * @param IntlCalendar|DateTimeInterface $object
+ * @param array|int|string|null $format
+ */
+function datefmt_format_object($object, $format = null, ?string $locale = null): string|false {}
+
+function datefmt_parse(IntlDateFormatter $df, string $value, &$position = null): int|float|false {}
+
+function datefmt_localtime(IntlDateFormatter $df, string $value, &$position = null): array|false {}
+
+function datefmt_get_error_code(IntlDateFormatter $df): int {}
+
+function datefmt_get_error_message(IntlDateFormatter $df): string {}
+
+/* formatter */
+
+function numfmt_create(string $locale, int $style, string $pattern = ""): ?NumberFormatter {}
+
+function numfmt_format(NumberFormatter $fmt, int|float $value, int $type = NumberFormatter::TYPE_DEFAULT): string|false {}
+
+function numfmt_parse(NumberFormatter $fmt, string $value, int $type = NumberFormatter::TYPE_DOUBLE, &$position = null): int|float|false {}
+
+function numfmt_format_currency(NumberFormatter $fmt, float $value, string $currency): string|false {}
+
+function numfmt_parse_currency(NumberFormatter $fmt, string $value, &$currency, &$position = null): float|false {}
+
+/** @param int|float $value */
+function numfmt_set_attribute(NumberFormatter $fmt, int $attr, $value): bool {}
+
+function numfmt_get_attribute(NumberFormatter $fmt, int $attr): int|double|false {}
+
+function numfmt_set_text_attribute(NumberFormatter $fmt, int $attr, string $value): bool {}
+
+function numfmt_get_text_attribute(NumberFormatter $fmt, int $attr): string|false {}
+
+function numfmt_set_symbol(NumberFormatter $fmt, int $attr, string $value): bool {}
+
+function numfmt_get_symbol(NumberFormatter $fmt, int $attr): string|false {}
+
+function numfmt_set_pattern(NumberFormatter $fmt, string $pattern): bool {}
+
+function numfmt_get_pattern(NumberFormatter $fmt): string|false {}
+
+function numfmt_get_locale(NumberFormatter $fmt, int $type = ULOC_ACTUAL_LOCALE): string|false {}
+
+function numfmt_get_error_code(NumberFormatter $fmt): int {}
+
+function numfmt_get_error_message(NumberFormatter $fmt): string {}
+
+/* grapheme */
+
+function grapheme_strlen(string $input): int|false|null {}
+
+function grapheme_strpos(string $haystack, string $needle, int $offset = 0): int|false {}
+
+function grapheme_stripos(string $haystack, string $needle, int $offset = 0): int|false {}
+
+function grapheme_strrpos(string $haystack, string $needle, int $offset = 0): int|false {}
+
+function grapheme_strripos(string $haystack, string $needle, int $offset = 0): int|false {}
+
+function grapheme_substr(string $string, int $start, ?int $length = 0): string|false {}
+
+function grapheme_strstr(string $haystack, string $needle, bool $before_needle = false): string|false {}
+
+function grapheme_stristr(string $haystack, string $needle, bool $before_needle = false): string|false {}
+
+function grapheme_extract(string $haystack, int $size, int $extract_type = GRAPHEME_EXTR_COUNT, int $start = 0, &$next = null): string|false {}
+
+/* idn */
+
+function idn_to_ascii(string $domain, int $options = 0, int $variant = INTL_IDNA_VARIANT_UTS46, &$idna_info = null): string|false {}
+
+function idn_to_utf8(string $domain, int $options = 0, int $variant = INTL_IDNA_VARIANT_UTS46, &$idna_info = null): string|false {}
+
+/* locale */
+
+
+function locale_get_default(): string {}
+
+function locale_set_default(string $name): bool {}
+
+function locale_get_primary_language(string $locale): ?string {}
+
+function locale_get_script(string $locale): ?string {}
+
+function locale_get_region(string $locale): ?string {}
+
+function locale_get_keywords(string $locale): array|false|null {}
+
+function locale_get_display_script(string $locale, ?string $in_locale = null): string|false {}
+
+function locale_get_display_region(string $locale, ?string $in_locale = null): string|false {}
+
+function locale_get_display_name(string $locale, ?string $in_locale = null): string|false {}
+
+function locale_get_display_language(string $locale, ?string $in_locale = null): string|false {}
+
+function locale_get_display_variant(string $locale, ?string $in_locale = null): string|false {}
+
+function locale_compose(array $subtags): string|false {}
+
+function locale_parse(string $locale): ?array {}
+
+function locale_get_all_variants(string $locale): ?array {}
+
+function locale_filter_matches(string $langtag, string $locale, bool $canonicalize = false): ?bool {}
+
+function locale_canonicalize(string $locale): ?string {}
+
+function locale_lookup(array $langtag, string $locale, bool $canonicalize = false, ?string $def = null): ?string {}
+
+function locale_accept_from_http(string $header): string|false {}
+
+/* msgformat */
+
+function msgfmt_create(string $locale, string $pattern): ?MessageFormatter {}
+
+function msgfmt_format(MessageFormatter $fmt, array $args): string|false {}
+
+function msgfmt_format_message(string $locale, string $pattern, array $args): string|false {}
+
+function msgfmt_parse(MessageFormatter $fmt, string $value): array|false {}
+
+function msgfmt_parse_message(string $locale, string $pattern, string $source): array|false {}
+
+function msgfmt_set_pattern(MessageFormatter $fmt, string $pattern): bool {}
+
+function msgfmt_get_pattern(MessageFormatter $fmt): string|false {}
+
+function msgfmt_get_locale(MessageFormatter $fmt): string {}
+
+function msgfmt_get_error_code(MessageFormatter $fmt): int {}
+
+function msgfmt_get_error_message(MessageFormatter $fmt): string {}
+
+/* normalizer */
+
+function normalizer_normalize(string $input, int $form = Normalizer::FORM_C): string|false {}
+
+function normalizer_is_normalized(string $input, int $form = Normalizer::FORM_C): bool {}
+
+#if U_ICU_VERSION_MAJOR_NUM >= 56
+function normalizer_get_raw_decomposition(string $input, int $form = Normalizer::FORM_C): ?string {}
+#endif
+
+/* resourceboundle */
+
+function resourcebundle_create(?string $locale, ?string $bundlename, bool $fallback = true): ?ResourceBundle {}
+
+/**
+ * @param string|int $index
+ * @return mixed
+ */
+function resourcebundle_get(ResourceBundle $bundle, $index) {}
+
+function resourcebundle_count(ResourceBundle $bundle): int {}
+
+function resourcebundle_locales(string $bundlename): array|false {}
+
+function resourcebundle_get_error_code(ResourceBundle $bundle): int {}
+
+function resourcebundle_get_error_message(ResourceBundle $bundle): string {}
+
+/* timezone */
+
+function intltz_count_equivalent_ids(string $zoneId): int|false {}
+
+function intltz_create_default(): IntlTimeZone {}
+
+/**
+ * @param IntlTimeZone|string|int|double|null $countryOrRawOffset
+ * @return IntlIterator|false
+ */
+function intltz_create_enumeration($countryOrRawOffset = null) {}
+
+function intltz_create_time_zone(string $zoneId): ?IntlTimeZone {}
+
+function intltz_create_time_zone_id_enumeration(int $zoneType, ?string $region = null, ?int $rawOffset = null): IntlIterator|false {}
+
+function intltz_from_date_time_zone(DateTimeZone $zone): ?IntlTimeZone {}
+
+function intltz_get_canonical_id(string $zoneId, &$isSystemID = null): string|false {}
+
+function intltz_get_display_name(IntlTimeZone $tz, bool $isDaylight = false, int $style = IntlTimeZone::DISPLAY_LONG, ?string $locale = null): string|false {}
+
+function intltz_get_dst_savings(IntlTimeZone $tz): int {}
+
+function intltz_get_equivalent_id(string $zoneId, int $index): string|false {}
+
+function intltz_get_error_code(IntlTimeZone $tz): int|false {}
+
+function intltz_get_error_message(IntlTimeZone $tz): string|false {}
+
+function intltz_get_gmt(): IntlTimeZone {}
+
+function intltz_get_id(IntlTimeZone $tz): string|false {}
+
+function intltz_get_offset(IntlTimeZone $tz, float $date, bool $local, &$rawOffset, &$dstOffset): bool {}
+
+function intltz_get_raw_offset(IntlTimeZone $tz): int {}
+
+function intltz_get_region(string $zoneId): string|false {}
+
+function intltz_get_tz_data_version(): string|false {}
+
+function intltz_get_unknown(): IntlTimeZone {}
+
+#if U_ICU_VERSION_MAJOR_NUM >= 52
+function intltz_get_windows_id(string $timezone): string|false {}
+
+function intltz_get_id_for_windows_id(string $timezone, string $region = UNKNOWN): string|false {}
+#endif
+
+function intltz_has_same_rules(IntlTimeZone $tz, IntlTimeZone $otherTimeZone): bool {}
+
+function intltz_to_date_time_zone(IntlTimeZone $tz): DateTimeZone|false {}
+
+function intltz_use_daylight_time(IntlTimeZone $tz): bool {}
+
+/* transliterator */
+
+function transliterator_create(string $id, int $direction = Transliterator::FORWARD): ?Transliterator {}
+
+function transliterator_create_from_rules(string $rules, int $direction = Transliterator::FORWARD): ?Transliterator {}
+
+function transliterator_list_ids(): array|false {}
+
+function transliterator_create_inverse(Transliterator $orig_trans): ?Transliterator {}
+
+/** @param Transliterator|string */
+function transliterator_transliterate($transliterator, string $subject, int $start = 0, int $end = -1): string|false {}
+
+function transliterator_get_error_code(Transliterator $trans): int|false {}
+
+function transliterator_get_error_message(Transliterator $trans): string|false {}
diff --git a/ext/intl/php_intl_arginfo.h b/ext/intl/php_intl_arginfo.h
new file mode 100644 (file)
index 0000000..c391ef2
--- /dev/null
@@ -0,0 +1,775 @@
+/* This is a generated file, edit the .stub.php file instead. */
+
+ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_intlcal_create_instance, 0, 0, IntlCalendar, 1)
+       ZEND_ARG_INFO(0, timeZone)
+       ZEND_ARG_TYPE_INFO(0, locale, IS_STRING, 1)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_OBJ_TYPE_MASK_EX(arginfo_intlcal_get_keyword_values_for_locale, 0, 3, IntlIterator, MAY_BE_FALSE)
+       ZEND_ARG_TYPE_INFO(0, key, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, locale, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, commonlyUsed, _IS_BOOL, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intlcal_get_now, 0, 0, IS_DOUBLE, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intlcal_get_available_locales, 0, 0, IS_ARRAY, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_intlcal_get, 0, 2, MAY_BE_LONG|MAY_BE_FALSE)
+       ZEND_ARG_OBJ_INFO(0, calendar, IntlCalendar, 0)
+       ZEND_ARG_TYPE_INFO(0, field, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_intlcal_get_time, 0, 1, MAY_BE_DOUBLE|MAY_BE_FALSE)
+       ZEND_ARG_OBJ_INFO(0, calendar, IntlCalendar, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intlcal_set_time, 0, 2, _IS_BOOL, 0)
+       ZEND_ARG_OBJ_INFO(0, calendar, IntlCalendar, 0)
+       ZEND_ARG_TYPE_INFO(0, date, IS_DOUBLE, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intlcal_add, 0, 3, _IS_BOOL, 0)
+       ZEND_ARG_OBJ_INFO(0, calendar, IntlCalendar, 0)
+       ZEND_ARG_TYPE_INFO(0, field, IS_LONG, 0)
+       ZEND_ARG_TYPE_INFO(0, amount, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intlcal_set_time_zone, 0, 2, _IS_BOOL, 0)
+       ZEND_ARG_OBJ_INFO(0, calendar, IntlCalendar, 0)
+       ZEND_ARG_INFO(0, timeZone)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intlcal_after, 0, 2, _IS_BOOL, 0)
+       ZEND_ARG_OBJ_INFO(0, calendarObject, IntlCalendar, 0)
+       ZEND_ARG_OBJ_INFO(0, calendar, IntlCalendar, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_intlcal_before arginfo_intlcal_after
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intlcal_set, 0, 3, _IS_BOOL, 0)
+       ZEND_ARG_OBJ_INFO(0, calendar, IntlCalendar, 0)
+       ZEND_ARG_TYPE_INFO(0, year, IS_LONG, 0)
+       ZEND_ARG_TYPE_INFO(0, month, IS_LONG, 0)
+       ZEND_ARG_TYPE_INFO(0, dayOfMonth, IS_LONG, 0)
+       ZEND_ARG_INFO(0, hour)
+       ZEND_ARG_TYPE_INFO(0, minute, IS_LONG, 0)
+       ZEND_ARG_TYPE_INFO(0, second, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intlcal_roll, 0, 3, _IS_BOOL, 0)
+       ZEND_ARG_OBJ_INFO(0, calendar, IntlCalendar, 0)
+       ZEND_ARG_TYPE_INFO(0, field, IS_LONG, 0)
+       ZEND_ARG_INFO(0, amountOrUpOrDown)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intlcal_clear, 0, 1, _IS_BOOL, 0)
+       ZEND_ARG_OBJ_INFO(0, calendar, IntlCalendar, 0)
+       ZEND_ARG_TYPE_INFO(0, field, IS_LONG, 1)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_intlcal_field_difference, 0, 3, MAY_BE_LONG|MAY_BE_FALSE)
+       ZEND_ARG_OBJ_INFO(0, calendar, IntlCalendar, 0)
+       ZEND_ARG_TYPE_INFO(0, when, IS_DOUBLE, 0)
+       ZEND_ARG_TYPE_INFO(0, field, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_intlcal_get_actual_maximum arginfo_intlcal_get
+
+#define arginfo_intlcal_get_actual_minimum arginfo_intlcal_get
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_intlcal_get_day_of_week_type, 0, 2, MAY_BE_LONG|MAY_BE_FALSE)
+       ZEND_ARG_OBJ_INFO(0, calendar, IntlCalendar, 0)
+       ZEND_ARG_TYPE_INFO(0, dayOfWeek, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_intlcal_get_first_day_of_week, 0, 1, MAY_BE_LONG|MAY_BE_FALSE)
+       ZEND_ARG_OBJ_INFO(0, calendar, IntlCalendar, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_intlcal_greatest_minimum arginfo_intlcal_get
+
+#define arginfo_intlcal_get_least_maximum arginfo_intlcal_get
+
+#define arginfo_intlcal_get_greatest_minimum arginfo_intlcal_get
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_intlcal_get_locale, 0, 2, MAY_BE_STRING|MAY_BE_FALSE)
+       ZEND_ARG_OBJ_INFO(0, calendar, IntlCalendar, 0)
+       ZEND_ARG_TYPE_INFO(0, localeType, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_intlcal_get_maximum arginfo_intlcal_get
+
+#define arginfo_intlcal_get_minimal_days_in_first_week arginfo_intlcal_get_first_day_of_week
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intlcal_set_minimal_days_in_first_week, 0, 2, _IS_BOOL, 0)
+       ZEND_ARG_OBJ_INFO(0, calendar, IntlCalendar, 0)
+       ZEND_ARG_TYPE_INFO(0, numberOfDays, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_intlcal_get_minimum arginfo_intlcal_get
+
+ZEND_BEGIN_ARG_WITH_RETURN_OBJ_TYPE_MASK_EX(arginfo_intlcal_get_time_zone, 0, 1, IntlTimeZone, MAY_BE_FALSE)
+       ZEND_ARG_OBJ_INFO(0, calendar, IntlCalendar, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intlcal_get_type, 0, 1, IS_STRING, 0)
+       ZEND_ARG_OBJ_INFO(0, calendar, IntlCalendar, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_intlcal_get_weekend_transition arginfo_intlcal_get_day_of_week_type
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intlcal_in_daylight_time, 0, 1, _IS_BOOL, 0)
+       ZEND_ARG_OBJ_INFO(0, calendar, IntlCalendar, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_intlcal_is_lenient arginfo_intlcal_in_daylight_time
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intlcal_is_set, 0, 2, _IS_BOOL, 0)
+       ZEND_ARG_OBJ_INFO(0, calendar, IntlCalendar, 0)
+       ZEND_ARG_TYPE_INFO(0, field, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_intlcal_is_equivalent_to arginfo_intlcal_after
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intlcal_is_weekend, 0, 1, _IS_BOOL, 0)
+       ZEND_ARG_OBJ_INFO(0, calendar, IntlCalendar, 0)
+       ZEND_ARG_TYPE_INFO(0, date, IS_DOUBLE, 1)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intlcal_set_first_day_of_week, 0, 2, _IS_BOOL, 0)
+       ZEND_ARG_OBJ_INFO(0, calendar, IntlCalendar, 0)
+       ZEND_ARG_TYPE_INFO(0, dayOfWeek, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intlcal_set_lenient, 0, 2, _IS_BOOL, 0)
+       ZEND_ARG_OBJ_INFO(0, calendar, IntlCalendar, 0)
+       ZEND_ARG_TYPE_INFO(0, isLenient, _IS_BOOL, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intlcal_get_repeated_wall_time_option, 0, 1, IS_LONG, 0)
+       ZEND_ARG_OBJ_INFO(0, calendar, IntlCalendar, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_intlcal_equals arginfo_intlcal_after
+
+#define arginfo_intlcal_get_skipped_wall_time_option arginfo_intlcal_get_repeated_wall_time_option
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intlcal_set_repeated_wall_time_option, 0, 2, _IS_BOOL, 0)
+       ZEND_ARG_OBJ_INFO(0, calendar, IntlCalendar, 0)
+       ZEND_ARG_TYPE_INFO(0, wallTimeOption, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_intlcal_set_skipped_wall_time_option arginfo_intlcal_set_repeated_wall_time_option
+
+ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_intlcal_from_date_time, 0, 1, IntlCalendar, 1)
+       ZEND_ARG_INFO(0, dateTime)
+       ZEND_ARG_TYPE_INFO(0, locale, IS_STRING, 1)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_OBJ_TYPE_MASK_EX(arginfo_intlcal_to_date_time, 0, 1, DateTime, MAY_BE_FALSE)
+       ZEND_ARG_OBJ_INFO(0, calendar, IntlCalendar, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_intlcal_get_error_code arginfo_intlcal_get_first_day_of_week
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_intlcal_get_error_message, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
+       ZEND_ARG_OBJ_INFO(0, calendar, IntlCalendar, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_intlgregcal_create_instance, 0, 0, IntlGregorianCalendar, 1)
+       ZEND_ARG_INFO(0, timeZone)
+       ZEND_ARG_TYPE_INFO(0, locale, IS_STRING, 1)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intlgregcal_set_gregorian_change, 0, 2, _IS_BOOL, 0)
+       ZEND_ARG_OBJ_INFO(0, calendar, IntlGregorianCalendar, 0)
+       ZEND_ARG_TYPE_INFO(0, change, IS_DOUBLE, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_intlgregcal_get_gregorian_change, 0, 1, MAY_BE_DOUBLE|MAY_BE_FALSE)
+       ZEND_ARG_OBJ_INFO(0, calendar, IntlGregorianCalendar, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intlgregcal_is_leap_year, 0, 2, _IS_BOOL, 0)
+       ZEND_ARG_OBJ_INFO(0, calendar, IntlGregorianCalendar, 0)
+       ZEND_ARG_TYPE_INFO(0, year, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_collator_create, 0, 1, Collator, 1)
+       ZEND_ARG_TYPE_INFO(0, locale, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_collator_compare, 0, 3, MAY_BE_LONG|MAY_BE_FALSE)
+       ZEND_ARG_OBJ_INFO(0, object, Collator, 0)
+       ZEND_ARG_TYPE_INFO(0, str1, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, str2, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_collator_get_attribute, 0, 2, MAY_BE_LONG|MAY_BE_FALSE)
+       ZEND_ARG_OBJ_INFO(0, object, Collator, 0)
+       ZEND_ARG_TYPE_INFO(0, attr, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_collator_set_attribute, 0, 3, _IS_BOOL, 0)
+       ZEND_ARG_OBJ_INFO(0, object, Collator, 0)
+       ZEND_ARG_TYPE_INFO(0, attr, IS_LONG, 0)
+       ZEND_ARG_TYPE_INFO(0, val, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_collator_get_strength, 0, 1, IS_LONG, 0)
+       ZEND_ARG_OBJ_INFO(0, object, Collator, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_collator_set_strength, 0, 2, _IS_BOOL, 0)
+       ZEND_ARG_OBJ_INFO(0, object, Collator, 0)
+       ZEND_ARG_TYPE_INFO(0, strength, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_collator_sort, 0, 2, _IS_BOOL, 0)
+       ZEND_ARG_OBJ_INFO(0, object, Collator, 0)
+       ZEND_ARG_TYPE_INFO(1, arr, IS_ARRAY, 0)
+       ZEND_ARG_TYPE_INFO(0, sort_flag, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_collator_sort_with_sort_keys, 0, 2, _IS_BOOL, 0)
+       ZEND_ARG_OBJ_INFO(0, object, Collator, 0)
+       ZEND_ARG_TYPE_INFO(1, arr, IS_ARRAY, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_collator_asort arginfo_collator_sort
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_collator_get_locale, 0, 2, MAY_BE_STRING|MAY_BE_FALSE)
+       ZEND_ARG_OBJ_INFO(0, object, Collator, 0)
+       ZEND_ARG_TYPE_INFO(0, type, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_collator_get_error_code, 0, 1, MAY_BE_LONG|MAY_BE_FALSE)
+       ZEND_ARG_OBJ_INFO(0, object, Collator, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_collator_get_error_message, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
+       ZEND_ARG_OBJ_INFO(0, object, Collator, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_collator_get_sort_key, 0, 2, MAY_BE_STRING|MAY_BE_FALSE)
+       ZEND_ARG_OBJ_INFO(0, object, Collator, 0)
+       ZEND_ARG_TYPE_INFO(0, str, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intl_get_error_code, 0, 0, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intl_get_error_message, 0, 0, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intl_is_failure, 0, 1, _IS_BOOL, 0)
+       ZEND_ARG_TYPE_INFO(0, error_code, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intl_error_name, 0, 1, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, error_code, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_datefmt_create, 0, 3, IntlDateFormatter, 1)
+       ZEND_ARG_TYPE_INFO(0, locale, IS_STRING, 1)
+       ZEND_ARG_TYPE_INFO(0, datetype, IS_LONG, 0)
+       ZEND_ARG_TYPE_INFO(0, timetype, IS_LONG, 0)
+       ZEND_ARG_INFO(0, timezone)
+       ZEND_ARG_INFO(0, calendar)
+       ZEND_ARG_TYPE_INFO(0, pattern, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_datefmt_get_datetype, 0, 1, MAY_BE_LONG|MAY_BE_FALSE)
+       ZEND_ARG_OBJ_INFO(0, df, IntlDateFormatter, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_datefmt_get_timetype arginfo_datefmt_get_datetype
+
+#define arginfo_datefmt_get_calendar arginfo_datefmt_get_datetype
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_datefmt_set_calendar, 0, 2, _IS_BOOL, 0)
+       ZEND_ARG_OBJ_INFO(0, df, IntlDateFormatter, 0)
+       ZEND_ARG_INFO(0, which)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_datefmt_get_timezone_id, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
+       ZEND_ARG_OBJ_INFO(0, df, IntlDateFormatter, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_OBJ_TYPE_MASK_EX(arginfo_datefmt_get_calendar_object, 0, 1, IntlCalendar, MAY_BE_FALSE|MAY_BE_NULL)
+       ZEND_ARG_OBJ_INFO(0, df, IntlDateFormatter, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_OBJ_TYPE_MASK_EX(arginfo_datefmt_get_timezone, 0, 1, IntlTimeZone, MAY_BE_FALSE)
+       ZEND_ARG_OBJ_INFO(0, df, IntlDateFormatter, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_datefmt_set_timezone, 0, 2, _IS_BOOL, 1)
+       ZEND_ARG_OBJ_INFO(0, df, IntlDateFormatter, 0)
+       ZEND_ARG_INFO(0, zone)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_datefmt_set_pattern, 0, 2, _IS_BOOL, 0)
+       ZEND_ARG_OBJ_INFO(0, df, IntlDateFormatter, 0)
+       ZEND_ARG_TYPE_INFO(0, pattern, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_datefmt_get_pattern arginfo_datefmt_get_timezone_id
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_datefmt_get_locale, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
+       ZEND_ARG_OBJ_INFO(0, df, IntlDateFormatter, 0)
+       ZEND_ARG_TYPE_INFO(0, which, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_datefmt_set_lenient, 0, 2, IS_VOID, 0)
+       ZEND_ARG_OBJ_INFO(0, df, IntlDateFormatter, 0)
+       ZEND_ARG_TYPE_INFO(0, lenient, _IS_BOOL, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_datefmt_is_lenient, 0, 1, _IS_BOOL, 0)
+       ZEND_ARG_OBJ_INFO(0, df, IntlDateFormatter, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_datefmt_format, 0, 2, MAY_BE_STRING|MAY_BE_FALSE)
+       ZEND_ARG_OBJ_INFO(0, df, IntlDateFormatter, 0)
+       ZEND_ARG_INFO(0, value)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_datefmt_format_object, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
+       ZEND_ARG_INFO(0, object)
+       ZEND_ARG_INFO(0, format)
+       ZEND_ARG_TYPE_INFO(0, locale, IS_STRING, 1)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_datefmt_parse, 0, 2, MAY_BE_LONG|MAY_BE_DOUBLE|MAY_BE_FALSE)
+       ZEND_ARG_OBJ_INFO(0, df, IntlDateFormatter, 0)
+       ZEND_ARG_TYPE_INFO(0, value, IS_STRING, 0)
+       ZEND_ARG_INFO(1, position)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_datefmt_localtime, 0, 2, MAY_BE_ARRAY|MAY_BE_FALSE)
+       ZEND_ARG_OBJ_INFO(0, df, IntlDateFormatter, 0)
+       ZEND_ARG_TYPE_INFO(0, value, IS_STRING, 0)
+       ZEND_ARG_INFO(1, position)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_datefmt_get_error_code, 0, 1, IS_LONG, 0)
+       ZEND_ARG_OBJ_INFO(0, df, IntlDateFormatter, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_datefmt_get_error_message, 0, 1, IS_STRING, 0)
+       ZEND_ARG_OBJ_INFO(0, df, IntlDateFormatter, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_numfmt_create, 0, 2, NumberFormatter, 1)
+       ZEND_ARG_TYPE_INFO(0, locale, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, style, IS_LONG, 0)
+       ZEND_ARG_TYPE_INFO(0, pattern, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_numfmt_format, 0, 2, MAY_BE_STRING|MAY_BE_FALSE)
+       ZEND_ARG_OBJ_INFO(0, fmt, NumberFormatter, 0)
+       ZEND_ARG_TYPE_MASK(0, value, MAY_BE_LONG|MAY_BE_DOUBLE)
+       ZEND_ARG_TYPE_INFO(0, type, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_numfmt_parse, 0, 2, MAY_BE_LONG|MAY_BE_DOUBLE|MAY_BE_FALSE)
+       ZEND_ARG_OBJ_INFO(0, fmt, NumberFormatter, 0)
+       ZEND_ARG_TYPE_INFO(0, value, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, type, IS_LONG, 0)
+       ZEND_ARG_INFO(1, position)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_numfmt_format_currency, 0, 3, MAY_BE_STRING|MAY_BE_FALSE)
+       ZEND_ARG_OBJ_INFO(0, fmt, NumberFormatter, 0)
+       ZEND_ARG_TYPE_INFO(0, value, IS_DOUBLE, 0)
+       ZEND_ARG_TYPE_INFO(0, currency, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_numfmt_parse_currency, 0, 3, MAY_BE_DOUBLE|MAY_BE_FALSE)
+       ZEND_ARG_OBJ_INFO(0, fmt, NumberFormatter, 0)
+       ZEND_ARG_TYPE_INFO(0, value, IS_STRING, 0)
+       ZEND_ARG_INFO(1, currency)
+       ZEND_ARG_INFO(1, position)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_numfmt_set_attribute, 0, 3, _IS_BOOL, 0)
+       ZEND_ARG_OBJ_INFO(0, fmt, NumberFormatter, 0)
+       ZEND_ARG_TYPE_INFO(0, attr, IS_LONG, 0)
+       ZEND_ARG_INFO(0, value)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_OBJ_TYPE_MASK_EX(arginfo_numfmt_get_attribute, 0, 2, double, MAY_BE_LONG|MAY_BE_FALSE)
+       ZEND_ARG_OBJ_INFO(0, fmt, NumberFormatter, 0)
+       ZEND_ARG_TYPE_INFO(0, attr, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_numfmt_set_text_attribute, 0, 3, _IS_BOOL, 0)
+       ZEND_ARG_OBJ_INFO(0, fmt, NumberFormatter, 0)
+       ZEND_ARG_TYPE_INFO(0, attr, IS_LONG, 0)
+       ZEND_ARG_TYPE_INFO(0, value, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_numfmt_get_text_attribute, 0, 2, MAY_BE_STRING|MAY_BE_FALSE)
+       ZEND_ARG_OBJ_INFO(0, fmt, NumberFormatter, 0)
+       ZEND_ARG_TYPE_INFO(0, attr, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_numfmt_set_symbol arginfo_numfmt_set_text_attribute
+
+#define arginfo_numfmt_get_symbol arginfo_numfmt_get_text_attribute
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_numfmt_set_pattern, 0, 2, _IS_BOOL, 0)
+       ZEND_ARG_OBJ_INFO(0, fmt, NumberFormatter, 0)
+       ZEND_ARG_TYPE_INFO(0, pattern, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_numfmt_get_pattern, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
+       ZEND_ARG_OBJ_INFO(0, fmt, NumberFormatter, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_numfmt_get_locale, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
+       ZEND_ARG_OBJ_INFO(0, fmt, NumberFormatter, 0)
+       ZEND_ARG_TYPE_INFO(0, type, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_numfmt_get_error_code, 0, 1, IS_LONG, 0)
+       ZEND_ARG_OBJ_INFO(0, fmt, NumberFormatter, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_numfmt_get_error_message, 0, 1, IS_STRING, 0)
+       ZEND_ARG_OBJ_INFO(0, fmt, NumberFormatter, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_grapheme_strlen, 0, 1, MAY_BE_LONG|MAY_BE_FALSE|MAY_BE_NULL)
+       ZEND_ARG_TYPE_INFO(0, input, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_grapheme_strpos, 0, 2, MAY_BE_LONG|MAY_BE_FALSE)
+       ZEND_ARG_TYPE_INFO(0, haystack, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, needle, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, offset, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_grapheme_stripos arginfo_grapheme_strpos
+
+#define arginfo_grapheme_strrpos arginfo_grapheme_strpos
+
+#define arginfo_grapheme_strripos arginfo_grapheme_strpos
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_grapheme_substr, 0, 2, MAY_BE_STRING|MAY_BE_FALSE)
+       ZEND_ARG_TYPE_INFO(0, string, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, start, IS_LONG, 0)
+       ZEND_ARG_TYPE_INFO(0, length, IS_LONG, 1)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_grapheme_strstr, 0, 2, MAY_BE_STRING|MAY_BE_FALSE)
+       ZEND_ARG_TYPE_INFO(0, haystack, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, needle, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, before_needle, _IS_BOOL, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_grapheme_stristr arginfo_grapheme_strstr
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_grapheme_extract, 0, 2, MAY_BE_STRING|MAY_BE_FALSE)
+       ZEND_ARG_TYPE_INFO(0, haystack, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, size, IS_LONG, 0)
+       ZEND_ARG_TYPE_INFO(0, extract_type, IS_LONG, 0)
+       ZEND_ARG_TYPE_INFO(0, start, IS_LONG, 0)
+       ZEND_ARG_INFO(1, next)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_idn_to_ascii, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
+       ZEND_ARG_TYPE_INFO(0, domain, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, options, IS_LONG, 0)
+       ZEND_ARG_TYPE_INFO(0, variant, IS_LONG, 0)
+       ZEND_ARG_INFO(1, idna_info)
+ZEND_END_ARG_INFO()
+
+#define arginfo_idn_to_utf8 arginfo_idn_to_ascii
+
+#define arginfo_locale_get_default arginfo_intl_get_error_message
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_locale_set_default, 0, 1, _IS_BOOL, 0)
+       ZEND_ARG_TYPE_INFO(0, name, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_locale_get_primary_language, 0, 1, IS_STRING, 1)
+       ZEND_ARG_TYPE_INFO(0, locale, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_locale_get_script arginfo_locale_get_primary_language
+
+#define arginfo_locale_get_region arginfo_locale_get_primary_language
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_locale_get_keywords, 0, 1, MAY_BE_ARRAY|MAY_BE_FALSE|MAY_BE_NULL)
+       ZEND_ARG_TYPE_INFO(0, locale, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_locale_get_display_script, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
+       ZEND_ARG_TYPE_INFO(0, locale, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, in_locale, IS_STRING, 1)
+ZEND_END_ARG_INFO()
+
+#define arginfo_locale_get_display_region arginfo_locale_get_display_script
+
+#define arginfo_locale_get_display_name arginfo_locale_get_display_script
+
+#define arginfo_locale_get_display_language arginfo_locale_get_display_script
+
+#define arginfo_locale_get_display_variant arginfo_locale_get_display_script
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_locale_compose, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
+       ZEND_ARG_TYPE_INFO(0, subtags, IS_ARRAY, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_locale_parse, 0, 1, IS_ARRAY, 1)
+       ZEND_ARG_TYPE_INFO(0, locale, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_locale_get_all_variants arginfo_locale_parse
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_locale_filter_matches, 0, 2, _IS_BOOL, 1)
+       ZEND_ARG_TYPE_INFO(0, langtag, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, locale, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, canonicalize, _IS_BOOL, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_locale_canonicalize arginfo_locale_get_primary_language
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_locale_lookup, 0, 2, IS_STRING, 1)
+       ZEND_ARG_TYPE_INFO(0, langtag, IS_ARRAY, 0)
+       ZEND_ARG_TYPE_INFO(0, locale, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, canonicalize, _IS_BOOL, 0)
+       ZEND_ARG_TYPE_INFO(0, def, IS_STRING, 1)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_locale_accept_from_http, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
+       ZEND_ARG_TYPE_INFO(0, header, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_msgfmt_create, 0, 2, MessageFormatter, 1)
+       ZEND_ARG_TYPE_INFO(0, locale, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, pattern, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_msgfmt_format, 0, 2, MAY_BE_STRING|MAY_BE_FALSE)
+       ZEND_ARG_OBJ_INFO(0, fmt, MessageFormatter, 0)
+       ZEND_ARG_TYPE_INFO(0, args, IS_ARRAY, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_msgfmt_format_message, 0, 3, MAY_BE_STRING|MAY_BE_FALSE)
+       ZEND_ARG_TYPE_INFO(0, locale, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, pattern, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, args, IS_ARRAY, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_msgfmt_parse, 0, 2, MAY_BE_ARRAY|MAY_BE_FALSE)
+       ZEND_ARG_OBJ_INFO(0, fmt, MessageFormatter, 0)
+       ZEND_ARG_TYPE_INFO(0, value, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_msgfmt_parse_message, 0, 3, MAY_BE_ARRAY|MAY_BE_FALSE)
+       ZEND_ARG_TYPE_INFO(0, locale, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, pattern, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, source, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_msgfmt_set_pattern, 0, 2, _IS_BOOL, 0)
+       ZEND_ARG_OBJ_INFO(0, fmt, MessageFormatter, 0)
+       ZEND_ARG_TYPE_INFO(0, pattern, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_msgfmt_get_pattern, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
+       ZEND_ARG_OBJ_INFO(0, fmt, MessageFormatter, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_msgfmt_get_locale, 0, 1, IS_STRING, 0)
+       ZEND_ARG_OBJ_INFO(0, fmt, MessageFormatter, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_msgfmt_get_error_code, 0, 1, IS_LONG, 0)
+       ZEND_ARG_OBJ_INFO(0, fmt, MessageFormatter, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_msgfmt_get_error_message arginfo_msgfmt_get_locale
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_normalizer_normalize, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
+       ZEND_ARG_TYPE_INFO(0, input, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, form, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_normalizer_is_normalized, 0, 1, _IS_BOOL, 0)
+       ZEND_ARG_TYPE_INFO(0, input, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, form, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+#if U_ICU_VERSION_MAJOR_NUM >= 56
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_normalizer_get_raw_decomposition, 0, 1, IS_STRING, 1)
+       ZEND_ARG_TYPE_INFO(0, input, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, form, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+#endif
+
+ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_resourcebundle_create, 0, 2, ResourceBundle, 1)
+       ZEND_ARG_TYPE_INFO(0, locale, IS_STRING, 1)
+       ZEND_ARG_TYPE_INFO(0, bundlename, IS_STRING, 1)
+       ZEND_ARG_TYPE_INFO(0, fallback, _IS_BOOL, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_resourcebundle_get, 0, 0, 2)
+       ZEND_ARG_OBJ_INFO(0, bundle, ResourceBundle, 0)
+       ZEND_ARG_INFO(0, index)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_resourcebundle_count, 0, 1, IS_LONG, 0)
+       ZEND_ARG_OBJ_INFO(0, bundle, ResourceBundle, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_resourcebundle_locales, 0, 1, MAY_BE_ARRAY|MAY_BE_FALSE)
+       ZEND_ARG_TYPE_INFO(0, bundlename, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_resourcebundle_get_error_code arginfo_resourcebundle_count
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_resourcebundle_get_error_message, 0, 1, IS_STRING, 0)
+       ZEND_ARG_OBJ_INFO(0, bundle, ResourceBundle, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_intltz_count_equivalent_ids, 0, 1, MAY_BE_LONG|MAY_BE_FALSE)
+       ZEND_ARG_TYPE_INFO(0, zoneId, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_intltz_create_default, 0, 0, IntlTimeZone, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_intltz_create_enumeration, 0, 0, 0)
+       ZEND_ARG_INFO(0, countryOrRawOffset)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_intltz_create_time_zone, 0, 1, IntlTimeZone, 1)
+       ZEND_ARG_TYPE_INFO(0, zoneId, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_OBJ_TYPE_MASK_EX(arginfo_intltz_create_time_zone_id_enumeration, 0, 1, IntlIterator, MAY_BE_FALSE)
+       ZEND_ARG_TYPE_INFO(0, zoneType, IS_LONG, 0)
+       ZEND_ARG_TYPE_INFO(0, region, IS_STRING, 1)
+       ZEND_ARG_TYPE_INFO(0, rawOffset, IS_LONG, 1)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_intltz_from_date_time_zone, 0, 1, IntlTimeZone, 1)
+       ZEND_ARG_OBJ_INFO(0, zone, DateTimeZone, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_intltz_get_canonical_id, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
+       ZEND_ARG_TYPE_INFO(0, zoneId, IS_STRING, 0)
+       ZEND_ARG_INFO(1, isSystemID)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_intltz_get_display_name, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
+       ZEND_ARG_OBJ_INFO(0, tz, IntlTimeZone, 0)
+       ZEND_ARG_TYPE_INFO(0, isDaylight, _IS_BOOL, 0)
+       ZEND_ARG_TYPE_INFO(0, style, IS_LONG, 0)
+       ZEND_ARG_TYPE_INFO(0, locale, IS_STRING, 1)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intltz_get_dst_savings, 0, 1, IS_LONG, 0)
+       ZEND_ARG_OBJ_INFO(0, tz, IntlTimeZone, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_intltz_get_equivalent_id, 0, 2, MAY_BE_STRING|MAY_BE_FALSE)
+       ZEND_ARG_TYPE_INFO(0, zoneId, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, index, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_intltz_get_error_code, 0, 1, MAY_BE_LONG|MAY_BE_FALSE)
+       ZEND_ARG_OBJ_INFO(0, tz, IntlTimeZone, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_intltz_get_error_message, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
+       ZEND_ARG_OBJ_INFO(0, tz, IntlTimeZone, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_intltz_get_gmt arginfo_intltz_create_default
+
+#define arginfo_intltz_get_id arginfo_intltz_get_error_message
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intltz_get_offset, 0, 5, _IS_BOOL, 0)
+       ZEND_ARG_OBJ_INFO(0, tz, IntlTimeZone, 0)
+       ZEND_ARG_TYPE_INFO(0, date, IS_DOUBLE, 0)
+       ZEND_ARG_TYPE_INFO(0, local, _IS_BOOL, 0)
+       ZEND_ARG_INFO(1, rawOffset)
+       ZEND_ARG_INFO(1, dstOffset)
+ZEND_END_ARG_INFO()
+
+#define arginfo_intltz_get_raw_offset arginfo_intltz_get_dst_savings
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_intltz_get_region, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
+       ZEND_ARG_TYPE_INFO(0, zoneId, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_intltz_get_tz_data_version, 0, 0, MAY_BE_STRING|MAY_BE_FALSE)
+ZEND_END_ARG_INFO()
+
+#define arginfo_intltz_get_unknown arginfo_intltz_create_default
+
+#if U_ICU_VERSION_MAJOR_NUM >= 52
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_intltz_get_windows_id, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
+       ZEND_ARG_TYPE_INFO(0, timezone, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+#endif
+
+#if U_ICU_VERSION_MAJOR_NUM >= 52
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_intltz_get_id_for_windows_id, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
+       ZEND_ARG_TYPE_INFO(0, timezone, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, region, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+#endif
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intltz_has_same_rules, 0, 2, _IS_BOOL, 0)
+       ZEND_ARG_OBJ_INFO(0, tz, IntlTimeZone, 0)
+       ZEND_ARG_OBJ_INFO(0, otherTimeZone, IntlTimeZone, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_OBJ_TYPE_MASK_EX(arginfo_intltz_to_date_time_zone, 0, 1, DateTimeZone, MAY_BE_FALSE)
+       ZEND_ARG_OBJ_INFO(0, tz, IntlTimeZone, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intltz_use_daylight_time, 0, 1, _IS_BOOL, 0)
+       ZEND_ARG_OBJ_INFO(0, tz, IntlTimeZone, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_transliterator_create, 0, 1, Transliterator, 1)
+       ZEND_ARG_TYPE_INFO(0, id, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, direction, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_transliterator_create_from_rules, 0, 1, Transliterator, 1)
+       ZEND_ARG_TYPE_INFO(0, rules, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, direction, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_transliterator_list_ids, 0, 0, MAY_BE_ARRAY|MAY_BE_FALSE)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_transliterator_create_inverse, 0, 1, Transliterator, 1)
+       ZEND_ARG_OBJ_INFO(0, orig_trans, Transliterator, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_transliterator_transliterate, 0, 2, MAY_BE_STRING|MAY_BE_FALSE)
+       ZEND_ARG_INFO(0, transliterator)
+       ZEND_ARG_TYPE_INFO(0, subject, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, start, IS_LONG, 0)
+       ZEND_ARG_TYPE_INFO(0, end, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_transliterator_get_error_code, 0, 1, MAY_BE_LONG|MAY_BE_FALSE)
+       ZEND_ARG_OBJ_INFO(0, trans, Transliterator, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_transliterator_get_error_message, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
+       ZEND_ARG_OBJ_INFO(0, trans, Transliterator, 0)
+ZEND_END_ARG_INFO()
index 14f10fea4bf9d9dd614eb12e43a7da41fcb595ea..34430edf636fe9e6a76f0e91e789093cafea1a3c 100644 (file)
@@ -25,19 +25,3 @@ class ResourceBundle implements Traversable
     /** @return string */
     public function getErrorMessage() {}
 }
-
-function resourcebundle_create(?string $locale, ?string $bundlename, bool $fallback = true): ?ResourceBundle {}
-
-/**
- * @param string|int $index
- * @return mixed
- */
-function resourcebundle_get(ResourceBundle $bundle, $index) {}
-
-function resourcebundle_count(ResourceBundle $bundle): int {}
-
-function resourcebundle_locales(string $bundlename): array|false {}
-
-function resourcebundle_get_error_code(ResourceBundle $bundle): int {}
-
-function resourcebundle_get_error_message(ResourceBundle $bundle): string {}
index 855b8b548c1957480ba3727772df2bfe8dc03db8..f12ece0972a16476d27d73df91e2e16198222a7f 100644 (file)
@@ -23,28 +23,3 @@ ZEND_END_ARG_INFO()
 #define arginfo_class_ResourceBundle_getErrorCode arginfo_class_ResourceBundle_count
 
 #define arginfo_class_ResourceBundle_getErrorMessage arginfo_class_ResourceBundle_count
-
-ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_resourcebundle_create, 0, 2, ResourceBundle, 1)
-       ZEND_ARG_TYPE_INFO(0, locale, IS_STRING, 1)
-       ZEND_ARG_TYPE_INFO(0, bundlename, IS_STRING, 1)
-       ZEND_ARG_TYPE_INFO(0, fallback, _IS_BOOL, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_resourcebundle_get, 0, 0, 2)
-       ZEND_ARG_OBJ_INFO(0, bundle, ResourceBundle, 0)
-       ZEND_ARG_INFO(0, index)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_resourcebundle_count, 0, 1, IS_LONG, 0)
-       ZEND_ARG_OBJ_INFO(0, bundle, ResourceBundle, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_resourcebundle_locales, 0, 1, MAY_BE_ARRAY|MAY_BE_FALSE)
-       ZEND_ARG_TYPE_INFO(0, bundlename, IS_STRING, 0)
-ZEND_END_ARG_INFO()
-
-#define arginfo_resourcebundle_get_error_code arginfo_resourcebundle_count
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_resourcebundle_get_error_message, 0, 1, IS_STRING, 0)
-       ZEND_ARG_OBJ_INFO(0, bundle, ResourceBundle, 0)
-ZEND_END_ARG_INFO()
index 332fb9c1d2b33dc3d40cdef9e3f39d0593cc024c..cf473a91f6956722125f7c5f1fbdd6dbbaca7dbe 100644 (file)
@@ -80,57 +80,3 @@ class IntlTimeZone
     /** @return bool */
     public function useDaylightTime() {}
 }
-
-function intltz_count_equivalent_ids(string $zoneId): int|false {}
-
-function intltz_create_default(): IntlTimeZone {}
-
-/**
- * @param IntlTimeZone|string|int|double|null $countryOrRawOffset
- * @return IntlIterator|false
- */
-function intltz_create_enumeration($countryOrRawOffset = null) {}
-
-function intltz_create_time_zone(string $zoneId): ?IntlTimeZone {}
-
-function intltz_create_time_zone_id_enumeration(int $zoneType, ?string $region = null, ?int $rawOffset = null): IntlIterator|false {}
-
-function intltz_from_date_time_zone(DateTimeZone $zone): ?IntlTimeZone {}
-
-function intltz_get_canonical_id(string $zoneId, &$isSystemID = null): string|false {}
-
-function intltz_get_display_name(IntlTimeZone $tz, bool $isDaylight = false, int $style = IntlTimeZone::DISPLAY_LONG, ?string $locale = null): string|false {}
-
-function intltz_get_dst_savings(IntlTimeZone $tz): int {}
-
-function intltz_get_equivalent_id(string $zoneId, int $index): string|false {}
-
-function intltz_get_error_code(IntlTimeZone $tz): int|false {}
-
-function intltz_get_error_message(IntlTimeZone $tz): string|false {}
-
-function intltz_get_gmt(): IntlTimeZone {}
-
-function intltz_get_id(IntlTimeZone $tz): string|false {}
-
-function intltz_get_offset(IntlTimeZone $tz, float $date, bool $local, &$rawOffset, &$dstOffset): bool {}
-
-function intltz_get_raw_offset(IntlTimeZone $tz): int {}
-
-function intltz_get_region(string $zoneId): string|false {}
-
-function intltz_get_tz_data_version(): string|false {}
-
-function intltz_get_unknown(): IntlTimeZone {}
-
-#if U_ICU_VERSION_MAJOR_NUM >= 52
-function intltz_get_windows_id(string $timezone): string|false {}
-
-function intltz_get_id_for_windows_id(string $timezone, string $region = UNKNOWN): string|false {}
-#endif
-
-function intltz_has_same_rules(IntlTimeZone $tz, IntlTimeZone $otherTimeZone): bool {}
-
-function intltz_to_date_time_zone(IntlTimeZone $tz): DateTimeZone|false {}
-
-function intltz_use_daylight_time(IntlTimeZone $tz): bool {}
index 94c79627813fd74dccbe4442a33651986f351d5b..b1023d9a9900f85641f786b2f94c54a61666b5e0 100644 (file)
@@ -86,104 +86,3 @@ ZEND_END_ARG_INFO()
 #define arginfo_class_IntlTimeZone_toDateTimeZone arginfo_class_IntlTimeZone___construct
 
 #define arginfo_class_IntlTimeZone_useDaylightTime arginfo_class_IntlTimeZone___construct
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_intltz_count_equivalent_ids, 0, 1, MAY_BE_LONG|MAY_BE_FALSE)
-       ZEND_ARG_TYPE_INFO(0, zoneId, IS_STRING, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_intltz_create_default, 0, 0, IntlTimeZone, 0)
-ZEND_END_ARG_INFO()
-
-#define arginfo_intltz_create_enumeration arginfo_class_IntlTimeZone_createEnumeration
-
-ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_intltz_create_time_zone, 0, 1, IntlTimeZone, 1)
-       ZEND_ARG_TYPE_INFO(0, zoneId, IS_STRING, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_OBJ_TYPE_MASK_EX(arginfo_intltz_create_time_zone_id_enumeration, 0, 1, IntlIterator, MAY_BE_FALSE)
-       ZEND_ARG_TYPE_INFO(0, zoneType, IS_LONG, 0)
-       ZEND_ARG_TYPE_INFO(0, region, IS_STRING, 1)
-       ZEND_ARG_TYPE_INFO(0, rawOffset, IS_LONG, 1)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_intltz_from_date_time_zone, 0, 1, IntlTimeZone, 1)
-       ZEND_ARG_OBJ_INFO(0, zone, DateTimeZone, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_intltz_get_canonical_id, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
-       ZEND_ARG_TYPE_INFO(0, zoneId, IS_STRING, 0)
-       ZEND_ARG_INFO(1, isSystemID)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_intltz_get_display_name, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
-       ZEND_ARG_OBJ_INFO(0, tz, IntlTimeZone, 0)
-       ZEND_ARG_TYPE_INFO(0, isDaylight, _IS_BOOL, 0)
-       ZEND_ARG_TYPE_INFO(0, style, IS_LONG, 0)
-       ZEND_ARG_TYPE_INFO(0, locale, IS_STRING, 1)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intltz_get_dst_savings, 0, 1, IS_LONG, 0)
-       ZEND_ARG_OBJ_INFO(0, tz, IntlTimeZone, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_intltz_get_equivalent_id, 0, 2, MAY_BE_STRING|MAY_BE_FALSE)
-       ZEND_ARG_TYPE_INFO(0, zoneId, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, index, IS_LONG, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_intltz_get_error_code, 0, 1, MAY_BE_LONG|MAY_BE_FALSE)
-       ZEND_ARG_OBJ_INFO(0, tz, IntlTimeZone, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_intltz_get_error_message, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
-       ZEND_ARG_OBJ_INFO(0, tz, IntlTimeZone, 0)
-ZEND_END_ARG_INFO()
-
-#define arginfo_intltz_get_gmt arginfo_intltz_create_default
-
-#define arginfo_intltz_get_id arginfo_intltz_get_error_message
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intltz_get_offset, 0, 5, _IS_BOOL, 0)
-       ZEND_ARG_OBJ_INFO(0, tz, IntlTimeZone, 0)
-       ZEND_ARG_TYPE_INFO(0, date, IS_DOUBLE, 0)
-       ZEND_ARG_TYPE_INFO(0, local, _IS_BOOL, 0)
-       ZEND_ARG_INFO(1, rawOffset)
-       ZEND_ARG_INFO(1, dstOffset)
-ZEND_END_ARG_INFO()
-
-#define arginfo_intltz_get_raw_offset arginfo_intltz_get_dst_savings
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_intltz_get_region, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
-       ZEND_ARG_TYPE_INFO(0, zoneId, IS_STRING, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_intltz_get_tz_data_version, 0, 0, MAY_BE_STRING|MAY_BE_FALSE)
-ZEND_END_ARG_INFO()
-
-#define arginfo_intltz_get_unknown arginfo_intltz_create_default
-
-#if U_ICU_VERSION_MAJOR_NUM >= 52
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_intltz_get_windows_id, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
-       ZEND_ARG_TYPE_INFO(0, timezone, IS_STRING, 0)
-ZEND_END_ARG_INFO()
-#endif
-
-#if U_ICU_VERSION_MAJOR_NUM >= 52
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_intltz_get_id_for_windows_id, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
-       ZEND_ARG_TYPE_INFO(0, timezone, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, region, IS_STRING, 0)
-ZEND_END_ARG_INFO()
-#endif
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intltz_has_same_rules, 0, 2, _IS_BOOL, 0)
-       ZEND_ARG_OBJ_INFO(0, tz, IntlTimeZone, 0)
-       ZEND_ARG_OBJ_INFO(0, otherTimeZone, IntlTimeZone, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_OBJ_TYPE_MASK_EX(arginfo_intltz_to_date_time_zone, 0, 1, DateTimeZone, MAY_BE_FALSE)
-       ZEND_ARG_OBJ_INFO(0, tz, IntlTimeZone, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_intltz_use_daylight_time, 0, 1, _IS_BOOL, 0)
-       ZEND_ARG_OBJ_INFO(0, tz, IntlTimeZone, 0)
-ZEND_END_ARG_INFO()
index 1e96ba66cd295b6fde42deea995a5621392989ae..12cab5d99a967f72faecfd12712dbb9e7019149f 100644 (file)
@@ -25,18 +25,3 @@ class Transliterator
     /** @return string|false */
     public function getErrorMessage() {}
 }
-
-function transliterator_create(string $id, int $direction = Transliterator::FORWARD): ?Transliterator {}
-
-function transliterator_create_from_rules(string $rules, int $direction = Transliterator::FORWARD): ?Transliterator {}
-
-function transliterator_list_ids(): array|false {}
-
-function transliterator_create_inverse(Transliterator $orig_trans): ?Transliterator {}
-
-/** @param Transliterator|string */
-function transliterator_transliterate($transliterator, string $subject, int $start = 0, int $end = -1): string|false {}
-
-function transliterator_get_error_code(Transliterator $trans): int|false {}
-
-function transliterator_get_error_message(Transliterator $trans): string|false {}
index 7061b4b5df110191c0585eca9ce4f026a6cd705f..3a9d68c2b4b6836a17560633a1521cfc2c3619df 100644 (file)
@@ -26,35 +26,3 @@ ZEND_END_ARG_INFO()
 #define arginfo_class_Transliterator_getErrorCode arginfo_class_Transliterator___construct
 
 #define arginfo_class_Transliterator_getErrorMessage arginfo_class_Transliterator___construct
-
-ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_transliterator_create, 0, 1, Transliterator, 1)
-       ZEND_ARG_TYPE_INFO(0, id, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, direction, IS_LONG, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_transliterator_create_from_rules, 0, 1, Transliterator, 1)
-       ZEND_ARG_TYPE_INFO(0, rules, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, direction, IS_LONG, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_transliterator_list_ids, 0, 0, MAY_BE_ARRAY|MAY_BE_FALSE)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_transliterator_create_inverse, 0, 1, Transliterator, 1)
-       ZEND_ARG_OBJ_INFO(0, orig_trans, Transliterator, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_transliterator_transliterate, 0, 2, MAY_BE_STRING|MAY_BE_FALSE)
-       ZEND_ARG_INFO(0, transliterator)
-       ZEND_ARG_TYPE_INFO(0, subject, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, start, IS_LONG, 0)
-       ZEND_ARG_TYPE_INFO(0, end, IS_LONG, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_transliterator_get_error_code, 0, 1, MAY_BE_LONG|MAY_BE_FALSE)
-       ZEND_ARG_OBJ_INFO(0, trans, Transliterator, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_transliterator_get_error_message, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
-       ZEND_ARG_OBJ_INFO(0, trans, Transliterator, 0)
-ZEND_END_ARG_INFO()
index 31cc7e648918b2ff9088ea0c9fa3cb08f4d926f3..434346e2de407ffb47f5d34c9993f5870f0d7a35 100644 (file)
@@ -171,14 +171,6 @@ class mysqli
     public function refresh(int $options);
 }
 
-class mysqli_warning
-{
-    public function __construct(object $mysqli_link);
-
-    /** @return bool */
-    public function next();
-}
-
 class mysqli_result
 {
      public function __construct(object $mysqli_link, int $resmode = MYSQLI_STORE_RESULT);
index e20a7ed9829113b51705bd2dc48cb3df586b4b2c..b5307d917f7ba98c34b38e133a8f627812ef8f1d 100644 (file)
@@ -147,12 +147,6 @@ ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_refresh, 0, 0, 1)
        ZEND_ARG_TYPE_INFO(0, options, IS_LONG, 0)
 ZEND_END_ARG_INFO()
 
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_warning___construct, 0, 0, 1)
-       ZEND_ARG_TYPE_INFO(0, mysqli_link, IS_OBJECT, 0)
-ZEND_END_ARG_INFO()
-
-#define arginfo_class_mysqli_warning_next arginfo_class_mysqli_character_set_name
-
 ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_result___construct, 0, 0, 1)
        ZEND_ARG_TYPE_INFO(0, mysqli_link, IS_OBJECT, 0)
        ZEND_ARG_TYPE_INFO(0, resmode, IS_LONG, 0)
index c15afa0c4cd96abe65d0408beaf719247d62fd5d..673ca48aae4104317ef0797c3edb77492f3c3c29 100644 (file)
@@ -26,7 +26,7 @@
 #include "php_mysqli_structs.h"
 #include "mysqli_priv.h"
 
-#include "mysqli_arginfo.h"
+#include "mysqli_warning_arginfo.h"
 
 /* Define these in the PHP7 tree to make merging easy process */
 #define ZSTR_DUPLICATE (1<<0)
diff --git a/ext/mysqli/mysqli_warning.stub.php b/ext/mysqli/mysqli_warning.stub.php
new file mode 100644 (file)
index 0000000..aa92204
--- /dev/null
@@ -0,0 +1,9 @@
+<?php
+
+class mysqli_warning
+{
+    public function __construct(object $mysqli_link);
+
+    /** @return bool */
+    public function next();
+}
diff --git a/ext/mysqli/mysqli_warning_arginfo.h b/ext/mysqli/mysqli_warning_arginfo.h
new file mode 100644 (file)
index 0000000..ea98da4
--- /dev/null
@@ -0,0 +1,8 @@
+/* This is a generated file, edit the .stub.php file instead. */
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_warning___construct, 0, 0, 1)
+       ZEND_ARG_TYPE_INFO(0, mysqli_link, IS_OBJECT, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_mysqli_warning_next, 0, 0, 0)
+ZEND_END_ARG_INFO()
index 13969edb579ecfec3a84ded42f9704ecdb51e815..6a6bc273107f0f2806d8e08d1212412ee6c3c5de 100644 (file)
@@ -1,133 +1,3 @@
 <?php
 
-/* pdo.c */
-
 function pdo_drivers(): array {}
-
-/* pdo_dbh.c */
-
-class PDO {
-    public function __construct(string $dsn, ?string $username = null, ?string $passwd = null, ?array $options = null) {}
-
-    /** @return bool */
-    public function beginTransaction() {}
-
-    /** @return bool */
-    public function commit() {}
-
-    /** @return string|null */
-    public function errorCode() {}
-
-    /** @return array */
-    public function errorInfo() {}
-
-    /** @return int|false */
-    public function exec(string $statement) {}
-
-    /** @return mixed */
-    public function getAttribute(int $attribute) {}
-
-    /** @return array */
-    public static function getAvailableDrivers() {}
-
-    /** @return bool */
-    public function inTransaction() {}
-
-    /** @return string|false */
-    public function lastInsertId(?string $name = null) {}
-
-    /** @return PDOStatement|false */
-    public function prepare(string $statement, array $driver_options = []) {}
-
-    /** @return PDOStatement|false */
-    public function query(string $statement) {}
-
-    /** @return string|false */
-    public function quote(string $string, int $parameter_type = PDO::PARAM_STR) {}
-
-    /** @return bool */
-    public function rollBack() {}
-
-    /**
-     * @param mixed $value
-     * @return bool
-     */
-    public function setAttribute(int $attribute, $value) {}
-}
-
-/* pdo_stmt.c */
-
-class PDOStatement implements Traversable {
-    /**
-     * @param mixed $driverdata
-     * @return bool
-     */
-    public function bindColumn(int|string $column, &$param, int $type = 0, int $maxlen = 0, $driverdata = null) {}
-
-    /**
-     * @param mixed $driver_options
-     * @return bool
-     */
-    public function bindParam(int|string $parameter, &$param, int $type = PDO::PARAM_STR, int $maxlen = 0, $driverdata = null) {}
-
-    /**
-     * @param int|string $parameter
-     * @param mixed $value
-     * @return bool
-     */
-    public function bindValue($parameter, $value, int $type = PDO::PARAM_STR) {}
-
-    /** @return bool */
-    public function closeCursor() {}
-
-    /** @return int|false */
-    public function columnCount() {}
-
-    /** @return false|null */
-    public function debugDumpParams() {}
-
-    /** @return string|false|null */
-    public function errorCode() {}
-
-    /** @return array|false */
-    public function errorInfo() {}
-
-    /** @return bool */
-    public function execute(?array $input_parameters = null) {}
-
-    /** @return mixed */
-    public function fetch(int $fetch_style = PDO::FETCH_BOTH, int $cursor_orientation = PDO::FETCH_ORI_NEXT, int $cursor_offset = 0) {}
-
-    /**
-     * @param mixed $fetch_argument
-     * @return array|false
-     */
-    public function fetchAll(int $fetch_style = PDO::FETCH_BOTH, $fetch_argument = UNKNOWN, array $ctor_args = []) {}
-
-    /** @return mixed */
-    public function fetchColumn(int $column_number = 0) {}
-
-    /** @return mixed */
-    public function fetchObject(?string $class_name = "stdClass", ?array $ctor_args = null) {}
-
-    /** @return mixed */
-    public function getAttribute(int $attribute) {}
-
-    /** @return array|false */
-    public function getColumnMeta(int $column) {}
-
-    /** @return bool */
-    public function nextRowset() {}
-
-    /** @return int|false */
-    public function rowCount() {}
-
-    /**
-     * @param mixed $value
-     * @return bool
-     */
-    public function setAttribute(int $attribute, $value) {}
-
-    /** @return bool */
-    public function setFetchMode(int $mode, $param1 = UNKNOWN, $param2 = UNKNOWN) {}
-}
index 56c1825198c016642e95a08946c70a1dc0e07ea1..5c2f8a55f8124998f288adc1c5f5742b78ada1f0 100644 (file)
@@ -2,129 +2,3 @@
 
 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_pdo_drivers, 0, 0, IS_ARRAY, 0)
 ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_PDO___construct, 0, 0, 1)
-       ZEND_ARG_TYPE_INFO(0, dsn, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, username, IS_STRING, 1)
-       ZEND_ARG_TYPE_INFO(0, passwd, IS_STRING, 1)
-       ZEND_ARG_TYPE_INFO(0, options, IS_ARRAY, 1)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_PDO_beginTransaction, 0, 0, 0)
-ZEND_END_ARG_INFO()
-
-#define arginfo_class_PDO_commit arginfo_class_PDO_beginTransaction
-
-#define arginfo_class_PDO_errorCode arginfo_class_PDO_beginTransaction
-
-#define arginfo_class_PDO_errorInfo arginfo_class_PDO_beginTransaction
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_PDO_exec, 0, 0, 1)
-       ZEND_ARG_TYPE_INFO(0, statement, IS_STRING, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_PDO_getAttribute, 0, 0, 1)
-       ZEND_ARG_TYPE_INFO(0, attribute, IS_LONG, 0)
-ZEND_END_ARG_INFO()
-
-#define arginfo_class_PDO_getAvailableDrivers arginfo_class_PDO_beginTransaction
-
-#define arginfo_class_PDO_inTransaction arginfo_class_PDO_beginTransaction
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_PDO_lastInsertId, 0, 0, 0)
-       ZEND_ARG_TYPE_INFO(0, name, IS_STRING, 1)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_PDO_prepare, 0, 0, 1)
-       ZEND_ARG_TYPE_INFO(0, statement, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, driver_options, IS_ARRAY, 0)
-ZEND_END_ARG_INFO()
-
-#define arginfo_class_PDO_query arginfo_class_PDO_exec
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_PDO_quote, 0, 0, 1)
-       ZEND_ARG_TYPE_INFO(0, string, IS_STRING, 0)
-       ZEND_ARG_TYPE_INFO(0, parameter_type, IS_LONG, 0)
-ZEND_END_ARG_INFO()
-
-#define arginfo_class_PDO_rollBack arginfo_class_PDO_beginTransaction
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_PDO_setAttribute, 0, 0, 2)
-       ZEND_ARG_TYPE_INFO(0, attribute, IS_LONG, 0)
-       ZEND_ARG_INFO(0, value)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_PDOStatement_bindColumn, 0, 0, 2)
-       ZEND_ARG_TYPE_MASK(0, column, MAY_BE_LONG|MAY_BE_STRING)
-       ZEND_ARG_INFO(1, param)
-       ZEND_ARG_TYPE_INFO(0, type, IS_LONG, 0)
-       ZEND_ARG_TYPE_INFO(0, maxlen, IS_LONG, 0)
-       ZEND_ARG_INFO(0, driverdata)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_PDOStatement_bindParam, 0, 0, 2)
-       ZEND_ARG_TYPE_MASK(0, parameter, MAY_BE_LONG|MAY_BE_STRING)
-       ZEND_ARG_INFO(1, param)
-       ZEND_ARG_TYPE_INFO(0, type, IS_LONG, 0)
-       ZEND_ARG_TYPE_INFO(0, maxlen, IS_LONG, 0)
-       ZEND_ARG_INFO(0, driverdata)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_PDOStatement_bindValue, 0, 0, 2)
-       ZEND_ARG_INFO(0, parameter)
-       ZEND_ARG_INFO(0, value)
-       ZEND_ARG_TYPE_INFO(0, type, IS_LONG, 0)
-ZEND_END_ARG_INFO()
-
-#define arginfo_class_PDOStatement_closeCursor arginfo_class_PDO_beginTransaction
-
-#define arginfo_class_PDOStatement_columnCount arginfo_class_PDO_beginTransaction
-
-#define arginfo_class_PDOStatement_debugDumpParams arginfo_class_PDO_beginTransaction
-
-#define arginfo_class_PDOStatement_errorCode arginfo_class_PDO_beginTransaction
-
-#define arginfo_class_PDOStatement_errorInfo arginfo_class_PDO_beginTransaction
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_PDOStatement_execute, 0, 0, 0)
-       ZEND_ARG_TYPE_INFO(0, input_parameters, IS_ARRAY, 1)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_PDOStatement_fetch, 0, 0, 0)
-       ZEND_ARG_TYPE_INFO(0, fetch_style, IS_LONG, 0)
-       ZEND_ARG_TYPE_INFO(0, cursor_orientation, IS_LONG, 0)
-       ZEND_ARG_TYPE_INFO(0, cursor_offset, IS_LONG, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_PDOStatement_fetchAll, 0, 0, 0)
-       ZEND_ARG_TYPE_INFO(0, fetch_style, IS_LONG, 0)
-       ZEND_ARG_INFO(0, fetch_argument)
-       ZEND_ARG_TYPE_INFO(0, ctor_args, IS_ARRAY, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_PDOStatement_fetchColumn, 0, 0, 0)
-       ZEND_ARG_TYPE_INFO(0, column_number, IS_LONG, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_PDOStatement_fetchObject, 0, 0, 0)
-       ZEND_ARG_TYPE_INFO(0, class_name, IS_STRING, 1)
-       ZEND_ARG_TYPE_INFO(0, ctor_args, IS_ARRAY, 1)
-ZEND_END_ARG_INFO()
-
-#define arginfo_class_PDOStatement_getAttribute arginfo_class_PDO_getAttribute
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_PDOStatement_getColumnMeta, 0, 0, 1)
-       ZEND_ARG_TYPE_INFO(0, column, IS_LONG, 0)
-ZEND_END_ARG_INFO()
-
-#define arginfo_class_PDOStatement_nextRowset arginfo_class_PDO_beginTransaction
-
-#define arginfo_class_PDOStatement_rowCount arginfo_class_PDO_beginTransaction
-
-#define arginfo_class_PDOStatement_setAttribute arginfo_class_PDO_setAttribute
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_PDOStatement_setFetchMode, 0, 0, 1)
-       ZEND_ARG_TYPE_INFO(0, mode, IS_LONG, 0)
-       ZEND_ARG_INFO(0, param1)
-       ZEND_ARG_INFO(0, param2)
-ZEND_END_ARG_INFO()
index 65e324a2b7acbe91c2e2e44d566a3382f513b818..7f877f271f2c20c5556025f9ade643ef4922edc3 100644 (file)
@@ -32,7 +32,7 @@
 #include "zend_object_handlers.h"
 #include "zend_hash.h"
 #include "zend_interfaces.h"
-#include "pdo_arginfo.h"
+#include "pdo_dbh_arginfo.h"
 
 static int pdo_dbh_attribute_set(pdo_dbh_t *dbh, zend_long attr, zval *value);
 
diff --git a/ext/pdo/pdo_dbh.stub.php b/ext/pdo/pdo_dbh.stub.php
new file mode 100644 (file)
index 0000000..01a3b2b
--- /dev/null
@@ -0,0 +1,51 @@
+<?php
+
+class PDO
+{
+    public function __construct(string $dsn, ?string $username = null, ?string $passwd = null, ?array $options = null) {}
+
+    /** @return bool */
+    public function beginTransaction() {}
+
+    /** @return bool */
+    public function commit() {}
+
+    /** @return string|null */
+    public function errorCode() {}
+
+    /** @return array */
+    public function errorInfo() {}
+
+    /** @return int|false */
+    public function exec(string $statement) {}
+
+    /** @return mixed */
+    public function getAttribute(int $attribute) {}
+
+    /** @return array */
+    public static function getAvailableDrivers() {}
+
+    /** @return bool */
+    public function inTransaction() {}
+
+    /** @return string|false */
+    public function lastInsertId(?string $name = null) {}
+
+    /** @return PDOStatement|false */
+    public function prepare(string $statement, array $driver_options = []) {}
+
+    /** @return PDOStatement|false */
+    public function query(string $statement) {}
+
+    /** @return string|false */
+    public function quote(string $string, int $parameter_type = PDO::PARAM_STR) {}
+
+    /** @return bool */
+    public function rollBack() {}
+
+    /**
+     * @param mixed $value
+     * @return bool
+     */
+    public function setAttribute(int $attribute, $value) {}
+}
diff --git a/ext/pdo/pdo_dbh_arginfo.h b/ext/pdo/pdo_dbh_arginfo.h
new file mode 100644 (file)
index 0000000..65edc77
--- /dev/null
@@ -0,0 +1,52 @@
+/* This is a generated file, edit the .stub.php file instead. */
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_PDO___construct, 0, 0, 1)
+       ZEND_ARG_TYPE_INFO(0, dsn, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, username, IS_STRING, 1)
+       ZEND_ARG_TYPE_INFO(0, passwd, IS_STRING, 1)
+       ZEND_ARG_TYPE_INFO(0, options, IS_ARRAY, 1)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_PDO_beginTransaction, 0, 0, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_PDO_commit arginfo_class_PDO_beginTransaction
+
+#define arginfo_class_PDO_errorCode arginfo_class_PDO_beginTransaction
+
+#define arginfo_class_PDO_errorInfo arginfo_class_PDO_beginTransaction
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_PDO_exec, 0, 0, 1)
+       ZEND_ARG_TYPE_INFO(0, statement, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_PDO_getAttribute, 0, 0, 1)
+       ZEND_ARG_TYPE_INFO(0, attribute, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_PDO_getAvailableDrivers arginfo_class_PDO_beginTransaction
+
+#define arginfo_class_PDO_inTransaction arginfo_class_PDO_beginTransaction
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_PDO_lastInsertId, 0, 0, 0)
+       ZEND_ARG_TYPE_INFO(0, name, IS_STRING, 1)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_PDO_prepare, 0, 0, 1)
+       ZEND_ARG_TYPE_INFO(0, statement, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, driver_options, IS_ARRAY, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_PDO_query arginfo_class_PDO_exec
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_PDO_quote, 0, 0, 1)
+       ZEND_ARG_TYPE_INFO(0, string, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, parameter_type, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_PDO_rollBack arginfo_class_PDO_beginTransaction
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_PDO_setAttribute, 0, 0, 2)
+       ZEND_ARG_TYPE_INFO(0, attribute, IS_LONG, 0)
+       ZEND_ARG_INFO(0, value)
+ZEND_END_ARG_INFO()
index 37e7a4c4037a7b739c2233e02111ed7bff8564b0..5eeea861a6998c70773e6dd390580487a577caac 100644 (file)
@@ -32,7 +32,7 @@
 #include "zend_exceptions.h"
 #include "zend_interfaces.h"
 #include "php_memory_streams.h"
-#include "pdo_arginfo.h"
+#include "pdo_stmt_arginfo.h"
 
 #define PHP_STMT_GET_OBJ       \
   pdo_stmt_t *stmt = Z_PDO_STMT_P(ZEND_THIS);  \
diff --git a/ext/pdo/pdo_stmt.stub.php b/ext/pdo/pdo_stmt.stub.php
new file mode 100644 (file)
index 0000000..57d302f
--- /dev/null
@@ -0,0 +1,77 @@
+<?php
+
+class PDOStatement implements Traversable
+{
+    /**
+     * @param mixed $driverdata
+     * @return bool
+     */
+    public function bindColumn(int|string $column, &$param, int $type = 0, int $maxlen = 0, $driverdata = null) {}
+
+    /**
+     * @param mixed $driver_options
+     * @return bool
+     */
+    public function bindParam(int|string $parameter, &$param, int $type = PDO::PARAM_STR, int $maxlen = 0, $driverdata = null) {}
+
+    /**
+     * @param int|string $parameter
+     * @param mixed $value
+     * @return bool
+     */
+    public function bindValue($parameter, $value, int $type = PDO::PARAM_STR) {}
+
+    /** @return bool */
+    public function closeCursor() {}
+
+    /** @return int|false */
+    public function columnCount() {}
+
+    /** @return false|null */
+    public function debugDumpParams() {}
+
+    /** @return string|false|null */
+    public function errorCode() {}
+
+    /** @return array|false */
+    public function errorInfo() {}
+
+    /** @return bool */
+    public function execute(?array $input_parameters = null) {}
+
+    /** @return mixed */
+    public function fetch(int $fetch_style = PDO::FETCH_BOTH, int $cursor_orientation = PDO::FETCH_ORI_NEXT, int $cursor_offset = 0) {}
+
+    /**
+     * @param mixed $fetch_argument
+     * @return array|false
+     */
+    public function fetchAll(int $fetch_style = PDO::FETCH_BOTH, $fetch_argument = UNKNOWN, array $ctor_args = []) {}
+
+    /** @return mixed */
+    public function fetchColumn(int $column_number = 0) {}
+
+    /** @return mixed */
+    public function fetchObject(?string $class_name = "stdClass", ?array $ctor_args = null) {}
+
+    /** @return mixed */
+    public function getAttribute(int $attribute) {}
+
+    /** @return array|false */
+    public function getColumnMeta(int $column) {}
+
+    /** @return bool */
+    public function nextRowset() {}
+
+    /** @return int|false */
+    public function rowCount() {}
+
+    /**
+     * @param mixed $value
+     * @return bool
+     */
+    public function setAttribute(int $attribute, $value) {}
+
+    /** @return bool */
+    public function setFetchMode(int $mode, $param1 = UNKNOWN, $param2 = UNKNOWN) {}
+}
diff --git a/ext/pdo/pdo_stmt_arginfo.h b/ext/pdo/pdo_stmt_arginfo.h
new file mode 100644 (file)
index 0000000..7e00f79
--- /dev/null
@@ -0,0 +1,82 @@
+/* This is a generated file, edit the .stub.php file instead. */
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_PDOStatement_bindColumn, 0, 0, 2)
+       ZEND_ARG_TYPE_MASK(0, column, MAY_BE_LONG|MAY_BE_STRING)
+       ZEND_ARG_INFO(1, param)
+       ZEND_ARG_TYPE_INFO(0, type, IS_LONG, 0)
+       ZEND_ARG_TYPE_INFO(0, maxlen, IS_LONG, 0)
+       ZEND_ARG_INFO(0, driverdata)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_PDOStatement_bindParam, 0, 0, 2)
+       ZEND_ARG_TYPE_MASK(0, parameter, MAY_BE_LONG|MAY_BE_STRING)
+       ZEND_ARG_INFO(1, param)
+       ZEND_ARG_TYPE_INFO(0, type, IS_LONG, 0)
+       ZEND_ARG_TYPE_INFO(0, maxlen, IS_LONG, 0)
+       ZEND_ARG_INFO(0, driverdata)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_PDOStatement_bindValue, 0, 0, 2)
+       ZEND_ARG_INFO(0, parameter)
+       ZEND_ARG_INFO(0, value)
+       ZEND_ARG_TYPE_INFO(0, type, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_PDOStatement_closeCursor, 0, 0, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_PDOStatement_columnCount arginfo_class_PDOStatement_closeCursor
+
+#define arginfo_class_PDOStatement_debugDumpParams arginfo_class_PDOStatement_closeCursor
+
+#define arginfo_class_PDOStatement_errorCode arginfo_class_PDOStatement_closeCursor
+
+#define arginfo_class_PDOStatement_errorInfo arginfo_class_PDOStatement_closeCursor
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_PDOStatement_execute, 0, 0, 0)
+       ZEND_ARG_TYPE_INFO(0, input_parameters, IS_ARRAY, 1)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_PDOStatement_fetch, 0, 0, 0)
+       ZEND_ARG_TYPE_INFO(0, fetch_style, IS_LONG, 0)
+       ZEND_ARG_TYPE_INFO(0, cursor_orientation, IS_LONG, 0)
+       ZEND_ARG_TYPE_INFO(0, cursor_offset, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_PDOStatement_fetchAll, 0, 0, 0)
+       ZEND_ARG_TYPE_INFO(0, fetch_style, IS_LONG, 0)
+       ZEND_ARG_INFO(0, fetch_argument)
+       ZEND_ARG_TYPE_INFO(0, ctor_args, IS_ARRAY, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_PDOStatement_fetchColumn, 0, 0, 0)
+       ZEND_ARG_TYPE_INFO(0, column_number, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_PDOStatement_fetchObject, 0, 0, 0)
+       ZEND_ARG_TYPE_INFO(0, class_name, IS_STRING, 1)
+       ZEND_ARG_TYPE_INFO(0, ctor_args, IS_ARRAY, 1)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_PDOStatement_getAttribute, 0, 0, 1)
+       ZEND_ARG_TYPE_INFO(0, attribute, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_PDOStatement_getColumnMeta, 0, 0, 1)
+       ZEND_ARG_TYPE_INFO(0, column, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_PDOStatement_nextRowset arginfo_class_PDOStatement_closeCursor
+
+#define arginfo_class_PDOStatement_rowCount arginfo_class_PDOStatement_closeCursor
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_PDOStatement_setAttribute, 0, 0, 2)
+       ZEND_ARG_TYPE_INFO(0, attribute, IS_LONG, 0)
+       ZEND_ARG_INFO(0, value)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_PDOStatement_setFetchMode, 0, 0, 1)
+       ZEND_ARG_TYPE_INFO(0, mode, IS_LONG, 0)
+       ZEND_ARG_INFO(0, param1)
+       ZEND_ARG_INFO(0, param2)
+ZEND_END_ARG_INFO()
index 1186d28f0f1cc0bfd384fe94df36efe9d047b7af..4a2df3e578f293f55016669399b5bc4cf91bc5a8 100755 (executable)
@@ -691,29 +691,6 @@ function utf8_encode(string $data): string {}
 
 function utf8_decode(string $data): string {}
 
-/* dir.c */
-
-class Directory
-{
-    /**
-     * @param resource $dir_handle
-     * @return void
-     */
-    public function close($dir_handle = UNKNOWN) {}
-
-    /**
-     * @param resource $dir_handle
-     * @return void
-     */
-    public function rewind($dir_handle = UNKNOWN) {}
-
-    /**
-     * @param resource $dir_handle
-     * @return string|false
-     */
-    public function read($dir_handle = UNKNOWN) {}
-}
-
 /**
  * @param resource $context
  * @return resource|false
@@ -1454,18 +1431,6 @@ function rawurldecode(string $string): string {}
 /** @param resource $context */
 function get_headers(string $url, int $format = 0, $context = null): array|false {}
 
-/* user_filters.c */
-
-class php_user_filter {
-    public function filter($in, $out, &$consumed, $closing) {}
-
-    /** @return void */
-    public function onCreate() {}
-
-    /** @return void */
-    public function onClose() {}
-}
-
 /** @param resource $brigade */
 function stream_bucket_make_writeable($brigade): ?object {}
 
index d6fd7acf025c468b8c6970809819ae4d4a880bca..c846d1ff1bcf89115f4b158e1dd0678925b4892e 100755 (executable)
@@ -1099,14 +1099,6 @@ ZEND_END_ARG_INFO()
 
 #define arginfo_utf8_decode arginfo_bin2hex
 
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_Directory_close, 0, 0, 0)
-       ZEND_ARG_INFO(0, dir_handle)
-ZEND_END_ARG_INFO()
-
-#define arginfo_class_Directory_rewind arginfo_class_Directory_close
-
-#define arginfo_class_Directory_read arginfo_class_Directory_close
-
 ZEND_BEGIN_ARG_INFO_EX(arginfo_opendir, 0, 0, 1)
        ZEND_ARG_TYPE_INFO(0, path, IS_STRING, 0)
        ZEND_ARG_INFO(0, context)
@@ -2149,17 +2141,6 @@ ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_get_headers, 0, 1, MAY_BE_ARRAY|
        ZEND_ARG_INFO(0, context)
 ZEND_END_ARG_INFO()
 
-ZEND_BEGIN_ARG_INFO_EX(arginfo_class_php_user_filter_filter, 0, 0, 4)
-       ZEND_ARG_INFO(0, in)
-       ZEND_ARG_INFO(0, out)
-       ZEND_ARG_INFO(1, consumed)
-       ZEND_ARG_INFO(0, closing)
-ZEND_END_ARG_INFO()
-
-#define arginfo_class_php_user_filter_onCreate arginfo_tmpfile
-
-#define arginfo_class_php_user_filter_onClose arginfo_tmpfile
-
 ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_stream_bucket_make_writeable, 0, 1, IS_OBJECT, 1)
        ZEND_ARG_INFO(0, brigade)
 ZEND_END_ARG_INFO()
index e6caf7109d38e361d6362114024cefc67f33acf9..535c536b72a85b0ce3540b0333c8841974e42661 100644 (file)
@@ -23,7 +23,7 @@
 #include "php_string.h"
 #include "php_scandir.h"
 #include "basic_functions.h"
-#include "basic_functions_arginfo.h"
+#include "dir_arginfo.h"
 
 #if HAVE_UNISTD_H
 #include <unistd.h>
diff --git a/ext/standard/dir.stub.php b/ext/standard/dir.stub.php
new file mode 100755 (executable)
index 0000000..0ffef77
--- /dev/null
@@ -0,0 +1,22 @@
+<?php
+
+class Directory
+{
+    /**
+     * @param resource $dir_handle
+     * @return void
+     */
+    public function close($dir_handle = UNKNOWN) {}
+
+    /**
+     * @param resource $dir_handle
+     * @return void
+     */
+    public function rewind($dir_handle = UNKNOWN) {}
+
+    /**
+     * @param resource $dir_handle
+     * @return string|false
+     */
+    public function read($dir_handle = UNKNOWN) {}
+}
diff --git a/ext/standard/dir_arginfo.h b/ext/standard/dir_arginfo.h
new file mode 100644 (file)
index 0000000..19a7f5e
--- /dev/null
@@ -0,0 +1,9 @@
+/* This is a generated file, edit the .stub.php file instead. */
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_Directory_close, 0, 0, 0)
+       ZEND_ARG_INFO(0, dir_handle)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_Directory_rewind arginfo_class_Directory_close
+
+#define arginfo_class_Directory_read arginfo_class_Directory_close
index cadd9ff8e74adfa420dd68c44aa9a9bbd3c99d05..110c374b3d481c8d5f2b863caa414f688da8fcd4 100644 (file)
@@ -20,7 +20,7 @@
 #include "php_globals.h"
 #include "ext/standard/basic_functions.h"
 #include "ext/standard/file.h"
-#include "ext/standard/basic_functions_arginfo.h"
+#include "ext/standard/user_filters_arginfo.h"
 
 #define PHP_STREAM_BRIGADE_RES_NAME    "userfilter.bucket brigade"
 #define PHP_STREAM_BUCKET_RES_NAME "userfilter.bucket"
diff --git a/ext/standard/user_filters.stub.php b/ext/standard/user_filters.stub.php
new file mode 100755 (executable)
index 0000000..f789dc1
--- /dev/null
@@ -0,0 +1,12 @@
+<?php
+
+class php_user_filter
+{
+    public function filter($in, $out, &$consumed, $closing) {}
+
+    /** @return void */
+    public function onCreate() {}
+
+    /** @return void */
+    public function onClose() {}
+}
diff --git a/ext/standard/user_filters_arginfo.h b/ext/standard/user_filters_arginfo.h
new file mode 100644 (file)
index 0000000..30e1aab
--- /dev/null
@@ -0,0 +1,13 @@
+/* This is a generated file, edit the .stub.php file instead. */
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_php_user_filter_filter, 0, 0, 4)
+       ZEND_ARG_INFO(0, in)
+       ZEND_ARG_INFO(0, out)
+       ZEND_ARG_INFO(1, consumed)
+       ZEND_ARG_INFO(0, closing)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_php_user_filter_onCreate, 0, 0, 0)
+ZEND_END_ARG_INFO()
+
+#define arginfo_class_php_user_filter_onClose arginfo_class_php_user_filter_onCreate