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

#include "pt-eval.h"

Inheritance diagram for tree_evaluator:
Collaboration diagram for tree_evaluator:

Classes

class  value_stack
 

Public Types

typedef void(* decl_elt_init_fcn) (tree_decl_elt &)
 
enum  echo_state { ECHO_OFF = 0 , ECHO_SCRIPTS = 1 , ECHO_FUNCTIONS = 2 , ECHO_ALL = 4 }
 
enum  stmt_list_type { SC_FUNCTION , SC_SCRIPT , SC_OTHER }
 

Public Member Functions

 tree_evaluator (const tree_evaluator &)=delete
 
 tree_evaluator (interpreter &interp)
 
 ~tree_evaluator (void)=default
 
void add_autoload (const std::string &fcn, const std::string &nm)
 
void add_debug_watch_expression (const std::string &expr)
 
void append_index_list (char type, const octave_value_list &idx)
 
void assign (const std::string &name, const octave_value &val=octave_value())
 
void assignin (const std::string &context, const std::string &name, const octave_value &val=octave_value())
 
bool at_top_level (void) const
 
std::list< std::string > autoloaded_functions (void) const
 
octave_map backtrace (octave_idx_type &curr_user_frame, bool print_subfn=true) const
 
octave_map backtrace (void) const
 
std::list< std::shared_ptr< stack_frame > > backtrace_frames () const
 
std::list< std::shared_ptr< stack_frame > > backtrace_frames (octave_idx_type &curr_user_frame) const
 
std::list< frame_info > backtrace_info (octave_idx_type &curr_user_frame, bool print_subfn=true) const
 
std::list< frame_info > backtrace_info (void) const
 
std::string backtrace_message (void) const
 
void bind_ans (const octave_value &val, bool print)
 
bool break_on_next_statement (bool val)
 
bool break_on_next_statement (void) const
 
int breaking (int n)
 
int breaking (void) const
 
octave_functioncaller_function (void) const
 
void clear_all (bool force=false)
 
void clear_debug_watch_expressions (void)
 
void clear_global_variable (const std::string &name)
 
void clear_global_variable_pattern (const std::string &pattern)
 
void clear_global_variable_regexp (const std::string &pattern)
 
void clear_global_variables (void)
 
void clear_index_list (void)
 
void clear_objects (void)
 
void clear_symbol (const std::string &name)
 
void clear_symbol_pattern (const std::string &pattern)
 
void clear_symbol_regexp (const std::string &pattern)
 
void clear_variable (const std::string &name)
 
void clear_variable_pattern (const std::string &pattern)
 
void clear_variable_regexp (const std::string &pattern)
 
void clear_variables (void)
 
int continuing (int n)
 
int continuing (void) const
 
octave_value_list convert_return_list_to_const_vector (tree_parameter_list *ret_list, int nargout, const Matrix &ignored_outputs, const Cell &varargout)
 
octave_value_list convert_to_const_vector (tree_argument_list *arg_list)
 
unwind_protectcurr_fcn_unwind_protect_frame (void)
 
std::size_t current_call_stack_frame_number (void) const
 
int current_column (void) const
 
octave_functioncurrent_function (bool skip_first=false) const
 
std::string current_function_name (bool skip_first=false) const
 
int current_line (void) const
 
octave_user_codecurrent_user_code (void) const
 
std::shared_ptr< stack_framecurrent_user_frame (void) const
 
void dbcont (void)
 
void dbquit (bool all=false)
 
int dbstep_flag (int val)
 
int dbstep_flag (void) const
 
void dbupdown (int n, bool verbose=false)
 
std::size_t debug_frame (std::size_t n)
 
std::size_t debug_frame (void) const
 
octave_user_codedebug_user_code (void) const
 
int debug_user_code_column (void) const
 
int debug_user_code_line (void) const
 
std::set< std::string > debug_watch_expressions (void) const
 
void debug_where (std::ostream &os) const
 
void define_parameter_list_from_arg_vector (tree_parameter_list *param_list, const octave_value_list &args)
 
void display_call_stack (void) const
 
void do_unwind_protect_cleanup_code (tree_statement_list *list)
 
octave_value do_who (int argc, const string_vector &argv, bool return_list, bool verbose=false)
 
octave_value echo (const octave_value_list &args, int nargout)
 
int echo (int val)
 
int echo (void) const
 
octave_map empty_backtrace (void) const
 
void enter_debugger (const std::string &prompt="debug> ")
 
octave_value_list eval (const std::string &try_code, const std::string &catch_code, int nargout)
 
octave_value_list eval (const std::string &try_code, int nargout)
 
void eval (std::shared_ptr< tree_statement_list > &stmt_list, bool interactive)
 
bool eval_decl_elt (tree_decl_elt *elt)
 
octave_value_list eval_string (const octave_value &arg, bool silent, int &parse_status, int nargout)
 
octave_value eval_string (const std::string &eval_str, bool silent, int &parse_status)
 
octave_value_list eval_string (const std::string &eval_str, bool silent, int &parse_status, int nargout)
 
octave_value_list evalin (const std::string &context, const std::string &try_code, const std::string &catch_code, int nargout)
 
octave_value_list evalin (const std::string &context, const std::string &try_code, int nargout)
 
octave_value evaluate (tree_decl_elt *)
 
octave_value evaluate_anon_fcn_handle (tree_anon_fcn_handle &afh)
 
octave_value_list evaluate_end_expression (const octave_value_list &args)
 
octave_value_list execute_builtin_function (octave_builtin &builtin_function, int nargout, const octave_value_list &args)
 
octave_value_list execute_mex_function (octave_mex_function &mex_function, int nargout, const octave_value_list &args)
 
octave_value_list execute_user_function (octave_user_function &user_function, int nargout, const octave_value_list &args)
 
octave_value_list execute_user_script (octave_user_script &user_script, int nargout, const octave_value_list &args)
 
void final_index_error (index_exception &ie, const tree_expression *expr)
 
octave_value find (const std::string &name)
 
octave_value get_auto_fcn_var (stack_frame::auto_var_type avt) const
 
octave_map get_autoload_map (void) const
 
bp_tableget_bp_table (void)
 
symbol_scope get_current_scope (void) const
 
std::shared_ptr< stack_frameget_current_stack_frame (void) const
 
std::string get_dispatch_class (void) const
 
interpreterget_interpreter (void)
 
void get_line_and_eval (void)
 
std::shared_ptr< push_parserget_parser (void)
 
profilerget_profiler (void)
 
symbol_info_list get_symbol_info (void)
 
symbol_scope get_top_scope (void) const
 
octave_user_codeget_user_code (const std::string &fname="", const std::string &class_name="")
 
symbol_info_list glob_symbol_info (const std::string &pattern) const
 
void global_assign (const std::string &name, const octave_value &val=octave_value())
 
std::list< std::string > global_variable_names (void) const
 
octave_valueglobal_varref (const std::string &name)
 
octave_value global_varval (const std::string &name) const
 
void goto_base_frame (void)
 
void goto_caller_frame (void)
 
bool goto_frame (std::size_t n=0, bool verbose=false)
 
Matrix ignored_fcn_outputs (void) const
 
bool in_debug_repl (void) const
 
bool in_top_level_repl (void) const
 
bool in_user_code (void) const
 
const std::list< octave_value_list > & index_list (void) const
 
int index_position (void) const
 
const std::string & index_type (void) const
 
octave_value indexed_object (void) const
 
void install_variable (const std::string &name, const octave_value &value, bool global)
 
bool is_class_constructor_executing (std::string &dispatch_class) const
 
bool is_class_method_executing (std::string &dispatch_class) const
 
bool is_defined (const symbol_record &sym) const
 
bool is_defined (const tree_expression *expr) const
 
bool is_global (const std::string &name) const
 
bool is_local_variable (const std::string &name) const
 
bool is_variable (const std::string &name) const
 
bool is_variable (const symbol_record &sym) const
 
bool is_variable (const tree_expression *expr) const
 
void keyboard (const std::string &prompt="keyboard> ")
 
std::string lookup_autoload (const std::string &nm) const
 
const std::list< octave_lvalue > * lvalue_list (void) const
 
octave_value make_fcn_handle (const std::string &nm)
 
std::list< octave_lvaluemake_lvalue_list (tree_argument_list *)
 
octave_value_list make_value_list (tree_argument_list *args, const string_vector &arg_nm)
 
octave_value max_recursion_depth (const octave_value_list &args, int nargout)
 
int max_recursion_depth (int n)
 
int max_recursion_depth (void) const
 
octave_value max_stack_depth (const octave_value_list &args, int nargout)
 
std::string mfilename (const std::string &opt="") const
 
bool mislocked (bool skip_first=false) const
 
void mlock (bool skip_first=false) const
 
void munlock (bool skip_first=false) const
 
int num_indices (void) const
 
tree_evaluatoroperator= (const tree_evaluator &)=delete
 
void parse_and_execute (const std::string &input, bool &incomplete_parse)
 
void pop_scope (void)
 
void pop_stack_frame (void)
 
octave_value PS4 (const octave_value_list &args, int nargout)
 
std::string PS4 (const std::string &s)
 
std::string PS4 (void) const
 
void push_dummy_scope (const std::string &name)
 
void push_echo_state (int type, const std::string &file_name, int pos=1)
 
void push_stack_frame (const symbol_scope &scope)
 
