Skip to content

Commit 1d631c1

Browse files
duncan3dcnikic
authored andcommitted
Convert phpdbg arginfo to php stubs
Closes GH-4867.
1 parent 1c9cbc9 commit 1d631c1

File tree

3 files changed

+79
-55
lines changed

3 files changed

+79
-55
lines changed

sapi/phpdbg/phpdbg.c

Lines changed: 12 additions & 55 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@
2828
#include "phpdbg_eol.h"
2929
#include "phpdbg_print.h"
3030
#include "phpdbg_help.h"
31+
#include "phpdbg_arginfo.h"
3132

3233
#include "ext/standard/basic_functions.h"
3334

@@ -723,62 +724,18 @@ static PHP_FUNCTION(phpdbg_end_oplog)
723724
}
724725
}
725726

726-
ZEND_BEGIN_ARG_INFO_EX(phpdbg_break_next_arginfo, 0, 0, 0)
727-
ZEND_END_ARG_INFO()
728-
729-
ZEND_BEGIN_ARG_INFO_EX(phpdbg_break_file_arginfo, 0, 0, 2)
730-
ZEND_ARG_INFO(0, file)
731-
ZEND_ARG_INFO(0, line)
732-
ZEND_END_ARG_INFO()
733-
734-
ZEND_BEGIN_ARG_INFO_EX(phpdbg_break_method_arginfo, 0, 0, 2)
735-
ZEND_ARG_INFO(0, class)
736-
ZEND_ARG_INFO(0, method)
737-
ZEND_END_ARG_INFO()
738-
739-
ZEND_BEGIN_ARG_INFO_EX(phpdbg_break_function_arginfo, 0, 0, 1)
740-
ZEND_ARG_INFO(0, function)
741-
ZEND_END_ARG_INFO()
742-
743-
ZEND_BEGIN_ARG_INFO_EX(phpdbg_color_arginfo, 0, 0, 2)
744-
ZEND_ARG_INFO(0, element)
745-
ZEND_ARG_INFO(0, color)
746-
ZEND_END_ARG_INFO()
747-
748-
ZEND_BEGIN_ARG_INFO_EX(phpdbg_prompt_arginfo, 0, 0, 1)
749-
ZEND_ARG_INFO(0, string)
750-
ZEND_END_ARG_INFO()
751-
752-
ZEND_BEGIN_ARG_INFO_EX(phpdbg_exec_arginfo, 0, 0, 1)
753-
ZEND_ARG_INFO(0, context)
754-
ZEND_END_ARG_INFO()
755-
756-
ZEND_BEGIN_ARG_INFO_EX(phpdbg_clear_arginfo, 0, 0, 0)
757-
ZEND_END_ARG_INFO()
758-
759-
ZEND_BEGIN_ARG_INFO_EX(phpdbg_start_oplog_arginfo, 0, 0, 0)
760-
ZEND_END_ARG_INFO()
761-
762-
ZEND_BEGIN_ARG_INFO_EX(phpdbg_end_oplog_arginfo, 0, 0, 0)
763-
ZEND_ARG_INFO(0, options)
764-
ZEND_END_ARG_INFO()
765-
766-
ZEND_BEGIN_ARG_INFO_EX(phpdbg_get_executable_arginfo, 0, 0, 0)
767-
ZEND_ARG_INFO(0, options)
768-
ZEND_END_ARG_INFO()
769-
770727
static const zend_function_entry phpdbg_user_functions[] = {
771-
PHP_FE(phpdbg_clear, phpdbg_clear_arginfo)
772-
PHP_FE(phpdbg_break_next, phpdbg_break_next_arginfo)
773-
PHP_FE(phpdbg_break_file, phpdbg_break_file_arginfo)
774-
PHP_FE(phpdbg_break_method, phpdbg_break_method_arginfo)
775-
PHP_FE(phpdbg_break_function, phpdbg_break_function_arginfo)
776-
PHP_FE(phpdbg_exec, phpdbg_exec_arginfo)
777-
PHP_FE(phpdbg_color, phpdbg_color_arginfo)
778-
PHP_FE(phpdbg_prompt, phpdbg_prompt_arginfo)
779-
PHP_FE(phpdbg_start_oplog, phpdbg_start_oplog_arginfo)
780-
PHP_FE(phpdbg_end_oplog, phpdbg_end_oplog_arginfo)
781-
PHP_FE(phpdbg_get_executable, phpdbg_get_executable_arginfo)
728+
PHP_FE(phpdbg_clear, arginfo_phpdbg_clear)
729+
PHP_FE(phpdbg_break_next, arginfo_phpdbg_break_next)
730+
PHP_FE(phpdbg_break_file, arginfo_phpdbg_break_file)
731+
PHP_FE(phpdbg_break_method, arginfo_phpdbg_break_method)
732+
PHP_FE(phpdbg_break_function, arginfo_phpdbg_break_function)
733+
PHP_FE(phpdbg_exec, arginfo_phpdbg_exec)
734+
PHP_FE(phpdbg_color, arginfo_phpdbg_color)
735+
PHP_FE(phpdbg_prompt, arginfo_phpdbg_prompt)
736+
PHP_FE(phpdbg_start_oplog, arginfo_phpdbg_start_oplog)
737+
PHP_FE(phpdbg_end_oplog, arginfo_phpdbg_end_oplog)
738+
PHP_FE(phpdbg_get_executable, arginfo_phpdbg_get_executable)
782739
#ifdef PHP_FE_END
783740
PHP_FE_END
784741
#else

sapi/phpdbg/phpdbg.stub.php

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
<?php
2+
3+
function phpdbg_break_next(): void {}
4+
5+
function phpdbg_break_file(string $file, int $line): void {}
6+
7+
function phpdbg_break_method(string $class, string $method): void {}
8+
9+
function phpdbg_break_function(string $function): void {}
10+
11+
function phpdbg_color(int $element, string $color): void {}
12+
13+
function phpdbg_prompt(string $string): void {}
14+
15+
/** @return string|bool */
16+
function phpdbg_exec(string $context) {}
17+
18+
function phpdbg_clear(): void {}
19+
20+
function phpdbg_start_oplog(): void {}
21+
22+
function phpdbg_end_oplog(array $options = []): ?array {}
23+
24+
function phpdbg_get_executable(array $options = []): array {}

sapi/phpdbg/phpdbg_arginfo.h

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
/* This is a generated file, edit the .stub.php file instead. */
2+
3+
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_phpdbg_break_next, 0, 0, IS_VOID, 0)
4+
ZEND_END_ARG_INFO()
5+
6+
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_phpdbg_break_file, 0, 2, IS_VOID, 0)
7+
ZEND_ARG_TYPE_INFO(0, file, IS_STRING, 0)
8+
ZEND_ARG_TYPE_INFO(0, line, IS_LONG, 0)
9+
ZEND_END_ARG_INFO()
10+
11+
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_phpdbg_break_method, 0, 2, IS_VOID, 0)
12+
ZEND_ARG_TYPE_INFO(0, class, IS_STRING, 0)
13+
ZEND_ARG_TYPE_INFO(0, method, IS_STRING, 0)
14+
ZEND_END_ARG_INFO()
15+
16+
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_phpdbg_break_function, 0, 1, IS_VOID, 0)
17+
ZEND_ARG_TYPE_INFO(0, function, IS_STRING, 0)
18+
ZEND_END_ARG_INFO()
19+
20+
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_phpdbg_color, 0, 2, IS_VOID, 0)
21+
ZEND_ARG_TYPE_INFO(0, element, IS_LONG, 0)
22+
ZEND_ARG_TYPE_INFO(0, color, IS_STRING, 0)
23+
ZEND_END_ARG_INFO()
24+
25+
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_phpdbg_prompt, 0, 1, IS_VOID, 0)
26+
ZEND_ARG_TYPE_INFO(0, string, IS_STRING, 0)
27+
ZEND_END_ARG_INFO()
28+
29+
ZEND_BEGIN_ARG_INFO_EX(arginfo_phpdbg_exec, 0, 0, 1)
30+
ZEND_ARG_TYPE_INFO(0, context, IS_STRING, 0)
31+
ZEND_END_ARG_INFO()
32+
33+
#define arginfo_phpdbg_clear arginfo_phpdbg_break_next
34+
35+
#define arginfo_phpdbg_start_oplog arginfo_phpdbg_break_next
36+
37+
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_phpdbg_end_oplog, 0, 0, IS_ARRAY, 1)
38+
ZEND_ARG_TYPE_INFO(0, options, IS_ARRAY, 0)
39+
ZEND_END_ARG_INFO()
40+
41+
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_phpdbg_get_executable, 0, 0, IS_ARRAY, 0)
42+
ZEND_ARG_TYPE_INFO(0, options, IS_ARRAY, 0)
43+
ZEND_END_ARG_INFO()

0 commit comments

Comments
 (0)