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

#include "pt-eval.h"

Inheritance diagram for octave::tree_evaluator:
Collaboration diagram for octave::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 { function, script, other }
 

Public Member Functions

 tree_evaluator (interpreter &interp)
 
 tree_evaluator (const tree_evaluator &)=delete
 
 ~tree_evaluator (void)=default
 
void bind_ans (const octave_value &val, bool print)
 
octave_value_list convert_return_list_to_const_vector (tree_parameter_list *ret_list, int nargout, const Cell &varargout)
 
void define_parameter_list_from_arg_vector (tree_parameter_list *param_list, const octave_value_list &args)
 
void do_unwind_protect_cleanup_code (tree_statement_list *list)
 
octave_value echo (const octave_value_list &args, int nargout)
 
int echo (void) const
 
int echo (int val)
 
bool eval_decl_elt (tree_decl_elt *elt)
 
octave_value evaluate (tree_expression *expr, int nargout=1)
 
octave_value evaluate (tree_decl_elt *)
 
octave_value_list evaluate_n (tree_expression *expr, int nargout=1)
 
call_stackget_call_stack (void)
 
symbol_scope get_current_scope (void)
 
profilerget_profiler (void)
 
Matrix ignored_fcn_outputs (void) const
 
bool isargout (int nargout, int iout) const
 
void isargout (int nargout, int nout, bool *isargout) const
 
const std::list< octave_lvalue > * lvalue_list (void) const
 
int max_recursion_depth (void) const
 
int max_recursion_depth (int n)
 
octave_value max_recursion_depth (const octave_value_list &args, int nargout)
 
tree_evaluatoroperator= (const tree_evaluator &)=delete
 
octave_value PS4 (const octave_value_list &args, int nargout)
 
std::string PS4 (void) const
 
std::string PS4 (const std::string &s)
 
void push_echo_state (unwind_protect &frame, int type, const std::string &file_name, size_t pos=1)
 
void push_result (const octave_value &val)
 
void push_result (const octave_value_list &vals)
 
void reset (void)
 
bool silent_functions (void) const
 
bool silent_functions (bool b)
 
octave_value silent_functions (const octave_value_list &args, int nargout)
 
bool statement_printing_enabled (void)
 
char string_fill_char (void) const
 
char string_fill_char (char c)
 
octave_value string_fill_char (const octave_value_list &args, int nargout)
 
bool switch_case_label_matches (tree_switch_case *expr, const octave_value &val)
 
void undefine_parameter_list (tree_parameter_list *param_list)
 
void visit_anon_fcn_handle (tree_anon_fcn_handle &)
 
void visit_argument_list (tree_argument_list &)
 
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 &)
 
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_funcall (tree_funcall &)
 
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_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_return_list (tree_return_list &)
 
void visit_simple_assignment (tree_simple_assignment &)
 
void visit_simple_for_command (tree_simple_for_command &)
 
void visit_statement (tree_statement &)
 
void visit_statement_list (tree_statement_list &)
 
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 &)
 

Static Public Member Functions

static void reset_debug_state (void)
 

Static Public Attributes

static size_t current_frame = 0
 
static int dbstep_flag = 0
 
static bool debug_mode = false
 
static bool in_loop_command = false
 
static bool quiet_breakpoint_flag = false
 
static stmt_list_type statement_context = tree_evaluator::other
 

Private Member Functions

void do_breakpoint (tree_statement &stmt) const
 
void do_breakpoint (bool is_breakpoint, bool is_end_of_fcn_or_script=false) const
 
virtual octave_value do_keyboard (const octave_value_list &args=octave_value_list()) const
 
void echo_code (size_t line)
 
bool echo_this_file (const std::string &file, int type) const
 
bool is_logically_true (tree_expression *expr, const char *warn_for)
 
std::list< octave_lvaluemake_lvalue_list (tree_argument_list *)
 
octave_value_list make_value_list (tree_argument_list *args, const string_vector &arg_nm, const octave_value *object, bool rvalue=true)
 
bool maybe_push_echo_state_cleanup (void)
 
void maybe_set_echo_state (void)
 
void push_echo_state_cleanup (unwind_protect &frame)
 
void set_echo_file_name (const std::string &file_name)
 
void set_echo_file_pos (const size_t &file_pos)
 
void set_echo_state (int type, const std::string &file_name, size_t pos)
 
void set_echo_state (bool val)
 

Private Attributes

call_stack m_call_stack
 