void push_stack_frame (octave_function *fcn)
 
void push_stack_frame (octave_user_function *fcn, const stack_frame::local_vars_map &local_vars, const std::shared_ptr< stack_frame > &closure_frames=std::shared_ptr< stack_frame >())
 
void push_stack_frame (octave_user_function *fcn, const std::shared_ptr< stack_frame > &closure_frames=std::shared_ptr< stack_frame >())
 
void push_stack_frame (octave_user_script *script)
 
bool quiet_breakpoint_flag (bool flag)
 
bool quiet_breakpoint_flag (void) const
 
symbol_info_list regexp_symbol_info (const std::string &pattern) const
 
void remove_autoload (const std::string &fcn, const std::string &nm)
 
void remove_debug_watch_expression (const std::string &expr)
 
int repl (void)
 
void reset_debug_state (bool mode)
 
void reset_debug_state (void)
 
void restore_frame (std::size_t n)
 
int returning (int n)
 
int returning (void) const
 
std::list< std::string > reverse_lookup_autoload (const std::string &nm) const
 
int server_loop (void)
 
void server_mode (bool arg)
 
bool server_mode (void) const
 
void set_auto_fcn_var (stack_frame::auto_var_type avt, const octave_value &val=octave_value())
 
void set_break_on_next_statement (bool val)
 
void set_dbstep_flag (int step)
 
void set_dispatch_class (const std::string &class_name)
 
void set_index_list (const std::string &index_type, const std::list< octave_value_list > &index_list)
 
void set_indexed_object (const octave_value &obj=octave_value())
 
void set_lvalue_list (const std::list< octave_lvalue > *lst)
 
void set_parser (const std::shared_ptr< push_parser > &parser)
 
bool silent_functions (bool b)
 
octave_value silent_functions (const octave_value_list &args, int nargout)
 
bool silent_functions (void) const
 
void source_file (const std::string &file_name, const std::string &context="", bool verbose=false, bool require_file=true)
 
bool statement_printing_enabled (void)
 
char string_fill_char (char c)
 
octave_value string_fill_char (const octave_value_list &args, int nargout)
 
char string_fill_char (void) const
 
bool switch_case_label_matches (tree_switch_case *expr, const octave_value &val)
 
void top_level_assign (const std::string &name, const octave_value &val=octave_value())
 
std::list< std::string > top_level_variable_names (void) const
 
octave_value top_level_varval (const std::string &name) const
 
symbol_info_list top_scope_symbol_info (void) const
 
void undefine_parameter_list (tree_parameter_list *param_list)
 
std::list< std::string > variable_names (void) const
 
octave_value varval (const std::string &name) const
 
octave_value varval (const symbol_record &sym) const
 
void visit_anon_fcn_handle (tree_anon_fcn_handle &)
 
void visit_arg_size_spec (tree_arg_size_spec &)
 
void visit_arg_validation (tree_arg_validation &)
 
void visit_arg_validation_fcns (tree_arg_validation_fcns &)
 
void visit_args_block_attribute_list (tree_args_block_attribute_list &)
 
void visit_args_block_validation_list (tree_args_block_validation_list &)
 
void visit_argument_list (tree_argument_list &)
 
void visit_arguments_block (tree_arguments_block &)
 
void visit_binary_expression (tree_binary_expression &)
 
void visit_boolean_expression (tree_boolean_expression &)
 
void visit_break_command (tree_break_command &)
 
void visit_cell (tree_cell &)
 
virtual void visit_classdef (tree_classdef &)
 
virtual void visit_classdef_attribute (tree_classdef_attribute &)
 
virtual void visit_classdef_attribute_list (tree_classdef_attribute_list &)
 
virtual void visit_classdef_body (tree_classdef_body &)
 
virtual void visit_classdef_enum (tree_classdef_enum &)
 
virtual void visit_classdef_enum_block (tree_classdef_enum_block &)
 
virtual void visit_classdef_enum_list (tree_classdef_enum_list &)
 
virtual void visit_classdef_event (tree_classdef_event &)
 
virtual void visit_classdef_events_block (tree_classdef_events_block &)
 
virtual void visit_classdef_events_list (tree_classdef_events_list &)
 
virtual void visit_classdef_methods_block (tree_classdef_methods_block &)
 
virtual void visit_classdef_methods_list (tree_classdef_methods_list &)
 
virtual void visit_classdef_properties_block (tree_classdef_properties_block &)
 
virtual void visit_classdef_property (tree_classdef_property &)
 
virtual void visit_classdef_property_list (tree_classdef_property_list &)
 
virtual void visit_classdef_superclass (tree_classdef_superclass &)
 
virtual void visit_classdef_superclass_list (tree_classdef_superclass_list &)
 
void visit_colon_expression (tree_colon_expression &)
 
void visit_complex_for_command (tree_complex_for_command &)
 
void visit_compound_binary_expression (tree_compound_binary_expression &)
 
void visit_constant (tree_constant &)
 
void visit_continue_command (tree_continue_command &)
 
void visit_decl_command (tree_decl_command &)
 
void visit_decl_elt (tree_decl_elt &)
 
virtual void visit_decl_init_list (tree_decl_init_list &)
 
void visit_do_until_command (tree_do_until_command &)
 
void visit_fcn_handle (tree_fcn_handle &)
 
void visit_function_def (tree_function_def &)
 
void visit_identifier (tree_identifier &)
 
void visit_if_clause (tree_if_clause &)
 
void visit_if_command (tree_if_command &)
 
void visit_if_command_list (tree_if_command_list &)
 
void visit_index_expression (tree_index_expression &)
 
void visit_matrix (tree_matrix &)
 
void visit_metaclass_query (tree_metaclass_query &)
 
void visit_multi_assignment (tree_multi_assignment &)
 
void visit_no_op_command (tree_no_op_command &)
 
void visit_octave_user_function (octave_user_function &)
 
void visit_octave_user_function_header (octave_user_function &)
 
void visit_octave_user_function_trailer (octave_user_function &)
 
void visit_octave_user_script (octave_user_script &)
 
void visit_parameter_list (tree_parameter_list &)
 
void visit_postfix_expression (tree_postfix_expression &)
 
void visit_prefix_expression (tree_prefix_expression &)
 
void visit_return_command (tree_return_command &)
 
void visit_simple_assignment (tree_simple_assignment &)
 
void visit_simple_for_command (tree_simple_for_command &)
 
void visit_spmd_command (tree_spmd_command &)
 
void visit_statement (tree_statement &)
 
void visit_statement_list (tree_statement_list &)
 
void visit_superclass_ref (tree_superclass_ref &)
 
void visit_switch_case (tree_switch_case &)
 
void visit_switch_case_list (tree_switch_case_list &)
 
void visit_switch_command (tree_switch_command &)
 
void visit_try_catch_command (tree_try_catch_command &)
 
void visit_unwind_protect_command (tree_unwind_protect_command &)
 
void visit_while_command (tree_while_command &)
 
octave_value whos_line_format (const octave_value_list &args, int nargout)
 
std::string whos_line_format (const std::string &s)
 
std::string whos_line_format (void) const
 

Private Member Functions

void bind_auto_fcn_vars (const string_vector &arg_names, const Matrix &ignored_outputs, int nargin, int nargout, bool takes_varargs, const octave_value_list &va_args)
 
std::string check_autoload_file (const std::string &nm) const
 
void do_breakpoint (bool is_breakpoint, bool is_end_of_fcn_or_script=false)
 
void do_breakpoint (tree_statement &stmt)
 
void echo_code (int line)
 
bool echo_this_file (const std::string &file, int type) const
 
template<typename T >
void execute_range_loop (const range< T > &rng, int line, octave_lvalue &ult, tree_statement_list *loop_body)
 
bool is_logically_true (tree_expression *expr, const char *warn_for)
 
bool maybe_push_echo_state_cleanup (void)
 
void maybe_set_echo_state (void)
 
void push_echo_state_cleanup (unwind_protect &frame)
 
bool quit_loop_now (void)
 
void set_echo_state (int type, const std::string &file_name, int pos)
 
void uwp_set_echo_state (bool state, const std::string &file_name, int pos)
 

Private Attributes

std::map< std::string, std::string > m_autoload_map
 
bp_table m_bp_table
 
bool m_break_on_next_stmt
 
int m_breaking
 
call_stack m_call_stack
 
int m_continuing
 
int m_dbstep_flag
 
std::size_t m_debug_frame
 
bool m_debug_mode
 
std::set< std::string > m_debug_watch_expressions
 
std::stack< debugger * > m_debugger_stack
 
int m_echo
 
std::string m_echo_file_name
 
int m_echo_file_pos
 
std::map< std::string, bool > m_echo_files
 
bool m_echo_state
 
int m_exit_status
 
bool m_in_loop_command
 
bool m_in_top_level_repl
 
std::list< octave_value_listm_index_list
 
int m_index_position
 
std::string m_index_type
 
octave_value m_indexed_object
 
interpreterm_interpreter
 
const std::list< octave_lvalue > * m_lvalue_list
 
int m_max_recursion_depth
 
int m_num_indices
 
std::shared_ptr< push_parserm_parser
 
profiler m_profiler
 
std::string m_PS4
 
bool m_quiet_breakpoint_flag
 
int m_returning
 
bool m_server_mode
 
bool m_silent_functions
 
stmt_list_type m_statement_context
 
