annotate src/defun.h @ 1755:3a9462b655f1

[project @ 1996-01-22 04:47:22 by jwe]
author jwe
date Mon, 22 Jan 1996 04:47:22 +0000
parents 89c587478067
children e62277bf5fe0
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
525
509e9a2d93a6 [project @ 1994-07-20 18:45:27 by jwe]
jwe
parents:
diff changeset
1 // defun.h -*- C++ -*-
509e9a2d93a6 [project @ 1994-07-20 18:45:27 by jwe]
jwe
parents:
diff changeset
2 /*
509e9a2d93a6 [project @ 1994-07-20 18:45:27 by jwe]
jwe
parents:
diff changeset
3
1009
dfe01093f657 [project @ 1995-01-04 04:05:12 by jwe]
jwe
parents: 550
diff changeset
4 Copyright (C) 1992, 1993, 1994, 1995 John W. Eaton
525
509e9a2d93a6 [project @ 1994-07-20 18:45:27 by jwe]
jwe
parents:
diff changeset
5
509e9a2d93a6 [project @ 1994-07-20 18:45:27 by jwe]
jwe
parents:
diff changeset
6 This file is part of Octave.
509e9a2d93a6 [project @ 1994-07-20 18:45:27 by jwe]
jwe
parents:
diff changeset
7
509e9a2d93a6 [project @ 1994-07-20 18:45:27 by jwe]
jwe
parents:
diff changeset
8 Octave is free software; you can redistribute it and/or modify it
509e9a2d93a6 [project @ 1994-07-20 18:45:27 by jwe]
jwe
parents:
diff changeset
9 under the terms of the GNU General Public License as published by the
509e9a2d93a6 [project @ 1994-07-20 18:45:27 by jwe]
jwe
parents:
diff changeset
10 Free Software Foundation; either version 2, or (at your option) any
509e9a2d93a6 [project @ 1994-07-20 18:45:27 by jwe]
jwe
parents:
diff changeset
11 later version.
509e9a2d93a6 [project @ 1994-07-20 18:45:27 by jwe]
jwe
parents:
diff changeset
12
509e9a2d93a6 [project @ 1994-07-20 18:45:27 by jwe]
jwe
parents:
diff changeset
13 Octave is distributed in the hope that it will be useful, but WITHOUT
509e9a2d93a6 [project @ 1994-07-20 18:45:27 by jwe]
jwe
parents:
diff changeset
14 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
509e9a2d93a6 [project @ 1994-07-20 18:45:27 by jwe]
jwe
parents:
diff changeset
15 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
509e9a2d93a6 [project @ 1994-07-20 18:45:27 by jwe]
jwe
parents:
diff changeset
16 for more details.
509e9a2d93a6 [project @ 1994-07-20 18:45:27 by jwe]
jwe
parents:
diff changeset
17
509e9a2d93a6 [project @ 1994-07-20 18:45:27 by jwe]
jwe
parents:
diff changeset
18 You should have received a copy of the GNU General Public License
509e9a2d93a6 [project @ 1994-07-20 18:45:27 by jwe]
jwe
parents:
diff changeset
19 along with Octave; see the file COPYING. If not, write to the Free
1315
611d403c7f3d [project @ 1995-06-25 19:56:32 by jwe]
jwe
parents: 1009
diff changeset
20 Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
525
509e9a2d93a6 [project @ 1994-07-20 18:45:27 by jwe]
jwe
parents:
diff changeset
21
509e9a2d93a6 [project @ 1994-07-20 18:45:27 by jwe]
jwe
parents:
diff changeset
22 */
509e9a2d93a6 [project @ 1994-07-20 18:45:27 by jwe]
jwe
parents:
diff changeset
23
509e9a2d93a6 [project @ 1994-07-20 18:45:27 by jwe]
jwe
parents:
diff changeset
24 #if !defined (octave_defun_h)
509e9a2d93a6 [project @ 1994-07-20 18:45:27 by jwe]
jwe
parents:
diff changeset
25 #define octave_defun_h 1
509e9a2d93a6 [project @ 1994-07-20 18:45:27 by jwe]
jwe
parents:
diff changeset
26
509e9a2d93a6 [project @ 1994-07-20 18:45:27 by jwe]
jwe
parents:
diff changeset
27 #if defined (octave_defun_dld_h)
509e9a2d93a6 [project @ 1994-07-20 18:45:27 by jwe]
jwe
parents:
diff changeset
28 #error defun.h and defun-dld.h both included in same file!
509e9a2d93a6 [project @ 1994-07-20 18:45:27 by jwe]
jwe
parents:
diff changeset
29 #endif
509e9a2d93a6 [project @ 1994-07-20 18:45:27 by jwe]
jwe
parents:
diff changeset
30
509e9a2d93a6 [project @ 1994-07-20 18:45:27 by jwe]
jwe
parents:
diff changeset
31 #include "defun-int.h"
509e9a2d93a6 [project @ 1994-07-20 18:45:27 by jwe]
jwe
parents:
diff changeset
32
550
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
33 // Define a builtin variable.
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
34 //
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
35 // name is the name of the variable, as a string.
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
36 //
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
37 // sname is the name of the structure that is used to hold
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
38 // information about the variable, and that is passed to
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
39 // install_builtin_variable to register it in the symbol table.
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
40 // By convention, it is constructed by prefixing name with the
1340
02145fb69a5b [project @ 1995-08-31 22:09:37 by jwe]
jwe
parents: 1315
diff changeset
41 // character SBV.
02145fb69a5b [project @ 1995-08-31 22:09:37 by jwe]
jwe
parents: 1315
diff changeset
42 //
02145fb69a5b [project @ 1995-08-31 22:09:37 by jwe]
jwe
parents: 1315
diff changeset
43 // defn is the initial value for the variable.
550
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
44 //
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
45 // ins_as_fcn is a flag that says whether to install the variable as
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
46 // if it were a function (allowing the name to also be used as a
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
47 // variable by users, but recover its original definition if cleared).
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
48 //
1340
02145fb69a5b [project @ 1995-08-31 22:09:37 by jwe]
jwe
parents: 1315
diff changeset
49 // protect is a flag that says whether it should be possible to give
02145fb69a5b [project @ 1995-08-31 22:09:37 by jwe]
jwe
parents: 1315
diff changeset
50 // the variable a new value.
02145fb69a5b [project @ 1995-08-31 22:09:37 by jwe]
jwe
parents: 1315
diff changeset
51 //
550
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
52 // eternal is a flag that says whether it should be possible to
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
53 // clear the variable. Most builtin variables are eternal, and
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
54 // cannot be cleared.
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
55 //
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
56 // sv_fcn is a pointer to a function that should be called whenever
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
57 // this variable is given a new value. It can be 0 if there is no
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
58 // function to call. See also the code in user-prefs.cc.
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
59 //
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
60 // doc is the simple help text for this variable.
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
61
1431
d90d88618a9e [project @ 1995-09-19 07:12:58 by jwe]
jwe
parents: 1340
diff changeset
62 #define DEFVAR_INT(name, sname, defn, inst_as_fcn, protect, \
d90d88618a9e [project @ 1995-09-19 07:12:58 by jwe]
jwe
parents: 1340
diff changeset
63 sv_fcn, doc) \
525
509e9a2d93a6 [project @ 1994-07-20 18:45:27 by jwe]
jwe
parents:
diff changeset
64 do \
509e9a2d93a6 [project @ 1994-07-20 18:45:27 by jwe]
jwe
parents:
diff changeset
65 { \
1755
3a9462b655f1 [project @ 1996-01-22 04:47:22 by jwe]
jwe
parents: 1488
diff changeset
66 builtin_variable sname (name, new tree_constant (defn), \
3a9462b655f1 [project @ 1996-01-22 04:47:22 by jwe]
jwe
parents: 1488
diff changeset
67 inst_as_fcn, protect, (sv_fcn ? 1 : 0), \
3a9462b655f1 [project @ 1996-01-22 04:47:22 by jwe]
jwe
parents: 1488
diff changeset
68 sv_fcn, doc); \
3a9462b655f1 [project @ 1996-01-22 04:47:22 by jwe]
jwe
parents: 1488
diff changeset
69 install_builtin_variable (sname); \
525
509e9a2d93a6 [project @ 1994-07-20 18:45:27 by jwe]
jwe
parents:
diff changeset
70 } \
509e9a2d93a6 [project @ 1994-07-20 18:45:27 by jwe]
jwe
parents:
diff changeset
71 while (0)
509e9a2d93a6 [project @ 1994-07-20 18:45:27 by jwe]
jwe
parents:
diff changeset
72
1431
d90d88618a9e [project @ 1995-09-19 07:12:58 by jwe]
jwe
parents: 1340
diff changeset
73 #define DEFVAR(name, sname, defn, inst_as_fcn, sv_fcn, doc) \
d90d88618a9e [project @ 1995-09-19 07:12:58 by jwe]
jwe
parents: 1340
diff changeset
74 DEFVAR_INT (name, sname, defn, inst_as_fcn, 0, sv_fcn, doc)
d90d88618a9e [project @ 1995-09-19 07:12:58 by jwe]
jwe
parents: 1340
diff changeset
75
d90d88618a9e [project @ 1995-09-19 07:12:58 by jwe]
jwe
parents: 1340
diff changeset
76 // Define a builtin-constant, and a corresponding variable that can be
d90d88618a9e [project @ 1995-09-19 07:12:58 by jwe]
jwe
parents: 1340
diff changeset
77 // redefined. This is just the same as DEFVAR, except that it defines
d90d88618a9e [project @ 1995-09-19 07:12:58 by jwe]
jwe
parents: 1340
diff changeset
78 // `name' as a variable, and `__name__' as a constant that cannot be
d90d88618a9e [project @ 1995-09-19 07:12:58 by jwe]
jwe
parents: 1340
diff changeset
79 // redefined.
d90d88618a9e [project @ 1995-09-19 07:12:58 by jwe]
jwe
parents: 1340
diff changeset
80
d90d88618a9e [project @ 1995-09-19 07:12:58 by jwe]
jwe
parents: 1340
diff changeset
81 #define DEFCONST(name, sname, defn, inst_as_fcn, sv_fcn, doc) \
d90d88618a9e [project @ 1995-09-19 07:12:58 by jwe]
jwe
parents: 1340
diff changeset
82 DEFVAR_INT (name, sname, defn, inst_as_fcn, 0, sv_fcn, doc); \
d90d88618a9e [project @ 1995-09-19 07:12:58 by jwe]
jwe
parents: 1340
diff changeset
83 DEFVAR_INT ("__" ## name ## "__", sname, defn, 0, 1, sv_fcn, doc)
d90d88618a9e [project @ 1995-09-19 07:12:58 by jwe]
jwe
parents: 1340
diff changeset
84
550
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
85 // Define a builtin function.
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
86 //
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
87 // name is the name of the function, as a string.
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
88 //
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
89 // fname is the name of the C++ function. By convention, it is
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
90 // constructed by prefixing name with the character F.
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
91 //
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
92 // sname is the name of the structure that is used to hold
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
93 // information about the function, and that is passed to
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
94 // install_builtin_function to register the function in the symbol
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
95 // table. By convention, it is constructed by prefixing name with
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
96 // the character S.
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
97 //
1488
89c587478067 [project @ 1995-09-26 22:49:48 by jwe]
jwe
parents: 1431
diff changeset
98 // unused_arg_flags is used to decide how to declare the function so
89c587478067 [project @ 1995-09-26 22:49:48 by jwe]
jwe
parents: 1431
diff changeset
99 // that g++ doesn't complain about unused arguments. It can be
89c587478067 [project @ 1995-09-26 22:49:48 by jwe]
jwe
parents: 1431
diff changeset
100 // one of:
550
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
101 //
1488
89c587478067 [project @ 1995-09-26 22:49:48 by jwe]
jwe
parents: 1431
diff changeset
102 // 00: Both of the arguments args and nargout are unused.
89c587478067 [project @ 1995-09-26 22:49:48 by jwe]
jwe
parents: 1431
diff changeset
103 // 10: The argument args is unused.
89c587478067 [project @ 1995-09-26 22:49:48 by jwe]
jwe
parents: 1431
diff changeset
104 // 01: The argument nargout is unused.
89c587478067 [project @ 1995-09-26 22:49:48 by jwe]
jwe
parents: 1431
diff changeset
105 // 11 or missing: Both of the arguments args and nargout are used.
550
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
106 //
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
107 // doc is the simple help text for the function.
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
108
1488
89c587478067 [project @ 1995-09-26 22:49:48 by jwe]
jwe
parents: 1431
diff changeset
109 #define DEFUN(name, fname, sname, unused_arg_flags, doc) \
89c587478067 [project @ 1995-09-26 22:49:48 by jwe]
jwe
parents: 1431
diff changeset
110 DEFUN_INTERNAL (name, fname, sname, unused_arg_flags, 0, doc)
525
509e9a2d93a6 [project @ 1994-07-20 18:45:27 by jwe]
jwe
parents:
diff changeset
111
550
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
112 // Define a builtin text-style function.
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
113 //
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
114 // This is like DEFUN, except that it defines a function that can be
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
115 // called from the Octave language without using parenthesis to
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
116 // surround the arguments).
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
117
1488
89c587478067 [project @ 1995-09-26 22:49:48 by jwe]
jwe
parents: 1431
diff changeset
118 #define DEFUN_TEXT(name, fname, sname, unused_arg_flags, doc) \
89c587478067 [project @ 1995-09-26 22:49:48 by jwe]
jwe
parents: 1431
diff changeset
119 DEFUN_INTERNAL (name, fname, sname, unused_arg_flags, 1, doc)
525
509e9a2d93a6 [project @ 1994-07-20 18:45:27 by jwe]
jwe
parents:
diff changeset
120
550
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
121 // Define a mapper function.
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
122 //
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
123 // name is the name of the function as a string
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
124 //
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
125 // sname is the name of the structure that is used to hold
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
126 // information about the function, and that is passed to
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
127 // install_builtin_mapper to register the function in the symbol
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
128 // table. By convention, it is constructed by prefixing name with
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
129 // the character S.
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
130 //
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
131 // can_ret_cmplx_for_real is a flag that says whether this function
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
132 // can create a complex number given a real-valued argument
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
133 // (e.g., sqrt (-1)).
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
134 //
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
135 // lo is the lower bound of the range for which real arguments can
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
136 // become complex. (e.g., lo == -Inf for sqrt).
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
137 //
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
138 // hi is the upper bound of the range for which real arguments can
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
139 // become complex. (e.g., hi == 0 for sqrt).
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
140 //
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
141 // d_d_map is a pointer to a function that should be called for real
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
142 // arguments that are expected to create real results.
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
143 //
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
144 // d_c_map is a pointer to a function that should be called for real
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
145 // arguments that are expected to create complex results.
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
146 //
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
147 // c_c_map is a pointer to a function that should be called for
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
148 // complex arguments that are expected to create complex results.
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
149 //
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
150 // doc is the simple help text for the function.
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
151
525
509e9a2d93a6 [project @ 1994-07-20 18:45:27 by jwe]
jwe
parents:
diff changeset
152 #define DEFUN_MAPPER(name, sname, can_ret_cmplx_for_real, lo, hi, \
509e9a2d93a6 [project @ 1994-07-20 18:45:27 by jwe]
jwe
parents:
diff changeset
153 d_d_map, d_c_map, c_c_map, doc) \
509e9a2d93a6 [project @ 1994-07-20 18:45:27 by jwe]
jwe
parents:
diff changeset
154 do \
509e9a2d93a6 [project @ 1994-07-20 18:45:27 by jwe]
jwe
parents:
diff changeset
155 { \
1755
3a9462b655f1 [project @ 1996-01-22 04:47:22 by jwe]
jwe
parents: 1488
diff changeset
156 builtin_mapper_function sname (name, can_ret_cmplx_for_real, \
3a9462b655f1 [project @ 1996-01-22 04:47:22 by jwe]
jwe
parents: 1488
diff changeset
157 lo, hi, d_d_map, d_c_map, \
3a9462b655f1 [project @ 1996-01-22 04:47:22 by jwe]
jwe
parents: 1488
diff changeset
158 c_c_map, doc); \
3a9462b655f1 [project @ 1996-01-22 04:47:22 by jwe]
jwe
parents: 1488
diff changeset
159 install_builtin_mapper (sname); \
525
509e9a2d93a6 [project @ 1994-07-20 18:45:27 by jwe]
jwe
parents:
diff changeset
160 } \
509e9a2d93a6 [project @ 1994-07-20 18:45:27 by jwe]
jwe
parents:
diff changeset
161 while (0)
509e9a2d93a6 [project @ 1994-07-20 18:45:27 by jwe]
jwe
parents:
diff changeset
162
550
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
163 // Make alias another name for the existing function name. This macro
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
164 // must be used in the same file where name is defined, after the
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
165 // definition for name.
525
509e9a2d93a6 [project @ 1994-07-20 18:45:27 by jwe]
jwe
parents:
diff changeset
166
550
95ee5e330179 [project @ 1994-07-22 20:17:58 by jwe]
jwe
parents: 546
diff changeset
167 #define DEFALIAS(name, alias) DEFALIAS_INTERNAL (name, alias)
525
509e9a2d93a6 [project @ 1994-07-20 18:45:27 by jwe]
jwe
parents:
diff changeset
168
509e9a2d93a6 [project @ 1994-07-20 18:45:27 by jwe]
jwe
parents:
diff changeset
169 #endif
509e9a2d93a6 [project @ 1994-07-20 18:45:27 by jwe]
jwe
parents:
diff changeset
170
509e9a2d93a6 [project @ 1994-07-20 18:45:27 by jwe]
jwe
parents:
diff changeset
171 /*
509e9a2d93a6 [project @ 1994-07-20 18:45:27 by jwe]
jwe
parents:
diff changeset
172 ;;; Local Variables: ***
509e9a2d93a6 [project @ 1994-07-20 18:45:27 by jwe]
jwe
parents:
diff changeset
173 ;;; mode: C++ ***
509e9a2d93a6 [project @ 1994-07-20 18:45:27 by jwe]
jwe
parents:
diff changeset
174 ;;; page-delimiter: "^/\\*" ***
509e9a2d93a6 [project @ 1994-07-20 18:45:27 by jwe]
jwe
parents:
diff changeset
175 ;;; End: ***
509e9a2d93a6 [project @ 1994-07-20 18:45:27 by jwe]
jwe
parents:
diff changeset
176 */