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

#include "pt-classdef.h"

Inheritance diagram for tree_classdef:
Collaboration diagram for tree_classdef:

Public Member Functions

 tree_classdef (const symbol_scope &scope, tree_classdef_attribute_list *a, tree_identifier *i, tree_classdef_superclass_list *sc, tree_classdef_body *b, comment_list *lc, comment_list *tc, const std::string &pn="", const std::string &fn="", int l=-1, int c=-1)
 
 tree_classdef (const tree_classdef &)=delete
 
 ~tree_classdef (void)
 
void accept (tree_walker &tw)
 
tree_classdef_attribute_listattribute_list (void)
 
tree_classdef_bodybody (void)
 
const std::string bp_cond (void) const
 
void column (int c)
 
virtual int column (void) const
 
virtual void delete_breakpoint (void)
 
std::string doc_string (void) const
 
std::string file_name (void) const
 
tree_identifierident (void)
 
bool is_active_breakpoint (tree_evaluator &tw) const
 
bool is_breakpoint (void) const
 
comment_listleading_comment (void)
 
void line (int l)
 
virtual int line (void) const
 
octave_value make_meta_class (interpreter &interp, bool is_at_folder=false)
 
bool meets_bp_condition (tree_evaluator &tw) const
 
tree_classdefoperator= (const tree_classdef &)=delete
 
std::string package_name (void) const
 
symbol_scope scope (void)
 
virtual void set_breakpoint (const std::string &condition)
 
void set_location (int l, int c)
 
std::string str_print_code (void)
 
tree_classdef_superclass_listsuperclass_list (void)
 
comment_listtrailing_comment (void)
 

Private Attributes

tree_classdef_attribute_listm_attr_list
 
std::string * m_bp_cond
 
int m_column_num
 
tree_classdef_bodym_element_list
 
std::string m_file_name
 
tree_identifierm_id
 
comment_listm_lead_comm
 
int m_line_num
 
std::string m_pack_name
 
symbol_scope m_scope
 
tree_classdef_superclass_listm_supclass_list
 
comment_listm_trail_comm
 

Detailed Description

Definition at line 762 of file pt-classdef.h.

Constructor & Destructor Documentation

◆ tree_classdef() [1/2]

tree_classdef::tree_classdef ( const symbol_scope scope,
tree_classdef_attribute_list a,
tree_identifier i,
tree_classdef_superclass_list sc,
tree_classdef_body b,
comment_list lc,
comment_list tc,
const std::string &  pn = "",
const std::string &  fn = "",
int  l = -1,
int  c = -1 
)
inline

Definition at line 766 of file pt-classdef.h.

◆ tree_classdef() [2/2]

tree_classdef::tree_classdef ( const tree_classdef )
delete

◆ ~tree_classdef()

tree_classdef::~tree_classdef ( void  )
inline

Definition at line 783 of file pt-classdef.h.

References m_attr_list, m_element_list, m_id, m_lead_comm, m_supclass_list, and m_trail_comm.

Member Function Documentation

◆ accept()

void tree_classdef::accept ( tree_walker tw)
inlinevirtual

Implements tree.

Definition at line 820 of file pt-classdef.h.

References tree_walker::visit_classdef().

Referenced by base_parser::finish_classdef_file().

◆ attribute_list()

tree_classdef_attribute_list* tree_classdef::attribute_list ( void  )
inline

Definition at line 796 of file pt-classdef.h.

References m_attr_list.

Referenced by cdef_class::make_meta_class(), and tree_walker::visit_classdef().

◆ body()

tree_classdef_body* tree_classdef::body ( void  )
inline

Definition at line 803 of file pt-classdef.h.

References m_element_list.

Referenced by cdef_class::make_meta_class(), and tree_walker::visit_classdef().

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

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

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

◆ doc_string()

std::string tree_classdef::doc_string ( void  ) const
inline

Definition at line 815 of file pt-classdef.h.

References tree_classdef_body::doc_string(), and m_element_list.

Referenced by cdef_class::make_meta_class().

◆ file_name()

std::string tree_classdef::file_name ( void  ) const
inline

Definition at line 810 of file pt-classdef.h.

References m_file_name.

Referenced by cdef_class::make_meta_class().

◆ ident()

tree_identifier* tree_classdef::ident ( void  )
inline

Definition at line 798 of file pt-classdef.h.

References m_id.

Referenced by cdef_class::make_meta_class(), and tree_walker::visit_classdef().

◆ is_active_breakpoint()

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

◆ leading_comment()

comment_list* tree_classdef::leading_comment ( void  )
inline

Definition at line 805 of file pt-classdef.h.

References m_lead_comm.

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

◆ make_meta_class()

octave_value tree_classdef::make_meta_class ( interpreter interp,
bool  is_at_folder = false 
)

◆ meets_bp_condition()

bool tree::meets_bp_condition ( tree_evaluator tw) const
inherited

◆ operator=()

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

◆ package_name()

std::string tree_classdef::package_name ( void  ) const
inline

Definition at line 808 of file pt-classdef.h.

References m_pack_name.

Referenced by cdef_class::make_meta_class().

◆ scope()

symbol_scope tree_classdef::scope ( void  )
inline

Definition at line 793 of file pt-classdef.h.

References m_scope.

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

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

◆ superclass_list()

tree_classdef_superclass_list* tree_classdef::superclass_list ( void  )
inline

Definition at line 801 of file pt-classdef.h.

References m_supclass_list.

Referenced by cdef_class::make_meta_class(), and tree_walker::visit_classdef().

◆ trailing_comment()

comment_list* tree_classdef::trailing_comment ( void  )
inline

Definition at line 806 of file pt-classdef.h.

References m_trail_comm.

Member Data Documentation

◆ m_attr_list

tree_classdef_attribute_list* tree_classdef::m_attr_list
private

Definition at line 833 of file pt-classdef.h.

Referenced by ~tree_classdef(), and attribute_list().

◆ 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_element_list

tree_classdef_body* tree_classdef::m_element_list
private

Definition at line 839 of file pt-classdef.h.

Referenced by ~tree_classdef(), body(), and doc_string().

◆ m_file_name

std::string tree_classdef::m_file_name
private

Definition at line 845 of file pt-classdef.h.

Referenced by cdef_class::cdef_class_rep::file_name(), and file_name().

◆ m_id

tree_identifier* tree_classdef::m_id
private

Definition at line 835 of file pt-classdef.h.

Referenced by ~tree_classdef(), and ident().

◆ m_lead_comm

comment_list* tree_classdef::m_lead_comm
private

Definition at line 841 of file pt-classdef.h.

Referenced by ~tree_classdef(), and leading_comment().

◆ 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_pack_name

std::string tree_classdef::m_pack_name
private

Definition at line 844 of file pt-classdef.h.

Referenced by package_name().

◆ m_scope

symbol_scope tree_classdef::m_scope
private

Definition at line 831 of file pt-classdef.h.

Referenced by scope().

◆ m_supclass_list

tree_classdef_superclass_list* tree_classdef::m_supclass_list
private

Definition at line 837 of file pt-classdef.h.

Referenced by ~tree_classdef(), and superclass_list().

◆ m_trail_comm

comment_list* tree_classdef::m_trail_comm
private

Definition at line 842 of file pt-classdef.h.

Referenced by ~tree_classdef(), and trailing_comment().


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