Public Member Functions | Protected Attributes | Private Member Functions | Private Attributes

tree_index_expression Class Reference

#include "pt-idx.h"

Inheritance diagram for tree_index_expression:
Inheritance graph
[legend]
Collaboration diagram for tree_index_expression:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 tree_index_expression (tree_expression *e=0, tree_argument_list *lst=0, int l=-1, int c=-1, char t= '(')
 tree_index_expression (tree_expression *e, const std::string &n, int l=-1, int c=-1)
 tree_index_expression (tree_expression *e, tree_expression *df, int l=-1, int c=-1)
 ~tree_index_expression (void)
void accept (tree_walker &tw)
void append (tree_expression *df)
void append (tree_argument_list *lst=0, char t= '(')
void append (const std::string &n)
std::list< tree_argument_list * > arg_lists (void)
std::list< string_vectorarg_names (void)
virtual int column (void) const
void column (int c)
virtual void copy_base (const tree_expression &e)
virtual void delete_breakpoint (void)
tree_index_expressiondup (symbol_table::scope_id scope, symbol_table::context_id context) const
tree_expressionexpression (void)
bool has_magic_end (void) const
virtual bool is_assignment_expression (void) const
virtual bool is_binary_expression (void) const
virtual bool is_boolean_expression (void) const
bool is_breakpoint (void) const
virtual bool is_constant (void) const
virtual bool is_identifier (void) const
bool is_index_expression (void) const
virtual bool is_logically_true (const char *)
virtual bool is_matrix_constant (void) const
bool is_postfix_indexed (void) const
virtual bool is_prefix_expression (void) const
virtual bool is_unary_expression (void) const
void line (int l)
virtual int line (void) const
octave_lvalue lvalue (void)
bool lvalue_ok (void) const
virtual void mark_braindead_shortcircuit (const std::string &)
tree_expressionmark_in_parens (void)
tree_expressionmark_postfix_indexed (void)
std::string name (void) const
virtual std::string oper (void) const
virtual std::string original_text (void) const
int paren_count (void) const
bool print_result (void) const
octave_value_list rvalue (int nargout, const std::list< octave_lvalue > *lvalue_list)
octave_value_list rvalue (int nargout)
octave_value rvalue1 (int nargout=1)
bool rvalue_ok (void) const
virtual void set_breakpoint (void)
tree_expressionset_print_flag (bool print)
std::string str_print_code (void)
std::string type_tags (void)

Protected Attributes

int num_parens
bool postfix_indexed
bool print_flag

Private Member Functions

 tree_index_expression (int l, int c)
 tree_index_expression (const tree_index_expression &)
std::string get_struct_index (std::list< string_vector >::const_iterator p_arg_nm, std::list< tree_expression * >::const_iterator p_dyn_field) const
octave_map make_arg_struct (void) const
tree_index_expressionoperator= (const tree_index_expression &)

Private Attributes

std::list< string_vectorarg_nm
std::list< tree_argument_list * > args
std::list< tree_expression * > dyn_field
tree_expressionexpr
std::string type

Detailed Description

Definition at line 44 of file pt-idx.h.


Constructor & Destructor Documentation

tree_index_expression::tree_index_expression ( tree_expression e = 0,
tree_argument_list lst = 0,
int  l = -1,
int  c = -1,
char  t = '(' 
)

Definition at line 49 of file pt-idx.cc.

References append().

Referenced by dup().

tree_index_expression::tree_index_expression ( tree_expression e,
const std::string &  n,
int  l = -1,
int  c = -1 
)

Definition at line 58 of file pt-idx.cc.

References append().

tree_index_expression::tree_index_expression ( tree_expression e,
tree_expression df,
int  l = -1,
int  c = -1 
)

Definition at line 67 of file pt-idx.cc.

References append().

tree_index_expression::~tree_index_expression ( void   ) 

Definition at line 106 of file pt-idx.cc.

References args, dyn_field, and expr.