char m_string_fill_char
 
std::string m_whos_line_format
 

Detailed Description

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

Member Typedef Documentation

◆ decl_elt_init_fcn

typedef void(* tree_evaluator::decl_elt_init_fcn) (tree_decl_elt &)

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

Member Enumeration Documentation

◆ echo_state

Enumerator
ECHO_OFF 
ECHO_SCRIPTS 
ECHO_FUNCTIONS 
ECHO_ALL 

Definition at line 71 of file pt-eval.h.

◆ stmt_list_type

Enumerator
SC_FUNCTION 
SC_SCRIPT 
SC_OTHER 

Definition at line 349 of file pt-eval.h.

Constructor & Destructor Documentation

◆ tree_evaluator() [1/2]

tree_evaluator::tree_evaluator ( interpreter interp)
inline

Definition at line 134 of file pt-eval.h.

◆ tree_evaluator() [2/2]

tree_evaluator::tree_evaluator ( const tree_evaluator )
delete

◆ ~tree_evaluator()

tree_evaluator::~tree_evaluator ( void  )
default

Member Function Documentation

◆ add_autoload()

void tree_evaluator::add_autoload ( const std::string &  fcn,
const std::string &  nm 
)

Definition at line 4642 of file pt-eval.cc.

References check_autoload_file(), and m_autoload_map.

Referenced by Fautoload().

◆ add_debug_watch_expression()

void tree_evaluator::add_debug_watch_expression ( const std::string &  expr)
inline

Definition at line 678 of file pt-eval.h.

Referenced by interpreter::add_debug_watch_expression().

◆ append_index_list()

void tree_evaluator::append_index_list ( char  type,
const octave_value_list idx 
)
inline

Definition at line 743 of file pt-eval.h.

Referenced by tree_index_expression::evaluate_n(), and tree_index_expression::lvalue().

◆ assign()

void tree_evaluator::assign ( const std::string &  name,
const octave_value val = octave_value () 
)

◆ assignin()

void tree_evaluator::assignin ( const std::string &  context,
const std::string &  name,
const octave_value val = octave_value () 
)

◆ at_top_level()

bool tree_evaluator::at_top_level ( void  ) const

◆ autoloaded_functions()

std::list< std::string > tree_evaluator::autoloaded_functions ( void  ) const

Definition at line 4620 of file pt-eval.cc.

References m_autoload_map.

Referenced by interpreter::autoloaded_functions().

◆ backtrace() [1/2]

octave_map tree_evaluator::backtrace ( octave_idx_type curr_user_frame,
bool  print_subfn = true 
) const

Definition at line 2596 of file pt-eval.cc.

References call_stack::backtrace(), and m_call_stack.

Referenced by Flasterror().

◆ backtrace() [2/2]

octave_map tree_evaluator::backtrace ( void  ) const

Definition at line 2602 of file pt-eval.cc.

References call_stack::backtrace(), and m_call_stack.

◆ backtrace_frames() [1/2]

std::list< std::shared_ptr< stack_frame > > tree_evaluator::backtrace_frames ( void  ) const

Definition at line 2578 of file pt-eval.cc.

References call_stack::backtrace_frames(), and m_call_stack.

◆ backtrace_frames() [2/2]

std::list< std::shared_ptr< stack_frame > > tree_evaluator::backtrace_frames ( octave_idx_type curr_user_frame) const

Definition at line 2572 of file pt-eval.cc.

References call_stack::backtrace_frames(), and m_call_stack.

◆ backtrace_info() [1/2]

std::list< frame_info > tree_evaluator::backtrace_info ( octave_idx_type curr_user_frame,
bool  print_subfn = true 
) const

Definition at line 2584 of file pt-eval.cc.

References call_stack::backtrace_info(), and m_call_stack.

Referenced by error_system::throw_error().

◆ backtrace_info() [2/2]

std::list< frame_info > tree_evaluator::backtrace_info ( void  ) const

Definition at line 2590 of file pt-eval.cc.

References call_stack::backtrace_info(), and m_call_stack.

Referenced by backtrace_message().

◆ backtrace_message()

std::string tree_evaluator::backtrace_message ( void  ) const

Definition at line 2612 of file pt-eval.cc.

References backtrace_info().

Referenced by error_system::vwarning().

◆ bind_ans()

void tree_evaluator::bind_ans ( const octave_value val,
bool  print 
)

◆ bind_auto_fcn_vars()

void tree_evaluator::bind_auto_fcn_vars ( const string_vector arg_names,
const Matrix ignored_outputs,
int  nargin,
int  nargout,
bool  takes_varargs,
const octave_value_list va_args 
)
private

◆ break_on_next_statement() [1/2]

bool tree_evaluator::break_on_next_statement ( bool  val)
inline

Definition at line 813 of file pt-eval.h.

◆ break_on_next_statement() [2/2]

bool tree_evaluator::break_on_next_statement ( void  ) const
inline

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

Referenced by interpreter::pause().

◆ breaking() [1/2]

int tree_evaluator::breaking ( int  n)
inline

Definition at line 772 of file pt-eval.h.

References n.

◆ breaking() [2/2]

int tree_evaluator::breaking ( void  ) const
inline

Definition at line 770 of file pt-eval.h.

Referenced by eval_string().

◆ caller_function()

octave_function * tree_evaluator::caller_function ( void  ) const

Definition at line 2524 of file pt-eval.cc.

References call_stack::current_function(), and m_call_stack.

Referenced by Fclass(), Finferiorto(), Fsuperiorto(), and maybe_set_echo_state().

◆ check_autoload_file()

std::string tree_evaluator::check_autoload_file ( const std::string &  nm) const
private

◆ clear_all()

void tree_evaluator::clear_all ( bool  force = false)

◆ clear_debug_watch_expressions()

void tree_evaluator::clear_debug_watch_expressions ( void  )
inline

Definition at line 692 of file pt-eval.h.

Referenced by interpreter::clear_debug_watch_expressions().

◆ clear_global_variable()

void tree_evaluator::clear_global_variable ( const std::string &  name)

Definition at line 2779 of file pt-eval.cc.

References call_stack::clear_global_variable(), and m_call_stack.

Referenced by interpreter::clear_global_variable().

◆ clear_global_variable_pattern()

void tree_evaluator::clear_global_variable_pattern ( const std::string &  pattern)

◆ clear_global_variable_regexp()

void tree_evaluator::clear_global_variable_regexp ( const std::string &  pattern)

◆ clear_global_variables()

void tree_evaluator::clear_global_variables ( void  )

◆ clear_index_list()

void tree_evaluator::clear_index_list ( void  )
inline

Definition at line 737 of file pt-eval.h.

Referenced by tree_index_expression::evaluate_n(), and tree_index_expression::lvalue().

◆ clear_objects()

void tree_evaluator::clear_objects ( void  )

Definition at line 2739 of file pt-eval.cc.

References call_stack::get_current_stack_frame(), and m_call_stack.

Referenced by interpreter::clear_objects().

◆ clear_symbol()

void tree_evaluator::clear_symbol ( const std::string &  name)

◆ clear_symbol_pattern()

void tree_evaluator::clear_symbol_pattern ( const std::string &  pattern)

◆ clear_symbol_regexp()

void tree_evaluator::clear_symbol_regexp ( const std::string &  pattern)

◆ clear_variable()

void tree_evaluator::clear_variable ( const std::string &  name)

Definition at line 2747 of file pt-eval.cc.

References call_stack::get_current_stack_frame(), and m_call_stack.

Referenced by clear_symbol(), and interpreter::clear_variable().

◆ clear_variable_pattern()

void tree_evaluator::clear_variable_pattern ( const std::string &  pattern)

◆ clear_variable_regexp()

void tree_evaluator::clear_variable_regexp ( const std::string &  pattern)

◆ clear_variables()

void tree_evaluator::clear_variables ( void  )

Definition at line 2771 of file pt-eval.cc.

References call_stack::get_current_stack_frame(), and m_call_stack.

Referenced by clear_all(), and interpreter::clear_variables().

◆ continuing() [1/2]

int tree_evaluator::continuing ( int  n)
inline

Definition at line 781 of file pt-eval.h.

References n.

◆ continuing() [2/2]

int tree_evaluator::continuing ( void  ) const
inline

Definition at line 779 of file pt-eval.h.

Referenced by eval_string().

◆ convert_return_list_to_const_vector()

octave_value_list tree_evaluator::convert_return_list_to_const_vector ( tree_parameter_list ret_list,
int  nargout,
const Matrix ignored_outputs,
const Cell varargout 
)

◆ convert_to_const_vector()

◆ curr_fcn_unwind_protect_frame()

unwind_protect * tree_evaluator::curr_fcn_unwind_protect_frame ( void  )

Definition at line 2509 of file pt-eval.cc.

References call_stack::curr_fcn_unwind_protect_frame(), and m_call_stack.

◆ current_call_stack_frame_number()

std::size_t tree_evaluator::current_call_stack_frame_number ( void  ) const
inline

Definition at line 640 of file pt-eval.h.

Referenced by debugger::repl().

◆ current_column()

int tree_evaluator::current_column ( void  ) const

Definition at line 2482 of file pt-eval.cc.

References call_stack::current_column(), and m_call_stack.

◆ current_function()

octave_function * tree_evaluator::current_function ( bool  skip_first = false) const

