GNU Octave  8.1.0
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
tree_matrix Class Reference

#include "pt-mat.h"

Inheritance diagram for tree_matrix:
Collaboration diagram for tree_matrix:

Public Types

typedef base_list< tree_argument_list * >::const_iterator const_iterator
 
typedef std::list< tree_argument_list * >::const_reverse_iterator const_reverse_iterator
 
typedef base_list< tree_argument_list * >::iterator iterator
 
typedef std::list< tree_argument_list * >::reverse_iterator reverse_iterator
 

Public Member Functions

 tree_matrix (const tree_matrix &)=delete
 
 tree_matrix (tree_argument_list *row=nullptr, int l=-1, int c=-1)
 
 ~tree_matrix (void)=default
 
void accept (tree_walker &tw)
 
bool all_elements_are_constant (void) const
 
void append (const tree_argument_list * &s)
 
tree_argument_list * & back (void)
 
const tree_argument_list * & back (void) const
 
iterator begin (void)
 
const_iterator begin (void) const
 
const std::string bp_cond (void) const
 
void clear (void)
 
void column (int c)
 
virtual int column (void) const
 
void copy_base (const tree_array_list &array_list)
 
void copy_base (const tree_array_list &array_list, symbol_scope &scope)
 
virtual void copy_base (const tree_expression &e)
 
virtual void copy_base (const tree_expression &e)
 
virtual void delete_breakpoint (void)
 
tree_expressiondup (symbol_scope &scope) const
 
bool empty (void) const
 
iterator end (void)
 
const_iterator end (void) const
 
iterator erase (iterator pos)
 
octave_value evaluate (tree_evaluator &, int nargout=1)
 
octave_value_list evaluate_n (tree_evaluator &tw, int nargout=1)
 
tree_argument_list * & front (void)
 
const tree_argument_list * & front (void) const
 
bool is_active_breakpoint (tree_evaluator &tw) 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_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
 
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
 
std::size_t length (void) const
 
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_expressionmark_in_parens (void)
 
bool meets_bp_condition (tree_evaluator &tw) const
 
virtual std::string name (void) const
 
virtual std::string oper (void) const
 
tree_matrixoperator= (const tree_matrix &)=delete
 
virtual std::string original_text (void) const
 
int paren_count (void) const
 
void pop_back (void)
 
void pop_front (void)
 
char postfix_index (void) const
 
bool print_result (void) const
 
void push_back (const tree_argument_list * &s)
 
void push_front (const tree_argument_list * &s)
 
reverse_iterator rbegin (void)
 
const_reverse_iterator rbegin (void) const
 
void remove_if (P pred)
 
reverse_iterator rend (void)
 
const_reverse_iterator rend (void) const
 
bool rvalue_ok (void) const
 
virtual void set_breakpoint (const std::string &condition)
 
void set_location (int l, int c)
 
tree_expressionset_postfix_index (char type)
 
tree_expressionset_print_flag (bool print)
 
std::size_t size (void) const
 
std::string str_print_code (void)
 

Protected Attributes

bool m_for_cmd_expr
 
std::list< tree_argument_list * > m_lst
 
int m_num_parens
 
char m_postfix_index_type
 
bool m_print_flag
 

Private Attributes

std::string * m_bp_cond
 
int m_column_num
 
int m_line_num
 

Detailed Description

Definition at line 49 of file pt-mat.h.

Member Typedef Documentation

◆ const_iterator

◆ const_reverse_iterator

Definition at line 48 of file base-list.h.

◆ iterator

Definition at line 47 of file pt-array-list.h.

◆ reverse_iterator

Definition at line 46 of file base-list.h.

Constructor & Destructor Documentation

◆ tree_matrix() [1/2]

tree_matrix::tree_matrix ( tree_argument_list row = nullptr,
int  l = -1,
int  c = -1 
)
inline

Definition at line 53 of file pt-mat.h.

Referenced by dup().

◆ tree_matrix() [2/2]

tree_matrix::tree_matrix ( const tree_matrix )
delete

◆ ~tree_matrix()

tree_matrix::~tree_matrix ( void  )
default

Member Function Documentation

◆ accept()

void tree_matrix::accept ( tree_walker tw)
inlinevirtual

Reimplemented from tree_array_list.

Definition at line 78 of file pt-mat.h.

References tree_walker::visit_matrix().

◆ all_elements_are_constant()

bool tree_array_list::all_elements_are_constant ( void  ) const
inherited

◆ append()

void base_list< tree_argument_list * >::append ( const elt_type &  s)
inlineinherited

Definition at line 92 of file base-list.h.

◆ back() [1/2]

tree_argument_list * & base_list< tree_argument_list * >::back ( void  )
inlineinherited

Definition at line 80 of file base-list.h.

◆ back() [2/2]

const tree_argument_list * & base_list< tree_argument_list * >::back ( void  ) const
inlineinherited

Definition at line 83 of file base-list.h.

◆ begin() [1/2]

iterator base_list< tree_argument_list * >::begin ( void  )
inlineinherited

