diff libinterp/octave-value/ov-fcn-handle.h @ 28433:d05a4194f1ad stable

move make_fcn_handle to tree_evaluator class * pt-eval.h, pt-eval.cc (tree_evaluator::make_fcn_handle): New function. Change all uses of global make_fcn_handle to use this member function instead. (get_operator_function_name): New function. * ov-fcn-handle.h, ov-fcn-handle.cc (make_fcn_handle): Deprecate. Now a wrapper for tree_evaluator::make_fcn_handle. (octave_fcn_handle::octave_fcn_handle (const std::string& name)): New constructor. * interpreter.h, interpreter.cc (interpreter::make_function_handle): New function.
author John W. Eaton <jwe@octave.org>
date Wed, 15 Apr 2020 23:14:06 -0400
parents 5bfa8e018704
children e760fef2829c
line wrap: on
line diff
--- a/libinterp/octave-value/ov-fcn-handle.h	Fri Apr 03 22:00:06 2020 -0400
+++ b/libinterp/octave-value/ov-fcn-handle.h	Wed Apr 15 23:14:06 2020 -0400
@@ -59,16 +59,29 @@
       m_closure_frames (), m_local_vars (nullptr), m_dispatch_class ()
   { }
 
-  octave_fcn_handle (const octave::symbol_scope& scope, const std::string& n);
+  // OCTAVE_DEPRECATED (6, "foobar-1")
+  octave_fcn_handle (const std::string& name);
 
+  // OCTAVE_DEPRECATED (6, "foobar-2")
+  octave_fcn_handle (const octave::symbol_scope& scope,
+                     const std::string& name);
+
+  // OCTAVE_DEPRECATED (6, "foobar-3")
   octave_fcn_handle (const octave::symbol_scope& scope,
-                     const octave_value& f, const std::string& n);
+                     const octave_value& f, const std::string& name);
+
+  // OCTAVE_DEPRECATED (6, "foobar-4")
+  octave_fcn_handle (const octave_value& f, const std::string& name);
 
-  octave_fcn_handle (const octave_value& f, const std::string& n);
+  // OCTAVE_DEPRECATED (6, "foobar-5")
+  octave_fcn_handle (const octave_value& fcn, const std::string& name,
+                     const std::list<std::string>& parentage);
 
-  octave_fcn_handle (const octave_value& f,
+  // OCTAVE_DEPRECATED (6, "foobar-6")
+  octave_fcn_handle (const octave_value& fcn,
                      const octave::stack_frame::local_vars_map& local_vars);
 
+  // OCTAVE_DEPRECATED (6, "foobar-7")
   octave_fcn_handle (const octave_fcn_handle& fh);
 
   ~octave_fcn_handle (void);
@@ -202,6 +215,7 @@
 
 namespace octave
 {
+  OCTAVE_DEPRECATED (6, "use 'tree_evaluator::make_fcn_handle' instead")
   extern octave_value
   make_fcn_handle (interpreter& interp, const std::string& name);
 }