◆ current_function_name()

std::string tree_evaluator::current_function_name ( bool  skip_first = false) const

◆ current_line()

int tree_evaluator::current_line ( void  ) const

Definition at line 2477 of file pt-eval.cc.

References call_stack::current_line(), and m_call_stack.

Referenced by debugger::repl().

◆ current_user_code()

octave_user_code * tree_evaluator::current_user_code ( void  ) const

Definition at line 2504 of file pt-eval.cc.

References call_stack::current_user_code(), and m_call_stack.

Referenced by debugger::repl().

◆ current_user_frame()

std::shared_ptr<stack_frame> tree_evaluator::current_user_frame ( void  ) const
inline

Definition at line 453 of file pt-eval.h.

Referenced by debugger::repl().

◆ dbcont()

void tree_evaluator::dbcont ( void  )

Definition at line 5009 of file pt-eval.cc.

References m_debugger_stack.

Referenced by interpreter::resume(), and visit_return_command().

◆ dbquit()

void tree_evaluator::dbquit ( bool  all = false)

Definition at line 5015 of file pt-eval.cc.

References m_debugger_stack.

Referenced by file_editor_tab::confirm_dbquit_and_save(), and interpreter::stop().

◆ dbstep_flag() [1/2]

int tree_evaluator::dbstep_flag ( int  val)
inline

Definition at line 799 of file pt-eval.h.

◆ dbstep_flag() [2/2]

int tree_evaluator::dbstep_flag ( void  ) const
inline

Definition at line 797 of file pt-eval.h.

Referenced by parse_and_execute(), debugger::repl(), repl(), and debugger::server_loop().

◆ dbupdown()

void tree_evaluator::dbupdown ( int  n,
bool  verbose = false 
)

Definition at line 1434 of file pt-eval.cc.

References call_stack::dbupdown(), m_call_stack, m_debug_frame, and n.

◆ debug_frame() [1/2]

std::size_t tree_evaluator::debug_frame ( std::size_t  n)
inline

Definition at line 633 of file pt-eval.h.

References n.

◆ debug_frame() [2/2]

std::size_t tree_evaluator::debug_frame ( void  ) const
inline

Definition at line 631 of file pt-eval.h.

Referenced by debugger::repl().

◆ debug_user_code()

octave_user_code * tree_evaluator::debug_user_code ( void  ) const

Definition at line 2514 of file pt-eval.cc.

References call_stack::debug_user_code(), and m_call_stack.

◆ debug_user_code_column()

int tree_evaluator::debug_user_code_column ( void  ) const

Definition at line 2492 of file pt-eval.cc.

References call_stack::debug_user_code_column(), and m_call_stack.

◆ debug_user_code_line()

int tree_evaluator::debug_user_code_line ( void  ) const

Definition at line 2487 of file pt-eval.cc.

References call_stack::debug_user_code_line(), and m_call_stack.

◆ debug_watch_expressions()

std::set<std::string> tree_evaluator::debug_watch_expressions ( void  ) const
inline

Definition at line 699 of file pt-eval.h.

Referenced by interpreter::debug_watch_expressions().

◆ debug_where()

void tree_evaluator::debug_where ( std::ostream &  os) const

Definition at line 2497 of file pt-eval.cc.

References call_stack::current_user_frame(), and m_call_stack.

◆ define_parameter_list_from_arg_vector()

void tree_evaluator::define_parameter_list_from_arg_vector ( tree_parameter_list param_list,
const octave_value_list args 
)

◆ display_call_stack()

void tree_evaluator::display_call_stack ( void  ) const

Definition at line 2710 of file pt-eval.cc.

References call_stack::display(), and m_call_stack.

◆ do_breakpoint() [1/2]

void tree_evaluator::do_breakpoint ( bool  is_breakpoint,
bool  is_end_of_fcn_or_script = false 
)
private

◆ do_breakpoint() [2/2]

◆ do_unwind_protect_cleanup_code()

◆ do_who()

octave_value tree_evaluator::do_who ( int  argc,
const string_vector argv,
bool  return_list,
bool  verbose = false 
)

Definition at line 4719 of file pt-eval.cc.

References call_stack::do_who(), and m_call_stack.

Referenced by Fwho(), and Fwhos().

◆ echo() [1/3]

◆ echo() [2/3]

int tree_evaluator::echo ( int  val)
inline

Definition at line 829 of file pt-eval.h.

◆ echo() [3/3]

int tree_evaluator::echo ( void  ) const
inline

Definition at line 827 of file pt-eval.h.

Referenced by execute_user_function(), and execute_user_script().

◆ echo_code()

◆ echo_this_file()

bool tree_evaluator::echo_this_file ( const std::string &  file,
int  type 
) const
private

Definition at line 5153 of file pt-eval.cc.

References ECHO_ALL, ECHO_FUNCTIONS, ECHO_SCRIPTS, m_echo, and m_echo_files.

Referenced by set_echo_state().

◆ empty_backtrace()

octave_map tree_evaluator::empty_backtrace ( void  ) const

Definition at line 2607 of file pt-eval.cc.

References call_stack::empty_backtrace(), and m_call_stack.

Referenced by Flasterror(), and init_error_stack().

◆ enter_debugger()

◆ eval() [1/3]

octave_value_list tree_evaluator::eval ( const std::string &  try_code,
const std::string &  catch_code,
int  nargout 
)

◆ eval() [2/3]

octave_value_list tree_evaluator::eval ( const std::string &  try_code,
int  nargout 
)

Definition at line 1107 of file pt-eval.cc.

References eval_string().

◆ eval() [3/3]

void tree_evaluator::eval ( std::shared_ptr< tree_statement_list > &  stmt_list,
bool  interactive 
)

◆ eval_decl_elt()

◆ eval_string() [1/3]

octave_value_list tree_evaluator::eval_string ( const octave_value arg,
bool  silent,
int &  parse_status,
int  nargout 
)

Definition at line 1098 of file pt-eval.cc.

References eval_string(), and octave_value::xstring_value().

◆ eval_string() [2/3]

octave_value tree_evaluator::eval_string ( const std::string &  eval_str,
bool  silent,
int &  parse_status 
)

Definition at line 1085 of file pt-eval.cc.

References octave_value_list::empty(), and eval_string().

◆ eval_string() [3/3]

◆ evalin() [1/2]

octave_value_list tree_evaluator::evalin ( const std::string &  context,
const std::string &  try_code,
const std::string &  catch_code,
int  nargout 
)

◆ evalin() [2/2]

octave_value_list tree_evaluator::evalin ( const std::string &  context,
const std::string &  try_code,
int  nargout 
)

◆ evaluate()

◆ evaluate_anon_fcn_handle()

◆ evaluate_end_expression()

◆ execute_builtin_function()

◆ execute_mex_function()

octave_value_list tree_evaluator::execute_mex_function ( octave_mex_function mex_function,
int  nargout,
const octave_value_list args 
)

Definition at line 3470 of file pt-eval.cc.

References call_mex(), error(), octave_value_list::has_magic_colon(), and m_profiler.

◆ execute_range_loop()

template<typename T >
void tree_evaluator::execute_range_loop ( const range< T > &  rng,
int  line,
octave_lvalue ult,
tree_statement_list loop_body 
)
private

◆ execute_user_function()

◆ execute_user_script()

◆ final_index_error()

◆ find()

◆ get_auto_fcn_var()

octave_value tree_evaluator::get_auto_fcn_var ( stack_frame::auto_var_type  avt) const

Definition at line 2205 of file pt-eval.cc.

References call_stack::get_auto_fcn_var(), and m_call_stack.

Referenced by F__varval__(), Fisargout(), Fnargin(), Fnargout(), and Fwarning().

◆ get_autoload_map()

octave_map tree_evaluator::get_autoload_map ( void  ) const

Definition at line 4582 of file pt-eval.cc.

References m, and m_autoload_map.

Referenced by Fautoload().

◆ get_bp_table()

◆ get_current_scope()

symbol_scope tree_evaluator::get_current_scope ( void  ) const

◆ get_current_stack_frame()

std::shared_ptr<stack_frame> tree_evaluator::get_current_stack_frame ( void  ) const
inline

Definition at line 448 of file pt-eval.h.

Referenced by tree_identifier::lvalue(), and tree_black_hole::lvalue().

◆ get_dispatch_class()

std::string tree_evaluator::get_dispatch_class ( void  ) const

Definition at line 2549 of file pt-eval.cc.

References call_stack::get_dispatch_class(), and m_call_stack.

Referenced by get_class_context().

◆ get_interpreter()

◆ get_line_and_eval()

◆ get_parser()

std::shared_ptr<push_parser> tree_evaluator::get_parser ( void  )
inline

Definition at line 159 of file pt-eval.h.

Referenced by debugger::repl().

◆ get_profiler()

profiler& tree_evaluator::get_profiler ( void  )
inline

◆ get_symbol_info()

◆ get_top_scope()

symbol_scope tree_evaluator::get_top_scope ( void  ) const

Definition at line 2652 of file pt-eval.cc.

References m_call_stack, and call_stack::top_scope().

Referenced by interpreter::get_top_scope().

◆ get_user_code()

◆ glob_symbol_info()

symbol_info_list tree_evaluator::glob_symbol_info ( const std::string &  pattern) const

Definition at line 4559 of file pt-eval.cc.

