![]() |
Up | ![]() |
TOC | Index | |||
<< 7 Included Tools | < 8.52 Unit Testing Framework | Up: 8 API Reference | 8.54 Windows Message Box > | 9 Release Notes >> |
8.53 Debugging tools
8.53.1 Call Stack Constants
8.53.1.1 CS_ROUTINE_NAME
include euphoria/debug/debug.e namespace debug public enum CS_ROUTINE_NAME
CS_ROUTINE_NAME: index of the routine name in the sequence returned by call_stack
8.53.1.2 CS_FILE_NAME
include euphoria/debug/debug.e namespace debug public enum CS_FILE_NAME
CS_FILE_NAME: index of the file name in the sequence returned by call_stack
8.53.1.3 CS_LINE_NO
include euphoria/debug/debug.e namespace debug public enum CS_LINE_NO
CS_LINE_NO: index of the line number in the sequence returned by call_stack
8.53.1.4 CS_ROUTINE_SYM
include euphoria/debug/debug.e namespace debug public enum CS_ROUTINE_SYM
CS_ROUTINE_SYM: (debugger only) Pointer to the routine symbol
8.53.1.5 CS_PC
include euphoria/debug/debug.e namespace debug public enum CS_PC
CS_PC: (debugger only) The program counter pointer for this routine
8.53.1.6 CS_GLINE
include euphoria/debug/debug.e namespace debug public enum CS_GLINE
CS_GLINE: (debugger only) The index into the global line array
8.53.2 DEBUG_ROUTINE Enum Type
These constants are used to register euphoria routines that handle various debugger tasks, displaying information or waiting for user input.
8.53.2.1 type
include euphoria/debug/debug.e namespace debug public enum type DEBUG_ROUTINE
8.53.2.2 that
SHOW_DEBUG a procedure that takes an integer parameter that represents the current line in the global line table
8.53.2.3 called
UPDATE_GLOBALS A procedure called when the debug screen should update the display of any non-private variables
8.53.2.4 BadSig:
include euphoria/debug/debug.e namespace debug DEBUG_SCREEN
8.53.2.5 BadSig:
include euphoria/debug/debug.e namespace debug ERASE_PRIVATES
8.53.2.6 BadSig:
include euphoria/debug/debug.e namespace debug ERASE_SYMBOL
8.53.3 Debugging Routines
8.53.3.1 call_stack
include euphoria/debug/debug.e namespace debug public function call_stack()
Returns information about the call stack of the code currently running.
Returns:
A sequence where each element represents one level in the call stack. See the Call Stack Constants for constants that can be used to access the call stack information.
- routine name
- file name
- line number
8.53.3.2 BadSig:
include euphoria/debug/debug.e namespace debug public memstruct Var
8.53.3.3 BadSig:
include euphoria/debug/debug.e namespace debug public memstruct Block
8.53.3.4 BadSig:
include euphoria/debug/debug.e namespace debug public memstruct private_block
8.53.3.5 BadSig:
include euphoria/debug/debug.e namespace debug public memstruct Subp
8.53.3.6 BadSig:
include euphoria/debug/debug.e namespace debug public memunion U
8.53.3.7 BadSig:
include euphoria/debug/debug.e namespace debug public memstruct symtab_entry
8.53.3.8 BadSig:
include euphoria/debug/debug.e namespace debug public memstruct source_line
8.53.3.9 M_INIT_DEBUGGER
include euphoria/debug/debug.e namespace debug public constant M_INIT_DEBUGGER
8.53.3.10 initialize_debugger
include euphoria/debug/debug.e namespace debug public procedure initialize_debugger(atom init_ptr)
Initializes an external debugger. It can also be called from a debugger compiled into a DLL / SO.
Parameters:
- init_ptr : The result of machine_func( M_INIT_DEBUGGER, {} ).
8.53.3.11 set_debug_rid
include euphoria/debug/debug.e namespace debug public procedure set_debug_rid(DEBUG_ROUTINE rtn, integer rid)
8.53.3.12 read_object
include euphoria/debug/debug.e namespace debug public function read_object(atom sym)
8.53.3.13 trace_off
include euphoria/debug/debug.e namespace debug public procedure trace_off()
8.53.3.14 disable_trace
include euphoria/debug/debug.e namespace debug public procedure disable_trace()
8.53.3.15 step_over
include euphoria/debug/debug.e namespace debug public procedure step_over()
8.53.3.16 abort_program
include euphoria/debug/debug.e namespace debug public procedure abort_program()
8.53.3.17 get_current_line
include euphoria/debug/debug.e namespace debug public function get_current_line()
8.53.3.18 symbol_lookup
include euphoria/debug/debug.e namespace debug public function symbol_lookup(sequence name, integer line = get_current_line(), atom pc = get_pc())
8.53.3.19 get_pc
include euphoria/debug/debug.e namespace debug public function get_pc()
8.53.3.20 is_novalue
include euphoria/debug/debug.e namespace debug public function is_novalue(atom sym_ptr)
8.53.3.21 debugger_call_stack
include euphoria/debug/debug.e namespace debug public function debugger_call_stack()
8.53.3.22 break_routine
include euphoria/debug/debug.e namespace debug public function break_routine(atom routine_sym, integer enable)
8.53.3.23 get_name
include euphoria/debug/debug.e namespace debug public function get_name(atom sym)
8.53.3.24 get_source
include euphoria/debug/debug.e namespace debug public function get_source(integer src_line)
8.53.3.25 get_file_no
include euphoria/debug/debug.e namespace debug public function get_file_no(integer line)
8.53.3.26 get_file_name
include euphoria/debug/debug.e namespace debug public function get_file_name(integer file_no)
8.53.3.27 get_file_line
include euphoria/debug/debug.e namespace debug public function get_file_line(integer line_no)
8.53.3.28 get_next
include euphoria/debug/debug.e namespace debug public function get_next(atom sym)
8.53.3.29 is_variable
include euphoria/debug/debug.e namespace debug public function is_variable(atom sym_ptr)
8.53.3.30 get_parameter_syms
include euphoria/debug/debug.e namespace debug public function get_parameter_syms(atom rtn_sym)
8.53.3.31 get_symbol_table
include euphoria/debug/debug.e namespace debug public function get_symbol_table()