int m_echo
 
std::string m_echo_file_name
 
size_t m_echo_file_pos
 
std::map< std::string, boolm_echo_files
 
bool m_echo_state
 
octave_value m_expr_result_value
 
octave_value_list m_expr_result_value_list
 
interpreterm_interpreter
 
value_stack< const std::list< octave_lvalue > * > m_lvalue_list_stack
 
int m_max_recursion_depth
 
value_stack< int > m_nargout_stack
 
profiler m_profiler
 
std::string m_PS4
 
result_type m_result_type
 
bool m_silent_functions
 
char m_string_fill_char
 

Detailed Description

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

Member Typedef Documentation

◆ decl_elt_init_fcn

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

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

Member Enumeration Documentation

◆ echo_state

Enumerator
ECHO_OFF 
ECHO_SCRIPTS 
ECHO_FUNCTIONS 
ECHO_ALL 

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

◆ stmt_list_type

Enumerator
function 
script 
other 

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

Constructor & Destructor Documentation

◆ tree_evaluator() [1/2]

octave::tree_evaluator::tree_evaluator ( interpreter interp)
inline

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

◆ tree_evaluator() [2/2]

octave::tree_evaluator::tree_evaluator ( const tree_evaluator )
delete

◆ ~tree_evaluator()

octave::tree_evaluator::~tree_evaluator ( void  )
default

Member Function Documentation

◆ bind_ans()

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

◆ convert_return_list_to_const_vector()

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

◆ define_parameter_list_from_arg_vector()

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

◆ do_breakpoint() [1/2]

◆ do_breakpoint() [2/2]

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

◆ do_keyboard()

octave_value octave::tree_evaluator::do_keyboard ( const octave_value_list args = octave_value_list ()) const
privatevirtual

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

References do_keyboard().

Referenced by do_breakpoint().

◆ do_unwind_protect_cleanup_code()

◆ echo() [1/3]

◆ echo() [2/3]

int octave::tree_evaluator::echo ( void  ) const
inline

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

◆ echo() [3/3]

int octave::tree_evaluator::echo ( int  val)
inline

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

References val.

◆ echo_code()

◆ echo_this_file()

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

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

References ECHO_ALL, ECHO_FUNCTIONS, ECHO_SCRIPTS, file, m_echo, m_echo_files, p, and type.

Referenced by set_echo_state().

◆ eval_decl_elt()

◆ evaluate() [1/2]

◆ evaluate() [2/2]

octave_value octave::tree_evaluator::evaluate ( tree_decl_elt elt)

◆ evaluate_n()

octave_value_list octave::tree_evaluator::evaluate_n ( tree_expression expr,
int  nargout = 1 
)
inline

◆ get_call_stack()

call_stack& octave::tree_evaluator::get_call_stack ( void  )
inline

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

◆ get_current_scope()

◆ get_profiler()

profiler& octave::tree_evaluator::get_profiler ( void  )
inline

◆ ignored_fcn_outputs()

Matrix octave::tree_evaluator::ignored_fcn_outputs ( void  ) const

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

References k, lvalue_list(), octave_value::resize(), and retval.

Referenced by octave_user_function::bind_automatic_vars().

◆ is_logically_true()

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

◆ isargout() [1/2]

bool octave::tree_evaluator::isargout ( int  nargout,
int  iout 
) const

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

References k, lvalue_list(), max(), and nargout().

Referenced by defun_isargout(), and isargout().

◆ isargout() [2/2]

void octave::tree_evaluator::isargout ( int  nargout,
int  nout,
bool isargout 
) const

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

References i, isargout(), k, lvalue_list(), max(), min(), and nargout().

◆ lvalue_list()

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

◆ make_lvalue_list()

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

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

References retval.

Referenced by visit_multi_assignment().

◆ make_value_list()

◆ max_recursion_depth() [1/3]

int octave::tree_evaluator::max_recursion_depth ( void  ) const
inline

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

Referenced by octave_user_script::call(), and octave_user_function::call().

◆ max_recursion_depth() [2/3]

int octave::tree_evaluator::max_recursion_depth ( int  n)
inline

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

References val.

◆ max_recursion_depth() [3/3]

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

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

References m_max_recursion_depth, nargout(), and set_internal_variable().

◆ maybe_push_echo_state_cleanup()

bool octave::tree_evaluator::maybe_push_echo_state_cleanup ( void  )
private

◆ maybe_set_echo_state()