References call_stack::glob_symbol_info(), and m_call_stack.

Referenced by load_save_system::save_vars().

◆ global_assign()

void tree_evaluator::global_assign ( const std::string &  name,
const octave_value val = octave_value () 
)

Definition at line 1981 of file pt-eval.cc.

References call_stack::global_varref(), and m_call_stack.

Referenced by interpreter::global_assign().

◆ global_variable_names()

std::list< std::string > tree_evaluator::global_variable_names ( void  ) const

Definition at line 2845 of file pt-eval.cc.

References call_stack::global_variable_names(), and m_call_stack.

Referenced by interpreter::global_variable_names().

◆ global_varref()

octave_value & tree_evaluator::global_varref ( const std::string &  name)

◆ global_varval()

octave_value tree_evaluator::global_varval ( const std::string &  name) const

◆ goto_base_frame()

void tree_evaluator::goto_base_frame ( void  )

Definition at line 2539 of file pt-eval.cc.

References call_stack::goto_base_frame(), and m_call_stack.

◆ goto_caller_frame()

void tree_evaluator::goto_caller_frame ( void  )

Definition at line 2534 of file pt-eval.cc.

References call_stack::goto_caller_frame(), and m_call_stack.

◆ goto_frame()

bool tree_evaluator::goto_frame ( std::size_t  n = 0,
bool  verbose = false 
)

Definition at line 2529 of file pt-eval.cc.

References call_stack::goto_frame(), m_call_stack, and n.

Referenced by debugger::repl().

◆ ignored_fcn_outputs()

Matrix tree_evaluator::ignored_fcn_outputs ( void  ) const

Definition at line 1440 of file pt-eval.cc.

References m_lvalue_list, and Matrix::resize().

Referenced by execute_user_function().

◆ in_debug_repl()

bool tree_evaluator::in_debug_repl ( void  ) const

◆ in_top_level_repl()

bool tree_evaluator::in_top_level_repl ( void  ) const
inline

Definition at line 183 of file pt-eval.h.

◆ in_user_code()

bool tree_evaluator::in_user_code ( void  ) const

Definition at line 2965 of file pt-eval.cc.

References call_stack::current_user_code(), and m_call_stack.

Referenced by visit_statement(), and error_system::vwarning().

◆ index_list()

const std::list<octave_value_list>& tree_evaluator::index_list ( void  ) const
inline

Definition at line 725 of file pt-eval.h.

Referenced by tree_index_expression::evaluate_n(), and tree_index_expression::lvalue().

◆ index_position()

int tree_evaluator::index_position ( void  ) const
inline

Definition at line 754 of file pt-eval.h.

Referenced by evaluate_end_expression().

◆ index_type()

const std::string& tree_evaluator::index_type ( void  ) const
inline

Definition at line 749 of file pt-eval.h.

Referenced by tree_index_expression::evaluate_n(), and tree_index_expression::lvalue().

◆ indexed_object()

octave_value tree_evaluator::indexed_object ( void  ) const
inline

Definition at line 715 of file pt-eval.h.

Referenced by tree_index_expression::evaluate_n(), and tree_index_expression::lvalue().

◆ install_variable()

void tree_evaluator::install_variable ( const std::string &  name,
const octave_value value,
bool  global 
)

Definition at line 1958 of file pt-eval.cc.

References call_stack::get_current_stack_frame(), and m_call_stack.

Referenced by interpreter::install_variable().

◆ is_class_constructor_executing()

bool tree_evaluator::is_class_constructor_executing ( std::string &  dispatch_class) const

Definition at line 2566 of file pt-eval.cc.

References call_stack::is_class_constructor_executing(), and m_call_stack.

◆ is_class_method_executing()

bool tree_evaluator::is_class_method_executing ( std::string &  dispatch_class) const

Definition at line 2560 of file pt-eval.cc.

References call_stack::is_class_method_executing(), and m_call_stack.

◆ is_defined() [1/2]

bool tree_evaluator::is_defined ( const symbol_record sym) const

Definition at line 1924 of file pt-eval.cc.

References call_stack::get_current_stack_frame(), and m_call_stack.

◆ is_defined() [2/2]

bool tree_evaluator::is_defined ( const tree_expression expr) const

◆ is_global()

bool tree_evaluator::is_global ( const std::string &  name) const

Definition at line 1932 of file pt-eval.cc.

References call_stack::get_current_stack_frame(), and m_call_stack.

Referenced by interpreter::isglobal().

◆ is_local_variable()

bool tree_evaluator::is_local_variable ( const std::string &  name) const

Definition at line 1875 of file pt-eval.cc.

References call_stack::get_current_stack_frame(), and m_call_stack.

Referenced by interpreter::is_local_variable().

◆ is_logically_true()

bool tree_evaluator::is_logically_true ( tree_expression expr,
const char *  warn_for 
)
private

◆ is_variable() [1/3]

bool tree_evaluator::is_variable ( const std::string &  name) const

◆ is_variable() [2/3]

bool tree_evaluator::is_variable ( const symbol_record sym) const

Definition at line 1915 of file pt-eval.cc.

References call_stack::get_current_stack_frame(), and m_call_stack.

◆ is_variable() [3/3]

bool tree_evaluator::is_variable ( const tree_expression expr) const

◆ keyboard()

void tree_evaluator::keyboard ( const std::string &  prompt = "keyboard> ")

Definition at line 1428 of file pt-eval.cc.

References enter_debugger().

◆ lookup_autoload()

std::string tree_evaluator::lookup_autoload ( const std::string &  nm) const

◆ lvalue_list()

const std::list<octave_lvalue>* tree_evaluator::lvalue_list ( void  ) const
inline

◆ make_fcn_handle()

◆ make_lvalue_list()

std::list< octave_lvalue > tree_evaluator::make_lvalue_list ( tree_argument_list lhs)

Definition at line 4781 of file pt-eval.cc.

Referenced by tree_multi_assignment::evaluate_n().

◆ make_value_list()

◆ max_recursion_depth() [1/3]

octave_value tree_evaluator::max_recursion_depth ( const octave_value_list args,
int  nargout 
)

Definition at line 4551 of file pt-eval.cc.

References m_max_recursion_depth, and set_internal_variable().

◆ max_recursion_depth() [2/3]

int tree_evaluator::max_recursion_depth ( int  n)
inline

Definition at line 598 of file pt-eval.h.

References n.

◆ max_recursion_depth() [3/3]

int tree_evaluator::max_recursion_depth ( void  ) const
inline

Definition at line 596 of file pt-eval.h.

Referenced by Fmax_recursion_depth(), and source_file().

◆ max_stack_depth()

octave_value tree_evaluator::max_stack_depth ( const octave_value_list args,
int  nargout 
)

Definition at line 2705 of file pt-eval.cc.

References m_call_stack, and call_stack::max_stack_depth().

Referenced by Fmax_stack_depth().

◆ maybe_push_echo_state_cleanup()

bool tree_evaluator::maybe_push_echo_state_cleanup ( void  )
private

Definition at line 4856 of file pt-eval.cc.

References call_stack::curr_fcn_unwind_protect_frame(), m_call_stack, and push_echo_state_cleanup().

Referenced by echo().

◆ maybe_set_echo_state()

◆ mfilename()

std::string tree_evaluator::mfilename ( const std::string &  opt = "") const

◆ mislocked()

bool tree_evaluator::mislocked ( bool  skip_first = false) const

◆ mlock()

void tree_evaluator::mlock ( bool  skip_first = false) const

◆ munlock()

void tree_evaluator::munlock ( bool  skip_first = false) const

◆ num_indices()

int tree_evaluator::num_indices ( void  ) const
inline

Definition at line 756 of file pt-eval.h.

Referenced by evaluate_end_expression().

◆ operator=()

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

◆ parse_and_execute()

◆ pop_scope()

◆ pop_stack_frame()

void tree_evaluator::pop_stack_frame ( void  )

◆ PS4() [1/3]

octave_value tree_evaluator::PS4 ( const octave_value_list args,
int  nargout 
)

Definition at line 5148 of file pt-eval.cc.

References m_PS4, and set_internal_variable().

Referenced by FPS4(), and interpreter::maximum_braindamage().

◆ PS4() [2/3]

std::string tree_evaluator::PS4 ( const std::string &  s)
inline

Definition at line 708 of file pt-eval.h.

◆ PS4() [3/3]

std::string tree_evaluator::PS4 ( void  ) const
inline

Definition at line 706 of file pt-eval.h.

◆ push_dummy_scope()

◆ push_echo_state()

void tree_evaluator::push_echo_state ( int  type,
const std::string &  file_name,
int  pos = 1 
)

◆ push_echo_state_cleanup()

void tree_evaluator::push_echo_state_cleanup ( unwind_protect frame)
private

◆ push_stack_frame() [1/5]

void tree_evaluator::push_stack_frame ( const symbol_scope scope)

◆ push_stack_frame() [2/5]

void tree_evaluator::push_stack_frame ( octave_function fcn)

Definition at line 2467 of file pt-eval.cc.

References m_call_stack, and call_stack::push().

◆ push_stack_frame() [3/5]

void tree_evaluator::push_stack_frame ( octave_user_function fcn,
const stack_frame::local_vars_map local_vars,
const std::shared_ptr< stack_frame > &  closure_frames = std::shared_ptr<stack_frame> () 
)

Definition at line 2455 of file pt-eval.cc.

