#include "bp-table.h"
Public Types | |
typedef std::set< int > | bp_lines |
typedef bp_lines::iterator | bp_lines_iterator |
typedef bp_lines::const_iterator | const_bp_lines_iterator |
typedef fname_bp_map::const_iterator | const_fname_bp_map_iterator |
typedef fname_line_map::const_iterator | const_fname_line_map_iterator |
typedef std::map< std::string, std::list< bp_type > > | fname_bp_map |
typedef fname_bp_map::iterator | fname_bp_map_iterator |
typedef std::map< std::string, bp_lines > | fname_line_map |
typedef fname_line_map::iterator | fname_line_map_iterator |
Public Member Functions | |
bp_table (tree_evaluator &tw) | |
~bp_table ()=default | |
int | add_breakpoint_in_file (const std::string &file="", int line=1, const std::string &condition="") |
int | add_breakpoint_in_function (const std::string &fcn_ident="", int line=1, const std::string &condition="") |
bp_lines | add_breakpoints_in_file (const std::string &file="", const bp_lines &lines=bp_lines(), const std::string &condition="") |
bp_lines | add_breakpoints_in_function (const std::string &fcn_ident="", const bp_lines &lines=bp_lines(), const std::string &condition="") |
bool | condition_valid (const std::string &cond) |
void | dbclear_all_signals () |
void | dbstop_process_map_args (const octave_map &mv) |
bool | debug_on_caught (const std::string &id) |
bool | debug_on_err (const std::string &id) |
bool | debug_on_warn (const std::string &id) |
fname_bp_map | get_breakpoint_list (const octave_value_list &fname_list) |
bool | have_breakpoints () |
void | parse_dbfunction_params (const char *who, const octave_value_list &args, std::string &fcn_name, std::string &class_name, bp_table::bp_lines &lines, std::string &cond) |
void | remove_all_breakpoints () |
bp_lines | remove_all_breakpoints_from_file (const std::string &file, bool silent=false) |
bp_lines | remove_all_breakpoints_from_function (const std::string &fcn_ident, bool silent=false) |
int | remove_breakpoint_from_file (const std::string &file="", int line=1) |
int | remove_breakpoint_from_function (const std::string &fcn_ident="", int line=1) |
int | remove_breakpoints_from_file (const std::string &file="", const bp_lines &lines=bp_lines()) |
int | remove_breakpoints_from_function (const std::string &fcn_ident="", const bp_lines &lines=bp_lines()) |
octave_map | stop_on_err_warn_status (bool to_screen) |
Definition at line 56 of file bp-table.h.
typedef std::set<int> bp_table::bp_lines |
Definition at line 70 of file bp-table.h.
typedef bp_lines::iterator bp_table::bp_lines_iterator |
Definition at line 73 of file bp-table.h.
typedef bp_lines::const_iterator bp_table::const_bp_lines_iterator |
Definition at line 72 of file bp-table.h.
typedef fname_bp_map::const_iterator bp_table::const_fname_bp_map_iterator |
Definition at line 81 of file bp-table.h.
typedef fname_line_map::const_iterator bp_table::const_fname_line_map_iterator |
Definition at line 77 of file bp-table.h.
typedef std::map<std::string, std::list<bp_type> > bp_table::fname_bp_map |
Definition at line 80 of file bp-table.h.
typedef fname_bp_map::iterator bp_table::fname_bp_map_iterator |
Definition at line 82 of file bp-table.h.
typedef std::map<std::string, bp_lines> bp_table::fname_line_map |
Definition at line 75 of file bp-table.h.
typedef fname_line_map::iterator bp_table::fname_line_map_iterator |
Definition at line 78 of file bp-table.h.
|
inline |
Definition at line 60 of file bp-table.h.
|
default |
int bp_table::add_breakpoint_in_file | ( | const std::string & | file = "" , |
int | line = 1 , |
||
const std::string & | condition = "" |
||
) |
Definition at line 860 of file bp-table.cc.
References add_breakpoint_in_function().
int bp_table::add_breakpoint_in_function | ( | const std::string & | fcn_ident = "" , |
int | line = 1 , |
||
const std::string & | condition = "" |
||
) |
Definition at line 693 of file bp-table.cc.
References add_breakpoints_in_function().
Referenced by add_breakpoint_in_file().
bp_table::bp_lines bp_table::add_breakpoints_in_file | ( | const std::string & | file = "" , |
const bp_lines & | lines = bp_lines () , |
||
const std::string & | condition = "" |
||
) |
Definition at line 882 of file bp-table.cc.
References add_breakpoints_in_function().
bp_table::bp_lines bp_table::add_breakpoints_in_function | ( | const std::string & | fcn_ident = "" , |
const bp_lines & | lines = bp_lines () , |
||
const std::string & | condition = "" |
||
) |
Definition at line 813 of file bp-table.cc.
References condition_valid(), tree_evaluator::get_user_code(), octave_function::name(), and tree_evaluator::reset_debug_state().
Referenced by add_breakpoint_in_function(), and add_breakpoints_in_file().
bool bp_table::condition_valid | ( | const std::string & | cond | ) |
Definition at line 286 of file bp-table.cc.
References error(), tree_statement::expression(), tree_evaluator::get_interpreter(), tree_expression::is_assignment_expression(), tree_statement::is_expression(), base_parser::reset(), parser::run(), and base_parser::statement_list().
Referenced by add_breakpoints_in_function().
void bp_table::dbclear_all_signals | ( | ) |
Definition at line 120 of file bp-table.cc.
References error_system::debug_on_caught(), error_system::debug_on_error(), error_system::debug_on_warning(), interpreter::get_error_system(), tree_evaluator::get_interpreter(), and Vdebug_on_interrupt.
void bp_table::dbstop_process_map_args | ( | const octave_map & | mv | ) |
Definition at line 141 of file bp-table.cc.
References octave_map::contents(), error_system::debug_on_caught(), error_system::debug_on_error(), error_system::debug_on_warning(), error(), interpreter::get_error_system(), tree_evaluator::get_interpreter(), Cell::index(), Array< T, Alloc >::isempty(), octave_map::isfield(), Array< T, Alloc >::numel(), V, and Vdebug_on_interrupt.
|
inline |
Definition at line 147 of file bp-table.h.
Referenced by tree_evaluator::visit_statement().
|
inline |
Definition at line 141 of file bp-table.h.
Referenced by tree_evaluator::visit_statement().
|
inline |
Definition at line 153 of file bp-table.h.
bp_table::fname_bp_map bp_table::get_breakpoint_list | ( | const octave_value_list & | fname_list | ) |
Definition at line 1154 of file bp-table.cc.
References octave_user_code::body(), tree_statement_list::breakpoints_and_conds(), octave_value_list::empty(), octave::find_bkpt_list(), tree_evaluator::get_user_code(), octave_function::name(), octave_function::subfunction_names(), octave_user_code::subfunctions(), and octave_base_value::user_code_value().
Referenced by remove_breakpoints_from_function().
|
inline |
Definition at line 138 of file bp-table.h.
Referenced by tree_evaluator::reset_debug_state().
void bp_table::parse_dbfunction_params | ( | const char * | who, |
const octave_value_list & | args, | ||
std::string & | fcn_name, | ||
std::string & | class_name, | ||
bp_table::bp_lines & | lines, | ||
std::string & | cond | ||
) |
Definition at line 347 of file bp-table.cc.
References octave_value_list::array_value(), octave::dbstop_at, octave::dbstop_if, octave::dbstop_in, octave::dbstop_none, Array< T, Alloc >::elem(), error(), tree_evaluator::get_user_code(), tree_evaluator::in_debug_repl(), Array< T, Alloc >::insert(), octave_value_list::length(), Array< T, Alloc >::numel(), print_usage(), octave_function::profiler_name(), strcmp(), Vdebug_on_interrupt, and warning().
void bp_table::remove_all_breakpoints | ( | ) |
Definition at line 1121 of file bp-table.cc.
References remove_all_breakpoints_from_function(), and tree_evaluator::reset_debug_state().
bp_table::bp_lines bp_table::remove_all_breakpoints_from_file | ( | const std::string & | file, |
bool | silent = false |
||
) |
Definition at line 1106 of file bp-table.cc.
References remove_all_breakpoints_from_function().
bp_table::bp_lines bp_table::remove_all_breakpoints_from_function | ( | const std::string & | fcn_ident, |
bool | silent = false |
||
) |
Definition at line 1038 of file bp-table.cc.
References octave_user_code::body(), octave_user_code::fcn_file_name(), interpreter::get_event_manager(), tree_evaluator::get_interpreter(), tree_evaluator::get_user_code(), tree_statement_list::remove_all_breakpoints(), and tree_evaluator::reset_debug_state().
Referenced by remove_all_breakpoints(), remove_all_breakpoints_from_file(), and remove_breakpoints_from_function().
int bp_table::remove_breakpoint_from_file | ( | const std::string & | file = "" , |
int | line = 1 |
||
) |
Definition at line 1077 of file bp-table.cc.
References remove_breakpoint_from_function().
int bp_table::remove_breakpoint_from_function | ( | const std::string & | fcn_ident = "" , |
int | line = 1 |
||
) |
Definition at line 948 of file bp-table.cc.
References remove_breakpoints_from_function().
Referenced by remove_breakpoint_from_file().
int bp_table::remove_breakpoints_from_file | ( | const std::string & | file = "" , |
const bp_lines & | lines = bp_lines () |
||
) |
Definition at line 1091 of file bp-table.cc.
References remove_breakpoints_from_function().
int bp_table::remove_breakpoints_from_function | ( | const std::string & | fcn_ident = "" , |
const bp_lines & | lines = bp_lines () |
||
) |
Definition at line 958 of file bp-table.cc.
References octave_user_code::body(), tree_statement_list::delete_breakpoint(), octave_user_code::fcn_file_name(), get_breakpoint_list(), interpreter::get_event_manager(), tree_evaluator::get_interpreter(), tree_evaluator::get_user_code(), octave_value_list::length(), tree_statement_list::list_breakpoints(), remove_all_breakpoints_from_function(), tree_evaluator::reset_debug_state(), octave_function::subfunction_names(), octave_user_code::subfunctions(), event_manager::update_breakpoint(), and octave_base_value::user_code_value().
Referenced by remove_breakpoint_from_function(), and remove_breakpoints_from_file().
octave_map bp_table::stop_on_err_warn_status | ( | bool | to_screen | ) |
Definition at line 1245 of file bp-table.cc.
References octave_map::assign(), error_system::debug_on_caught(), error_system::debug_on_error(), error_system::debug_on_warning(), interpreter::get_error_system(), tree_evaluator::get_interpreter(), octave_stdout, Vdebug_on_interrupt, and Faddeeva::w().