◆ operator=()

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

◆ PS4() [1/3]

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

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

References m_PS4, nargout(), and set_internal_variable().

◆ PS4() [2/3]

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

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

◆ PS4() [3/3]

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

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

References s, string, and val.

◆ push_echo_state()

void octave::tree_evaluator::push_echo_state ( unwind_protect frame,
int  type,
const std::string file_name,
size_t  pos = 1 
)

◆ push_echo_state_cleanup()

void octave::tree_evaluator::push_echo_state_cleanup ( unwind_protect frame)
private

◆ push_result() [1/2]

◆ push_result() [2/2]

void octave::tree_evaluator::push_result ( const octave_value_list vals)
inline

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

References octave::RT_VALUE_LIST.

◆ reset()

◆ reset_debug_state()

void octave::tree_evaluator::reset_debug_state ( void  )
static

◆ set_echo_file_name()

void octave::tree_evaluator::set_echo_file_name ( const std::string file_name)
inlineprivate

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

Referenced by push_echo_state_cleanup().

◆ set_echo_file_pos()

void octave::tree_evaluator::set_echo_file_pos ( const size_t file_pos)
inlineprivate

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

Referenced by push_echo_state_cleanup().

◆ set_echo_state() [1/2]

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

◆ set_echo_state() [2/2]

void octave::tree_evaluator::set_echo_state ( bool  val)
inlineprivate

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

References val.

◆ silent_functions() [1/3]

bool octave::tree_evaluator::silent_functions ( void  ) const
inline

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

◆ silent_functions() [2/3]

bool octave::tree_evaluator::silent_functions ( bool  b)
inline

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

References b, and val.

◆ silent_functions() [3/3]

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

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

References m_silent_functions, nargout(), and set_internal_variable().

◆ statement_printing_enabled()

bool octave::tree_evaluator::statement_printing_enabled ( void  )

◆ string_fill_char() [1/3]

char octave::tree_evaluator::string_fill_char ( void  ) const
inline

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

Referenced by octave_user_function::bind_automatic_vars().

◆ string_fill_char() [2/3]

char octave::tree_evaluator::string_fill_char ( char  c)
inline

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

References c, and val.

◆ string_fill_char() [3/3]

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

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

References m_string_fill_char, nargout(), and set_internal_variable().

◆ switch_case_label_matches()

bool octave::tree_evaluator::switch_case_label_matches ( tree_switch_case expr,
const octave_value val 
)

◆ undefine_parameter_list()

void octave::tree_evaluator::undefine_parameter_list ( tree_parameter_list param_list)

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

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

Referenced by octave_user_function::call().

◆ visit_anon_fcn_handle()

◆ visit_argument_list()

void octave::tree_evaluator::visit_argument_list ( tree_argument_list )
virtual

Implements octave::tree_walker.

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

References panic_impossible.

◆ visit_binary_expression()

◆ visit_boolean_expression()

◆ visit_break_command()

void octave::tree_evaluator::visit_break_command ( tree_break_command cmd)
virtual

◆ visit_cell()

void octave::tree_evaluator::visit_cell ( tree_cell expr)
virtual

◆ visit_classdef()

virtual void octave::tree_walker::visit_classdef ( tree_classdef )
inlinevirtualinherited

Definition at line 294 of file pt-walk.h.

Referenced by octave::tree_classdef::accept().

◆ visit_classdef_attribute()

virtual void octave::tree_walker::visit_classdef_attribute ( tree_classdef_attribute )
inlinevirtualinherited

Definition at line 246 of file pt-walk.h.

Referenced by octave::tree_classdef_attribute::accept().

◆ visit_classdef_attribute_list()

virtual void octave::tree_walker::visit_classdef_attribute_list ( tree_classdef_attribute_list )
inlinevirtualinherited

Definition at line 249 of file pt-walk.h.

Referenced by octave::tree_classdef_attribute_list::accept().

◆ visit_classdef_body()

virtual void octave::tree_walker::visit_classdef_body ( tree_classdef_body )
inlinevirtualinherited

Definition at line 291 of file pt-walk.h.

Referenced by octave::tree_classdef_body::accept().

◆ visit_classdef_enum()

virtual void octave::tree_walker::visit_classdef_enum ( tree_classdef_enum )
inlinevirtualinherited

Definition at line 282 of file pt-walk.h.

Referenced by octave::tree_classdef_enum::accept().

◆ visit_classdef_enum_block()