References m_call_stack, and call_stack::push().

◆ push_stack_frame() [4/5]

void tree_evaluator::push_stack_frame ( octave_user_function fcn,
const std::shared_ptr< stack_frame > &  closure_frames = std::shared_ptr<stack_frame> () 
)

Definition at line 2449 of file pt-eval.cc.

References m_call_stack, and call_stack::push().

◆ push_stack_frame() [5/5]

void tree_evaluator::push_stack_frame ( octave_user_script script)

Definition at line 2462 of file pt-eval.cc.

References m_call_stack, and call_stack::push().

◆ quiet_breakpoint_flag() [1/2]

bool tree_evaluator::quiet_breakpoint_flag ( bool  flag)
inline

Definition at line 647 of file pt-eval.h.

◆ quiet_breakpoint_flag() [2/2]

bool tree_evaluator::quiet_breakpoint_flag ( void  ) const
inline

Definition at line 645 of file pt-eval.h.

Referenced by debugger::repl().

◆ quit_loop_now()

bool tree_evaluator::quit_loop_now ( void  )
private

◆ regexp_symbol_info()

symbol_info_list tree_evaluator::regexp_symbol_info ( const std::string &  pattern) const

Definition at line 4565 of file pt-eval.cc.

References m_call_stack, and call_stack::regexp_symbol_info().

◆ remove_autoload()

void tree_evaluator::remove_autoload ( const std::string &  fcn,
const std::string &  nm 
)

◆ remove_debug_watch_expression()

void tree_evaluator::remove_debug_watch_expression ( const std::string &  expr)
inline

Definition at line 685 of file pt-eval.h.

Referenced by interpreter::remove_debug_watch_expression().

◆ repl()

◆ reset_debug_state() [1/2]

void tree_evaluator::reset_debug_state ( bool  mode)

Definition at line 1372 of file pt-eval.cc.

References m_debug_mode.

◆ reset_debug_state() [2/2]

◆ restore_frame()

void tree_evaluator::restore_frame ( std::size_t  n)

Definition at line 2544 of file pt-eval.cc.

References m_call_stack, n, and call_stack::restore_frame().

Referenced by debugger::repl().

◆ returning() [1/2]

int tree_evaluator::returning ( int  n)
inline

Definition at line 790 of file pt-eval.h.

References n.

◆ returning() [2/2]

int tree_evaluator::returning ( void  ) const
inline

Definition at line 788 of file pt-eval.h.

Referenced by eval_string().

◆ reverse_lookup_autoload()

std::list< std::string > tree_evaluator::reverse_lookup_autoload ( const std::string &  nm) const

Definition at line 4631 of file pt-eval.cc.

References m_autoload_map.

◆ server_loop()

◆ server_mode() [1/2]

void tree_evaluator::server_mode ( bool  arg)
inline

Definition at line 189 of file pt-eval.h.

◆ server_mode() [2/2]

bool tree_evaluator::server_mode ( void  ) const
inline

Definition at line 187 of file pt-eval.h.

Referenced by debugger::server_loop().

◆ set_auto_fcn_var()

void tree_evaluator::set_auto_fcn_var ( stack_frame::auto_var_type  avt,
const octave_value val = octave_value () 
)

◆ set_break_on_next_statement()

void tree_evaluator::set_break_on_next_statement ( bool  val)
inline

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

◆ set_dbstep_flag()

void tree_evaluator::set_dbstep_flag ( int  step)
inline

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

◆ set_dispatch_class()

void tree_evaluator::set_dispatch_class ( const std::string &  class_name)

Definition at line 2554 of file pt-eval.cc.

References m_call_stack, and call_stack::set_dispatch_class().

Referenced by class_simple_fcn_handle::call().

◆ set_echo_state()

void tree_evaluator::set_echo_state ( int  type,
const std::string &  file_name,
int  pos 
)
private

Definition at line 4806 of file pt-eval.cc.

References echo_this_file(), m_echo_file_name, m_echo_file_pos, and m_echo_state.

Referenced by maybe_set_echo_state(), and push_echo_state().

◆ set_index_list()

void tree_evaluator::set_index_list ( const std::string &  index_type,
const std::list< octave_value_list > &  index_list 
)
inline

Definition at line 730 of file pt-eval.h.

Referenced by tree_index_expression::evaluate_n(), and tree_index_expression::lvalue().

◆ set_indexed_object()

void tree_evaluator::set_indexed_object ( const octave_value obj = octave_value ())
inline

Definition at line 720 of file pt-eval.h.

Referenced by tree_index_expression::evaluate_n(), and tree_index_expression::lvalue().

◆ set_lvalue_list()

void tree_evaluator::set_lvalue_list ( const std::list< octave_lvalue > *  lst)
inline

◆ set_parser()

void tree_evaluator::set_parser ( const std::shared_ptr< push_parser > &  parser)
inline

Definition at line 164 of file pt-eval.h.

Referenced by debugger::repl().

◆ silent_functions() [1/3]

bool tree_evaluator::silent_functions ( bool  b)
inline

Definition at line 610 of file pt-eval.h.

◆ silent_functions() [2/3]

octave_value tree_evaluator::silent_functions ( const octave_value_list args,
int  nargout 
)

Definition at line 4671 of file pt-eval.cc.

References m_silent_functions, and set_internal_variable().

◆ silent_functions() [3/3]

bool tree_evaluator::silent_functions ( void  ) const
inline

Definition at line 608 of file pt-eval.h.

Referenced by Fsilent_functions().

◆ source_file()

◆ statement_printing_enabled()

bool tree_evaluator::statement_printing_enabled ( void  )

◆ string_fill_char() [1/3]

char tree_evaluator::string_fill_char ( char  c)
inline

Definition at line 656 of file pt-eval.h.

◆ string_fill_char() [2/3]

octave_value tree_evaluator::string_fill_char ( const octave_value_list args,
int  nargout 
)

Definition at line 4678 of file pt-eval.cc.

References m_string_fill_char, and set_internal_variable().

◆ string_fill_char() [3/3]

char tree_evaluator::string_fill_char ( void  ) const
inline

Definition at line 654 of file pt-eval.h.

Referenced by tree_matrix::evaluate(), and Fstring_fill_char().

◆ switch_case_label_matches()

◆ top_level_assign()

void tree_evaluator::top_level_assign ( const std::string &  name,
const octave_value val = octave_value () 
)

Definition at line 1994 of file pt-eval.cc.

References m_call_stack, and call_stack::set_top_level_value().

Referenced by interpreter::top_level_assign().

◆ top_level_variable_names()

std::list< std::string > tree_evaluator::top_level_variable_names ( void  ) const

◆ top_level_varval()

octave_value tree_evaluator::top_level_varval ( const std::string &  name) const

Definition at line 1988 of file pt-eval.cc.

References call_stack::get_top_level_value(), and m_call_stack.

Referenced by interpreter::top_level_varval().

◆ top_scope_symbol_info()

symbol_info_list tree_evaluator::top_scope_symbol_info ( void  ) const

Definition at line 4577 of file pt-eval.cc.

References m_call_stack, and call_stack::top_scope_symbol_info().

Referenced by load_save_system::dump_octave_core().

◆ undefine_parameter_list()

void tree_evaluator::undefine_parameter_list ( tree_parameter_list param_list)

Definition at line 2241 of file pt-eval.cc.

References octave_lvalue::assign(), and octave_value::op_asn_eq.

◆ uwp_set_echo_state()

void tree_evaluator::uwp_set_echo_state ( bool  state,
const std::string &  file_name,
int  pos 
)
private

Definition at line 4815 of file pt-eval.cc.

References m_echo_file_name, m_echo_file_pos, m_echo_state, and state.

Referenced by push_echo_state_cleanup().

◆ variable_names()

std::list< std::string > tree_evaluator::variable_names ( void  ) const

Definition at line 2855 of file pt-eval.cc.

References m_call_stack, and call_stack::variable_names().

Referenced by interpreter::variable_names().

◆ varval() [1/2]

octave_value tree_evaluator::varval ( const std::string &  name) const

Definition at line 1950 of file pt-eval.cc.

References call_stack::get_current_stack_frame(), and m_call_stack.

◆ varval() [2/2]

octave_value tree_evaluator::varval ( const symbol_record sym) const

◆ visit_anon_fcn_handle()

void tree_evaluator::visit_anon_fcn_handle ( tree_anon_fcn_handle )
virtual

Reimplemented from tree_walker.

Definition at line 1244 of file pt-eval.cc.

References panic_impossible.

◆ visit_arg_size_spec()

void tree_evaluator::visit_arg_size_spec ( tree_arg_size_spec )
virtual

Reimplemented from tree_walker.

Definition at line 1280 of file pt-eval.cc.

References panic_impossible.

◆ visit_arg_validation()

void tree_evaluator::visit_arg_validation ( tree_arg_validation )
virtual

Reimplemented from tree_walker.

Definition at line 1274 of file pt-eval.cc.

References panic_impossible.

◆ visit_arg_validation_fcns()

void tree_evaluator::visit_arg_validation_fcns ( tree_arg_validation_fcns )
virtual

Reimplemented from tree_walker.

Definition at line 1286 of file pt-eval.cc.

References panic_impossible.

◆ visit_args_block_attribute_list()

void tree_evaluator::visit_args_block_attribute_list ( tree_args_block_attribute_list )
virtual