Definition at line 65 of file base-list.h.

◆ begin() [2/2]

const_iterator base_list< tree_argument_list * >::begin ( void  ) const
inlineinherited

Definition at line 66 of file base-list.h.

◆ bp_cond()

const std::string tree::bp_cond ( void  ) const
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().

◆ clear()

void base_list< tree_argument_list * >::clear ( void  )
inlineinherited

Definition at line 63 of file base-list.h.

◆ column() [1/2]

void tree::column ( int  c)
inlineinherited

Definition at line 66 of file pt.h.

References tree::m_column_num.

◆ column() [2/2]

◆ copy_base() [1/4]

void tree_array_list::copy_base ( const tree_array_list array_list)
inherited

Definition at line 62 of file pt-array-list.cc.

References tree_expression::copy_base().

Referenced by tree_cell::dup(), and dup().

◆ copy_base() [2/4]

void tree_array_list::copy_base ( const tree_array_list array_list,
symbol_scope scope 
)
inherited

◆ copy_base() [3/4]

virtual void tree_expression::copy_base
inlineinherited

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

Referenced by tree_array_list::copy_base().

◆ copy_base() [4/4]

◆ delete_breakpoint()

virtual void tree::delete_breakpoint ( void  )
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().

◆ dup()

tree_expression * tree_matrix::dup ( symbol_scope scope) const
virtual

Reimplemented from tree_array_list.

Definition at line 135 of file pt-mat.cc.

References tree_matrix(), tree::column(), tree_array_list::copy_base(), and tree::line().

◆ empty()

bool base_list< tree_argument_list * >::empty ( void  ) const
inlineinherited

Definition at line 50 of file base-list.h.

◆ end() [1/2]

iterator base_list< tree_argument_list * >::end ( void  )
inlineinherited

Definition at line 68 of file base-list.h.

◆ end() [2/2]

const_iterator base_list< tree_argument_list * >::end ( void  ) const
inlineinherited

Definition at line 69 of file base-list.h.

◆ erase()

iterator base_list< tree_argument_list * >::erase ( iterator  pos)
inlineinherited

Definition at line 55 of file base-list.h.

◆ evaluate()

octave_value tree_matrix::evaluate ( tree_evaluator tw,
int  nargout = 1 
)
virtual

Implements tree_expression.

Definition at line 48 of file pt-mat.cc.

References tm_const::concat(), and tree_evaluator::string_fill_char().

Referenced by evaluate_n().

◆ evaluate_n()

octave_value_list tree_matrix::evaluate_n ( tree_evaluator tw,
int  nargout = 1 
)
inlinevirtual

Implements tree_expression.

Definition at line 73 of file pt-mat.h.

References evaluate(), and ovl().

◆ front() [1/2]

tree_argument_list * & base_list< tree_argument_list * >::front ( void  )
inlineinherited

Definition at line 79 of file base-list.h.

◆ front() [2/2]

const tree_argument_list * & base_list< tree_argument_list * >::front ( void  ) const
inlineinherited

Definition at line 82 of file base-list.h.

◆ is_active_breakpoint()

◆ is_assignment_expression()

virtual bool tree_expression::is_assignment_expression ( void  ) const
inlinevirtualinherited

◆ is_binary_expression()

virtual bool tree_expression::is_binary_expression ( void  ) const
inlinevirtualinherited

Reimplemented in tree_binary_expression.

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

Referenced by base_parser::maybe_convert_to_braindead_shortcircuit().

◆ is_boolean_expression()

virtual bool tree_expression::is_boolean_expression ( void  ) const
inlinevirtualinherited

Reimplemented in tree_boolean_expression.

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

◆ is_breakpoint()

bool tree::is_breakpoint ( void  ) const
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().

◆ is_colon_expression()

virtual bool tree_expression::is_colon_expression ( void  ) const
inlinevirtualinherited

Reimplemented in tree_colon_expression.

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

◆ is_constant()

virtual bool tree_expression::is_constant ( void  ) const
inlinevirtualinherited

◆ is_for_cmd_expr()

bool tree_expression::is_for_cmd_expr ( void  ) const
inlineinherited

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

References tree_expression::m_for_cmd_expr.

Referenced by tree_colon_expression::evaluate().

◆ is_identifier()

◆ is_index_expression()

virtual bool tree_expression::is_index_expression ( void  ) const
inlinevirtualinherited

◆ is_matrix()

bool tree_matrix::is_matrix ( void  ) const
inlinevirtual

Reimplemented from tree_expression.

Definition at line 65 of file pt-mat.h.

◆ is_postfix_indexed()

bool tree_expression::is_postfix_indexed ( void  ) const
inlineinherited

◆ is_prefix_expression()

virtual bool tree_expression::is_prefix_expression ( void  ) const
inlinevirtualinherited

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

◆ is_unary_expression()

virtual bool tree_expression::is_unary_expression ( void  ) const
inlinevirtualinherited

Reimplemented in tree_unary_expression.

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

Referenced by strip_trans_herm().

◆ iscell()

