#include "pt.h"
Public Member Functions | |
tree (const tree &)=delete | |
tree (int l=-1, int c=-1) | |
virtual | ~tree (void)=default |
virtual void | accept (tree_walker &tw)=0 |
const std::string | bp_cond (void) const |
void | column (int c) |
virtual int | column (void) const |
virtual void | delete_breakpoint (void) |
bool | is_active_breakpoint (tree_evaluator &tw) const |
bool | is_breakpoint (void) const |
void | line (int l) |
virtual int | line (void) const |
bool | meets_bp_condition (tree_evaluator &tw) const |
tree & | operator= (const tree &)=delete |
virtual void | set_breakpoint (const std::string &condition) |
void | set_location (int l, int c) |
std::string | str_print_code (void) |
Private Attributes | |
std::string * | m_bp_cond |
int | m_column_num |
int | m_line_num |
|
delete |
|
virtualdefault |
|
pure virtual |
Implemented in octave::tree_postfix_expression, octave::tree_prefix_expression, octave::tree_statement, octave::tree_switch_command, octave::tree_switch_case, octave::tree_if_command, octave::tree_if_clause, octave::tree_matrix, octave::tree_complex_for_command, octave::tree_simple_for_command, octave::tree_do_until_command, octave::tree_while_command, octave::tree_return_command, octave::tree_continue_command, octave::tree_break_command, octave::tree_index_expression, octave::tree_identifier, octave::tree_anon_fcn_handle, octave::tree_fcn_handle, octave::tree_unwind_protect_command, octave::tree_try_catch_command, octave::tree_decl_command, octave::tree_constant, octave::tree_colon_expression, octave::tree_function_def, octave::tree_no_op_command, octave::tree_classdef, octave::tree_classdef_enum_block, octave::tree_classdef_events_block, octave::tree_classdef_methods_block, octave::tree_classdef_properties_block, octave::tree_metaclass_query, octave::tree_superclass_ref, octave::tree_cell, octave::tree_compound_binary_expression, octave::tree_boolean_expression, octave::tree_binary_expression, octave::tree_multi_assignment, octave::tree_simple_assignment, octave::tree_array_list, octave::tree_classdef_element< T >, octave::tree_classdef_element< tree_classdef_property * >, octave::tree_classdef_element< tree_classdef_enum * >, octave::tree_classdef_element< tree_classdef_event * >, and octave::tree_classdef_element< octave_value >.
Referenced by octave::anon_fcn_validator::anon_fcn_validator(), octave::tree_print_code::print_fcn_handle_body(), str_print_code(), octave::jit_convert::visit(), octave::tree_anon_scopes::visit_anon_fcn_handle(), octave::tree_print_code::visit_argument_list(), octave::tree_walker::visit_argument_list(), octave::tree_print_code::visit_binary_expression(), octave::tree_walker::visit_binary_expression(), octave::tree_print_code::visit_colon_expression(), octave::tree_walker::visit_colon_expression(), octave::tree_checker::visit_complex_for_command(), octave::tree_print_code::visit_complex_for_command(), octave::tree_walker::visit_complex_for_command(), octave::tree_print_code::visit_decl_elt(), octave::tree_walker::visit_decl_elt(), octave::tree_print_code::visit_do_until_command(), octave::tree_walker::visit_do_until_command(), octave::tree_print_code::visit_if_clause(), octave::tree_walker::visit_if_clause(), octave::tree_print_code::visit_index_expression(), octave::tree_walker::visit_index_expression(), octave::ctor_analyzer::visit_index_expression(), octave::tree_checker::visit_multi_assignment(), octave::tree_print_code::visit_multi_assignment(), octave::tree_walker::visit_multi_assignment(), octave::ctor_analyzer::visit_multi_assignment(), octave::tree_print_code::visit_postfix_expression(), octave::tree_walker::visit_postfix_expression(), octave::tree_print_code::visit_prefix_expression(), octave::tree_walker::visit_prefix_expression(), octave::tree_checker::visit_simple_assignment(), octave::tree_print_code::visit_simple_assignment(), octave::tree_walker::visit_simple_assignment(), octave::ctor_analyzer::visit_simple_assignment(), octave::tree_checker::visit_simple_for_command(), octave::tree_print_code::visit_simple_for_command(), octave::tree_walker::visit_simple_for_command(), octave::tree_anon_scopes::visit_statement(), octave::tree_breakpoint::visit_statement(), octave::tree_evaluator::visit_statement(), octave::tree_print_code::visit_statement(), octave::tree_walker::visit_statement(), octave::ctor_analyzer::visit_statement(), octave::tree_print_code::visit_switch_case(), octave::tree_walker::visit_switch_case(), octave::tree_print_code::visit_switch_command(), octave::tree_walker::visit_switch_command(), octave::tree_print_code::visit_while_command(), and octave::tree_walker::visit_while_command().
|
inline |
Definition at line 106 of file pt.h.
References m_bp_cond.
Referenced by octave::tree_statement::bp_cond(), and octave::tree_breakpoint::take_action().
|
inline |
Definition at line 66 of file pt.h.
References m_column_num.
|
inlinevirtual |
Reimplemented in octave::tree_statement.
Definition at line 62 of file pt.h.
References m_column_num.
Referenced by octave::tree_statement::column(), octave::tree_binary_expression::dup(), octave::tree_boolean_expression::dup(), octave::tree_cell::dup(), octave::tree_superclass_ref::dup(), octave::tree_metaclass_query::dup(), octave::tree_colon_expression::dup(), octave::tree_constant::dup(), octave::tree_fcn_handle::dup(), octave::tree_anon_fcn_handle::dup(), octave::tree_identifier::dup(), octave::tree_index_expression::dup(), octave::tree_matrix::dup(), octave::tree_prefix_expression::dup(), octave::tree_postfix_expression::dup(), octave::anon_fcn_validator::error(), octave::tree_identifier::eval_undefined_error(), octave::base_parser::finish_if_command(), octave::base_parser::finish_switch_command(), octave::base_parser::make_colon_expression(), octave::base_parser::make_fcn_name(), octave::base_parser::make_index_expression(), octave::base_parser::make_indirect_ref(), octave::base_parser::maybe_warn_assign_as_truth_value(), octave::base_parser::maybe_warn_variable_switch_label(), octave::tree_evaluator::visit_do_until_command(), octave::tree_evaluator::visit_simple_for_command(), and octave::tree_evaluator::visit_switch_command().
|
inlinevirtual |
Reimplemented in octave::tree_statement.
Definition at line 82 of file pt.h.
References m_bp_cond.
Referenced by octave::tree_statement::delete_breakpoint(), and octave::tree_breakpoint::take_action().
|
inline |
Definition at line 99 of file pt.h.
References m_bp_cond, and meets_bp_condition().
Referenced by octave::tree_statement::is_active_breakpoint(), octave::tree_evaluator::visit_break_command(), octave::tree_evaluator::visit_complex_for_command(), octave::tree_evaluator::visit_continue_command(), octave::tree_evaluator::visit_decl_command(), octave::tree_evaluator::visit_do_until_command(), octave::tree_evaluator::visit_no_op_command(), octave::tree_evaluator::visit_return_command(), octave::tree_evaluator::visit_simple_for_command(), octave::tree_evaluator::visit_statement(), octave::tree_evaluator::visit_switch_command(), and octave::tree_evaluator::visit_while_command().
|
inline |
Definition at line 94 of file pt.h.
References m_bp_cond.
Referenced by octave::tree_statement::is_breakpoint(), and octave::tree_breakpoint::take_action().
|
inline |
Definition at line 64 of file pt.h.
References m_line_num.
|
inlinevirtual |
Reimplemented in octave::tree_statement.
Definition at line 60 of file pt.h.
References m_line_num.
Referenced by octave::anon_fcn_validator::error(), octave::tree_identifier::eval_undefined_error(), octave::base_parser::finish_if_command(), octave::base_parser::finish_switch_command(), octave::tree_statement::line(), octave::base_parser::make_colon_expression(), octave::base_parser::make_fcn_name(), octave::base_parser::make_index_expression(), octave::base_parser::make_indirect_ref(), octave::base_parser::maybe_warn_assign_as_truth_value(), octave::base_parser::maybe_warn_variable_switch_label(), octave::tree_breakpoint::take_action(), octave::tree_checker::visit_argument_list(), octave::tree_breakpoint::visit_break_command(), octave::tree_evaluator::visit_break_command(), octave::tree_breakpoint::visit_complex_for_command(), octave::tree_checker::visit_complex_for_command(), octave::tree_evaluator::visit_complex_for_command(), octave::tree_breakpoint::visit_continue_command(), octave::tree_evaluator::visit_continue_command(), octave::tree_breakpoint::visit_decl_command(), octave::tree_evaluator::visit_decl_command(), octave::tree_breakpoint::visit_do_until_command(), octave::tree_evaluator::visit_do_until_command(), octave::tree_evaluator::visit_if_command(), octave::tree_breakpoint::visit_no_op_command(), octave::tree_evaluator::visit_no_op_command(), octave::tree_breakpoint::visit_return_command(), octave::tree_evaluator::visit_return_command(), octave::tree_checker::visit_simple_assignment(), octave::tree_breakpoint::visit_simple_for_command(), octave::tree_checker::visit_simple_for_command(), octave::tree_evaluator::visit_simple_for_command(), octave::tree_breakpoint::visit_switch_command(), octave::tree_evaluator::visit_switch_command(), octave::tree_checker::visit_try_catch_command(), octave::tree_evaluator::visit_try_catch_command(), octave::tree_evaluator::visit_unwind_protect_command(), octave::tree_breakpoint::visit_while_command(), and octave::tree_evaluator::visit_while_command().
bool octave::tree::meets_bp_condition | ( | tree_evaluator & | tw | ) | const |
Definition at line 62 of file pt.cc.
References octave::tree_evaluator::eval_string(), octave::tree_evaluator::get_interpreter(), interpreter_try(), m_bp_cond, octave::interpreter::recover_from_exception(), retval, and warning().
Referenced by is_active_breakpoint().
|
inlinevirtual |
Reimplemented in octave::tree_statement.
Definition at line 74 of file pt.h.
References m_bp_cond.
Referenced by octave::tree_statement::set_breakpoint(), and octave::tree_breakpoint::take_action().
|
inline |
Definition at line 68 of file pt.h.
References m_column_num, and m_line_num.
Referenced by octave::base_parser::finish_array_list(), and octave::tree_statement::set_location().
std::string octave::tree::str_print_code | ( | void | ) |
Definition at line 46 of file pt.cc.
References accept(), and retval.
Referenced by octave::jit_info::compile(), and octave::tree_argument_list::get_arg_names().
|
private |
Definition at line 123 of file pt.h.
Referenced by bp_cond(), delete_breakpoint(), is_active_breakpoint(), is_breakpoint(), meets_bp_condition(), and set_breakpoint().
|
private |
Definition at line 120 of file pt.h.
Referenced by column(), and set_location().
|
private |
Definition at line 119 of file pt.h.
Referenced by line(), and set_location().