Mercurial > hg > octave-avbm
diff src/variables.h @ 195:13c6086c325c
[project @ 1993-11-06 10:12:29 by jwe]
author | jwe |
---|---|
date | Sat, 06 Nov 1993 10:14:11 +0000 (1993-11-06) |
parents | 78fd87e624cb |
children | a99f28f5e351 |
line wrap: on
line diff
--- a/src/variables.h +++ b/src/variables.h @@ -34,17 +34,63 @@ class tree; class tree_constant; +struct builtin_mapper_functions; +struct builtin_text_functions; +struct builtin_general_functions; +struct builtin_string_variables; + +#ifndef SV_FUNCTION_TYPEDEFS +#define SV_FUNCTION_TYPEDEFS 1 + +typedef int (*sv_Function)(void); + +#endif + +extern void initialize_symbol_tables (void); + extern int symbol_out_of_date (symbol_record *sr); -extern symbol_record *force_global (char *name); -extern int bind_variable (char *, tree_constant *); -extern int bind_protected_variable (char *, tree_constant *); -extern char *octave_string_variable (char *); -extern int octave_real_scalar_variable (char *, double&); + +extern void document_symbol (const char *name, const char *help); + +extern void install_builtin_mapper_function (builtin_mapper_functions *mf); + +extern void install_builtin_text_function (builtin_text_functions *tf); + +extern void install_builtin_general_function (builtin_general_functions *gf); + +extern void install_builtin_variable (builtin_string_variables *sv); + +extern void install_builtin_variable_as_function (const char *name, + tree_constant *val, + int protect = 0, + int eternal = 0); + +extern void bind_nargin_and_nargout (symbol_table *sym_tab, + int nargin, int nargout); + +extern void bind_builtin_variable (const char *, tree_constant *, + int protect = 0, int eternal = 0, + sv_Function f = (sv_Function) 0, + const char *help = (char *) 0); + +extern char *builtin_string_variable (const char *); +extern int builtin_real_scalar_variable (const char *, double&); + +extern void link_to_global_variable (symbol_record *sr); +extern void link_to_builtin_variable (symbol_record *sr); +extern void link_to_builtin_or_function (symbol_record *sr); + +extern void force_link_to_function (const char *s); + +extern int is_globally_visible (const char *nm); + extern int extract_keyword (istream&, char *, char *); extern int extract_keyword (istream&, char *, int&); + extern void skip_comments (istream&); extern int valid_identifier (char *); extern int identifier_exists (char *); +extern int is_builtin_variable (const char *name); extern tree *is_valid_function (tree_constant&, char *, int warn = 0); extern int takes_correct_nargs (tree *, int, char *, int warn = 0); extern char **make_name_list (void);