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 ()
65 OCTAVE_DISABLE_CONSTRUCT_COPY_MOVE (
bp_table)
85 int add_breakpoint_in_function (
const std::string& fcn_ident =
"",
87 const std::string& condition =
"");
91 bp_lines add_breakpoints_in_function (
const std::string& fcn_ident =
"",
93 const std::string& condition =
"");
96 int add_breakpoint_in_file (
const std::string& file =
"",
98 const std::string& condition =
"");
102 bp_lines add_breakpoints_in_file (
const std::string& file =
"",
104 const std::string& condition =
"");
107 int remove_breakpoint_from_function (
const std::string& fcn_ident =
"",
111 int remove_breakpoints_from_function (
const std::string& fcn_ident =
"",
115 bp_lines remove_all_breakpoints_from_function (
const std::string& fcn_ident,
116 bool silent =
false);
119 int remove_breakpoint_from_file (
const std::string& file =
"",
123 int remove_breakpoints_from_file (
const std::string& file =
"",
128 bp_lines remove_all_breakpoints_from_file (
const std::string& file,
129 bool silent =
false);
132 void remove_all_breakpoints ();
143 return (m_errors_that_stop.empty () || m_errors_that_stop.count (
id));
149 return (m_caught_that_stop.empty () || m_caught_that_stop.count (
id));
155 return (m_warnings_that_stop.empty () || m_warnings_that_stop.count (
id));
158 octave_map stop_on_err_warn_status (
bool to_screen);
160 void dbstop_process_map_args (
const octave_map& mv);
162 void dbclear_all_signals ();
164 bool condition_valid (
const std::string& cond);
166 void parse_dbfunction_params (
const char *who,
168 std::string& fcn_name,
169 std::string& class_name,
175 typedef std::set<std::string>::const_iterator const_bp_set_iterator;
176 typedef std::set<std::string>::iterator bp_set_iterator;
181 std::set<std::string> m_bp_set;
186 std::set<std::string> m_errors_that_stop;
187 std::set<std::string> m_caught_that_stop;
188 std::set<std::string> m_warnings_that_stop;
190 void set_stop_flag (
const char *who,
const std::string& condition,
193 void process_id_list (
const char *who,
const std::string& condition,
195 int nargin,
int& pos,
bool on_off,
196 std::set<std::string>& id_list);
199 const bp_lines&
line,
const std::string& condition,
203 const bp_lines& lines);
206 const std::string& fname);
209 OCTAVE_END_NAMESPACE(
octave)
bool debug_on_warn(const std::string &id)
bool debug_on_err(const std::string &id)
fname_line_map::iterator fname_line_map_iterator
fname_bp_map::iterator fname_bp_map_iterator
bp_lines::iterator bp_lines_iterator
bp_lines::const_iterator const_bp_lines_iterator
bp_table(tree_evaluator &tw)
fname_bp_map::const_iterator const_fname_bp_map_iterator
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)
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)