summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristoph M. Becker <cmbecker69@gmx.de>2019-10-05 10:07:43 +0200
committerChristoph M. Becker <cmbecker69@gmx.de>2019-10-05 11:10:30 +0200
commit49b98b4d5cbce437d5bb93ddf71f24c5db2ff419 (patch)
treeebec8674238573ff6abf858571a388f25c0de2fe
parent505050728200e6446cc3ee81d7a2808d3575ea07 (diff)
downloadphp-git-49b98b4d5cbce437d5bb93ddf71f24c5db2ff419.tar.gz
Add arginfo stub for JsonSerializable
-rw-r--r--ext/json/json.c6
-rw-r--r--ext/json/json.stub.php5
-rw-r--r--ext/json/json_arginfo.h3
3 files changed, 9 insertions, 5 deletions
diff --git a/ext/json/json.c b/ext/json/json.c
index 5311d9c113..5db3621b32 100644
--- a/ext/json/json.c
+++ b/ext/json/json.c
@@ -52,12 +52,8 @@ static const zend_function_entry json_functions[] = {
/* }}} */
/* {{{ JsonSerializable methods */
-ZEND_BEGIN_ARG_INFO(json_serialize_arginfo, 0)
- /* No arguments */
-ZEND_END_ARG_INFO();
-
static const zend_function_entry json_serializable_interface[] = {
- PHP_ABSTRACT_ME(JsonSerializable, jsonSerialize, json_serialize_arginfo)
+ PHP_ABSTRACT_ME(JsonSerializable, jsonSerialize, arginfo_class_JsonSerializable_jsonSerialize)
PHP_FE_END
};
/* }}} */
diff --git a/ext/json/json.stub.php b/ext/json/json.stub.php
index 323cb6420d..6b00648461 100644
--- a/ext/json/json.stub.php
+++ b/ext/json/json.stub.php
@@ -9,3 +9,8 @@ function json_decode(string $json, ?bool $assoc = null, int $depth = 512, int $o
function json_last_error(): int {}
function json_last_error_msg(): string {}
+
+interface JsonSerializable
+{
+ public function jsonSerialize();
+}
diff --git a/ext/json/json_arginfo.h b/ext/json/json_arginfo.h
index 9c6f30686a..b717716790 100644
--- a/ext/json/json_arginfo.h
+++ b/ext/json/json_arginfo.h
@@ -18,3 +18,6 @@ ZEND_END_ARG_INFO()
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_json_last_error_msg, 0, 0, IS_STRING, 0)
ZEND_END_ARG_INFO()
+
+ZEND_BEGIN_ARG_INFO_EX(arginfo_class_JsonSerializable_jsonSerialize, 0, 0, 0)
+ZEND_END_ARG_INFO()