Mercurial > octave
diff libinterp/octave-value/ov-fcn.h @ 28439:e760fef2829c stable
refactor octave_fcn_handle class
* ov-fcn-handle.h, ov-fcn-handle.cc (class octave_fcn_handle):
split octave_fcn_handle internally into separate sub-classes for the
following types of function handles: simple, scoped, nested,
classsimple, and anonymous. Update all uses.
* load-path.cc (load_path::package_info::find_private_fcn):
Don't search for private files that are not already in the private
function map.
* ls-mat5.cc (read_mat5_binary_element): Update handling of local
variables for anonymous functions.
* stack-frame.h, stack-frame.cc (stack_frame::set_closure_links,
stack_frame::dup, compiled_fcn_stack_frame::dup,
script_stack_frame::dup, user_fcn_stack_frame::dup,
scope_stack_frame::dup): Delete unnecessary functions.
* ov-fcn.h (octave_function::is_nested_function,
octave_function::is_parent_function): New virtual functions.
author | John W. Eaton <jwe@octave.org> |
---|---|
date | Wed, 29 Apr 2020 14:10:27 -0400 |
parents | 71c34141cc2d |
children | b743a63e2dab fab862fedf85 |
line wrap: on
line diff
--- a/libinterp/octave-value/ov-fcn.h Wed Jun 10 17:01:31 2020 -0400 +++ b/libinterp/octave-value/ov-fcn.h Wed Apr 29 14:10:27 2020 -0400 @@ -104,6 +104,10 @@ virtual int call_depth (void) const { return 0; } + virtual bool is_nested_function (void) const { return false; } + + virtual bool is_parent_function (void) const { return false; } + virtual bool is_subfunction (void) const { return false; } bool is_class_constructor (const std::string& cname = "") const