GNU Octave  6.2.0
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
octave::symbol_info_accumulator Class Reference
Inheritance diagram for octave::symbol_info_accumulator:
Collaboration diagram for octave::symbol_info_accumulator:

Public Member Functions

 symbol_info_accumulator (bool match_all=true, bool first_only=true)
 
 symbol_info_accumulator (const std::string &pattern, bool have_regexp=false)
 
 symbol_info_accumulator (const string_vector &patterns, bool have_regexp=false)
 
 symbol_info_accumulator (const symbol_info_accumulator &)=delete
 
 ~symbol_info_accumulator (void)=default
 
void display (std::ostream &os, const std::string &format) const
 
bool is_empty (void) const
 
octave_map map_value (void) const
 
std::list< std::string > names (void) const
 
symbol_info_accumulatoroperator= (const symbol_info_accumulator &)=delete
 
symbol_info_list symbol_info (void) const
 
void visit_compiled_fcn_stack_frame (compiled_fcn_stack_frame &frame)
 
void visit_scope_stack_frame (scope_stack_frame &frame)
 
void visit_script_stack_frame (script_stack_frame &frame)
 
void visit_user_fcn_stack_frame (user_fcn_stack_frame &frame)
 

Private Types

typedef std::pair< std::string, symbol_info_listsyminf_list_elt
 

Private Member Functions

void append_list (stack_frame &frame)
 
std::list< symbol_recordfilter (stack_frame &frame, const std::list< symbol_record > &symbols)
 

Private Attributes

bool m_first_only
 
std::set< std::string > m_found_names
 
bool m_have_regexp
 
bool m_match_all
 
string_vector m_patterns
 
std::list< std::pair< std::string, symbol_info_list > > m_sym_inf_list
 

Detailed Description

Definition at line 769 of file stack-frame.cc.

Member Typedef Documentation

◆ syminf_list_elt

typedef std::pair<std::string, symbol_info_list> octave::symbol_info_accumulator::syminf_list_elt
private

Definition at line 922 of file stack-frame.cc.

Constructor & Destructor Documentation

◆ symbol_info_accumulator() [1/4]

octave::symbol_info_accumulator::symbol_info_accumulator ( const std::string &  pattern,
bool  have_regexp = false 
)
inline

Definition at line 773 of file stack-frame.cc.

◆ symbol_info_accumulator() [2/4]

octave::symbol_info_accumulator::symbol_info_accumulator ( const string_vector patterns,
bool  have_regexp = false 
)
inline

Definition at line 780 of file stack-frame.cc.

◆ symbol_info_accumulator() [3/4]

octave::symbol_info_accumulator::symbol_info_accumulator ( bool  match_all = true,
bool  first_only = true 
)
inline

Definition at line 787 of file stack-frame.cc.

◆ symbol_info_accumulator() [4/4]

octave::symbol_info_accumulator::symbol_info_accumulator ( const symbol_info_accumulator )
delete

◆ ~symbol_info_accumulator()

octave::symbol_info_accumulator::~symbol_info_accumulator ( void  )
default

Member Function Documentation

◆ append_list()

◆ display()

void octave::symbol_info_accumulator::display ( std::ostream &  os,
const std::string &  format 
) const
inline

◆ filter()

std::list<symbol_record> octave::symbol_info_accumulator::filter ( stack_frame frame,
const std::list< symbol_record > &  symbols 
)
inlineprivate

◆ is_empty()

bool octave::symbol_info_accumulator::is_empty ( void  ) const
inline

Definition at line 799 of file stack-frame.cc.

References octave::base_list< elt_type >::empty(), and m_sym_inf_list.

Referenced by octave::stack_frame::who().

◆ map_value()

octave_map octave::symbol_info_accumulator::map_value ( void  ) const
inline

◆ names()

std::list<std::string> octave::symbol_info_accumulator::names ( void  ) const
inline

Definition at line 812 of file stack-frame.cc.

References m_sym_inf_list, octave::symbol_info_list::names(), and retval.

Referenced by octave::stack_frame::who().

◆ operator=()

symbol_info_accumulator& octave::symbol_info_accumulator::operator= ( const symbol_info_accumulator )
delete

◆ symbol_info()

symbol_info_list octave::symbol_info_accumulator::symbol_info ( void  ) const
inline

◆ visit_compiled_fcn_stack_frame()

void octave::symbol_info_accumulator::visit_compiled_fcn_stack_frame ( compiled_fcn_stack_frame frame)
inlinevirtual

Implements octave::stack_frame_walker.

Definition at line 880 of file stack-frame.cc.

References octave::stack_frame::static_link().

◆ visit_scope_stack_frame()

void octave::symbol_info_accumulator::visit_scope_stack_frame ( scope_stack_frame frame)
inlinevirtual

Implements octave::stack_frame_walker.

Definition at line 910 of file stack-frame.cc.

References octave::stack_frame::access_link(), and append_list().

◆ visit_script_stack_frame()

void octave::symbol_info_accumulator::visit_script_stack_frame ( script_stack_frame frame)
inlinevirtual

Implements octave::stack_frame_walker.

Definition at line 892 of file stack-frame.cc.

References octave::stack_frame::access_link().

◆ visit_user_fcn_stack_frame()

void octave::symbol_info_accumulator::visit_user_fcn_stack_frame ( user_fcn_stack_frame frame)
inlinevirtual

Implements octave::stack_frame_walker.

Definition at line 900 of file stack-frame.cc.

References octave::stack_frame::access_link(), and append_list().

Member Data Documentation

◆ m_first_only

bool octave::symbol_info_accumulator::m_first_only
private

Definition at line 1026 of file stack-frame.cc.

Referenced by filter().

◆ m_found_names

std::set<std::string> octave::symbol_info_accumulator::m_found_names
private

Definition at line 1031 of file stack-frame.cc.

Referenced by filter().

◆ m_have_regexp

bool octave::symbol_info_accumulator::m_have_regexp
private

Definition at line 1027 of file stack-frame.cc.

Referenced by filter().

◆ m_match_all

bool octave::symbol_info_accumulator::m_match_all
private

Definition at line 1025 of file stack-frame.cc.

Referenced by append_list(), and filter().

◆ m_patterns

string_vector octave::symbol_info_accumulator::m_patterns
private

Definition at line 1023 of file stack-frame.cc.

Referenced by append_list(), and filter().

◆ m_sym_inf_list

std::list<std::pair<std::string, symbol_info_list> > octave::symbol_info_accumulator::m_sym_inf_list
private

Definition at line 1029 of file stack-frame.cc.

Referenced by append_list(), display(), is_empty(), map_value(), names(), and symbol_info().


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