comparison src/pt-exp-base.h @ 506:0f388340e607

[project @ 1994-07-09 06:10:34 by jwe]
author jwe
date Sat, 09 Jul 1994 06:10:34 +0000
parents be155b3d5a2f
children ef71e51a2280
comparison
equal deleted inserted replaced
505:f264c1454c2b 506:0f388340e607
37 class tree_constant; 37 class tree_constant;
38 class symbol_record; 38 class symbol_record;
39 class symbol_table; 39 class symbol_table;
40 40
41 typedef Octave_object (*Text_fcn)(int, char **, int); 41 typedef Octave_object (*Text_fcn)(int, char **, int);
42 typedef Octave_object (*General_fcn)(const Octave_object&, int, int); 42 typedef Octave_object (*General_fcn)(const Octave_object&, int);
43 43
44 class tree_matrix; 44 class tree_matrix;
45 class tree_builtin; 45 class tree_builtin;
46 class tree_identifier; 46 class tree_identifier;
47 class tree_function; 47 class tree_function;
86 86
87 virtual void mark_for_possible_ans_assign (void) 87 virtual void mark_for_possible_ans_assign (void)
88 { panic_impossible (); } 88 { panic_impossible (); }
89 89
90 virtual Octave_object eval (int print, int nargout, 90 virtual Octave_object eval (int print, int nargout,
91 const Octave_object& args, int nargin); 91 const Octave_object& args);
92 92
93 protected: 93 protected:
94 expression_type etype; 94 expression_type etype;
95 }; 95 };
96 96
266 266
267 ~tree_multi_assignment_expression (void); 267 ~tree_multi_assignment_expression (void);
268 268
269 tree_constant eval (int print); 269 tree_constant eval (int print);
270 270
271 Octave_object eval (int print, int nargout, const Octave_object& args, 271 Octave_object eval (int print, int nargout, const Octave_object& args);
272 int nargin);
273 272
274 void eval_error (void); 273 void eval_error (void);
275 274
276 private: 275 private:
277 tree_return_list *lhs; 276 tree_return_list *lhs;
325 324
326 void mark_for_possible_ans_assign (void); 325 void mark_for_possible_ans_assign (void);
327 326
328 tree_constant eval (int print); 327 tree_constant eval (int print);
329 328
330 Octave_object eval (int print, int nargout, const Octave_object& args, 329 Octave_object eval (int print, int nargout, const Octave_object& args);
331 int nargin);
332 330
333 void eval_error (void); 331 void eval_error (void);
334 332
335 private: 333 private:
336 tree_identifier *id; 334 tree_identifier *id;
348 { return 0; } 346 { return 0; }
349 347
350 // virtual int is_builtin (void) const 348 // virtual int is_builtin (void) const
351 // { return 0; } 349 // { return 0; }
352 350
353 virtual tree_constant assign (tree_constant& t, const Octave_object& args, 351 virtual tree_constant assign (tree_constant& t, const Octave_object& args);
354 int nargs);
355 352
356 virtual char *name (void) const 353 virtual char *name (void) const
357 { panic_impossible (); return (char *) NULL; } 354 { panic_impossible (); return (char *) NULL; }
358 355
359 virtual void bump_value (tree::expression_type) 356 virtual void bump_value (tree::expression_type)
398 395
399 // int is_builtin (void) const; 396 // int is_builtin (void) const;
400 397
401 tree_constant eval (int print); 398 tree_constant eval (int print);
402 399
403 Octave_object eval (int print, int nargout, const Octave_object& args, 400 Octave_object eval (int print, int nargout, const Octave_object& args);
404 int nargin);
405 401
406 char *name (void) const; 402 char *name (void) const;
407 403
408 int max_expected_args (void); 404 int max_expected_args (void);
409 405
439 tree_identifier *define (tree_function *t); 435 tree_identifier *define (tree_function *t);
440 436
441 void document (char *s); 437 void document (char *s);
442 438
443 tree_constant assign (tree_constant& t); 439 tree_constant assign (tree_constant& t);
444 tree_constant assign (tree_constant& t, const Octave_object& args, 440 tree_constant assign (tree_constant& t, const Octave_object& args);
445 int nargs);
446 441
447 int is_defined (void); 442 int is_defined (void);
448 443
449 void bump_value (tree::expression_type); 444 void bump_value (tree::expression_type);
450 445
458 453
459 void mark_for_possible_ans_assign (void); 454 void mark_for_possible_ans_assign (void);
460 455
461 tree_constant eval (int print); 456 tree_constant eval (int print);
462 457
463 Octave_object eval (int print, int nargout, const Octave_object& args, 458 Octave_object eval (int print, int nargout, const Octave_object& args);
464 int nargin);
465 459
466 void eval_undefined_error (void); 460 void eval_undefined_error (void);
467 461
468 private: 462 private:
469 symbol_record *sym; 463 symbol_record *sym;
502 void stash_function_name (char *s); 496 void stash_function_name (char *s);
503 char *function_name (void); 497 char *function_name (void);
504 498
505 tree_constant eval (int print); 499 tree_constant eval (int print);
506 500
507 Octave_object eval (int print, int nargout, const Octave_object& args, 501 Octave_object eval (int print, int nargout, const Octave_object& args);
508 int nargin);
509 502
510 int max_expected_args (void); 503 int max_expected_args (void);
511 504
512 void traceback_error (void); 505 void traceback_error (void);
513 506
544 tree_argument_list *reverse (void); 537 tree_argument_list *reverse (void);
545 int length (void); 538 int length (void);
546 539
547 tree_argument_list *next_elem (void); 540 tree_argument_list *next_elem (void);
548 541
549 Octave_object convert_to_const_vector (int& nargs); 542 Octave_object convert_to_const_vector (void);
550 543
551 tree_constant eval (int print); 544 tree_constant eval (int print);
552 545
553 private: 546 private:
554 tree *arg; 547 tree *arg;
583 void mark_varargs_only (void); 576 void mark_varargs_only (void);
584 int varargs_only (void); 577 int varargs_only (void);
585 578
586 tree_identifier *define (tree_constant *t); 579 tree_identifier *define (tree_constant *t);
587 580
588 void define_from_arg_vector (const Octave_object& args, int nargin); 581 void define_from_arg_vector (const Octave_object& args);
589 582
590 int is_defined (void); 583 int is_defined (void);
591 584
592 Octave_object convert_to_const_vector (void); 585 Octave_object convert_to_const_vector (void);
593 586