virtual bool tree_expression::iscell ( void  ) const
inlinevirtualinherited

Reimplemented in tree_cell.

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

◆ length()

std::size_t base_list< tree_argument_list * >::length ( void  ) const
inlineinherited

Definition at line 53 of file base-list.h.

◆ line() [1/2]

void tree::line ( int  l)
inlineinherited

Definition at line 64 of file pt.h.

References tree::m_line_num.

◆ line() [2/2]

virtual int tree::line ( void  ) const
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(), 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().

◆ lvalue()

◆ lvalue_ok()

virtual bool tree_expression::lvalue_ok ( void  ) const
inlinevirtualinherited

◆ mark_as_for_cmd_expr()

void tree_expression::mark_as_for_cmd_expr ( void  )
inlineinherited

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

References tree_expression::m_for_cmd_expr.

Referenced by base_parser::make_for_command().

◆ mark_in_parens()

tree_expression* tree_expression::mark_in_parens ( void  )
inlineinherited

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

References tree_expression::m_num_parens.

◆ meets_bp_condition()

bool tree::meets_bp_condition ( tree_evaluator tw) const
inherited

◆ name()

◆ oper()

virtual std::string tree_expression::oper ( void  ) const
inlinevirtualinherited

◆ operator=()

tree_matrix& tree_matrix::operator= ( const tree_matrix )
delete

◆ original_text()

std::string tree_expression::original_text ( void  ) const
virtualinherited

Reimplemented in tree_constant.

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

◆ paren_count()

int tree_expression::paren_count ( void  ) const
inlineinherited

◆ pop_back()

void base_list< tree_argument_list * >::pop_back ( void  )
inlineinherited

Definition at line 89 of file base-list.h.

◆ pop_front()

void base_list< tree_argument_list * >::pop_front ( void  )
inlineinherited

Definition at line 88 of file base-list.h.

◆ postfix_index()

char tree_expression::postfix_index ( void  ) const
inlineinherited

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

References tree_expression::m_postfix_index_type.

Referenced by tree_identifier::evaluate_n().

◆ print_result()

◆ push_back()

void base_list< tree_argument_list * >::push_back ( const elt_type &  s)
inlineinherited

Definition at line 86 of file base-list.h.

◆ push_front()

void base_list< tree_argument_list * >::push_front ( const elt_type &  s)
inlineinherited

Definition at line 85 of file base-list.h.

◆ rbegin() [1/2]

reverse_iterator base_list< tree_argument_list * >::rbegin ( void  )
inlineinherited

Definition at line 71 of file base-list.h.

◆ rbegin() [2/2]

const_reverse_iterator base_list< tree_argument_list * >::rbegin ( void  ) const
inlineinherited

Definition at line 72 of file base-list.h.

◆ remove_if()

void base_list< tree_argument_list * >::remove_if ( pred)
inlineinherited

Definition at line 58 of file base-list.h.

◆ rend() [1/2]

reverse_iterator base_list< tree_argument_list * >::rend ( void  )
inlineinherited

Definition at line 75 of file base-list.h.

◆ rend() [2/2]

const_reverse_iterator base_list< tree_argument_list * >::rend ( void  ) const
inlineinherited

Definition at line 76 of file base-list.h.

◆ rvalue_ok()

bool tree_matrix::rvalue_ok ( void  ) const
inlinevirtual

Reimplemented from tree_expression.

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

◆ set_breakpoint()

virtual void tree::set_breakpoint ( const std::string &  condition)
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().

◆ set_location()

void tree::set_location ( int  l,
int  c 
)
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().

◆ set_postfix_index()

tree_expression* tree_expression::set_postfix_index ( char  type)
inlineinherited

◆ set_print_flag()

tree_expression* tree_expression::set_print_flag ( bool  print)
inlineinherited

◆ size()

std::size_t base_list< tree_argument_list * >::size ( void  ) const
inlineinherited

Definition at line 52 of file base-list.h.

◆ str_print_code()

std::string tree::str_print_code ( void  )
inherited

Definition at line 46 of file pt.cc.

References tree::accept().

Referenced by tree_argument_list::get_arg_names().

Member Data Documentation

◆ m_bp_cond

std::string* tree::m_bp_cond
privateinherited

◆ m_column_num

int tree::m_column_num
privateinherited

Definition at line 120 of file pt.h.

Referenced by tree::column(), and tree::set_location().

◆ m_for_cmd_expr

bool tree_expression::m_for_cmd_expr
protectedinherited

◆ m_line_num

int tree::m_line_num
privateinherited

Definition at line 119 of file pt.h.

Referenced by tree::line(), and tree::set_location().

◆ m_lst

std::list<tree_argument_list * > base_list< tree_argument_list * >::m_lst
protectedinherited

Definition at line 106 of file base-list.h.

◆ m_num_parens

int tree_expression::m_num_parens
protectedinherited

◆ m_postfix_index_type

char tree_expression::m_postfix_index_type
protectedinherited

◆ m_print_flag

bool tree_expression::m_print_flag
protectedinherited

The documentation for this class was generated from the following files: