]> granicus.if.org Git - php/commitdiff
Creating stub for ext bz2
authorKauan Sousa <kauanslr.ks@gmail.com>
Thu, 15 Aug 2019 21:11:46 +0000 (23:11 +0200)
committerChristoph M. Becker <cmbecker69@gmx.de>
Fri, 16 Aug 2019 15:21:12 +0000 (17:21 +0200)
ext/bz2/bz2.c
ext/bz2/bz2.stub.php [new file with mode: 0644]
ext/bz2/bz2_arginfo.h [new file with mode: 0644]

index 7b54766575baf4b7a2522083aef984a9d947ab8e..bf706f644935d564c94804e8f337396798d4f646 100644 (file)
@@ -22,6 +22,7 @@
 
 #include "php.h"
 #include "php_bz2.h"
+#include "bz2_arginfo.h"
 
 #if HAVE_BZ2
 
@@ -50,57 +51,12 @@ static PHP_FUNCTION(bzerror);
 static PHP_FUNCTION(bzcompress);
 static PHP_FUNCTION(bzdecompress);
 
-/* {{{ arginfo */
-ZEND_BEGIN_ARG_INFO_EX(arginfo_bzread, 0, 0, 1)
-       ZEND_ARG_INFO(0, bz)
-       ZEND_ARG_INFO(0, length)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO(arginfo_bzopen, 0)
-       ZEND_ARG_INFO(0, file)
-       ZEND_ARG_INFO(0, mode)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO(arginfo_bzerrno, 0)
-       ZEND_ARG_INFO(0, bz)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO(arginfo_bzerrstr, 0)
-       ZEND_ARG_INFO(0, bz)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO(arginfo_bzerror, 0)
-       ZEND_ARG_INFO(0, bz)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_bzcompress, 0, 0, 1)
-       ZEND_ARG_INFO(0, source)
-       ZEND_ARG_INFO(0, blocksize)
-       ZEND_ARG_INFO(0, workfactor)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_bzdecompress, 0, 0, 1)
-       ZEND_ARG_INFO(0, source)
-       ZEND_ARG_INFO(0, small)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(arginfo_bzwrite, 0, 0, 2)
-       ZEND_ARG_INFO(0, fp)
-       ZEND_ARG_INFO(0, str)
-       ZEND_ARG_INFO(0, length)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO(arginfo_bzflush, 0)
-       ZEND_ARG_INFO(0, fp)
-ZEND_END_ARG_INFO()
-/* }}} */
-
 static const zend_function_entry bz2_functions[] = {
        PHP_FE(bzopen,       arginfo_bzopen)
        PHP_FE(bzread,       arginfo_bzread)
        PHP_FALIAS(bzwrite,   fwrite,           arginfo_bzwrite)
        PHP_FALIAS(bzflush,   fflush,           arginfo_bzflush)
-       PHP_FALIAS(bzclose,   fclose,           arginfo_bzflush)
+       PHP_FALIAS(bzclose,   fclose,           arginfo_bzclose)
        PHP_FE(bzerrno,      arginfo_bzerrno)
        PHP_FE(bzerrstr,     arginfo_bzerrstr)
        PHP_FE(bzerror,      arginfo_bzerror)
diff --git a/ext/bz2/bz2.stub.php b/ext/bz2/bz2.stub.php
new file mode 100644 (file)
index 0000000..f90d66c
--- /dev/null
@@ -0,0 +1,54 @@
+<?php
+
+/**
+ * @param string|resource $file
+ * @return resource|false
+ */
+ function bzopen($file, string $mode) {}
+
+/**
+ * @param resource $bz
+ * @return string|false
+ */
+function bzread ($bz, int $length = 1024) {}
+
+/**
+ * @param resource $bz
+ * @return int|false
+ */
+function bzwrite ($bz, string $str, int $length = UNKNOWN) {}
+
+/**
+ * @param resource $bz
+ */
+function bzflush ($bz): bool {}
+
+/**
+ * @param resource $bz
+ */
+function bzclose ($bz): bool {}
+
+/**
+ * @param resource $bz
+ */
+function bzerrno ($bz): int {}
+
+/**
+ * @param resource $bz
+ */
+function bzerrstr ($bz): string {}
+
+/**
+ * @param resource $bz
+ */
+function bzerror ($bz): array {}
+
+/**
+ * @return string|int
+ */
+function bzcompress (string $source, int $blocksize = 4, int $workfactor = 0) {}
+
+/**
+ * @return string|int
+ */
+function bzdecompress (string $source, int $small = 0) {}
diff --git a/ext/bz2/bz2_arginfo.h b/ext/bz2/bz2_arginfo.h
new file mode 100644 (file)
index 0000000..be89a09
--- /dev/null
@@ -0,0 +1,46 @@
+/* This is a generated file, edit the .stub.php file instead. */
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_bzopen, 0, 0, 2)
+       ZEND_ARG_INFO(0, file)
+       ZEND_ARG_TYPE_INFO(0, mode, IS_STRING, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_bzread, 0, 0, 1)
+       ZEND_ARG_INFO(0, bz)
+       ZEND_ARG_TYPE_INFO(0, length, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_bzwrite, 0, 0, 2)
+       ZEND_ARG_INFO(0, bz)
+       ZEND_ARG_TYPE_INFO(0, str, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, length, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_bzflush, 0, 1, _IS_BOOL, 0)
+       ZEND_ARG_INFO(0, bz)
+ZEND_END_ARG_INFO()
+
+#define arginfo_bzclose arginfo_bzflush
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_bzerrno, 0, 1, IS_LONG, 0)
+       ZEND_ARG_INFO(0, bz)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_bzerrstr, 0, 1, IS_STRING, 0)
+       ZEND_ARG_INFO(0, bz)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_bzerror, 0, 1, IS_ARRAY, 0)
+       ZEND_ARG_INFO(0, bz)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_bzcompress, 0, 0, 1)
+       ZEND_ARG_TYPE_INFO(0, source, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, blocksize, IS_LONG, 0)
+       ZEND_ARG_TYPE_INFO(0, workfactor, IS_LONG, 0)
+ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_bzdecompress, 0, 0, 1)
+       ZEND_ARG_TYPE_INFO(0, source, IS_STRING, 0)
+       ZEND_ARG_TYPE_INFO(0, small, IS_LONG, 0)
+ZEND_END_ARG_INFO()