Reimplemented from tree_walker.

Definition at line 1262 of file pt-eval.cc.

References panic_impossible.

◆ visit_args_block_validation_list()

void tree_evaluator::visit_args_block_validation_list ( tree_args_block_validation_list )
virtual

Reimplemented from tree_walker.

Definition at line 1268 of file pt-eval.cc.

References panic_impossible.

◆ visit_argument_list()

void tree_evaluator::visit_argument_list ( tree_argument_list )
virtual

Reimplemented from tree_walker.

Definition at line 1250 of file pt-eval.cc.

References panic_impossible.

◆ visit_arguments_block()

void tree_evaluator::visit_arguments_block ( tree_arguments_block )
virtual

Reimplemented from tree_walker.

Definition at line 1256 of file pt-eval.cc.

References warning().

◆ visit_binary_expression()

void tree_evaluator::visit_binary_expression ( tree_binary_expression )
virtual

Reimplemented from tree_walker.

Definition at line 1292 of file pt-eval.cc.

References panic_impossible.

◆ visit_boolean_expression()

void tree_evaluator::visit_boolean_expression ( tree_boolean_expression )
virtual

Reimplemented from tree_walker.

Definition at line 1298 of file pt-eval.cc.

References panic_impossible.

◆ visit_break_command()

void tree_evaluator::visit_break_command ( tree_break_command cmd)
virtual

◆ visit_cell()

void tree_evaluator::visit_cell ( tree_cell )
virtual

Reimplemented from tree_walker.

Definition at line 3809 of file pt-eval.cc.

References panic_impossible.

◆ visit_classdef()

◆ visit_classdef_attribute()

void tree_walker::visit_classdef_attribute ( tree_classdef_attribute attr)
virtualinherited

◆ visit_classdef_attribute_list()

void tree_walker::visit_classdef_attribute_list ( tree_classdef_attribute_list lst)
virtualinherited

Definition at line 629 of file pt-walk.cc.

Referenced by tree_classdef_attribute_list::accept().

◆ visit_classdef_body()

void tree_walker::visit_classdef_body ( tree_classdef_body body)
virtualinherited

◆ visit_classdef_enum()

void tree_walker::visit_classdef_enum ( tree_classdef_enum )
virtualinherited

Definition at line 716 of file pt-walk.cc.

Referenced by tree_classdef_enum::accept().

◆ visit_classdef_enum_block()

void tree_walker::visit_classdef_enum_block ( tree_classdef_enum_block blk)
virtualinherited

◆ visit_classdef_enum_list()

void tree_walker::visit_classdef_enum_list ( tree_classdef_enum_list lst)
virtualinherited

Definition at line 721 of file pt-walk.cc.

Referenced by tree_classdef_enum_list::accept().

◆ visit_classdef_event()

void tree_walker::visit_classdef_event ( tree_classdef_event )
virtualinherited

Definition at line 694 of file pt-walk.cc.

Referenced by tree_classdef_event::accept().

◆ visit_classdef_events_block()

void tree_walker::visit_classdef_events_block ( tree_classdef_events_block blk)
virtualinherited

◆ visit_classdef_events_list()

void tree_walker::visit_classdef_events_list ( tree_classdef_events_list lst)
virtualinherited

Definition at line 699 of file pt-walk.cc.

Referenced by tree_classdef_events_list::accept().

◆ visit_classdef_methods_block()

void tree_walker::visit_classdef_methods_block ( tree_classdef_methods_block blk)
virtualinherited

◆ visit_classdef_methods_list()

void tree_walker::visit_classdef_methods_list ( tree_classdef_methods_list lst)
virtualinherited

◆ visit_classdef_properties_block()

void tree_walker::visit_classdef_properties_block ( tree_classdef_properties_block blk)
virtualinherited

◆ visit_classdef_property()

void tree_walker::visit_classdef_property ( tree_classdef_property )
virtualinherited

Definition at line 652 of file pt-walk.cc.

Referenced by tree_classdef_property::accept().

◆ visit_classdef_property_list()

void tree_walker::visit_classdef_property_list ( tree_classdef_property_list lst)
virtualinherited

Definition at line 658 of file pt-walk.cc.

Referenced by tree_classdef_property_list::accept().

◆ visit_classdef_superclass()

void tree_walker::visit_classdef_superclass ( tree_classdef_superclass )
virtualinherited

Definition at line 638 of file pt-walk.cc.

Referenced by tree_classdef_superclass::accept().

◆ visit_classdef_superclass_list()

void tree_walker::visit_classdef_superclass_list ( tree_classdef_superclass_list lst)
virtualinherited

Definition at line 643 of file pt-walk.cc.

Referenced by tree_classdef_superclass_list::accept().

◆ visit_colon_expression()

void tree_evaluator::visit_colon_expression ( tree_colon_expression )
virtual

Reimplemented from tree_walker.

Definition at line 1331 of file pt-eval.cc.

References panic_impossible.

◆ visit_complex_for_command()

◆ visit_compound_binary_expression()

void tree_evaluator::visit_compound_binary_expression ( tree_compound_binary_expression )
virtual

Reimplemented from tree_walker.

Definition at line 1304 of file pt-eval.cc.

References panic_impossible.

◆ visit_constant()

void tree_evaluator::visit_constant ( tree_constant )
virtual

Reimplemented from tree_walker.

Definition at line 3837 of file pt-eval.cc.

References panic_impossible.

◆ visit_continue_command()

void tree_evaluator::visit_continue_command ( tree_continue_command cmd)
virtual

◆ visit_decl_command()

void tree_evaluator::visit_decl_command ( tree_decl_command cmd)
virtual

◆ visit_decl_elt()

◆ visit_decl_init_list()

void tree_walker::visit_decl_init_list ( tree_decl_init_list lst)
virtualinherited

Reimplemented in tree_print_code, tree_breakpoint, and ctor_analyzer.

Definition at line 206 of file pt-walk.cc.

Referenced by tree_decl_init_list::accept().

◆ visit_do_until_command()

◆ visit_fcn_handle()

void tree_evaluator::visit_fcn_handle ( tree_fcn_handle )
virtual

Reimplemented from tree_walker.

Definition at line 3843 of file pt-eval.cc.

References panic_impossible.

◆ visit_function_def()

void tree_evaluator::visit_function_def ( tree_function_def cmd)
virtual

◆ visit_identifier()

void tree_evaluator::visit_identifier ( tree_identifier )
virtual

Reimplemented from tree_walker.

Definition at line 3738 of file pt-eval.cc.

References panic_impossible.

◆ visit_if_clause()

void tree_evaluator::visit_if_clause ( tree_if_clause )
virtual

Reimplemented from tree_walker.

Definition at line 3744 of file pt-eval.cc.

References panic_impossible.

◆ visit_if_command()

void tree_evaluator::visit_if_command ( tree_if_command cmd)
virtual

◆ visit_if_command_list()

void tree_evaluator::visit_if_command_list ( tree_if_command_list lst)
virtual

◆ visit_index_expression()

void tree_evaluator::visit_index_expression ( tree_index_expression )
virtual

Reimplemented from tree_walker.

Definition at line 3797 of file pt-eval.cc.

References panic_impossible.

◆ visit_matrix()

void tree_evaluator::visit_matrix ( tree_matrix )
virtual

Reimplemented from tree_walker.

Definition at line 3803 of file pt-eval.cc.

References panic_impossible.

◆ visit_metaclass_query()

void tree_evaluator::visit_metaclass_query ( tree_metaclass_query )
virtual

Reimplemented from tree_walker.

Definition at line 4412 of file pt-eval.cc.

References panic_impossible.

◆ visit_multi_assignment()

void tree_evaluator::visit_multi_assignment ( tree_multi_assignment )
virtual

Reimplemented from tree_walker.

Definition at line 3815 of file pt-eval.cc.

References panic_impossible.

◆ visit_no_op_command()

void tree_evaluator::visit_no_op_command ( tree_no_op_command cmd)
virtual

◆ visit_octave_user_function()

void tree_evaluator::visit_octave_user_function ( octave_user_function )
virtual

Reimplemented from tree_walker.

Definition at line 3697 of file pt-eval.cc.

References panic_impossible.

◆ visit_octave_user_function_header()

void tree_evaluator::visit_octave_user_function_header ( octave_user_function )

Definition at line 3704 of file pt-eval.cc.

References panic_impossible.

◆ visit_octave_user_function_trailer()

void tree_evaluator::visit_octave_user_function_trailer ( octave_user_function )

Definition at line 3710 of file pt-eval.cc.

References panic_impossible.

◆ visit_octave_user_script()

void tree_evaluator::visit_octave_user_script ( octave_user_script )
virtual

Reimplemented from tree_walker.

Definition at line 3530 of file pt-eval.cc.

References panic_impossible.

◆ visit_parameter_list()

void tree_evaluator::visit_parameter_list ( tree_parameter_list )
virtual

Reimplemented from tree_walker.

Definition at line 3849 of file pt-eval.cc.

References panic_impossible.

◆ visit_postfix_expression()

void tree_evaluator::visit_postfix_expression ( tree_postfix_expression )
virtual

Reimplemented from tree_walker.

Definition at line 3855 of file pt-eval.cc.

References panic_impossible.

◆ visit_prefix_expression()

void tree_evaluator::visit_prefix_expression ( tree_prefix_expression )
virtual

