Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Newer
Older
100644 79 lines (65 sloc) 4.01 kB
eedd44b @derickr - Implemented MUCH better parameter tracing for user defined functions
authored
1 /*
2 +----------------------------------------------------------------------+
b66d5be @derickr - Licence update. This change only renames "PHP Licence" to "Xdebug L…
authored
3 | Xdebug |
eedd44b @derickr - Implemented MUCH better parameter tracing for user defined functions
authored
4 +----------------------------------------------------------------------+
c87ab4f @derickr - We're in 2011.
authored
5 | Copyright (c) 2002-2011 Derick Rethans |
eedd44b @derickr - Implemented MUCH better parameter tracing for user defined functions
authored
6 +----------------------------------------------------------------------+
b66d5be @derickr - Licence update. This change only renames "PHP Licence" to "Xdebug L…
authored
7 | This source file is subject to version 1.0 of the Xdebug license, |
eedd44b @derickr - Implemented MUCH better parameter tracing for user defined functions
authored
8 | that is bundled with this package in the file LICENSE, and is |
9 | available at through the world-wide-web at |
b66d5be @derickr - Licence update. This change only renames "PHP Licence" to "Xdebug L…
authored
10 | http://xdebug.derickrethans.nl/license.php |
11 | If you did not receive a copy of the Xdebug license and are unable |
12 | to obtain it through the world-wide-web, please send a note to |
13 | xdebug@derickrethans.nl so we can mail you a copy immediately. |
eedd44b @derickr - Implemented MUCH better parameter tracing for user defined functions
authored
14 +----------------------------------------------------------------------+
637bd81 @derickr - Email update
authored
15 | Authors: Derick Rethans <derick@xdebug.org> |
eedd44b @derickr - Implemented MUCH better parameter tracing for user defined functions
authored
16 +----------------------------------------------------------------------+
17 */
18
19 #include "zend.h"
fd0621e @derickr - Cleanup
authored
20 #include "php_xdebug.h"
48ced34 @derickr - First bits for implementing static properties in debugging.
authored
21 #include "xdebug_compat.h"
2e0eed5 @derickr - Move the allocation defines into xdebug_mm.h
authored
22 #include "xdebug_str.h"
5c055b8 @derickr - Added the XML writer to config.m4
authored
23 #include "xdebug_xml.h"
c7bdfd3 @derickr - Fixed bug #109: Requesting property_get or _value of protected clas…
authored
24 #include "xdebug_private.h"
eedd44b @derickr - Implemented MUCH better parameter tracing for user defined functions
authored
25
f01dbd5 @derickr - Don't rely on the output buffering in PHP, which is still a little bit
authored
26 #ifndef __HAVE_XDEBUG_VAR_H__
27 #define __HAVE_XDEBUG_VAR_H__
28
6c19f7e @derickr - Implemented correct paging behavior in case max_depth is greater th…
authored
29 typedef struct
30 {
31 int page; /* The number of the page to retrieve */
32 int current_element_nr;
33 int start_element_nr;
34 int end_element_nr;
35 } xdebug_var_runtime_page;
36
87dfa5d @derickr - Implemented FR #131: XDebug needs to implement paged child object r…
authored
37 typedef struct xdebug_var_export_options {
38 int max_children;
39 int max_data;
40 int max_depth;
41 int show_hidden;
6c19f7e @derickr - Implemented correct paging behavior in case max_depth is greater th…
authored
42 xdebug_var_runtime_page *runtime;
89e608b @derickr - Reimplemented variable assignment tracing.
authored
43 int no_decoration;
87dfa5d @derickr - Implemented FR #131: XDebug needs to implement paged child object r…
authored
44 } xdebug_var_export_options;
45
48ced34 @derickr - First bits for implementing static properties in debugging.
authored
46 #define XDEBUG_VAR_TYPE_NORMAL 0x00
47 #define XDEBUG_VAR_TYPE_STATIC 0x01
48
0bbd2fc @derickr - Added FR #30: Dump current scope information in stack traces on error.
authored
49 zval* xdebug_get_php_symbol(char* name, int name_length);
48ced34 @derickr - First bits for implementing static properties in debugging.
authored
50 char* xdebug_get_property_info(char *mangled_property, int mangled_len, char **property_name, char **class_name);
0bbd2fc @derickr - Added FR #30: Dump current scope information in stack traces on error.
authored
51
89e608b @derickr - Reimplemented variable assignment tracing.
authored
52 xdebug_var_export_options* xdebug_var_export_options_from_ini(TSRMLS_D);
ea1f746 @derickr - Partially implemented FR #50: Resource limiting for variable displa…
authored
53 xdebug_var_export_options* xdebug_var_get_nolimit_options(TSRMLS_D);
54
55 void xdebug_var_export(zval **struc, xdebug_str *str, int level, int debug_zval, xdebug_var_export_options *options TSRMLS_DC);
d0b1b97 @derickr - Add XML responses which can be enabled by executing "option respons…
authored
56 void xdebug_var_export_xml(zval **struc, xdebug_str *str, int level TSRMLS_DC);
ea1f746 @derickr - Partially implemented FR #50: Resource limiting for variable displa…
authored
57 void xdebug_var_export_fancy(zval **struc, xdebug_str *str, int level, int debug_zval, xdebug_var_export_options *options TSRMLS_DC);
87dfa5d @derickr - Implemented FR #131: XDebug needs to implement paged child object r…
authored
58 void xdebug_var_export_xml_node(zval **struc, char *name, xdebug_xml_node *node, xdebug_var_export_options *options, int level TSRMLS_DC);
d0b1b97 @derickr - Add XML responses which can be enabled by executing "option respons…
authored
59
93b1d02 @derickr - Namespace protect everything correctly.
authored
60 char* xdebug_xmlize(char *string, int len, int *newlen);
61 char* xdebug_error_type(int type);
c6f939b @derickr - Refactor to make the xdebug.c file a lot smaller. Stack related fun…
authored
62 zval *xdebug_get_zval(zend_execute_data *zdata, znode *node, temp_variable *Ts, int *is_var);
93b1d02 @derickr - Namespace protect everything correctly.
authored
63 char* xdebug_get_zval_value(zval *val, int debug_zval, xdebug_var_export_options *options);
64 char* xdebug_get_zval_value_xml(char *name, zval *val);
65 char* xdebug_get_zval_value_fancy(char *name, zval *val, int *len, int debug_zval, xdebug_var_export_options *options TSRMLS_DC);
48ced34 @derickr - First bits for implementing static properties in debugging.
authored
66
b6825b9 @derickr ZTS fixes
authored
67 int xdebug_attach_static_vars(xdebug_xml_node *node, xdebug_var_export_options *options, zend_class_entry *ce TSRMLS_DC);
48ced34 @derickr - First bits for implementing static properties in debugging.
authored
68 void xdebug_attach_static_var_with_contents(zval **zv XDEBUG_ZEND_HASH_APPLY_TSRMLS_DC, int num_args, va_list args, zend_hash_key *hash_key);
93b1d02 @derickr - Namespace protect everything correctly.
authored
69 xdebug_xml_node* xdebug_get_zval_value_xml_node(char *name, zval *val, xdebug_var_export_options *options);
48ced34 @derickr - First bits for implementing static properties in debugging.
authored
70 #define xdebug_get_zval_value_xml_node(name, val, options) xdebug_get_zval_value_xml_node_ex(name, val, XDEBUG_VAR_TYPE_NORMAL, options)
b6825b9 @derickr ZTS fixes
authored
71 xdebug_xml_node* xdebug_get_zval_value_xml_node_ex(char *name, zval *val, int var_type, xdebug_var_export_options *options TSRMLS_DC);
d23d36d @derickr - Pimped the stack trace output.
authored
72
93b1d02 @derickr - Namespace protect everything correctly.
authored
73 char* xdebug_get_zval_synopsis(zval *val, int debug_zval, xdebug_var_export_options *options);
74 char* xdebug_get_zval_synopsis_fancy(char *name, zval *val, int *len, int debug_zval, xdebug_var_export_options *options TSRMLS_DC);
d23d36d @derickr - Pimped the stack trace output.
authored
75
93b1d02 @derickr - Namespace protect everything correctly.
authored
76 char* xdebug_show_fname(xdebug_func t, int html, int flags TSRMLS_DC);
eedd44b @derickr - Implemented MUCH better parameter tracing for user defined functions
authored
77
f01dbd5 @derickr - Don't rely on the output buffering in PHP, which is still a little bit
authored
78 #endif
Something went wrong with that request. Please try again.