virtual void octave::tree_walker::visit_classdef_enum_block ( tree_classdef_enum_block )
inlinevirtualinherited

Definition at line 288 of file pt-walk.h.

Referenced by octave::tree_classdef_enum_block::accept().

◆ visit_classdef_enum_list()

virtual void octave::tree_walker::visit_classdef_enum_list ( tree_classdef_enum_list )
inlinevirtualinherited

Definition at line 285 of file pt-walk.h.

Referenced by octave::tree_classdef_enum_list::accept().

◆ visit_classdef_event()

virtual void octave::tree_walker::visit_classdef_event ( tree_classdef_event )
inlinevirtualinherited

Definition at line 273 of file pt-walk.h.

Referenced by octave::tree_classdef_event::accept().

◆ visit_classdef_events_block()

virtual void octave::tree_walker::visit_classdef_events_block ( tree_classdef_events_block )
inlinevirtualinherited

Definition at line 279 of file pt-walk.h.

Referenced by octave::tree_classdef_events_block::accept().

◆ visit_classdef_events_list()

virtual void octave::tree_walker::visit_classdef_events_list ( tree_classdef_events_list )
inlinevirtualinherited

Definition at line 276 of file pt-walk.h.

Referenced by octave::tree_classdef_events_list::accept().

◆ visit_classdef_methods_block()

virtual void octave::tree_walker::visit_classdef_methods_block ( tree_classdef_methods_block )
inlinevirtualinherited

Definition at line 270 of file pt-walk.h.

Referenced by octave::tree_classdef_methods_block::accept().

◆ visit_classdef_methods_list()

virtual void octave::tree_walker::visit_classdef_methods_list ( tree_classdef_methods_list )
inlinevirtualinherited

Definition at line 267 of file pt-walk.h.

Referenced by octave::tree_classdef_methods_list::accept().

◆ visit_classdef_properties_block()

virtual void octave::tree_walker::visit_classdef_properties_block ( tree_classdef_properties_block )
inlinevirtualinherited

Definition at line 264 of file pt-walk.h.

Referenced by octave::tree_classdef_properties_block::accept().

◆ visit_classdef_property()

virtual void octave::tree_walker::visit_classdef_property ( tree_classdef_property )
inlinevirtualinherited

Definition at line 258 of file pt-walk.h.

Referenced by octave::tree_classdef_property::accept().

◆ visit_classdef_property_list()

virtual void octave::tree_walker::visit_classdef_property_list ( tree_classdef_property_list )
inlinevirtualinherited

Definition at line 261 of file pt-walk.h.

Referenced by octave::tree_classdef_property_list::accept().

◆ visit_classdef_superclass()

virtual void octave::tree_walker::visit_classdef_superclass ( tree_classdef_superclass )
inlinevirtualinherited

Definition at line 252 of file pt-walk.h.

Referenced by octave::tree_classdef_superclass::accept().

◆ visit_classdef_superclass_list()

virtual void octave::tree_walker::visit_classdef_superclass_list ( tree_classdef_superclass_list )
inlinevirtualinherited

Definition at line 255 of file pt-walk.h.

Referenced by octave::tree_classdef_superclass_list::accept().

◆ visit_colon_expression()

◆ visit_complex_for_command()

◆ visit_compound_binary_expression()

◆ visit_constant()

void octave::tree_evaluator::visit_constant ( tree_constant expr)
virtual

◆ visit_continue_command()

void octave::tree_evaluator::visit_continue_command ( tree_continue_command cmd)
virtual

◆ visit_decl_command()

◆ visit_decl_elt()

◆ visit_decl_init_list()

void octave::tree_evaluator::visit_decl_init_list ( tree_decl_init_list lst)
virtual

Implements octave::tree_walker.

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

◆ visit_do_until_command()

◆ visit_fcn_handle()

void octave::tree_evaluator::visit_fcn_handle ( tree_fcn_handle expr)
virtual

Implements octave::tree_walker.

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

References make_fcn_handle(), octave::tree_fcn_handle::name(), nm, push_result(), and string.

◆ visit_funcall()

◆ visit_function_def()

◆ visit_identifier()

◆ visit_if_clause()

void octave::tree_evaluator::visit_if_clause ( tree_if_clause )
virtual

Implements octave::tree_walker.

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

References panic_impossible.

◆ visit_if_command()

void octave::tree_evaluator::visit_if_command ( tree_if_command cmd)
virtual