Reimplemented from tree_walker.

Definition at line 3861 of file pt-eval.cc.

References panic_impossible.

◆ visit_return_command()

◆ visit_simple_assignment()

void tree_evaluator::visit_simple_assignment ( tree_simple_assignment )
virtual

Reimplemented from tree_walker.

Definition at line 3892 of file pt-eval.cc.

References panic_impossible.

◆ visit_simple_for_command()

◆ visit_spmd_command()

void tree_evaluator::visit_spmd_command ( tree_spmd_command cmd)
virtual

Reimplemented from tree_walker.

Definition at line 3318 of file pt-eval.cc.

References tree_statement_list::accept(), and tree_spmd_command::body().

◆ visit_statement()

◆ visit_statement_list()

void tree_evaluator::visit_statement_list ( tree_statement_list lst)
virtual

◆ visit_superclass_ref()

void tree_evaluator::visit_superclass_ref ( tree_superclass_ref )
virtual

Reimplemented from tree_walker.

Definition at line 4406 of file pt-eval.cc.

References panic_impossible.

◆ visit_switch_case()

void tree_evaluator::visit_switch_case ( tree_switch_case )
virtual

Reimplemented from tree_walker.

Definition at line 4058 of file pt-eval.cc.

References panic_impossible.

◆ visit_switch_case_list()

void tree_evaluator::visit_switch_case_list ( tree_switch_case_list )
virtual

Reimplemented from tree_walker.

Definition at line 4064 of file pt-eval.cc.

References panic_impossible.

◆ visit_switch_command()

◆ visit_try_catch_command()

◆ visit_unwind_protect_command()

◆ visit_while_command()

◆ whos_line_format() [1/3]

octave_value tree_evaluator::whos_line_format ( const octave_value_list args,
int  nargout 
)

◆ whos_line_format() [2/3]

std::string tree_evaluator::whos_line_format ( const std::string &  s)
inline

Definition at line 621 of file pt-eval.h.

◆ whos_line_format() [3/3]

std::string tree_evaluator::whos_line_format ( void  ) const
inline

Definition at line 619 of file pt-eval.h.

Member Data Documentation

◆ m_autoload_map

std::map<std::string, std::string> tree_evaluator::m_autoload_map
private

◆ m_bp_table

bp_table tree_evaluator::m_bp_table
private

Definition at line 901 of file pt-eval.h.

Referenced by reset_debug_state(), and visit_statement().

◆ m_break_on_next_stmt

bool tree_evaluator::m_break_on_next_stmt
private

Definition at line 950 of file pt-eval.h.

Referenced by do_breakpoint(), and reset_debug_state().

◆ m_breaking

int tree_evaluator::m_breaking
private

◆ m_call_stack

call_stack tree_evaluator::m_call_stack
private

Definition at line 903 of file pt-eval.h.

Referenced by assign(), assignin(), at_top_level(), backtrace(), backtrace_frames(), backtrace_info(), caller_function(), check_autoload_file(), clear_global_variable(), clear_global_variable_pattern(), clear_global_variable_regexp(), clear_global_variables(), clear_objects(), clear_variable(), clear_variable_pattern(), clear_variable_regexp(), clear_variables(), curr_fcn_unwind_protect_frame(), current_column(), current_function(), current_function_name(), current_line(), current_user_code(), dbupdown(), debug_user_code(), debug_user_code_column(), debug_user_code_line(), debug_where(), display_call_stack(), do_breakpoint(), do_unwind_protect_cleanup_code(), do_who(), echo_code(), empty_backtrace(), enter_debugger(), evalin(), evaluate_anon_fcn_handle(), evaluate_end_expression(), execute_user_function(), execute_user_script(), find(), get_auto_fcn_var(), get_current_scope(), get_dispatch_class(), get_symbol_info(), get_top_scope(), get_user_code(), glob_symbol_info(), global_assign(), global_variable_names(), global_varref(), global_varval(), goto_base_frame(), goto_caller_frame(), goto_frame(), in_user_code(), install_variable(), is_class_constructor_executing(), is_class_method_executing(), is_defined(), is_global(), is_local_variable(), is_logically_true(), is_variable(), make_fcn_handle(), max_stack_depth(), maybe_push_echo_state_cleanup(), maybe_set_echo_state(), mfilename(), mislocked(), mlock(), munlock(), pop_scope(), pop_stack_frame(), push_dummy_scope(), push_echo_state(), push_stack_frame(), regexp_symbol_info(), restore_frame(), set_auto_fcn_var(), set_dispatch_class(), source_file(), top_level_assign(), top_level_variable_names(), top_level_varval(), top_scope_symbol_info(), variable_names(), varval(), visit_decl_elt(), visit_if_command_list(), visit_return_command(), and visit_statement().

◆ m_continuing

int tree_evaluator::m_continuing
private

Definition at line 991 of file pt-eval.h.

Referenced by quit_loop_now(), visit_continue_command(), and visit_statement_list().

◆ m_dbstep_flag

int tree_evaluator::m_dbstep_flag
private

Definition at line 946 of file pt-eval.h.

Referenced by do_breakpoint(), and reset_debug_state().

◆ m_debug_frame

std::size_t tree_evaluator::m_debug_frame
private

◆ m_debug_mode

◆ m_debug_watch_expressions

std::set<std::string> tree_evaluator::m_debug_watch_expressions
private

Definition at line 921 of file pt-eval.h.

◆ m_debugger_stack

std::stack<debugger *> tree_evaluator::m_debugger_stack
private

Definition at line 919 of file pt-eval.h.

Referenced by dbcont(), dbquit(), enter_debugger(), and in_debug_repl().

◆ m_echo

int tree_evaluator::m_echo
private

Definition at line 958 of file pt-eval.h.

Referenced by echo(), and echo_this_file().

◆ m_echo_file_name

std::string tree_evaluator::m_echo_file_name
private

Definition at line 964 of file pt-eval.h.

Referenced by push_echo_state_cleanup(), set_echo_state(), and uwp_set_echo_state().

◆ m_echo_file_pos

◆ m_echo_files

std::map<std::string, bool> tree_evaluator::m_echo_files
private

Definition at line 976 of file pt-eval.h.

Referenced by echo(), and echo_this_file().

◆ m_echo_state

◆ m_exit_status

int tree_evaluator::m_exit_status
private

Definition at line 923 of file pt-eval.h.

Referenced by parse_and_execute(), and server_loop().

◆ m_in_loop_command

◆ m_in_top_level_repl

bool tree_evaluator::m_in_top_level_repl
private

Definition at line 979 of file pt-eval.h.

Referenced by parse_and_execute(), and repl().

◆ m_index_list

std::list<octave_value_list> tree_evaluator::m_index_list
private

Definition at line 999 of file pt-eval.h.

Referenced by evaluate_end_expression().

◆ m_index_position

int tree_evaluator::m_index_position
private

Definition at line 1001 of file pt-eval.h.

Referenced by evaluate_end_expression(), and make_value_list().

◆ m_index_type

std::string tree_evaluator::m_index_type
private

Definition at line 1000 of file pt-eval.h.

Referenced by evaluate_end_expression().

◆ m_indexed_object

octave_value tree_evaluator::m_indexed_object
private

Definition at line 998 of file pt-eval.h.

Referenced by evaluate_end_expression().

◆ m_interpreter

◆ m_lvalue_list

const std::list<octave_lvalue>* tree_evaluator::m_lvalue_list
private

Definition at line 896 of file pt-eval.h.

Referenced by ignored_fcn_outputs(), make_value_list(), and visit_statement().

◆ m_max_recursion_depth

int tree_evaluator::m_max_recursion_depth
private

Definition at line 927 of file pt-eval.h.

Referenced by execute_user_function(), execute_user_script(), and max_recursion_depth().

◆ m_num_indices

int tree_evaluator::m_num_indices
private

Definition at line 1002 of file pt-eval.h.

Referenced by evaluate_end_expression(), and make_value_list().

◆ m_parser

std::shared_ptr<push_parser> tree_evaluator::m_parser
private

Definition at line 891 of file pt-eval.h.

Referenced by get_line_and_eval(), parse_and_execute(), and server_loop().

◆ m_profiler

profiler tree_evaluator::m_profiler
private

◆ m_PS4

std::string tree_evaluator::m_PS4
private

Definition at line 940 of file pt-eval.h.

Referenced by echo_code(), and PS4().

◆ m_quiet_breakpoint_flag

bool tree_evaluator::m_quiet_breakpoint_flag
private

Definition at line 912 of file pt-eval.h.

◆ m_returning

int tree_evaluator::m_returning
private

◆ m_server_mode

bool tree_evaluator::m_server_mode
private

Definition at line 982 of file pt-eval.h.

Referenced by server_loop().

◆ m_silent_functions

bool tree_evaluator::m_silent_functions
private

Definition at line 934 of file pt-eval.h.

Referenced by silent_functions(), and statement_printing_enabled().

◆ m_statement_context

stmt_list_type tree_evaluator::m_statement_context
private

◆ m_string_fill_char

char tree_evaluator::m_string_fill_char
private

Definition at line 937 of file pt-eval.h.

Referenced by string_fill_char().

◆ m_whos_line_format

std::string tree_evaluator::m_whos_line_format
private

Definition at line 930 of file pt-eval.h.

Referenced by whos_line_format().


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