#include "pt-idx.h"
Definition at line 44 of file pt-idx.h.
tree_index_expression::tree_index_expression | ( | tree_expression * | e = 0 , |
|
tree_argument_list * | lst = 0 , |
|||
int | l = -1 , |
|||
int | c = -1 , |
|||
char | t = '(' | |||
) |
tree_index_expression::tree_index_expression | ( | tree_expression * | e, | |
const std::string & | n, | |||
int | l = -1 , |
|||
int | c = -1 | |||
) |
tree_index_expression::tree_index_expression | ( | tree_expression * | e, | |
tree_expression * | df, | |||
int | l = -1 , |
|||
int | c = -1 | |||
) |
tree_index_expression::~tree_index_expression | ( | void | ) |
tree_index_expression::tree_index_expression | ( | const tree_index_expression & | ) | [private] |
void tree_index_expression::accept | ( | tree_walker & | tw | ) | [virtual] |
Implements tree.
Definition at line 684 of file pt-idx.cc.
References tree_walker::visit_index_expression().
Referenced by tree_print_code::visit_return_list(), and tree_checker::visit_return_list().
void tree_index_expression::append | ( | tree_argument_list * | lst = 0 , |
|
char | t = '(' | |||
) |
Definition at line 77 of file pt-idx.cc.
References arg_nm, args, dyn_field, error(), tree_argument_list::get_arg_names(), tree_argument_list::has_magic_tilde(), and type.
Referenced by tree_index_expression().
void tree_index_expression::append | ( | tree_expression * | df | ) |
void tree_index_expression::append | ( | const std::string & | n | ) |
std::list<tree_argument_list *> tree_index_expression::arg_lists | ( | void | ) | [inline] |
Definition at line 74 of file pt-idx.h.
Referenced by octave_fcn_binder::maybe_binder(), tree_print_code::visit_index_expression(), and tree_checker::visit_index_expression().
std::list<string_vector> tree_index_expression::arg_names | ( | void | ) | [inline] |
Definition at line 78 of file pt-idx.h.
Referenced by octave_fcn_binder::maybe_binder(), and tree_print_code::visit_index_expression().
virtual int tree::column | ( | void | ) | const [inline, virtual, inherited] |
Reimplemented in tree_colon_expression.
Definition at line 47 of file pt.h.
Referenced by tree_statement::column(), tree_colon_expression::column(), tree_postfix_expression::dup(), tree_prefix_expression::dup(), tree_switch_command::dup(), tree_if_command::dup(), tree_matrix::dup(), tree_complex_for_command::dup(), tree_simple_for_command::dup(), tree_do_until_command::dup(), tree_while_command::dup(), tree_return_command::dup(), tree_continue_command::dup(), tree_break_command::dup(), dup(), tree_identifier::dup(), tree_anon_fcn_handle::dup(), tree_fcn_handle::dup(), tree_unwind_protect_command::dup(), tree_try_catch_command::dup(), tree_static_command::dup(), tree_global_command::dup(), tree_constant::dup(), tree_function_def::dup(), tree_no_op_command::dup(), tree_cell::dup(), tree_boolean_expression::dup(), tree_binary_expression::dup(), tree_identifier::eval_undefined_error(), tree_anon_fcn_handle::rvalue1(), tree_evaluator::visit_simple_for_command(), and tree_evaluator::visit_switch_command().
virtual void tree_expression::copy_base | ( | const tree_expression & | e | ) | [inline, virtual, inherited] |
Definition at line 118 of file pt-exp.h.
References tree_expression::num_parens, tree_expression::postfix_indexed, and tree_expression::print_flag.
Referenced by tree_postfix_expression::dup(), tree_prefix_expression::dup(), tree_matrix::dup(), dup(), tree_identifier::dup(), tree_anon_fcn_handle::dup(), tree_fcn_handle::dup(), tree_constant::dup(), tree_colon_expression::dup(), tree_cell::dup(), tree_boolean_expression::dup(), tree_binary_expression::dup(), tree_multi_assignment::dup(), and tree_simple_assignment::dup().
virtual void tree::delete_breakpoint | ( | void | ) | [inline, virtual, inherited] |
Definition at line 55 of file pt.h.
Referenced by tree_statement::delete_breakpoint(), and tree_breakpoint::take_action().
tree_index_expression * tree_index_expression::dup | ( | symbol_table::scope_id | scope, | |
symbol_table::context_id | context | |||
) | const [virtual] |
Implements tree_expression.
Definition at line 640 of file pt-idx.cc.
References arg_nm, args, tree::column(), tree_expression::copy_base(), tree_argument_list::dup(), tree_expression::dup(), dyn_field, expr, tree::line(), tree_index_expression(), and type.
Referenced by tree_return_list::dup().
tree_expression* tree_index_expression::expression | ( | void | ) | [inline] |
Definition at line 72 of file pt-idx.h.
Referenced by octave_fcn_binder::maybe_binder(), tree_print_code::visit_index_expression(), and tree_checker::visit_index_expression().
std::string tree_index_expression::get_struct_index | ( | std::list< string_vector >::const_iterator | p_arg_nm, | |
std::list< tree_expression * >::const_iterator | p_dyn_field | |||
) | const [private] |
Definition at line 205 of file pt-idx.cc.
References error(), error_state, panic_impossible, tree_expression::rvalue1(), octave_value::string_value(), and valid_identifier().
Referenced by lvalue(), make_arg_struct(), and rvalue().
bool tree_index_expression::has_magic_end | ( | void | ) | const [virtual] |
Implements tree_expression.
Definition at line 126 of file pt-idx.cc.
References args, and tree_argument_list::has_magic_end().
virtual bool tree_expression::is_assignment_expression | ( | void | ) | const [inline, virtual, inherited] |
Reimplemented in tree_simple_assignment, and tree_multi_assignment.
Definition at line 61 of file pt-exp.h.
Referenced by tree_evaluator::visit_statement().
virtual bool tree_expression::is_binary_expression | ( | void | ) | const [inline, virtual, inherited] |
Reimplemented in tree_binary_expression.
virtual bool tree_expression::is_boolean_expression | ( | void | ) | const [inline, virtual, inherited] |
Reimplemented in tree_boolean_expression.
bool tree::is_breakpoint | ( | void | ) | const [inline, inherited] |
Definition at line 57 of file pt.h.
Referenced by tree_statement::is_breakpoint(), tree_breakpoint::take_action(), tree_evaluator::visit_break_command(), tree_evaluator::visit_complex_for_command(), tree_evaluator::visit_continue_command(), tree_evaluator::visit_do_until_command(), tree_evaluator::visit_global_command(), tree_evaluator::visit_if_command(), tree_evaluator::visit_if_command_list(), tree_evaluator::visit_no_op_command(), tree_evaluator::visit_return_command(), tree_evaluator::visit_simple_for_command(), tree_evaluator::visit_statement(), tree_evaluator::visit_static_command(), tree_evaluator::visit_switch_command(), and tree_evaluator::visit_while_command().
virtual bool tree_expression::is_constant | ( | void | ) | const [inline, virtual, inherited] |
Reimplemented in tree_constant.
Definition at line 53 of file pt-exp.h.
Referenced by tree_argument_list::all_elements_are_constant(), and octave_fcn_binder::maybe_binder().
virtual bool tree_expression::is_identifier | ( | void | ) | const [inline, virtual, inherited] |
Reimplemented in tree_identifier.
Definition at line 57 of file pt-exp.h.
Referenced by tree_argument_list::append(), octave_fcn_binder::maybe_binder(), rvalue(), and tree_evaluator::visit_statement().
bool tree_index_expression::is_index_expression | ( | void | ) | const [inline, virtual] |
Reimplemented from tree_expression.
Definition at line 39 of file pt-exp.cc.
References error(), error_state, octave_value::is_defined(), octave_value::is_true(), and tree_expression::rvalue1().
Referenced by tree_evaluator::visit_do_until_command(), tree_evaluator::visit_if_command_list(), and tree_evaluator::visit_while_command().
virtual bool tree_expression::is_matrix_constant | ( | void | ) | const [inline, virtual, inherited] |
bool tree_expression::is_postfix_indexed | ( | void | ) | const [inline, inherited] |
Definition at line 88 of file pt-exp.h.
Referenced by tree_identifier::rvalue().
virtual bool tree_expression::is_prefix_expression | ( | void | ) | const [inline, virtual, inherited] |
virtual bool tree_expression::is_unary_expression | ( | void | ) | const [inline, virtual, inherited] |
Reimplemented in tree_unary_expression.
Definition at line 65 of file pt-exp.h.
Referenced by strip_not(), and strip_trans_herm().
virtual int tree::line | ( | void | ) | const [inline, virtual, inherited] |
Reimplemented in tree_colon_expression.
Definition at line 45 of file pt.h.
Referenced by tree_breakpoint::do_decl_command(), tree_postfix_expression::dup(), tree_prefix_expression::dup(), tree_switch_command::dup(), tree_if_command::dup(), tree_matrix::dup(), tree_complex_for_command::dup(), tree_simple_for_command::dup(), tree_do_until_command::dup(), tree_while_command::dup(), tree_return_command::dup(), tree_continue_command::dup(), tree_break_command::dup(), dup(), tree_identifier::dup(), tree_anon_fcn_handle::dup(), tree_fcn_handle::dup(), tree_unwind_protect_command::dup(), tree_try_catch_command::dup(), tree_static_command::dup(), tree_global_command::dup(), tree_constant::dup(), tree_function_def::dup(), tree_no_op_command::dup(), tree_cell::dup(), tree_boolean_expression::dup(), tree_binary_expression::dup(), tree_identifier::eval_undefined_error(), tree_statement::line(), tree_colon_expression::line(), tree_anon_fcn_handle::rvalue1(), tree_breakpoint::take_action(), tree_checker::visit_argument_list(), tree_breakpoint::visit_break_command(), tree_checker::visit_complex_for_command(), tree_breakpoint::visit_complex_for_command(), tree_breakpoint::visit_continue_command(), tree_breakpoint::visit_do_until_command(), tree_breakpoint::visit_if_command(), tree_breakpoint::visit_if_command_list(), tree_breakpoint::visit_no_op_command(), tree_breakpoint::visit_return_command(), tree_checker::visit_simple_assignment(), tree_evaluator::visit_simple_for_command(), tree_checker::visit_simple_for_command(), tree_breakpoint::visit_simple_for_command(), tree_breakpoint::visit_switch_case_list(), tree_evaluator::visit_switch_command(), tree_breakpoint::visit_switch_command(), and tree_breakpoint::visit_while_command().
octave_lvalue tree_index_expression::lvalue | ( | void | ) | [virtual] |
Reimplemented from tree_expression.
Definition at line 434 of file pt-idx.cc.
References arg_nm, args, dyn_field, error(), error_state, expr, get_struct_index(), gripe_indexed_cs_list(), gripe_invalid_inquiry_subscript(), octave_value_list::has_magic_colon(), octave_value::is_cell(), octave_value::is_matrix_type(), octave_value::is_string(), octave_value::is_undefined(), octave_value::is_zero_by_zero(), tree_expression::lvalue(), make_value_list(), octave_value::numel(), octave_lvalue::numel(), octave_lvalue::object(), octave_value(), panic_impossible, octave_lvalue::set_index(), octave_value::subsref(), and type.
bool tree_index_expression::lvalue_ok | ( | void | ) | const [inline, virtual] |
Reimplemented from tree_expression.
octave_map tree_index_expression::make_arg_struct | ( | void | ) | const [private] |
Definition at line 234 of file pt-idx.cc.
References arg_nm, args, octave_map::assign(), dyn_field, error_state, get_struct_index(), make_subs_cell(), panic_impossible, and type.
virtual void tree_expression::mark_braindead_shortcircuit | ( | const std::string & | ) | [inline, virtual, inherited] |
Reimplemented in tree_binary_expression.
tree_expression* tree_expression::mark_in_parens | ( | void | ) | [inline, inherited] |
tree_expression* tree_expression::mark_postfix_indexed | ( | void | ) | [inline, inherited] |
std::string tree_index_expression::name | ( | void | ) | const [virtual] |
Reimplemented from tree_expression.
Definition at line 145 of file pt-idx.cc.
References expr, and tree_expression::name().
Referenced by tree_identifier::has_magic_end().
virtual std::string tree_expression::oper | ( | void | ) | const [inline, virtual, inherited] |
Reimplemented in tree_simple_assignment, tree_multi_assignment, tree_binary_expression, tree_boolean_expression, and tree_unary_expression.
tree_index_expression& tree_index_expression::operator= | ( | const tree_index_expression & | ) | [private] |
std::string tree_expression::original_text | ( | void | ) | const [virtual, inherited] |
Reimplemented in tree_constant.
int tree_expression::paren_count | ( | void | ) | const [inline, inherited] |
Definition at line 86 of file pt-exp.h.
Referenced by tree_print_code::print_parens(), and tree_print_code::visit_index_expression().
bool tree_expression::print_result | ( | void | ) | const [inline, inherited] |
Definition at line 90 of file pt-exp.h.
Referenced by tree_statement::print_result(), tree_identifier::rvalue(), tree_multi_assignment::rvalue(), tree_simple_assignment::rvalue1(), and tree_evaluator::visit_statement().
octave_value_list tree_index_expression::rvalue | ( | int | nargout, | |
const std::list< octave_lvalue > * | lvalue_list | |||
) | [virtual] |
Reimplemented from tree_expression.
Definition at line 288 of file pt-idx.cc.
References arg_nm, args, dyn_field, error_state, expr, get_struct_index(), gripe_indexed_cs_list(), tree_argument_list::has_magic_end(), octave_value::is_cs_list(), tree_expression::is_identifier(), octave_value::is_undefined(), tree_identifier::is_variable(), octave_value_list::length(), octave_base_list< elt_type >::length(), make_value_list(), octave_value(), panic_impossible, tree_expression::rvalue1(), octave_value_list::stash_name_tags(), octave_value::subsref(), and type.
octave_value_list tree_index_expression::rvalue | ( | int | nargout | ) | [virtual] |
Reimplemented from tree_expression.
Definition at line 282 of file pt-idx.cc.
Referenced by rvalue1().
octave_value tree_index_expression::rvalue1 | ( | int | nargout = 1 |
) | [virtual] |
Reimplemented from tree_expression.
Definition at line 421 of file pt-idx.cc.
References octave_value_list::empty(), and rvalue().
bool tree_index_expression::rvalue_ok | ( | void | ) | const [inline, virtual] |
Reimplemented from tree_expression.
virtual void tree::set_breakpoint | ( | void | ) | [inline, virtual, inherited] |
Definition at line 53 of file pt.h.
Referenced by tree_statement::set_breakpoint(), and tree_breakpoint::take_action().
tree_expression* tree_expression::set_print_flag | ( | bool | ) | [inline, inherited] |
Definition at line 112 of file pt-exp.h.
Referenced by tree_statement::set_print_flag(), and tree_evaluator::visit_statement().
std::string tree::str_print_code | ( | void | ) | [inherited] |
Definition at line 39 of file pt.cc.
References tree::accept().
Referenced by tree_argument_list::get_arg_names().
std::string tree_index_expression::type_tags | ( | void | ) | [inline] |
Definition at line 76 of file pt-idx.h.
References octave_lvalue::type.
Referenced by octave_fcn_binder::maybe_binder(), and tree_print_code::visit_index_expression().
std::list<string_vector> tree_index_expression::arg_nm [private] |
std::list<tree_argument_list *> tree_index_expression::args [private] |
Definition at line 103 of file pt-idx.h.
Referenced by append(), tree_identifier::do_lookup(), dup(), has_magic_end(), lvalue(), make_arg_struct(), rvalue(), and ~tree_index_expression().
std::list<tree_expression *> tree_index_expression::dyn_field [private] |
Definition at line 113 of file pt-idx.h.
Referenced by append(), dup(), lvalue(), make_arg_struct(), rvalue(), and ~tree_index_expression().
tree_expression* tree_index_expression::expr [private] |
int tree_expression::num_parens [protected, inherited] |
Definition at line 133 of file pt-exp.h.
Referenced by tree_expression::copy_base().
bool tree_expression::postfix_indexed [protected, inherited] |
Definition at line 137 of file pt-exp.h.
Referenced by tree_expression::copy_base().
bool tree_expression::print_flag [protected, inherited] |
Definition at line 140 of file pt-exp.h.
Referenced by tree_expression::copy_base().
std::string tree_index_expression::type [private] |