Mercurial > hg > octave-nkf
comparison src/ov-usr-fcn.h @ 5848:415ae81d331b
[project @ 2006-06-08 20:37:29 by jwe]
author | jwe |
---|---|
date | Thu, 08 Jun 2006 20:37:29 +0000 |
parents | 1c36a2e82266 |
children | 3a68a2dc6eb1 |
comparison
equal
deleted
inserted
replaced
5847:62e7b9307d00 | 5848:415ae81d331b |
---|---|
134 | 134 |
135 bool is_user_function (void) const { return true; } | 135 bool is_user_function (void) const { return true; } |
136 | 136 |
137 bool takes_varargs (void) const; | 137 bool takes_varargs (void) const; |
138 | 138 |
139 void octave_va_start (void) { curr_va_arg_number = num_named_args; } | 139 bool takes_var_return (void) const; |
140 | |
141 octave_value octave_va_arg (void); | |
142 | 140 |
143 octave_value_list octave_all_va_args (void); | 141 octave_value_list octave_all_va_args (void); |
144 | |
145 bool takes_var_return (void) const; | |
146 | |
147 void octave_vr_val (const octave_value& val); | |
148 | |
149 void varargout_to_vr_val (void); | |
150 | |
151 bool has_varargout (void) const; | |
152 | 142 |
153 void stash_function_name (const std::string& s) { my_name = s; } | 143 void stash_function_name (const std::string& s) { my_name = s; } |
154 | 144 |
155 void mark_as_nested_function (void) { nested_function = true; } | 145 void mark_as_nested_function (void) { nested_function = true; } |
156 | 146 |
257 std::stack<octave_value_list> saved_args; | 247 std::stack<octave_value_list> saved_args; |
258 | 248 |
259 // The number of arguments passed in. | 249 // The number of arguments passed in. |
260 int num_args_passed; | 250 int num_args_passed; |
261 | 251 |
262 // Used to keep track of the current offset into the list of va_args. | |
263 int curr_va_arg_number; | |
264 | |
265 // The list of return values when an unspecified number can be | |
266 // returned. | |
267 tree_va_return_list *vr_list; | |
268 | |
269 // The symbol record for this function. | 252 // The symbol record for this function. |
270 symbol_record *symtab_entry; | 253 symbol_record *symtab_entry; |
271 | 254 |
272 // The symbol record for argn in the local symbol table. | 255 // The symbol record for argn in the local symbol table. |
273 symbol_record *argn_sr; | 256 symbol_record *argn_sr; |
287 | 270 |
288 void install_automatic_vars (void); | 271 void install_automatic_vars (void); |
289 | 272 |
290 void bind_automatic_vars (const string_vector& arg_names, int nargin, | 273 void bind_automatic_vars (const string_vector& arg_names, int nargin, |
291 int nargout, const octave_value_list& va_args); | 274 int nargout, const octave_value_list& va_args); |
292 | |
293 | 275 |
294 // No copying! | 276 // No copying! |
295 | 277 |
296 octave_user_function (const octave_user_function& fn); | 278 octave_user_function (const octave_user_function& fn); |
297 | 279 |