#include "pt-cbinop.h"
Public Member Functions | |
tree_compound_binary_expression (tree_expression *a, tree_expression *b, int l, int c, octave_value::binary_op t, tree_expression *ca, tree_expression *cb, octave_value::compound_binary_op ct) | |
void | accept (tree_walker &tw) |
const std::string | bp_cond (void) const |
tree_expression * | clhs (void) |
void | column (int c) |
virtual int | column (void) const |
octave_value::compound_binary_op | cop_type (void) const |
virtual void | copy_base (const tree_expression &e) |
tree_expression * | crhs (void) |
virtual void | delete_breakpoint (void) |
tree_expression * | dup (symbol_scope &scope) const |
octave_value | evaluate (tree_evaluator &, int nargout=1) |
octave_value_list | evaluate_n (tree_evaluator &tw, int nargout=1) |
bool | is_active_breakpoint (tree_evaluator &tw) const |
virtual bool | is_assignment_expression (void) const |
bool | is_binary_expression (void) const |
virtual bool | is_boolean_expression (void) const |
bool | is_breakpoint (void) const |
virtual bool | is_colon_expression (void) const |
virtual bool | is_constant (void) const |
bool | is_for_cmd_expr (void) const |
virtual bool | is_identifier (void) const |
virtual bool | is_index_expression (void) const |
virtual bool | is_matrix (void) const |
bool | is_postfix_indexed (void) const |
virtual bool | is_prefix_expression (void) const |
virtual bool | is_unary_expression (void) const |
virtual bool | iscell (void) const |
void | lhs (tree_expression *expr) |
tree_expression * | lhs (void) |
void | line (int l) |
virtual int | line (void) const |
virtual octave_lvalue | lvalue (tree_evaluator &) |
virtual bool | lvalue_ok (void) const |
void | mark_as_for_cmd_expr (void) |
tree_expression * | mark_in_parens (void) |
void | matlab_style_short_circuit_warning (const char *op) |
bool | meets_bp_condition (tree_evaluator &tw) const |
virtual std::string | name (void) const |
octave_value::binary_op | op_type (void) const |
std::string | oper (void) const |
virtual std::string | original_text (void) const |
int | paren_count (void) const |
char | postfix_index (void) const |
void | preserve_operands (void) |
bool | print_result (void) const |
std::string | profiler_name (void) const |
void | rhs (tree_expression *expr) |
tree_expression * | rhs (void) |
bool | rvalue_ok (void) const |
virtual void | set_breakpoint (const std::string &condition) |
void | set_location (int l, int c) |
tree_expression * | set_postfix_index (char type) |
tree_expression * | set_print_flag (bool print) |
std::string | str_print_code (void) |
Protected Attributes | |
bool | m_for_cmd_expr |
int | m_num_parens |
char | m_postfix_index_type |
bool | m_print_flag |
Private Member Functions | |
tree_compound_binary_expression (const tree_compound_binary_expression &)=delete | |
tree_compound_binary_expression & | operator= (const tree_compound_binary_expression &)=delete |
Private Attributes | |
std::string * | m_bp_cond |
int | m_column_num |
octave_value::compound_binary_op | m_etype |
tree_expression * | m_lhs |
int | m_line_num |
bool | m_preserve_operands |
tree_expression * | m_rhs |
Definition at line 44 of file pt-cbinop.h.
|
inline |
Definition at line 48 of file pt-cbinop.h.
|
privatedelete |
|
inlinevirtual |
Reimplemented from tree_binary_expression.
Definition at line 71 of file pt-cbinop.h.
References tree_walker::visit_compound_binary_expression().
|
inlineinherited |
Definition at line 106 of file pt.h.
References tree::m_bp_cond.
Referenced by tree_statement::bp_cond(), and tree_breakpoint::take_action().
|
inline |
Definition at line 61 of file pt-cbinop.h.
|
inlineinherited |
Definition at line 66 of file pt.h.
References tree::m_column_num.
|
inlinevirtualinherited |
Reimplemented in tree_statement.
Definition at line 62 of file pt.h.
References tree::m_column_num.
Referenced by tree_statement::column(), tree_binary_expression::dup(), tree_braindead_shortcircuit_binary_expression::dup(), tree_boolean_expression::dup(), tree_cell::dup(), tree_superclass_ref::dup(), tree_metaclass_query::dup(), tree_colon_expression::dup(), tree_constant::dup(), tree_fcn_handle::dup(), tree_anon_fcn_handle::dup(), tree_identifier::dup(), tree_index_expression::dup(), tree_matrix::dup(), tree_prefix_expression::dup(), tree_postfix_expression::dup(), anon_fcn_validator::error(), tree_identifier::eval_undefined_error(), base_parser::finish_if_command(), base_parser::finish_switch_command(), tree_evaluator::is_logically_true(), base_parser::make_colon_expression(), base_parser::make_fcn_name(), base_parser::make_index_expression(), base_parser::make_indirect_ref(), base_parser::maybe_convert_to_braindead_shortcircuit(), base_parser::maybe_warn_assign_as_truth_value(), base_parser::maybe_warn_variable_switch_label(), parse_tree_validator::visit_index_expression(), tree_evaluator::visit_simple_for_command(), and tree_evaluator::visit_switch_command().
|
inline |
Definition at line 57 of file pt-cbinop.h.
|
inlinevirtualinherited |
Definition at line 132 of file pt-exp.h.
References tree_expression::m_num_parens, tree_expression::m_postfix_index_type, and tree_expression::m_print_flag.
Referenced by tree_array_list::copy_base(), tree_simple_assignment::dup(), tree_binary_expression::dup(), tree_braindead_shortcircuit_binary_expression::dup(), tree_boolean_expression::dup(), tree_superclass_ref::dup(), tree_metaclass_query::dup(), tree_colon_expression::dup(), tree_constant::dup(), tree_fcn_handle::dup(), tree_anon_fcn_handle::dup(), tree_identifier::dup(), tree_index_expression::dup(), tree_prefix_expression::dup(), and tree_postfix_expression::dup().
|
inline |
Definition at line 62 of file pt-cbinop.h.
|
inlinevirtualinherited |
Reimplemented in tree_statement.
Definition at line 82 of file pt.h.
References tree::m_bp_cond.
Referenced by tree_statement::delete_breakpoint(), and tree_breakpoint::take_action().
|
virtualinherited |
Implements tree_expression.
Reimplemented in tree_boolean_expression, and tree_braindead_shortcircuit_binary_expression.
Definition at line 57 of file pt-binop.cc.
References tree_binary_expression::tree_binary_expression(), tree::column(), tree_expression::copy_base(), tree_expression::dup(), tree::line(), tree_binary_expression::m_etype, tree_binary_expression::m_lhs, and tree_binary_expression::m_rhs.
|
virtual |
Reimplemented from tree_binary_expression.
Definition at line 39 of file pt-cbinop.cc.
References binary_op(), tree_expression::evaluate(), tree_evaluator::get_interpreter(), interpreter::get_type_info(), octave_value::is_defined(), m_etype, m_lhs, and m_rhs.
|
inlinevirtual |
Reimplemented from tree_binary_expression.
Definition at line 66 of file pt-cbinop.h.
References ovl().
|
inlineinherited |
Definition at line 99 of file pt.h.
References tree::m_bp_cond, and tree::meets_bp_condition().
Referenced by tree_statement::is_active_breakpoint(), tree_evaluator::visit_break_command(), tree_evaluator::visit_complex_for_command(), tree_evaluator::visit_continue_command(), tree_evaluator::visit_decl_command(), tree_evaluator::visit_do_until_command(), tree_evaluator::visit_no_op_command(), tree_evaluator::visit_return_command(), tree_evaluator::visit_simple_for_command(), tree_evaluator::visit_statement(), tree_evaluator::visit_switch_command(), and tree_evaluator::visit_while_command().
|
inlinevirtualinherited |
Reimplemented in tree_multi_assignment, and tree_simple_assignment.
Definition at line 74 of file pt-exp.h.
Referenced by bp_table::condition_valid(), tree_evaluator::eval_string(), base_parser::maybe_warn_assign_as_truth_value(), and tree_evaluator::visit_statement().
|
inlinevirtualinherited |
Reimplemented from tree_expression.
Definition at line 82 of file pt-binop.h.
|
inlinevirtualinherited |
Reimplemented in tree_boolean_expression.
|
inlineinherited |
Definition at line 94 of file pt.h.
References tree::m_bp_cond.
Referenced by tree_statement::is_breakpoint(), and tree_breakpoint::take_action().
|
inlinevirtualinherited |
Reimplemented in tree_colon_expression.
|
inlinevirtualinherited |
Reimplemented in tree_constant.
Definition at line 64 of file pt-exp.h.
Referenced by tree_argument_list::all_elements_are_constant(), base_parser::make_colon_expression(), base_parser::maybe_warn_variable_switch_label(), and base_parser::validate_matrix_for_assignment().
|
inlineinherited |
Definition at line 112 of file pt-exp.h.
References tree_expression::m_for_cmd_expr.
Referenced by tree_colon_expression::evaluate().
|
inlinevirtualinherited |
Reimplemented in tree_identifier.
Definition at line 70 of file pt-exp.h.
Referenced by tree_argument_list::append(), compute_attribute_value(), tree_evaluator::eval_string(), tree_index_expression::evaluate_n(), tree_evaluator::is_defined(), tree_argument_list::is_valid_lvalue_list(), tree_evaluator::is_variable(), base_parser::make_assign_op(), base_parser::make_try_command(), tree_argument_list::variable_names(), and tree_evaluator::visit_statement().
|
inlinevirtualinherited |
Reimplemented in tree_index_expression.
Definition at line 72 of file pt-exp.h.
Referenced by tree_argument_list::is_valid_lvalue_list(), base_parser::make_assign_op(), base_parser::make_index_expression(), base_parser::make_indirect_ref(), and tree_argument_list::variable_names().
|
inlinevirtualinherited |
Reimplemented in tree_matrix.
Definition at line 66 of file pt-exp.h.
Referenced by base_parser::validate_array_list(), and base_parser::validate_matrix_for_assignment().
|
inlineinherited |
Definition at line 94 of file pt-exp.h.
References tree_expression::m_postfix_index_type.
Referenced by tree_superclass_ref::evaluate_n(), tree_identifier::evaluate_n(), base_parser::make_index_expression(), and base_parser::make_indirect_ref().
|
inlinevirtualinherited |
|
inlinevirtualinherited |
Reimplemented in tree_unary_expression.
Definition at line 78 of file pt-exp.h.
Referenced by strip_trans_herm().
|
inlinevirtualinherited |
|
inlineinherited |
Definition at line 93 of file pt-binop.h.
References tree_binary_expression::m_lhs.
|
inlineinherited |
Definition at line 90 of file pt-binop.h.
References tree_binary_expression::m_lhs.
Referenced by base_parser::maybe_convert_to_braindead_shortcircuit(), tree_print_code::visit_binary_expression(), and tree_walker::visit_binary_expression().
|
inlineinherited |
Definition at line 64 of file pt.h.
References tree::m_line_num.
|
inlinevirtualinherited |
Reimplemented in tree_statement.
Definition at line 60 of file pt.h.
References tree::m_line_num.
Referenced by tree_binary_expression::dup(), tree_braindead_shortcircuit_binary_expression::dup(), tree_boolean_expression::dup(), tree_cell::dup(), tree_superclass_ref::dup(), tree_metaclass_query::dup(), tree_colon_expression::dup(), tree_constant::dup(), tree_fcn_handle::dup(), tree_anon_fcn_handle::dup(), tree_identifier::dup(), tree_index_expression::dup(), tree_matrix::dup(), tree_prefix_expression::dup(), tree_postfix_expression::dup(), anon_fcn_validator::error(), tree_identifier::eval_undefined_error(), base_parser::finish_if_command(), base_parser::finish_switch_command(), tree_evaluator::is_logically_true(), tree_statement::line(), base_parser::make_colon_expression(), base_parser::make_fcn_name(), base_parser::make_index_expression(), base_parser::make_indirect_ref(), base_parser::maybe_convert_to_braindead_shortcircuit(), base_parser::maybe_warn_assign_as_truth_value(), base_parser::maybe_warn_variable_switch_label(), tree_breakpoint::take_action(), tree_checker::visit_argument_list(), tree_breakpoint::visit_break_command(), tree_evaluator::visit_break_command(), tree_breakpoint::visit_complex_for_command(), tree_checker::visit_complex_for_command(), tree_evaluator::visit_complex_for_command(), tree_breakpoint::visit_continue_command(), tree_evaluator::visit_continue_command(), tree_breakpoint::visit_decl_command(), tree_evaluator::visit_decl_command(), tree_breakpoint::visit_do_until_command(), tree_evaluator::visit_do_until_command(), tree_evaluator::visit_if_command(), parse_tree_validator::visit_index_expression(), tree_breakpoint::visit_no_op_command(), tree_evaluator::visit_no_op_command(), tree_breakpoint::visit_return_command(), tree_evaluator::visit_return_command(), tree_checker::visit_simple_assignment(), tree_breakpoint::visit_simple_for_command(), tree_checker::visit_simple_for_command(), tree_evaluator::visit_simple_for_command(), tree_breakpoint::visit_switch_command(), tree_evaluator::visit_switch_command(), tree_checker::visit_try_catch_command(), tree_evaluator::visit_try_catch_command(), tree_evaluator::visit_unwind_protect_command(), tree_breakpoint::visit_while_command(), and tree_evaluator::visit_while_command().
|
virtualinherited |
Reimplemented in tree_index_expression, tree_black_hole, and tree_identifier.
Definition at line 43 of file pt-exp.cc.
References error().
Referenced by tree_prefix_expression::evaluate(), tree_postfix_expression::evaluate(), tree_simple_assignment::evaluate(), tree_index_expression::lvalue(), tree_evaluator::visit_complex_for_command(), and tree_evaluator::visit_simple_for_command().
|
inlinevirtualinherited |
Reimplemented in tree_index_expression, and tree_identifier.
Definition at line 86 of file pt-exp.h.
Referenced by tree_index_expression::lvalue_ok(), tree_checker::visit_argument_list(), tree_checker::visit_simple_assignment(), and tree_checker::visit_simple_for_command().
|
inlineinherited |
Definition at line 110 of file pt-exp.h.
References tree_expression::m_for_cmd_expr.
Referenced by base_parser::make_for_command().
|
inlineinherited |
Definition at line 114 of file pt-exp.h.
References tree_expression::m_num_parens.
|
inherited |
Definition at line 43 of file pt-binop.cc.
References warning_with_id().
Referenced by tree_braindead_shortcircuit_binary_expression::evaluate().
|
inherited |
Definition at line 62 of file pt.cc.
References tree_evaluator::eval_string(), tree_evaluator::get_interpreter(), interpreter_try(), tree::m_bp_cond, interpreter::recover_from_exception(), and warning().
Referenced by tree::is_active_breakpoint().
|
inlinevirtualinherited |
Reimplemented in tree_index_expression, tree_black_hole, tree_identifier, and tree_fcn_handle.
Definition at line 106 of file pt-exp.h.
Referenced by compute_attribute_value(), tree_simple_assignment::evaluate(), tree_multi_assignment::evaluate_n(), tree_evaluator::final_index_error(), base_parser::make_assign_op(), base_parser::make_for_command(), and tree_index_expression::name().
|
inlineinherited |
Definition at line 88 of file pt-binop.h.
References tree_binary_expression::m_etype.
Referenced by tree_braindead_shortcircuit_binary_expression::dup(), tree_braindead_shortcircuit_binary_expression::evaluate(), and base_parser::maybe_convert_to_braindead_shortcircuit().
|
virtualinherited |
Reimplemented from tree_expression.
Reimplemented in tree_boolean_expression.
Definition at line 51 of file pt-binop.cc.
References octave_value::binary_op_as_string(), and tree_binary_expression::m_etype.
Referenced by tree_binary_expression::profiler_name(), and tree_print_code::visit_binary_expression().
|
privatedelete |
|
virtualinherited |
Reimplemented in tree_constant.
|
inlineinherited |
Definition at line 92 of file pt-exp.h.
References tree_expression::m_num_parens.
Referenced by base_parser::maybe_warn_assign_as_truth_value(), tree_print_code::print_parens(), and tree_print_code::visit_index_expression().
|
inlineinherited |
Definition at line 97 of file pt-exp.h.
References tree_expression::m_postfix_index_type.
Referenced by tree_identifier::evaluate_n().
|
inlineinherited |
Definition at line 80 of file pt-binop.h.
References tree_binary_expression::m_preserve_operands.
Referenced by base_parser::maybe_convert_to_braindead_shortcircuit().
|
inlineinherited |
Definition at line 102 of file pt-exp.h.
References tree_expression::m_print_flag.
Referenced by tree_evaluator::eval_string(), tree_simple_assignment::evaluate(), tree_multi_assignment::evaluate_n(), tree_identifier::evaluate_n(), tree_statement::print_result(), and tree_evaluator::visit_statement().
|
inlineinherited |
Definition at line 110 of file pt-binop.h.
References tree_binary_expression::oper().
|
inlineinherited |
Definition at line 94 of file pt-binop.h.
References tree_binary_expression::m_rhs.
|
inlineinherited |
Definition at line 91 of file pt-binop.h.
References tree_binary_expression::m_rhs.
Referenced by base_parser::maybe_convert_to_braindead_shortcircuit(), tree_print_code::visit_binary_expression(), and tree_walker::visit_binary_expression().
|
inlinevirtual |
Reimplemented from tree_binary_expression.
Definition at line 59 of file pt-cbinop.h.
|
inlinevirtualinherited |
Reimplemented in tree_statement.
Definition at line 74 of file pt.h.
References tree::m_bp_cond.
Referenced by tree_statement::set_breakpoint(), and tree_breakpoint::take_action().
|
inlineinherited |
Definition at line 68 of file pt.h.
References tree::m_column_num, and tree::m_line_num.
Referenced by base_parser::finish_array_list(), and tree_statement::set_location().
|
inlineinherited |
Definition at line 120 of file pt-exp.h.
References tree_expression::m_postfix_index_type.
Referenced by base_parser::make_index_expression(), and base_parser::make_indirect_ref().
|
inlineinherited |
Definition at line 126 of file pt-exp.h.
References tree_expression::m_print_flag.
Referenced by tree_evaluator::eval_string(), base_parser::make_anon_fcn_handle(), and tree_statement::set_print_flag().
|
inherited |
Definition at line 46 of file pt.cc.
References tree::accept().
Referenced by tree_argument_list::get_arg_names().
|
privateinherited |
Definition at line 123 of file pt.h.
Referenced by tree::bp_cond(), tree::delete_breakpoint(), tree::is_active_breakpoint(), tree::is_breakpoint(), tree::meets_bp_condition(), and tree::set_breakpoint().
|
privateinherited |
Definition at line 120 of file pt.h.
Referenced by tree::column(), and tree::set_location().
|
private |
Definition at line 81 of file pt-cbinop.h.
Referenced by evaluate().
|
protectedinherited |
Definition at line 161 of file pt-exp.h.
Referenced by tree_expression::is_for_cmd_expr(), and tree_expression::mark_as_for_cmd_expr().
|
private |
Definition at line 78 of file pt-cbinop.h.
Referenced by evaluate().
|
privateinherited |
Definition at line 119 of file pt.h.
Referenced by tree::line(), and tree::set_location().
|
protectedinherited |
Definition at line 152 of file pt-exp.h.
Referenced by tree_expression::copy_base(), tree_expression::mark_in_parens(), and tree_expression::paren_count().
|
protectedinherited |
Definition at line 157 of file pt-exp.h.
Referenced by tree_expression::copy_base(), tree_expression::is_postfix_indexed(), tree_expression::postfix_index(), and tree_expression::set_postfix_index().
|
privateinherited |
Definition at line 126 of file pt-binop.h.
Referenced by tree_binary_expression::~tree_binary_expression(), and tree_binary_expression::preserve_operands().
|
protectedinherited |
Definition at line 164 of file pt-exp.h.
Referenced by tree_expression::copy_base(), tree_expression::print_result(), and tree_expression::set_print_flag().
|
private |
Definition at line 79 of file pt-cbinop.h.
Referenced by evaluate().