◆ visit_if_command_list()

void octave::tree_evaluator::visit_if_command_list ( tree_if_command_list lst)
virtual

◆ visit_index_expression()

◆ visit_matrix()

◆ visit_multi_assignment()

◆ visit_no_op_command()

void octave::tree_evaluator::visit_no_op_command ( tree_no_op_command cmd)
virtual

◆ visit_octave_user_function()

void octave::tree_evaluator::visit_octave_user_function ( octave_user_function )
virtual

Implements octave::tree_walker.

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

References panic_impossible.

◆ visit_octave_user_function_header()

void octave::tree_evaluator::visit_octave_user_function_header ( octave_user_function )

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

References panic_impossible.

◆ visit_octave_user_function_trailer()

void octave::tree_evaluator::visit_octave_user_function_trailer ( octave_user_function )

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

References panic_impossible.

◆ visit_octave_user_script()

void octave::tree_evaluator::visit_octave_user_script ( octave_user_script )
virtual

Implements octave::tree_walker.

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

References panic_impossible.

◆ visit_parameter_list()

void octave::tree_evaluator::visit_parameter_list ( tree_parameter_list )
virtual

Implements octave::tree_walker.

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

References panic_impossible.

◆ visit_postfix_expression()

◆ visit_prefix_expression()

◆ visit_return_command()

◆ visit_return_list()

void octave::tree_evaluator::visit_return_list ( tree_return_list )
virtual

Implements octave::tree_walker.

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

References panic_impossible.

◆ visit_simple_assignment()

◆ visit_simple_for_command()

◆ visit_statement()

◆ visit_statement_list()

◆ visit_switch_case()

void octave::tree_evaluator::visit_switch_case ( tree_switch_case )
virtual

Implements octave::tree_walker.

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

References panic_impossible.

◆ visit_switch_case_list()

void octave::tree_evaluator::visit_switch_case_list ( tree_switch_case_list )
virtual

Implements octave::tree_walker.

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

References panic_impossible.

◆ visit_switch_command()

◆ visit_try_catch_command()

◆ visit_unwind_protect_command()

◆ visit_while_command()

Member Data Documentation

◆ current_frame

size_t octave::tree_evaluator::current_frame = 0
static

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

Referenced by do_breakpoint(), maybe_enter_debugger(), visit_return_command(), and warning_1().

◆ dbstep_flag

int octave::tree_evaluator::dbstep_flag = 0
static

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

Referenced by do_breakpoint(), and reset_debug_state().

◆ debug_mode

◆ in_loop_command

◆ m_call_stack

◆ m_echo

int octave::tree_evaluator::m_echo
private

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

Referenced by echo(), and echo_this_file().

◆ m_echo_file_name

std::string octave::tree_evaluator::m_echo_file_name
private

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

Referenced by push_echo_state_cleanup(), and set_echo_state().

◆ m_echo_file_pos

◆ m_echo_files

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

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

Referenced by echo(), and echo_this_file().

◆ m_echo_state

◆ m_expr_result_value

octave_value octave::tree_evaluator::m_expr_result_value
private

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

Referenced by reset().

◆ m_expr_result_value_list

octave_value_list octave::tree_evaluator::m_expr_result_value_list
private

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

Referenced by reset().

◆ m_interpreter

◆ m_lvalue_list_stack

value_stack<const std::list<octave_lvalue>*> octave::tree_evaluator::m_lvalue_list_stack
private

◆ m_max_recursion_depth

int octave::tree_evaluator::m_max_recursion_depth
private

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

Referenced by max_recursion_depth().

◆ m_nargout_stack

value_stack<int> octave::tree_evaluator::m_nargout_stack
private

◆ m_profiler

profiler octave::tree_evaluator::m_profiler
private

◆ m_PS4

std::string octave::tree_evaluator::m_PS4
private

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

Referenced by echo_code(), and PS4().

◆ m_result_type

result_type octave::tree_evaluator::m_result_type
private

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

Referenced by reset().

◆ m_silent_functions

bool octave::tree_evaluator::m_silent_functions
private

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

Referenced by silent_functions(), and statement_printing_enabled().

◆ m_string_fill_char

char octave::tree_evaluator::m_string_fill_char
private

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

Referenced by string_fill_char(), and visit_matrix().

◆ quiet_breakpoint_flag

bool octave::tree_evaluator::quiet_breakpoint_flag = false
static

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

◆ statement_context


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