26 #if ! defined (octave_bp_table_h)
27 #define octave_bp_table_h 1
29 #include "octave-config.h"
61 : m_evaluator (tw), m_bp_set (), m_errors_that_stop (),
62 m_caught_that_stop (), m_warnings_that_stop ()
82 #if defined (OCTAVE_PROVIDE_DEPRECATED_SYMBOLS)
83 OCTAVE_DEPRECATED (7,
"use 'bp_table::add_breakpoints_in_function' instead")
84 int add_breakpoint (const std::
string& fname = "",
85 const std::
string& class_name = "",
87 const std::
string& condition = "")
89 return add_breakpoint_in_function (fname, class_name, line, condition);
92 OCTAVE_DEPRECATED (7,
"use 'bp_table::add_breakpoints_in_function' instead")
93 bp_lines add_breakpoint (const std::
string& fname = "",
94 const std::
string& class_name = "",
95 const bp_lines& lines = bp_lines (),
96 const std::
string& condition = "")
98 return add_breakpoints_in_function (fname, class_name, lines, condition);
103 int add_breakpoint_in_function (
const std::string& fname =
"",
104 const std::string& class_name =
"",
106 const std::string& condition =
"");
110 bp_lines add_breakpoints_in_function (
const std::string& fname =
"",
111 const std::string& class_name =
"",
112 const bp_lines& lines = bp_lines (),
113 const std::string& condition =
"");
116 int add_breakpoint_in_file (
const std::string& file =
"",
118 const std::string& condition =
"");
122 bp_lines add_breakpoints_in_file (
const std::string& file =
"",
123 const bp_lines& lines = bp_lines (),
124 const std::string& condition =
"");
126 #if defined (OCTAVE_PROVIDE_DEPRECATED_SYMBOLS)
127 OCTAVE_DEPRECATED (7,
"use 'bp_table::remove_breakpoint_from_function' instead")
128 int remove_breakpoint (const std::
string& fname = "",
131 return remove_breakpoint_from_function (fname, line);
134 OCTAVE_DEPRECATED (7,
"use 'bp_table::remove_breakpoints_from_function' instead")
135 int remove_breakpoint (const std::
string& fname = "",
136 const bp_lines& lines = bp_lines ())
138 return remove_breakpoints_from_function (fname, lines);
143 int remove_breakpoint_from_function (
const std::string& fname =
"",
147 int remove_breakpoints_from_function (
const std::string& fname =
"",
148 const bp_lines& lines = bp_lines ());
151 bp_lines remove_all_breakpoints_from_function (
const std::string& fname,
152 bool silent =
false);
155 int remove_breakpoint_from_file (
const std::string& file =
"",
159 int remove_breakpoints_from_file (
const std::string& file =
"",
160 const bp_lines& lines = bp_lines ());
163 #if defined (OCTAVE_PROVIDE_DEPRECATED_SYMBOLS)
164 OCTAVE_DEPRECATED (7,
"use 'bp_table::remove_all_breakpoints_from_function' instead")
165 bp_lines remove_all_breakpoints_in_file (const std::
string& fname,
168 return remove_all_breakpoints_from_function (fname, silent);
173 bp_lines remove_all_breakpoints_from_file (
const std::string& file,
174 bool silent =
false);
177 void remove_all_breakpoints (
void);
188 return (m_errors_that_stop.empty () || m_errors_that_stop.count (
id));
194 return (m_caught_that_stop.empty () || m_caught_that_stop.count (
id));
200 return (m_warnings_that_stop.empty () || m_warnings_that_stop.count (
id));
203 octave_map stop_on_err_warn_status (
bool to_screen);
205 void dbstop_process_map_args (
const octave_map& mv);
207 void dbclear_all_signals (
void);
209 bool condition_valid (
const std::string& cond);
211 void parse_dbfunction_params (
const char *who,
213 std::string& fcn_name,
214 std::string& class_name,
235 void set_stop_flag (
const char *who,
const std::string& condition,
238 void process_id_list (
const char *who,
const std::string& condition,
240 int nargin,
int& pos,
bool on_off,
241 std::set<std::string>& id_list);
244 const bp_lines& line,
const std::string& condition,
251 const std::string& fname);
bool debug_on_warn(const std::string &id)
std::set< std::string > m_caught_that_stop
bool debug_on_err(const std::string &id)
fname_line_map::iterator fname_line_map_iterator
tree_evaluator & m_evaluator
std::set< std::string > m_warnings_that_stop
std::set< std::string >::iterator bp_set_iterator
std::set< std::string > m_errors_that_stop
fname_bp_map::iterator fname_bp_map_iterator
bp_lines::iterator bp_lines_iterator
std::set< std::string >::const_iterator const_bp_set_iterator
bp_lines::const_iterator const_bp_lines_iterator
bp_table(tree_evaluator &tw)
bool have_breakpoints(void)
fname_bp_map::const_iterator const_fname_bp_map_iterator
std::set< std::string > m_bp_set
std::map< std::string, std::list< bp_type > > fname_bp_map
fname_line_map::const_iterator const_fname_line_map_iterator
bool debug_on_caught(const std::string &id)
bp_lines remove_all_breakpoints_in_file_1(octave_user_code *fcn, const std::string &fname)
std::map< std::string, bp_lines > fname_line_map
OCTAVE_BEGIN_NAMESPACE(octave) static octave_value daspk_fcn
bp_type(int l, const std::string &c)