tree_index_expression::tree_index_expression ( int  l,
int  c 
) [private]

Definition at line 45 of file pt-idx.cc.

tree_index_expression::tree_index_expression ( const tree_index_expression  )  [private]

Member Function Documentation

void tree_index_expression::accept ( tree_walker tw  )  [virtual]
void tree_index_expression::append ( tree_argument_list lst = 0,
char  t = '(' 
)
void tree_index_expression::append ( tree_expression df  ) 

Definition at line 98 of file pt-idx.cc.

References arg_nm, args, dyn_field, and type.

void tree_index_expression::append ( const std::string &  n  ) 

Definition at line 89 of file pt-idx.cc.

References arg_nm, args, dyn_field, and type.

std::list<tree_argument_list *> tree_index_expression::arg_lists ( void   )  [inline]
std::list<string_vector> tree_index_expression::arg_names ( void   )  [inline]
virtual int tree::column ( void   )  const [inline, virtual, inherited]
void tree::column ( int  c  )  [inline, inherited]

Definition at line 51 of file pt.h.

virtual void tree_expression::copy_base ( const tree_expression e  )  [inline, virtual, inherited]
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]
tree_expression* tree_index_expression::expression ( void   )  [inline]
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]
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.

Definition at line 67 of file pt-exp.h.

virtual bool tree_expression::is_boolean_expression ( void   )  const [inline, virtual, inherited]

Reimplemented in tree_boolean_expression.

Definition at line 69 of file pt-exp.h.

bool tree::is_breakpoint ( void   )  const [inline, inherited]
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]
bool tree_index_expression::is_index_expression ( void   )  const [inline, virtual]

Reimplemented from tree_expression.

Definition at line 68 of file pt-idx.h.

bool tree_expression::is_logically_true ( const char warn_for  )  [virtual, inherited]
virtual bool tree_expression::is_matrix_constant ( void   )  const [inline, virtual, inherited]

Definition at line 55 of file pt-exp.h.

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]

Definition at line 63 of file pt-exp.h.

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().

void tree::line ( int  l  )  [inline, inherited]

Definition at line 49 of file pt.h.

octave_lvalue tree_index_expression::lvalue ( void   )  [virtual]
bool tree_index_expression::lvalue_ok ( void   )  const [inline, virtual]

Reimplemented from tree_expression.

Definition at line 80 of file pt-idx.h.

octave_map tree_index_expression::make_arg_struct ( void   )  const [private]
virtual void tree_expression::mark_braindead_shortcircuit ( const std::string &   )  [inline, virtual, inherited]

Reimplemented in tree_binary_expression.

Definition at line 98 of file pt-exp.h.

tree_expression* tree_expression::mark_in_parens ( void   )  [inline, inherited]

Definition at line 100 of file pt-exp.h.

tree_expression* tree_expression::mark_postfix_indexed ( void   )  [inline, inherited]

Definition at line 106 of file pt-exp.h.

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]
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.

Definition at line 85 of file pt-exp.cc.

int tree_expression::paren_count ( void   )  const [inline, inherited]
bool tree_expression::print_result ( void   )  const [inline, inherited]
octave_value_list tree_index_expression::rvalue ( int  nargout,
const std::list< octave_lvalue > *  lvalue_list 
) [virtual]
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.

Definition at line 82 of file pt-idx.h.

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  print  )  [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]

Member Data Documentation

Definition at line 110 of file pt-idx.h.

Referenced by append(), dup(), lvalue(), make_arg_struct(), and rvalue().

Definition at line 113 of file pt-idx.h.

Referenced by append(), dup(), lvalue(), make_arg_struct(), rvalue(), and ~tree_index_expression().

Definition at line 100 of file pt-idx.h.

Referenced by dup(), lvalue(), name(), rvalue(), and ~tree_index_expression().

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]

Definition at line 106 of file pt-idx.h.

Referenced by append(), dup(), lvalue(), make_arg_struct(), and rvalue().


The documentation for this class was generated from the following files:
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Defines