Mercurial > octave
annotate libinterp/corefcn/defun.h @ 29968:7aa4d8c049e5
eliminate obsolete DEFCONSTFUN and DEFCONSTMETHOD macros
For some time now, DEFCONSTFUN and DEFCONSTMETHOD have been equivalent
to DEFUN and DEFMETHOD so we might as well eliminate them. For now we
will eliminate all handling of them in Octave but leave them as
aliases in defun.h.
* macros.dox: Don't mention DEFCONSTFUN or DEFCONSTMETHOD.
* defun.h (DEFCONSTFUN, DEFCONSTMETHOD): Define as direct aliases of
DEFUN and DEFMETHOD but eliminate documentation for them.
* mk-builtins.pl, mk-doc.pl: Don't handle DEFCONSTFUN or DEFCONSTMETHOD.
* pt-eval.cc (Fend): Define with DEFMETHOD instead of DEFCONSTMETHOD.
author | John W. Eaton <jwe@octave.org> |
---|---|
date | Sun, 15 Aug 2021 15:15:55 -0400 |
parents | 0a5b15007766 |
children | 796f54d4ddbf |
rev | line source |
---|---|
27923
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
1 //////////////////////////////////////////////////////////////////////// |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
2 // |
29358
0a5b15007766
update Octave Project Developers copyright for the new year
John W. Eaton <jwe@octave.org>
parents:
27957
diff
changeset
|
3 // Copyright (C) 1994-2021 The Octave Project Developers |
27923
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
4 // |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
5 // See the file COPYRIGHT.md in the top-level directory of this |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
6 // distribution or <https://octave.org/copyright/>. |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
7 // |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
8 // This file is part of Octave. |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
9 // |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
10 // Octave is free software: you can redistribute it and/or modify it |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
11 // under the terms of the GNU General Public License as published by |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
12 // the Free Software Foundation, either version 3 of the License, or |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
13 // (at your option) any later version. |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
14 // |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
15 // Octave is distributed in the hope that it will be useful, but |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
16 // WITHOUT ANY WARRANTY; without even the implied warranty of |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
17 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
18 // GNU General Public License for more details. |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
19 // |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
20 // You should have received a copy of the GNU General Public License |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
21 // along with Octave; see the file COPYING. If not, see |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
22 // <https://www.gnu.org/licenses/>. |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
23 // |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
24 //////////////////////////////////////////////////////////////////////// |
525 | 25 |
20791
f7084eae3318
maint: Use Octave coding conventions for #if statements.
Rik <rik@octave.org>
parents:
19697
diff
changeset
|
26 #if ! defined (octave_defun_h) |
525 | 27 #define octave_defun_h 1 |
28 | |
21244
1473547f50f5
include octave-config.h in public header files
John W. Eaton <jwe@octave.org>
parents:
21200
diff
changeset
|
29 #include "octave-config.h" |
1473547f50f5
include octave-config.h in public header files
John W. Eaton <jwe@octave.org>
parents:
21200
diff
changeset
|
30 |
525 | 31 #if defined (octave_defun_dld_h) |
21200
fcac5dbbf9ed
maint: Indent #ifdef blocks in libinterp.
Rik <rik@octave.org>
parents:
20791
diff
changeset
|
32 # error defun.h and defun-dld.h both included in same file! |
525 | 33 #endif |
34 | |
35 #include "defun-int.h" | |
36 | |
24194
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
37 //! Macro to define a builtin function. |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
38 //! |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
39 //! For detailed information, see \ref Macros. |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
40 //! |
27956
2310164737b3
fix many spelling errors (bug #57613)
John W. Eaton <jwe@octave.org>
parents:
26376
diff
changeset
|
41 //! @param name The **unquoted** name of the function that should be installed |
27216
823b4bcf79fc
unless necessary for formatting or code, use ' instead of `
John W. Eaton <jwe@octave.org>
parents:
26376
diff
changeset
|
42 //! on the 'octave::symbol_table' and can be called by the |
24194
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
43 //! interpreter. Internally, the function name is prepended by an |
27216
823b4bcf79fc
unless necessary for formatting or code, use ' instead of `
John W. Eaton <jwe@octave.org>
parents:
26376
diff
changeset
|
44 //! 'F'. |
24194
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
45 //! @param args_name The name of the octave_value_list variable used to pass |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
46 //! the argument list to this function. If this value is |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
47 //! omitted, the function cannot access the argument list. |
27216
823b4bcf79fc
unless necessary for formatting or code, use ' instead of `
John W. Eaton <jwe@octave.org>
parents:
26376
diff
changeset
|
48 //! @param nargout_name The name of the 'int' variable used to pass the number |
24194
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
49 //! of output arguments this function is expected to |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
50 //! produce from the caller. If this value is |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
51 //! omitted, the function cannot access this number. |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
52 //! @param doc Texinfo help text (docstring) for the function. |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
53 //! |
29968
7aa4d8c049e5
eliminate obsolete DEFCONSTFUN and DEFCONSTMETHOD macros
John W. Eaton <jwe@octave.org>
parents:
29358
diff
changeset
|
54 //! @see DEFUNX |
550 | 55 |
22197
e43d83253e28
refill multi-line macro definitions
John W. Eaton <jwe@octave.org>
parents:
21966
diff
changeset
|
56 #define DEFUN(name, args_name, nargout_name, doc) \ |
21966
112b20240c87
move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents:
21244
diff
changeset
|
57 DECLARE_FUN (name, args_name, nargout_name) |
525 | 58 |
24194
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
59 //! Macro to define a builtin function with certain internal name. |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
60 //! |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
61 //! @warning Consider to use #DEFUN, unless you have good reason. |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
62 //! |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
63 //! For detailed information, see \ref Macros. |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
64 //! |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
65 //! This macro can be used when @p name cannot be used directly (for example if |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
66 //! it is already defined as a macro). In that case, @p name is already a |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
67 //! quoted string (thus unaffected by macros), and the internal name of the |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
68 //! function is given by @p fname. |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
69 //! |
27956
2310164737b3
fix many spelling errors (bug #57613)
John W. Eaton <jwe@octave.org>
parents:
26376
diff
changeset
|
70 //! @param name The **quoted** name of the function that should be callable |
24194
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
71 //! by the interpreter. |
27956
2310164737b3
fix many spelling errors (bug #57613)
John W. Eaton <jwe@octave.org>
parents:
26376
diff
changeset
|
72 //! @param fname The internal **unquoted** name of the function. This internal |
27216
823b4bcf79fc
unless necessary for formatting or code, use ' instead of `
John W. Eaton <jwe@octave.org>
parents:
26376
diff
changeset
|
73 //! name is by convention prepended by an 'F'. |
24194
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
74 //! @param args_name The name of the octave_value_list variable used to pass |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
75 //! the argument list to this function. If this value is |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
76 //! omitted, the function cannot access the argument list. |
27216
823b4bcf79fc
unless necessary for formatting or code, use ' instead of `
John W. Eaton <jwe@octave.org>
parents:
26376
diff
changeset
|
77 //! @param nargout_name The name of the 'int' variable used to pass the number |
24194
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
78 //! of output arguments this function is expected to |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
79 //! produce from the caller. If this value is |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
80 //! omitted, the function cannot access this number. |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
81 //! @param doc Texinfo help text (docstring) for the function. |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
82 //! |
29968
7aa4d8c049e5
eliminate obsolete DEFCONSTFUN and DEFCONSTMETHOD macros
John W. Eaton <jwe@octave.org>
parents:
29358
diff
changeset
|
83 //! @see DEFUN |
24194
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
84 |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
85 #define DEFUNX(name, fname, args_name, nargout_name, doc) \ |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
86 DECLARE_FUNX (fname, args_name, nargout_name) |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
87 |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
88 //! Macro to define a builtin method. |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
89 //! |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
90 //! For detailed information, see \ref Macros. |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
91 //! |
27956
2310164737b3
fix many spelling errors (bug #57613)
John W. Eaton <jwe@octave.org>
parents:
26376
diff
changeset
|
92 //! @param name The **unquoted** name of the method that should be installed |
27216
823b4bcf79fc
unless necessary for formatting or code, use ' instead of `
John W. Eaton <jwe@octave.org>
parents:
26376
diff
changeset
|
93 //! on the 'octave::symbol_table' and can be called by the |
24194
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
94 //! interpreter. Internally, the method name is prepended by an |
27216
823b4bcf79fc
unless necessary for formatting or code, use ' instead of `
John W. Eaton <jwe@octave.org>
parents:
26376
diff
changeset
|
95 //! 'F'. |
823b4bcf79fc
unless necessary for formatting or code, use ' instead of `
John W. Eaton <jwe@octave.org>
parents:
26376
diff
changeset
|
96 //! @param interp_name The name of the 'octave::interpreter' reference that can |
24194
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
97 //! be used by this method. If this value is omitted, |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
98 //! there is no access to the interpreter and one should |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
99 //! use #DEFUN to define a function instead. |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
100 //! @param args_name The name of the octave_value_list variable used to pass |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
101 //! the argument list to this method. If this value is |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
102 //! omitted, the method cannot access the argument list. |
27216
823b4bcf79fc
unless necessary for formatting or code, use ' instead of `
John W. Eaton <jwe@octave.org>
parents:
26376
diff
changeset
|
103 //! @param nargout_name The name of the 'int' variable used to pass the number |
24194
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
104 //! of output arguments this method is expected to |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
105 //! produce from the caller. If this value is |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
106 //! omitted, the method cannot access this number. |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
107 //! @param doc Texinfo help text (docstring) for the method. |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
108 //! |
29968
7aa4d8c049e5
eliminate obsolete DEFCONSTFUN and DEFCONSTMETHOD macros
John W. Eaton <jwe@octave.org>
parents:
29358
diff
changeset
|
109 //! @see DEFMETHODX |
24194
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
110 |
23518 | 111 #define DEFMETHOD(name, interp_name, args_name, nargout_name, doc) \ |
112 DECLARE_METHOD (name, interp_name, args_name, nargout_name) | |
113 | |
24194
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
114 //! Macro to define a builtin method with certain internal name. |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
115 //! |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
116 //! @warning Consider to use #DEFMETHOD, unless you have good reason. |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
117 //! |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
118 //! For detailed information, see \ref Macros. |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
119 //! |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
120 //! This macro can be used when @p name cannot be used directly (for example if |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
121 //! it is already defined as a macro). In that case, @p name is already a |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
122 //! quoted string (thus unaffected by macros), and the internal name of the |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
123 //! method is given by @p fname. |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
124 //! |
27956
2310164737b3
fix many spelling errors (bug #57613)
John W. Eaton <jwe@octave.org>
parents:
26376
diff
changeset
|
125 //! @param name The **quoted** name of the method that should be callable |
24194
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
126 //! by the interpreter. |
27956
2310164737b3
fix many spelling errors (bug #57613)
John W. Eaton <jwe@octave.org>
parents:
26376
diff
changeset
|
127 //! @param fname The internal **unquoted** name of the method. This internal |
27216
823b4bcf79fc
unless necessary for formatting or code, use ' instead of `
John W. Eaton <jwe@octave.org>
parents:
26376
diff
changeset
|
128 //! name is by convention prepended by an 'F'. |
823b4bcf79fc
unless necessary for formatting or code, use ' instead of `
John W. Eaton <jwe@octave.org>
parents:
26376
diff
changeset
|
129 //! @param interp_name The name of the 'octave::interpreter' reference that can |
24194
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
130 //! be used by this method. If this value is omitted, |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
131 //! there is no access to the interpreter and one should |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
132 //! use #DEFUNX to define a function instead. |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
133 //! @param args_name The name of the octave_value_list variable used to pass |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
134 //! the argument list to this method. If this value is |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
135 //! omitted, the method cannot access the argument list. |
27216
823b4bcf79fc
unless necessary for formatting or code, use ' instead of `
John W. Eaton <jwe@octave.org>
parents:
26376
diff
changeset
|
136 //! @param nargout_name The name of the 'int' variable used to pass the number |
24194
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
137 //! of output arguments this method is expected to |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
138 //! produce from the caller. If this value is |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
139 //! omitted, the method cannot access this number. |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
140 //! @param doc Texinfo help text (docstring) for the method. |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
141 //! |
29968
7aa4d8c049e5
eliminate obsolete DEFCONSTFUN and DEFCONSTMETHOD macros
John W. Eaton <jwe@octave.org>
parents:
29358
diff
changeset
|
142 //! @see DEFMETHOD |
4208 | 143 |
23518 | 144 #define DEFMETHODX(name, fname, interp_name, args_name, nargout_name, doc) \ |
145 DECLARE_METHODX (fname, interp_name, args_name, nargout_name) | |
146 | |
29968
7aa4d8c049e5
eliminate obsolete DEFCONSTFUN and DEFCONSTMETHOD macros
John W. Eaton <jwe@octave.org>
parents:
29358
diff
changeset
|
147 // These macros are obsolete but provided for backward compatibility. |
7aa4d8c049e5
eliminate obsolete DEFCONSTFUN and DEFCONSTMETHOD macros
John W. Eaton <jwe@octave.org>
parents:
29358
diff
changeset
|
148 #define DEFCONSTFUN DEFUN |
7aa4d8c049e5
eliminate obsolete DEFCONSTFUN and DEFCONSTMETHOD macros
John W. Eaton <jwe@octave.org>
parents:
29358
diff
changeset
|
149 #define DEFCONSTMETHOD DEFMETHOD |
23518 | 150 |
24194
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
151 //! Macro to define an alias for another existing function name. |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
152 //! |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
153 //! For detailed information, see \ref Macros. |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
154 //! |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
155 //! @param alias For another existing function name. |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
156 //! @param name The name of the other existing function. |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
157 //! |
3333ca37c038
doc: improve Doxygen comments for DEFUN* macros.
Kai T. Ohlhus <k.ohlhus@gmail.com>
parents:
23518
diff
changeset
|
158 //! @see DEFUN |
525 | 159 |
21966
112b20240c87
move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents:
21244
diff
changeset
|
160 #define DEFALIAS(alias, name) |
525 | 161 |
162 #endif |