GNU Octave  9.1.0
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
tree Class Referenceabstract

#include "pt.h"

Inheritance diagram for tree:
tree_classdef_element< tree_classdef_methods_list > tree_classdef_element< tree_classdef_property_list > tree_classdef_element< tree_classdef_enum_list > tree_classdef_element< tree_classdef_events_list > tree_classdef_element< T > tree_command tree_expression tree_if_clause tree_statement tree_switch_case

Public Member Functions

 tree (int l=-1, int c=-1)
 
virtual ~tree ()=default
 
virtual void accept (tree_walker &tw)=0
 
const std::string bp_cond () const
 
virtual int column () const
 
void column (int c)
 
virtual void delete_breakpoint ()
 
bool is_active_breakpoint (tree_evaluator &tw) const
 
bool is_breakpoint () const
 
virtual int line () const
 
void line (int l)
 
bool meets_bp_condition (tree_evaluator &tw) const
 
virtual void set_breakpoint (const std::string &condition)
 
void set_location (int l, int c)
 
std::string str_print_code ()
 

Detailed Description

Definition at line 44 of file pt.h.

Constructor & Destructor Documentation

◆ tree()

tree::tree ( int  l = -1,
int  c = -1 
)
inline

Definition at line 48 of file pt.h.

◆ ~tree()

virtual tree::~tree ( )
virtualdefault

Member Function Documentation

◆ accept()

virtual void tree::accept ( tree_walker tw)
pure virtual

Implemented in tree_postfix_expression, tree_prefix_expression, tree_statement, tree_spmd_command, tree_switch_command, tree_switch_case, tree_if_command, tree_if_clause, tree_matrix, tree_complex_for_command, tree_simple_for_command, tree_do_until_command, tree_while_command, tree_return_command, tree_continue_command, tree_break_command, tree_index_expression, tree_identifier, tree_anon_fcn_handle, tree_fcn_handle, tree_unwind_protect_command, tree_try_catch_command, tree_decl_command, tree_constant, tree_colon_expression, tree_function_def, tree_no_op_command, tree_classdef, tree_classdef_enum_block, tree_classdef_events_block, tree_classdef_methods_block, tree_classdef_properties_block, tree_metaclass_query, tree_superclass_ref, tree_cell, tree_compound_binary_expression, tree_boolean_expression, tree_binary_expression, tree_multi_assignment, tree_simple_assignment, tree_array_list, tree_arguments_block, tree_classdef_element< T >, tree_classdef_element< tree_classdef_methods_list >, tree_classdef_element< tree_classdef_property_list >, tree_classdef_element< tree_classdef_enum_list >, and tree_classdef_element< tree_classdef_events_list >.

Referenced by tree_print_code::print_fcn_handle_body(), str_print_code(), tree_anon_scopes::visit_anon_fcn_handle(), tree_walker::visit_anon_fcn_handle(), tree_walker::visit_arg_validation(), tree_print_code::visit_argument_list(), tree_walker::visit_argument_list(), tree_print_code::visit_binary_expression(), tree_walker::visit_binary_expression(), tree_walker::visit_classdef_attribute(), tree_print_code::visit_colon_expression(), tree_walker::visit_colon_expression(), tree_checker::visit_complex_for_command(), tree_print_code::visit_complex_for_command(), tree_walker::visit_complex_for_command(), tree_print_code::visit_decl_elt(), tree_walker::visit_decl_elt(), tree_print_code::visit_do_until_command(), tree_walker::visit_do_until_command(), tree_print_code::visit_if_clause(), tree_walker::visit_if_clause(), tree_print_code::visit_index_expression(), tree_walker::visit_index_expression(), tree_checker::visit_multi_assignment(), tree_print_code::visit_multi_assignment(), tree_walker::visit_multi_assignment(), tree_print_code::visit_postfix_expression(), tree_walker::visit_postfix_expression(), tree_print_code::visit_prefix_expression(), tree_walker::visit_prefix_expression(), tree_checker::visit_simple_assignment(), tree_print_code::visit_simple_assignment(), tree_walker::visit_simple_assignment(), tree_checker::visit_simple_for_command(), tree_print_code::visit_simple_for_command(), tree_walker::visit_simple_for_command(), tree_anon_scopes::visit_statement(), tree_breakpoint::visit_statement(), tree_evaluator::visit_statement(), tree_print_code::visit_statement(), tree_walker::visit_statement(), tree_print_code::visit_switch_case(), tree_walker::visit_switch_case(), tree_print_code::visit_switch_command(), tree_walker::visit_switch_command(), tree_print_code::visit_while_command(), and tree_walker::visit_while_command().

◆ bp_cond()

const std::string tree::bp_cond ( ) const
inline

Definition at line 99 of file pt.h.

Referenced by tree_statement::bp_cond().

◆ column() [1/2]

◆ column() [2/2]

void tree::column ( int  c)
inline

Definition at line 62 of file pt.h.

◆ delete_breakpoint()

virtual void tree::delete_breakpoint ( )
inlinevirtual

Reimplemented in tree_statement.

Definition at line 78 of file pt.h.

Referenced by tree_statement::delete_breakpoint().

◆ is_active_breakpoint()

◆ is_breakpoint()

bool tree::is_breakpoint ( ) const
inline

Definition at line 87 of file pt.h.

Referenced by tree_statement::is_breakpoint().

◆ line() [1/2]

virtual int tree::line ( ) const
inlinevirtual

Reimplemented in tree_statement.

Definition at line 56 of file pt.h.

Referenced by error(), tree_identifier::eval_undefined_error(), base_parser::finish_if_command(), base_parser::finish_switch_command(), 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(), 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(), 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().

◆ line() [2/2]

void tree::line ( int  l)
inline

Definition at line 60 of file pt.h.

◆ meets_bp_condition()

bool tree::meets_bp_condition ( tree_evaluator tw) const

◆ set_breakpoint()

virtual void tree::set_breakpoint ( const std::string &  condition)
inlinevirtual

Reimplemented in tree_statement.

Definition at line 70 of file pt.h.

Referenced by tree_statement::set_breakpoint().

◆ set_location()

void tree::set_location ( int  l,
int  c 
)
inline

Definition at line 64 of file pt.h.

Referenced by base_parser::finish_array_list(), and tree_statement::set_location().

◆ str_print_code()

std::string tree::str_print_code ( )

Definition at line 46 of file pt.cc.

References accept().

Referenced by tree_argument_list::get_arg_names().


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