Mercurial > octave
annotate libinterp/corefcn/symtab.h @ 27923:bd51beb6205e
update formatting of copyright notices
* Use <https://octave.org/copyright/> instead of
<https://octave.org/COPYRIGHT.html/>.
* For consistency with other comments in the Octave sources, use
C++-style comments for copyright blocks in C and C++ files.
* Use delimiters above and below copyright blocks that are appropriate
for the language used in the file.
* Eliminate extra spacing inside copyright blocks.
* lex.ll (looks_like_copyright): Also allow newlines and carriage
returns before the word "Copyright".
* scripts/mk-doc.pl (gethelp): Also skip empty comment lines.
* bp-table.cc, type.m: Adjust tests.
author | John W. Eaton <jwe@octave.org> |
---|---|
date | Wed, 08 Jan 2020 11:59:41 -0500 |
parents | 1891570abac8 |
children | 22e90bdcf47f |
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 // |
bd51beb6205e
update formatting of copyright notices
John W. Eaton <jwe@octave.org>
parents:
27919
diff
changeset
|
3 // Copyright (C) 1993-2020 The Octave Project Developers |
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 //////////////////////////////////////////////////////////////////////// |
8 | 25 |
20791
f7084eae3318
maint: Use Octave coding conventions for #if statements.
Rik <rik@octave.org>
parents:
20713
diff
changeset
|
26 #if ! defined (octave_symtab_h) |
383 | 27 #define octave_symtab_h 1 |
8 | 28 |
21244
1473547f50f5
include octave-config.h in public header files
John W. Eaton <jwe@octave.org>
parents:
21139
diff
changeset
|
29 #include "octave-config.h" |
1473547f50f5
include octave-config.h in public header files
John W. Eaton <jwe@octave.org>
parents:
21139
diff
changeset
|
30 |
7336 | 31 #include <deque> |
32 #include <list> | |
33 #include <map> | |
34 #include <set> | |
35 #include <string> | |
2953 | 36 |
7336 | 37 #include "glob-match.h" |
16940
99122191d3dd
maint: Rename regexp.h to lo-regexp.h, regexp.cc to lo-regexp.cc in liboctave.
Rik <rik@octave.org>
parents:
16892
diff
changeset
|
38 #include "lo-regexp.h" |
23680
ef71711f6d64
rework __dump_symbol_table__ function
John W. Eaton <jwe@octave.org>
parents:
23667
diff
changeset
|
39 #include "oct-refcount.h" |
2846 | 40 |
7336 | 41 class tree_argument_list; |
9639
8d79f36ebdde
store scope->function pointer
Jaroslav Hajek <highegg@gmail.com>
parents:
9581
diff
changeset
|
42 class octave_user_function; |
3013 | 43 |
24263
3b302b2890d7
disentangle symbol_record, scope, and fcn_info from symbol_table class
John W. Eaton <jwe@octave.org>
parents:
24113
diff
changeset
|
44 #include "fcn-info.h" |
23599
5cb3a2bb5e1e
don't use singleton for symbol_table
John W. Eaton <jwe@octave.org>
parents:
23587
diff
changeset
|
45 #include "ov.h" |
20940
48b2ad5ee801
maint: Rename oct-obj.[cc|h] to ovl.[cc|h] for clarity.
Rik <rik@octave.org>
parents:
20791
diff
changeset
|
46 #include "ovl.h" |
24269
f494b87d2a93
rename scope to symbol_scope
John W. Eaton <jwe@octave.org>
parents:
24263
diff
changeset
|
47 #include "symscope.h" |
1412 | 48 |
23693
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
49 namespace octave |
8 | 50 { |
27594
e091e09d26f0
restore some symbol table functions for backward compatibility
John W. Eaton <jwe@octave.org>
parents:
27110
diff
changeset
|
51 class interpreter; |
e091e09d26f0
restore some symbol table functions for backward compatibility
John W. Eaton <jwe@octave.org>
parents:
27110
diff
changeset
|
52 |
23693
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
53 class OCTINTERP_API symbol_table |
7336 | 54 { |
55 public: | |
56 | |
27102
84ff9953faa1
where possible, eliminate octave:: namespace qualifier inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
26970
diff
changeset
|
57 // Make symbol_table::scope and symbol_table::fcn_info valid type names. |
24269
f494b87d2a93
rename scope to symbol_scope
John W. Eaton <jwe@octave.org>
parents:
24263
diff
changeset
|
58 typedef octave::symbol_scope scope; |
24263
3b302b2890d7
disentangle symbol_record, scope, and fcn_info from symbol_table class
John W. Eaton <jwe@octave.org>
parents:
24113
diff
changeset
|
59 typedef octave::fcn_info fcn_info; |
24037
21915520ac7b
use more direct method for non-local symbol access (bug #38236)
John W. Eaton <jwe@octave.org>
parents:
24031
diff
changeset
|
60 |
26661
cf9e10ce3351
move variable values from symbol_record objects to stack_frame objects
John W. Eaton <jwe@octave.org>
parents:
26594
diff
changeset
|
61 symbol_table (interpreter& interp); |
23599
5cb3a2bb5e1e
don't use singleton for symbol_table
John W. Eaton <jwe@octave.org>
parents:
23587
diff
changeset
|
62 |
5cb3a2bb5e1e
don't use singleton for symbol_table
John W. Eaton <jwe@octave.org>
parents:
23587
diff
changeset
|
63 // No copying! |
5cb3a2bb5e1e
don't use singleton for symbol_table
John W. Eaton <jwe@octave.org>
parents:
23587
diff
changeset
|
64 |
23693
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
65 symbol_table (const symbol_table&) = delete; |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
66 |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
67 symbol_table& operator = (const symbol_table&) = delete; |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
68 |
24361
8bcfddad15ec
use shared_ptr to manage symbol_scope objects
John W. Eaton <jwe@octave.org>
parents:
24352
diff
changeset
|
69 ~symbol_table (void) = default; |
23693
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
70 |
26661
cf9e10ce3351
move variable values from symbol_record objects to stack_frame objects
John W. Eaton <jwe@octave.org>
parents:
26594
diff
changeset
|
71 symbol_scope current_scope (void) const; |
23599
5cb3a2bb5e1e
don't use singleton for symbol_table
John W. Eaton <jwe@octave.org>
parents:
23587
diff
changeset
|
72 |
26661
cf9e10ce3351
move variable values from symbol_record objects to stack_frame objects
John W. Eaton <jwe@octave.org>
parents:
26594
diff
changeset
|
73 bool is_built_in_function_name (const std::string& name); |
23693
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
74 |
26065
2eb71b83d3e2
partially refactor function lookup in symbol table
John W. Eaton <jwe@octave.org>
parents:
25438
diff
changeset
|
75 // FIXME: this function only finds legacy class methods, not |
2eb71b83d3e2
partially refactor function lookup in symbol table
John W. Eaton <jwe@octave.org>
parents:
25438
diff
changeset
|
76 // classdef methods. |
26661
cf9e10ce3351
move variable values from symbol_record objects to stack_frame objects
John W. Eaton <jwe@octave.org>
parents:
26594
diff
changeset
|
77 octave_value find_method (const std::string& name, |
cf9e10ce3351
move variable values from symbol_record objects to stack_frame objects
John W. Eaton <jwe@octave.org>
parents:
26594
diff
changeset
|
78 const std::string& dispatch_type); |
23693
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
79 |
26661
cf9e10ce3351
move variable values from symbol_record objects to stack_frame objects
John W. Eaton <jwe@octave.org>
parents:
26594
diff
changeset
|
80 octave_value find_built_in_function (const std::string& name); |
23693
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
81 |
26661
cf9e10ce3351
move variable values from symbol_record objects to stack_frame objects
John W. Eaton <jwe@octave.org>
parents:
26594
diff
changeset
|
82 octave_value find_autoload (const std::string& name); |
23693
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
83 |
26845
6322d51c655c
allow function search in arbitrary scope
John W. Eaton <jwe@octave.org>
parents:
26781
diff
changeset
|
84 octave_value |
6322d51c655c
allow function search in arbitrary scope
John W. Eaton <jwe@octave.org>
parents:
26781
diff
changeset
|
85 builtin_find (const std::string& name, |
6322d51c655c
allow function search in arbitrary scope
John W. Eaton <jwe@octave.org>
parents:
26781
diff
changeset
|
86 const symbol_scope& search_scope = symbol_scope ()); |
24263
3b302b2890d7
disentangle symbol_record, scope, and fcn_info from symbol_table class
John W. Eaton <jwe@octave.org>
parents:
24113
diff
changeset
|
87 |
26845
6322d51c655c
allow function search in arbitrary scope
John W. Eaton <jwe@octave.org>
parents:
26781
diff
changeset
|
88 octave_value |
6322d51c655c
allow function search in arbitrary scope
John W. Eaton <jwe@octave.org>
parents:
26781
diff
changeset
|
89 fcn_table_find (const std::string& name, |
6322d51c655c
allow function search in arbitrary scope
John W. Eaton <jwe@octave.org>
parents:
26781
diff
changeset
|
90 const octave_value_list& args = ovl (), |
6322d51c655c
allow function search in arbitrary scope
John W. Eaton <jwe@octave.org>
parents:
26781
diff
changeset
|
91 const symbol_scope& search_scope = symbol_scope ()); |
24263
3b302b2890d7
disentangle symbol_record, scope, and fcn_info from symbol_table class
John W. Eaton <jwe@octave.org>
parents:
24113
diff
changeset
|
92 |
26594
088b8a2dcb06
use @CLASS name when searching for @CLASS/METHOD (bug #55501)
John W. Eaton <jwe@octave.org>
parents:
26376
diff
changeset
|
93 // If NAME is of the form @CLASS/FUNCTION, call |
088b8a2dcb06
use @CLASS name when searching for @CLASS/METHOD (bug #55501)
John W. Eaton <jwe@octave.org>
parents:
26376
diff
changeset
|
94 // |
088b8a2dcb06
use @CLASS name when searching for @CLASS/METHOD (bug #55501)
John W. Eaton <jwe@octave.org>
parents:
26376
diff
changeset
|
95 // find_method (FUNCTION, CLASS) |
088b8a2dcb06
use @CLASS name when searching for @CLASS/METHOD (bug #55501)
John W. Eaton <jwe@octave.org>
parents:
26376
diff
changeset
|
96 // |
088b8a2dcb06
use @CLASS name when searching for @CLASS/METHOD (bug #55501)
John W. Eaton <jwe@octave.org>
parents:
26376
diff
changeset
|
97 // otherwise call |
088b8a2dcb06
use @CLASS name when searching for @CLASS/METHOD (bug #55501)
John W. Eaton <jwe@octave.org>
parents:
26376
diff
changeset
|
98 // |
26845
6322d51c655c
allow function search in arbitrary scope
John W. Eaton <jwe@octave.org>
parents:
26781
diff
changeset
|
99 // find_function (NAME, ovl ()) |
26594
088b8a2dcb06
use @CLASS name when searching for @CLASS/METHOD (bug #55501)
John W. Eaton <jwe@octave.org>
parents:
26376
diff
changeset
|
100 |
26845
6322d51c655c
allow function search in arbitrary scope
John W. Eaton <jwe@octave.org>
parents:
26781
diff
changeset
|
101 octave_value |
6322d51c655c
allow function search in arbitrary scope
John W. Eaton <jwe@octave.org>
parents:
26781
diff
changeset
|
102 find_function (const std::string& name, |
6322d51c655c
allow function search in arbitrary scope
John W. Eaton <jwe@octave.org>
parents:
26781
diff
changeset
|
103 const symbol_scope& search_scope = symbol_scope ()); |
26594
088b8a2dcb06
use @CLASS name when searching for @CLASS/METHOD (bug #55501)
John W. Eaton <jwe@octave.org>
parents:
26376
diff
changeset
|
104 |
088b8a2dcb06
use @CLASS name when searching for @CLASS/METHOD (bug #55501)
John W. Eaton <jwe@octave.org>
parents:
26376
diff
changeset
|
105 // NAME should just be function name; dispatch type determined |
088b8a2dcb06
use @CLASS name when searching for @CLASS/METHOD (bug #55501)
John W. Eaton <jwe@octave.org>
parents:
26376
diff
changeset
|
106 // from types of ARGS. |
088b8a2dcb06
use @CLASS name when searching for @CLASS/METHOD (bug #55501)
John W. Eaton <jwe@octave.org>
parents:
26376
diff
changeset
|
107 |
26845
6322d51c655c
allow function search in arbitrary scope
John W. Eaton <jwe@octave.org>
parents:
26781
diff
changeset
|
108 octave_value |
6322d51c655c
allow function search in arbitrary scope
John W. Eaton <jwe@octave.org>
parents:
26781
diff
changeset
|
109 find_function (const std::string& name, |
6322d51c655c
allow function search in arbitrary scope
John W. Eaton <jwe@octave.org>
parents:
26781
diff
changeset
|
110 const octave_value_list& args, |
6322d51c655c
allow function search in arbitrary scope
John W. Eaton <jwe@octave.org>
parents:
26781
diff
changeset
|
111 const symbol_scope& search_scope = symbol_scope ()); |
23693
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
112 |
26661
cf9e10ce3351
move variable values from symbol_record objects to stack_frame objects
John W. Eaton <jwe@octave.org>
parents:
26594
diff
changeset
|
113 octave_value find_user_function (const std::string& name); |
23693
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
114 |
26661
cf9e10ce3351
move variable values from symbol_record objects to stack_frame objects
John W. Eaton <jwe@octave.org>
parents:
26594
diff
changeset
|
115 octave_value find_cmdline_function (const std::string& name); |
23599
5cb3a2bb5e1e
don't use singleton for symbol_table
John W. Eaton <jwe@octave.org>
parents:
23587
diff
changeset
|
116 |
23693
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
117 void install_cmdline_function (const std::string& name, |
26661
cf9e10ce3351
move variable values from symbol_record objects to stack_frame objects
John W. Eaton <jwe@octave.org>
parents:
26594
diff
changeset
|
118 const octave_value& fcn); |
23693
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
119 |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
120 // Install local function FCN named NAME. FILE_NAME is the name of |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
121 // the file containing the local function. |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
122 |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
123 void install_local_function (const std::string& name, |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
124 const octave_value& fcn, |
26661
cf9e10ce3351
move variable values from symbol_record objects to stack_frame objects
John W. Eaton <jwe@octave.org>
parents:
26594
diff
changeset
|
125 const std::string& file_name); |
23693
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
126 |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
127 void install_user_function (const std::string& name, |
26661
cf9e10ce3351
move variable values from symbol_record objects to stack_frame objects
John W. Eaton <jwe@octave.org>
parents:
26594
diff
changeset
|
128 const octave_value& fcn); |
23599
5cb3a2bb5e1e
don't use singleton for symbol_table
John W. Eaton <jwe@octave.org>
parents:
23587
diff
changeset
|
129 |
24729
22e60ef42640
deprecate some function installing functions
John W. Eaton <jwe@octave.org>
parents:
24727
diff
changeset
|
130 // FIXME: should we ensure that FCN really is a built-in function |
22e60ef42640
deprecate some function installing functions
John W. Eaton <jwe@octave.org>
parents:
24727
diff
changeset
|
131 // object? |
23693
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
132 void install_built_in_function (const std::string& name, |
26661
cf9e10ce3351
move variable values from symbol_record objects to stack_frame objects
John W. Eaton <jwe@octave.org>
parents:
26594
diff
changeset
|
133 const octave_value& fcn); |
24352
bff8e3884a88
restructure global variable handling in symbol table
John W. Eaton <jwe@octave.org>
parents:
24281
diff
changeset
|
134 |
23693
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
135 // This is written as two separate functions instead of a single |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
136 // function with default values so that it will work properly with |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
137 // unwind_protect. |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
138 |
26661
cf9e10ce3351
move variable values from symbol_record objects to stack_frame objects
John W. Eaton <jwe@octave.org>
parents:
26594
diff
changeset
|
139 void clear_functions (bool force = false); |
23693
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
140 |
26661
cf9e10ce3351
move variable values from symbol_record objects to stack_frame objects
John W. Eaton <jwe@octave.org>
parents:
26594
diff
changeset
|
141 void clear_function (const std::string& name); |
23693
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
142 |
26661
cf9e10ce3351
move variable values from symbol_record objects to stack_frame objects
John W. Eaton <jwe@octave.org>
parents:
26594
diff
changeset
|
143 void clear_function_pattern (const std::string& pat); |
23693
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
144 |
26661
cf9e10ce3351
move variable values from symbol_record objects to stack_frame objects
John W. Eaton <jwe@octave.org>
parents:
26594
diff
changeset
|
145 void clear_function_regexp (const std::string& pat); |
23693
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
146 |
26661
cf9e10ce3351
move variable values from symbol_record objects to stack_frame objects
John W. Eaton <jwe@octave.org>
parents:
26594
diff
changeset
|
147 void clear_user_function (const std::string& name); |
23693
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
148 |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
149 // This clears oct and mex files, including autoloads. |
26661
cf9e10ce3351
move variable values from symbol_record objects to stack_frame objects
John W. Eaton <jwe@octave.org>
parents:
26594
diff
changeset
|
150 void clear_dld_function (const std::string& name); |
23693
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
151 |
26661
cf9e10ce3351
move variable values from symbol_record objects to stack_frame objects
John W. Eaton <jwe@octave.org>
parents:
26594
diff
changeset
|
152 void clear_mex_functions (void); |
23693
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
153 |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
154 bool set_class_relationship (const std::string& sup_class, |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
155 const std::string& inf_class); |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
156 |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
157 bool is_superiorto (const std::string& a, const std::string& b); |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
158 |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
159 void alias_built_in_function (const std::string& alias, |
26661
cf9e10ce3351
move variable values from symbol_record objects to stack_frame objects
John W. Eaton <jwe@octave.org>
parents:
26594
diff
changeset
|
160 const std::string& name); |
23693
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
161 |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
162 void install_built_in_dispatch (const std::string& name, |
26661
cf9e10ce3351
move variable values from symbol_record objects to stack_frame objects
John W. Eaton <jwe@octave.org>
parents:
26594
diff
changeset
|
163 const std::string& klass); |
23599
5cb3a2bb5e1e
don't use singleton for symbol_table
John W. Eaton <jwe@octave.org>
parents:
23587
diff
changeset
|
164 |
26661
cf9e10ce3351
move variable values from symbol_record objects to stack_frame objects
John W. Eaton <jwe@octave.org>
parents:
26594
diff
changeset
|
165 std::list<std::string> user_function_names (void); |
23599
5cb3a2bb5e1e
don't use singleton for symbol_table
John W. Eaton <jwe@octave.org>
parents:
23587
diff
changeset
|
166 |
26661
cf9e10ce3351
move variable values from symbol_record objects to stack_frame objects
John W. Eaton <jwe@octave.org>
parents:
26594
diff
changeset
|
167 std::list<std::string> built_in_function_names (void); |
23611
91c8f006ed8b
remove additional functions from symbol_table class
John W. Eaton <jwe@octave.org>
parents:
23610
diff
changeset
|
168 |
26661
cf9e10ce3351
move variable values from symbol_record objects to stack_frame objects
John W. Eaton <jwe@octave.org>
parents:
26594
diff
changeset
|
169 std::list<std::string> cmdline_function_names (void); |
23599
5cb3a2bb5e1e
don't use singleton for symbol_table
John W. Eaton <jwe@octave.org>
parents:
23587
diff
changeset
|
170 |
23680
ef71711f6d64
rework __dump_symbol_table__ function
John W. Eaton <jwe@octave.org>
parents:
23667
diff
changeset
|
171 octave_value dump (void) const; |
23599
5cb3a2bb5e1e
don't use singleton for symbol_table
John W. Eaton <jwe@octave.org>
parents:
23587
diff
changeset
|
172 |
23693
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
173 void add_to_parent_map (const std::string& classname, |
26661
cf9e10ce3351
move variable values from symbol_record objects to stack_frame objects
John W. Eaton <jwe@octave.org>
parents:
26594
diff
changeset
|
174 const std::list<std::string>& parent_list); |
23693
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
175 |
26661
cf9e10ce3351
move variable values from symbol_record objects to stack_frame objects
John W. Eaton <jwe@octave.org>
parents:
26594
diff
changeset
|
176 std::list<std::string> parent_classes (const std::string& dispatch_type); |
23693
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
177 |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
178 void cleanup (void); |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
179 |
26661
cf9e10ce3351
move variable values from symbol_record objects to stack_frame objects
John W. Eaton <jwe@octave.org>
parents:
26594
diff
changeset
|
180 fcn_info * get_fcn_info (const std::string& name); |
23693
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
181 |
27594
e091e09d26f0
restore some symbol table functions for backward compatibility
John W. Eaton <jwe@octave.org>
parents:
27110
diff
changeset
|
182 // The remaining functions are all provided for backward |
e091e09d26f0
restore some symbol table functions for backward compatibility
John W. Eaton <jwe@octave.org>
parents:
27110
diff
changeset
|
183 // compatibility. New code should use the functions provided by the |
e091e09d26f0
restore some symbol table functions for backward compatibility
John W. Eaton <jwe@octave.org>
parents:
27110
diff
changeset
|
184 // interpreter class. |
e091e09d26f0
restore some symbol table functions for backward compatibility
John W. Eaton <jwe@octave.org>
parents:
27110
diff
changeset
|
185 |
27828
0948ba09abbd
finish symbol deprecation intended to be done in changeset e091e09d26f0
John W. Eaton <jwe@octave.org>
parents:
27744
diff
changeset
|
186 OCTAVE_DEPRECATED (6, "use 'interpreter::at_top_level' instead") |
27594
e091e09d26f0
restore some symbol table functions for backward compatibility
John W. Eaton <jwe@octave.org>
parents:
27110
diff
changeset
|
187 bool at_top_level (void); |
e091e09d26f0
restore some symbol table functions for backward compatibility
John W. Eaton <jwe@octave.org>
parents:
27110
diff
changeset
|
188 |
27828
0948ba09abbd
finish symbol deprecation intended to be done in changeset e091e09d26f0
John W. Eaton <jwe@octave.org>
parents:
27744
diff
changeset
|
189 OCTAVE_DEPRECATED (6, "use 'interpreter::varval' instead") |
27594
e091e09d26f0
restore some symbol table functions for backward compatibility
John W. Eaton <jwe@octave.org>
parents:
27110
diff
changeset
|
190 octave_value varval (const std::string& name) const; |
e091e09d26f0
restore some symbol table functions for backward compatibility
John W. Eaton <jwe@octave.org>
parents:
27110
diff
changeset
|
191 |
27828
0948ba09abbd
finish symbol deprecation intended to be done in changeset e091e09d26f0
John W. Eaton <jwe@octave.org>
parents:
27744
diff
changeset
|
192 OCTAVE_DEPRECATED (6, "use 'interpreter::global_varval' instead") |
27594
e091e09d26f0
restore some symbol table functions for backward compatibility
John W. Eaton <jwe@octave.org>
parents:
27110
diff
changeset
|
193 octave_value global_varval (const std::string& name) const; |
e091e09d26f0
restore some symbol table functions for backward compatibility
John W. Eaton <jwe@octave.org>
parents:
27110
diff
changeset
|
194 |
27828
0948ba09abbd
finish symbol deprecation intended to be done in changeset e091e09d26f0
John W. Eaton <jwe@octave.org>
parents:
27744
diff
changeset
|
195 OCTAVE_DEPRECATED (6, "use 'interpreter::top_level_varval' instead") |
27594
e091e09d26f0
restore some symbol table functions for backward compatibility
John W. Eaton <jwe@octave.org>
parents:
27110
diff
changeset
|
196 octave_value top_level_varval (const std::string& name) const; |
e091e09d26f0
restore some symbol table functions for backward compatibility
John W. Eaton <jwe@octave.org>
parents:
27110
diff
changeset
|
197 |
27828
0948ba09abbd
finish symbol deprecation intended to be done in changeset e091e09d26f0
John W. Eaton <jwe@octave.org>
parents:
27744
diff
changeset
|
198 OCTAVE_DEPRECATED (6, "use 'interpreter::global_variable_names' instead") |
27594
e091e09d26f0
restore some symbol table functions for backward compatibility
John W. Eaton <jwe@octave.org>
parents:
27110
diff
changeset
|
199 std::list<std::string> global_variable_names (void); |
e091e09d26f0
restore some symbol table functions for backward compatibility
John W. Eaton <jwe@octave.org>
parents:
27110
diff
changeset
|
200 |
27828
0948ba09abbd
finish symbol deprecation intended to be done in changeset e091e09d26f0
John W. Eaton <jwe@octave.org>
parents:
27744
diff
changeset
|
201 OCTAVE_DEPRECATED (6, "use 'interpreter::top_level_variable_names' instead") |
27594
e091e09d26f0
restore some symbol table functions for backward compatibility
John W. Eaton <jwe@octave.org>
parents:
27110
diff
changeset
|
202 std::list<std::string> top_level_variable_names (void); |
e091e09d26f0
restore some symbol table functions for backward compatibility
John W. Eaton <jwe@octave.org>
parents:
27110
diff
changeset
|
203 |
27828
0948ba09abbd
finish symbol deprecation intended to be done in changeset e091e09d26f0
John W. Eaton <jwe@octave.org>
parents:
27744
diff
changeset
|
204 OCTAVE_DEPRECATED (6, "use 'interpreter::variable_names' instead") |
27594
e091e09d26f0
restore some symbol table functions for backward compatibility
John W. Eaton <jwe@octave.org>
parents:
27110
diff
changeset
|
205 std::list<std::string> variable_names (void); |
e091e09d26f0
restore some symbol table functions for backward compatibility
John W. Eaton <jwe@octave.org>
parents:
27110
diff
changeset
|
206 |
27828
0948ba09abbd
finish symbol deprecation intended to be done in changeset e091e09d26f0
John W. Eaton <jwe@octave.org>
parents:
27744
diff
changeset
|
207 OCTAVE_DEPRECATED (6, "use 'interpreter::assign' instead") |
0948ba09abbd
finish symbol deprecation intended to be done in changeset e091e09d26f0
John W. Eaton <jwe@octave.org>
parents:
27744
diff
changeset
|
208 void assign (const std::string& name, |
0948ba09abbd
finish symbol deprecation intended to be done in changeset e091e09d26f0
John W. Eaton <jwe@octave.org>
parents:
27744
diff
changeset
|
209 const octave_value& value = octave_value ()); |
27594
e091e09d26f0
restore some symbol table functions for backward compatibility
John W. Eaton <jwe@octave.org>
parents:
27110
diff
changeset
|
210 |
e091e09d26f0
restore some symbol table functions for backward compatibility
John W. Eaton <jwe@octave.org>
parents:
27110
diff
changeset
|
211 // Note, FORCE_ADD no longer has any meaning. |
27828
0948ba09abbd
finish symbol deprecation intended to be done in changeset e091e09d26f0
John W. Eaton <jwe@octave.org>
parents:
27744
diff
changeset
|
212 OCTAVE_DEPRECATED (6, "use 'interpreter::assign' instead") |
0948ba09abbd
finish symbol deprecation intended to be done in changeset e091e09d26f0
John W. Eaton <jwe@octave.org>
parents:
27744
diff
changeset
|
213 void assign (const std::string& name, const octave_value& value, |
0948ba09abbd
finish symbol deprecation intended to be done in changeset e091e09d26f0
John W. Eaton <jwe@octave.org>
parents:
27744
diff
changeset
|
214 bool /*force_add*/); |
27594
e091e09d26f0
restore some symbol table functions for backward compatibility
John W. Eaton <jwe@octave.org>
parents:
27110
diff
changeset
|
215 |
27828
0948ba09abbd
finish symbol deprecation intended to be done in changeset e091e09d26f0
John W. Eaton <jwe@octave.org>
parents:
27744
diff
changeset
|
216 OCTAVE_DEPRECATED (6, "use 'interpreter::clear_all' instead") |
27594
e091e09d26f0
restore some symbol table functions for backward compatibility
John W. Eaton <jwe@octave.org>
parents:
27110
diff
changeset
|
217 void clear_all (bool force = false); |
e091e09d26f0
restore some symbol table functions for backward compatibility
John W. Eaton <jwe@octave.org>
parents:
27110
diff
changeset
|
218 |
27828
0948ba09abbd
finish symbol deprecation intended to be done in changeset e091e09d26f0
John W. Eaton <jwe@octave.org>
parents:
27744
diff
changeset
|
219 OCTAVE_DEPRECATED (6, "use 'interpreter::clear_global' instead") |
27594
e091e09d26f0
restore some symbol table functions for backward compatibility
John W. Eaton <jwe@octave.org>
parents:
27110
diff
changeset
|
220 void clear_global (const std::string& name); |
e091e09d26f0
restore some symbol table functions for backward compatibility
John W. Eaton <jwe@octave.org>
parents:
27110
diff
changeset
|
221 |
27828
0948ba09abbd
finish symbol deprecation intended to be done in changeset e091e09d26f0
John W. Eaton <jwe@octave.org>
parents:
27744
diff
changeset
|
222 OCTAVE_DEPRECATED (6, "use 'interpreter::clear_global_pattern' instead") |
27594
e091e09d26f0
restore some symbol table functions for backward compatibility
John W. Eaton <jwe@octave.org>
parents:
27110
diff
changeset
|
223 void clear_global_pattern (const std::string& pattern); |
e091e09d26f0
restore some symbol table functions for backward compatibility
John W. Eaton <jwe@octave.org>
parents:
27110
diff
changeset
|
224 |
27828
0948ba09abbd
finish symbol deprecation intended to be done in changeset e091e09d26f0
John W. Eaton <jwe@octave.org>
parents:
27744
diff
changeset
|
225 OCTAVE_DEPRECATED (6, "use 'interpreter::clear_symbol' instead") |
27594
e091e09d26f0
restore some symbol table functions for backward compatibility
John W. Eaton <jwe@octave.org>
parents:
27110
diff
changeset
|
226 void clear_symbol (const std::string& name); |
e091e09d26f0
restore some symbol table functions for backward compatibility
John W. Eaton <jwe@octave.org>
parents:
27110
diff
changeset
|
227 |
27828
0948ba09abbd
finish symbol deprecation intended to be done in changeset e091e09d26f0
John W. Eaton <jwe@octave.org>
parents:
27744
diff
changeset
|
228 OCTAVE_DEPRECATED (6, "use 'interpreter::clear_symbol_pattern' instead") |
27594
e091e09d26f0
restore some symbol table functions for backward compatibility
John W. Eaton <jwe@octave.org>
parents:
27110
diff
changeset
|
229 void clear_symbol_pattern (const std::string& pattern); |
e091e09d26f0
restore some symbol table functions for backward compatibility
John W. Eaton <jwe@octave.org>
parents:
27110
diff
changeset
|
230 |
27828
0948ba09abbd
finish symbol deprecation intended to be done in changeset e091e09d26f0
John W. Eaton <jwe@octave.org>
parents:
27744
diff
changeset
|
231 OCTAVE_DEPRECATED (6, "use 'interpreter::global_assign' instead") |
27594
e091e09d26f0
restore some symbol table functions for backward compatibility
John W. Eaton <jwe@octave.org>
parents:
27110
diff
changeset
|
232 void global_assign (const std::string& name, |
e091e09d26f0
restore some symbol table functions for backward compatibility
John W. Eaton <jwe@octave.org>
parents:
27110
diff
changeset
|
233 const octave_value& value = octave_value ()); |
e091e09d26f0
restore some symbol table functions for backward compatibility
John W. Eaton <jwe@octave.org>
parents:
27110
diff
changeset
|
234 |
27828
0948ba09abbd
finish symbol deprecation intended to be done in changeset e091e09d26f0
John W. Eaton <jwe@octave.org>
parents:
27744
diff
changeset
|
235 OCTAVE_DEPRECATED (6, "use 'interpreter::top_level_assign' instead") |
27594
e091e09d26f0
restore some symbol table functions for backward compatibility
John W. Eaton <jwe@octave.org>
parents:
27110
diff
changeset
|
236 void top_level_assign (const std::string& name, |
e091e09d26f0
restore some symbol table functions for backward compatibility
John W. Eaton <jwe@octave.org>
parents:
27110
diff
changeset
|
237 const octave_value& value = octave_value ()); |
e091e09d26f0
restore some symbol table functions for backward compatibility
John W. Eaton <jwe@octave.org>
parents:
27110
diff
changeset
|
238 |
23599
5cb3a2bb5e1e
don't use singleton for symbol_table
John W. Eaton <jwe@octave.org>
parents:
23587
diff
changeset
|
239 private: |
5cb3a2bb5e1e
don't use singleton for symbol_table
John W. Eaton <jwe@octave.org>
parents:
23587
diff
changeset
|
240 |
26661
cf9e10ce3351
move variable values from symbol_record objects to stack_frame objects
John W. Eaton <jwe@octave.org>
parents:
26594
diff
changeset
|
241 interpreter& m_interpreter; |
cf9e10ce3351
move variable values from symbol_record objects to stack_frame objects
John W. Eaton <jwe@octave.org>
parents:
26594
diff
changeset
|
242 |
23693
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
243 typedef std::map<std::string, octave_value>::const_iterator |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
244 global_symbols_const_iterator; |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
245 typedef std::map<std::string, octave_value>::iterator |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
246 global_symbols_iterator; |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
247 |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
248 typedef std::map<std::string, fcn_info>::const_iterator |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
249 fcn_table_const_iterator; |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
250 typedef std::map<std::string, fcn_info>::iterator |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
251 fcn_table_iterator; |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
252 |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
253 // Map from function names to function info (private |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
254 // functions, class constructors, class methods, etc.) |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
255 // Note that subfunctions are defined in the scope that contains |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
256 // them. |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
257 std::map<std::string, fcn_info> m_fcn_table; |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
258 |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
259 // Map from class names to set of classes that have lower |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
260 // precedence. |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
261 std::map<std::string, std::set<std::string>> m_class_precedence_table; |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
262 |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
263 typedef std::map<std::string, std::set<std::string>>::const_iterator |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
264 class_precedence_table_const_iterator; |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
265 typedef std::map<std::string, std::set<std::string>>::iterator |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
266 class_precedence_table_iterator; |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
267 |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
268 // Map from class names to parent class names. |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
269 std::map<std::string, std::list<std::string>> m_parent_map; |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
270 |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
271 typedef std::map<std::string, std::list<std::string>>::const_iterator |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
272 const_parent_map_iterator; |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
273 typedef std::map<std::string, std::list<std::string>>::iterator |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
274 parent_map_iterator; |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
275 |
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
276 octave_value dump_fcn_table_map (void) const; |
24727
11e359eb63f4
move install_builtins function inside symbol_table class
John W. Eaton <jwe@octave.org>
parents:
24645
diff
changeset
|
277 |
11e359eb63f4
move install_builtins function inside symbol_table class
John W. Eaton <jwe@octave.org>
parents:
24645
diff
changeset
|
278 // This function is generated automatically by mk-builtins.pl. |
11e359eb63f4
move install_builtins function inside symbol_table class
John W. Eaton <jwe@octave.org>
parents:
24645
diff
changeset
|
279 void install_builtins (void); |
23599
5cb3a2bb5e1e
don't use singleton for symbol_table
John W. Eaton <jwe@octave.org>
parents:
23587
diff
changeset
|
280 }; |
23693
b9378eff6d13
move symbol_table class inside octave namespace
John W. Eaton <jwe@octave.org>
parents:
23680
diff
changeset
|
281 } |
8123
eb2beef9a9ff
clear breakpoints is function found to be out of date
David Bateman <dbateman@free.fr>
parents:
8051
diff
changeset
|
282 |
8 | 283 #endif |