23 #if !defined (octave_ov_usr_fcn_h)
24 #define octave_ov_usr_fcn_h 1
62 virtual std::map<std::string, octave_value> subfunctions (
void)
const;
69 const std::string& ds = std::string ())
92 const std::string& ds = std::string ());
95 const std::string& ds = std::string ());
117 mark_fcn_file_up_to_date (t);
127 const std::list<octave_value_list>& idx)
134 const std::list<octave_value_list>& idx,
189 return is_anonymous_function ()
203 void stash_fcn_file_name (
const std::string& nm);
205 void stash_fcn_location (
int line,
int col)
207 location_line = line;
208 location_column = col;
214 void stash_fcn_end_location (
int line,
int col)
216 end_location_line = line;
217 end_location_column = col;
223 void maybe_relocate_end (
void);
238 mark_fcn_file_up_to_date (t);
243 std::string profiler_name (
void)
const;
255 void mark_as_system_fcn_file (
void);
261 void erase_subfunctions (
void)
266 bool takes_varargs (
void)
const;
268 bool takes_var_return (
void)
const;
270 void mark_as_private_function (
const std::string& cname = std::string ())
277 void lock_subfunctions (
void);
279 void unlock_subfunctions (
void);
281 std::map<std::string, octave_value> subfunctions (
void)
const;
283 bool has_subfunctions (
void)
const;
285 void stash_subfunction_names (
const std::list<std::string>&
names);
287 std::list<std::string> subfunction_names (
void)
const
308 bool is_anonymous_function_of_class
309 (
const std::string& cname = std::string ())
const
311 return anonymous_function
313 ? (! dispatch_class ().empty ())
314 : cname == dispatch_class ())
321 bool is_special_expr (
void)
const
323 return is_inline_function () || is_anonymous_function ();
332 bool is_class_constructor (
const std::string& cname = std::string ())
const
334 return class_constructor
335 ? (cname.empty () ?
true : cname == dispatch_class ()) :
false;
340 bool is_class_method (
const std::string& cname = std::string ())
const
343 ? (cname.empty () ?
true : cname == dispatch_class ()) :
false;
347 const std::list<octave_value_list>& idx)
354 const std::list<octave_value_list>& idx,
358 const std::list<octave_value_list>& idx,
360 const std::list<octave_lvalue>* lvalue_list);
367 const std::list<octave_lvalue>* lvalue_list);
383 bool subsasgn_optimization_ok (
void);
388 bool local_protect (T& variable)
390 if (curr_unwind_protect_frame)
392 curr_unwind_protect_frame->protect_var (variable);
406 void print_symtab_info (std::ostream& os)
const;
491 void maybe_relocate_end_internal (
void);
493 void print_code_function_header (
void);
495 void print_code_function_trailer (
void);
497 void bind_automatic_vars (
const string_vector& arg_names,
int nargin,
499 const std::list<octave_lvalue> *lvalue_list);
501 void restore_warning_states (
void);