#include <climits>
#include <cfloat>
#include <string>
#include "ov.h"
#include "ov-builtin.h"
#include "symtab.h"
Go to the source code of this file.
Defines | |
#define | SET_INTERNAL_VARIABLE(NM) set_internal_variable (V ## NM, args, nargout, #NM) |
#define | SET_INTERNAL_VARIABLE_CHOICES(NM, CHOICES) set_internal_variable (V ## NM, args, nargout, #NM, CHOICES) |
#define | SET_INTERNAL_VARIABLE_WITH_LIMITS(NM, MINVAL, MAXVAL) set_internal_variable (V ## NM, args, nargout, #NM, MINVAL, MAXVAL) |
#define | SET_NONEMPTY_INTERNAL_STRING_VARIABLE(NM) set_internal_variable (V ## NM, args, nargout, #NM, false) |
Functions | |
OCTINTERP_API void | bind_ans (const octave_value &val, bool print) |
OCTINTERP_API void | bind_internal_variable (const std::string &fname, const octave_value &val) |
OCTINTERP_API octave_value | builtin_any_variable (const std::string &) |
OCTINTERP_API int | builtin_real_scalar_variable (const std::string &, double &) |
OCTINTERP_API std::string | builtin_string_variable (const std::string &) |
OCTINTERP_API void | clear_function (const std::string &nm) |
OCTINTERP_API void | clear_mex_functions (void) |
OCTINTERP_API void | clear_symbol (const std::string &nm) |
OCTINTERP_API void | clear_variable (const std::string &nm) |
OCTINTERP_API octave_function * | extract_function (const octave_value &arg, const std::string &warn_for, const std::string &fname, const std::string &header, const std::string &trailer) |
OCTINTERP_API string_vector | generate_struct_completions (const std::string &text, std::string &prefix, std::string &hint) |
OCTINTERP_API octave_value | get_global_value (const std::string &nm, bool silent=false) |
OCTINTERP_API string_vector | get_struct_elts (const std::string &text) |
OCTINTERP_API octave_value | get_top_level_value (const std::string &nm, bool silent=false) |
OCTINTERP_API octave_function * | is_valid_function (const octave_value &, const std::string &=std::string(), bool warn=false) |
OCTINTERP_API octave_function * | is_valid_function (const std::string &, const std::string &=std::string(), bool warn=false) |
OCTINTERP_API bool | looks_like_struct (const std::string &text) |
OCTINTERP_API octave_value | lookup_function_handle (const std::string &nm) |
OCTINTERP_API void | maybe_missing_function_hook (const std::string &name) |
OCTINTERP_API bool | mislocked (const std::string &) |
OCTINTERP_API void | mlock (void) |
OCTINTERP_API void | munlock (const std::string &) |
OCTINTERP_API void | set_global_value (const std::string &nm, const octave_value &val) |
OCTINTERP_API octave_value | set_internal_variable (int &var, const octave_value_list &args, int nargout, const char *nm, const char **choices) |
OCTINTERP_API octave_value | set_internal_variable (char &var, const octave_value_list &args, int nargout, const char *nm) |
OCTINTERP_API octave_value | set_internal_variable (double &var, const octave_value_list &args, int nargout, const char *nm, double minval=DBL_MIN, double maxval=DBL_MAX) |
OCTINTERP_API octave_value | set_internal_variable (int &var, const octave_value_list &args, int nargout, const char *nm, int minval=INT_MIN, int maxval=INT_MAX) |
OCTINTERP_API octave_value | set_internal_variable (std::string &var, const octave_value_list &args, int nargout, const char *nm, bool empty_ok=true) |
OCTINTERP_API octave_value | set_internal_variable (bool &var, const octave_value_list &args, int nargout, const char *nm) |
OCTINTERP_API void | set_top_level_value (const std::string &nm, const octave_value &val) |
OCTINTERP_API int | symbol_exist (const std::string &name, const std::string &type="any") |
OCTINTERP_API std::string | unique_symbol_name (const std::string &basename) |
#define SET_INTERNAL_VARIABLE | ( | NM | ) | set_internal_variable (V ## NM, args, nargout, #NM) |
Definition at line 115 of file variables.h.
Referenced by DEFUN().
#define SET_INTERNAL_VARIABLE_CHOICES | ( | NM, | ||
CHOICES | ||||
) | set_internal_variable (V ## NM, args, nargout, #NM, CHOICES) |
Definition at line 125 of file variables.h.
Referenced by DEFUN_DLD().
#define SET_INTERNAL_VARIABLE_WITH_LIMITS | ( | NM, | ||
MINVAL, | ||||
MAXVAL | ||||
) | set_internal_variable (V ## NM, args, nargout, #NM, MINVAL, MAXVAL) |
Definition at line 121 of file variables.h.
Referenced by DEFUN().
#define SET_NONEMPTY_INTERNAL_STRING_VARIABLE | ( | NM | ) | set_internal_variable (V ## NM, args, nargout, #NM, false) |
Definition at line 118 of file variables.h.
Referenced by DEFUN().
OCTINTERP_API void bind_ans | ( | const octave_value & | val, | |
bool | ||||
) |
Definition at line 1867 of file variables.cc.
References bind_ans(), octave_value::is_cs_list(), octave_value::is_defined(), octave_value_list::length(), octave_value::list_value(), octave_stdout, octave_value::print_with_name(), and symbol_table::varref().
Referenced by bind_ans(), and tree_evaluator::visit_statement().
OCTINTERP_API void bind_internal_variable | ( | const std::string & | fname, | |
const octave_value & | val | |||
) |
Definition at line 1891 of file variables.cc.
References feval().
Referenced by maximum_braindamage(), and octave_main().
OCTINTERP_API octave_value builtin_any_variable | ( | const std::string & | ) |
OCTINTERP_API std::string builtin_string_variable | ( | const std::string & | ) |
OCTINTERP_API void clear_function | ( | const std::string & | nm | ) |
Definition at line 76 of file variables.cc.
References symbol_table::clear_function().
Referenced by symbol_table::clear_symbol(), and DEFUN_DLD().
OCTINTERP_API void clear_mex_functions | ( | void | ) |
Definition at line 70 of file variables.cc.
References symbol_table::clear_mex_functions().
Referenced by do_octave_atexit().
OCTINTERP_API void clear_symbol | ( | const std::string & | nm | ) |
Definition at line 88 of file variables.cc.
References symbol_table::clear_symbol().
OCTINTERP_API void clear_variable | ( | const std::string & | nm | ) |
Definition at line 82 of file variables.cc.
References symbol_table::clear_variable().
Referenced by symbol_table::clear(), and symbol_table::clear_symbol().
OCTINTERP_API octave_function* extract_function | ( | const octave_value & | arg, | |
const std::string & | warn_for, | |||
const std::string & | fname, | |||
const std::string & | header, | |||
const std::string & | trailer | |||
) |
Definition at line 142 of file variables.cc.
References error(), error_state, eval_string(), is_valid_function(), octave_value::string_value(), and warning().
Referenced by DEFUN_DLD().
OCTINTERP_API string_vector generate_struct_completions | ( | const std::string & | text, | |
std::string & | prefix, | |||
std::string & | hint | |||
) |
Definition at line 243 of file variables.cc.
References discard_error_messages, discard_warning_messages, error_state, eval_string(), octave_value::is_defined(), octave_value::is_map(), is_variable(), octave_value::map_keys(), unwind_protect::protect_var(), unwind_protect::run(), and warning_state.
Referenced by generate_possible_completions().
OCTINTERP_API octave_value get_global_value | ( | const std::string & | nm, | |
bool | silent = false | |||
) |
Definition at line 605 of file variables.cc.
References error(), symbol_table::global_varval(), and octave_value::is_undefined().
Referenced by mexGetVariable().
OCTINTERP_API string_vector get_struct_elts | ( | const std::string & | text | ) |
Definition at line 191 of file variables.cc.
References Array< T >::length().
OCTINTERP_API octave_value get_top_level_value | ( | const std::string & | nm, | |
bool | silent = false | |||
) |
Definition at line 622 of file variables.cc.
References error(), octave_value::is_undefined(), and symbol_table::top_level_varval().
OCTINTERP_API octave_function* is_valid_function | ( | const octave_value & | , | |
const std::string & | = std::string() , |
|||
bool | warn = false | |||
) |
Definition at line 119 of file variables.cc.
References error(), error_state, octave_value::is_string(), is_valid_function(), and octave_value::string_value().
OCTINTERP_API octave_function* is_valid_function | ( | const std::string & | , | |
const std::string & | = std::string() , |
|||
bool | warn = false | |||
) |
Definition at line 98 of file variables.cc.
References error(), symbol_table::find_function(), octave_value::function_value(), and octave_value::is_defined().
Referenced by DEFUN_DLD(), extract_function(), input_event_hook(), and is_valid_function().
OCTINTERP_API bool looks_like_struct | ( | const std::string & | text | ) |
Definition at line 297 of file variables.cc.
References file_ops::dir_sep_chars(), discard_error_messages, error_state, eval_string(), octave_value::is_defined(), octave_value::is_map(), unwind_protect::protect_var(), and unwind_protect::run().
Referenced by generate_completion(), and generate_possible_completions().
OCTINTERP_API octave_value lookup_function_handle | ( | const std::string & | nm | ) |
Definition at line 597 of file variables.cc.
References octave_value::is_function_handle(), octave_value(), and symbol_table::varval().
OCTINTERP_API void maybe_missing_function_hook | ( | const std::string & | name | ) |
Definition at line 2553 of file variables.cc.
References buffer_error_messages, feval(), and unwind_protect::protect_var().
Referenced by tree_identifier::eval_undefined_error().
OCTINTERP_API bool mislocked | ( | const std::string & | ) |
Definition at line 1926 of file variables.cc.
References symbol_table::find_function(), octave_value::function_value(), octave_value::is_defined(), and octave_function::islocked().
Referenced by DEFUN(), and mexIsLocked().
OCTINTERP_API void mlock | ( | void | ) |
Definition at line 1901 of file variables.cc.
References octave_call_stack::current(), error(), and octave_function::lock().
Referenced by DEFUN_DLD(), and mexLock().
OCTINTERP_API void munlock | ( | const std::string & | ) |
Definition at line 1912 of file variables.cc.
References symbol_table::find_function(), octave_value::function_value(), octave_value::is_defined(), and octave_function::unlock().
Referenced by gnuplot_graphics_toolkit::close(), DEFUN(), and mexUnlock().
OCTINTERP_API void set_global_value | ( | const std::string & | nm, | |
const octave_value & | val | |||
) |
Definition at line 616 of file variables.cc.
References symbol_table::global_varref().
Referenced by mexPutVariable().
OCTINTERP_API octave_value set_internal_variable | ( | int & | var, | |
const octave_value_list & | args, | |||
int | nargout, | |||
const char * | nm, | |||
const char ** | choices | |||
) |
Definition at line 874 of file variables.cc.
References error(), error_state, octave_value_list::length(), print_usage(), try_local_protect(), wants_local_change(), and warning().
OCTINTERP_API octave_value set_internal_variable | ( | char & | var, | |
const octave_value_list & | args, | |||
int | nargout, | |||
const char * | nm | |||
) |
Definition at line 709 of file variables.cc.
References error(), error_state, octave_value_list::length(), print_usage(), try_local_protect(), wants_local_change(), and warning().
OCTINTERP_API octave_value set_internal_variable | ( | double & | var, | |
const octave_value_list & | args, | |||
int | nargout, | |||
const char * | nm, | |||
double | minval = DBL_MIN , |
|||
double | maxval = DBL_MAX | |||
) |
Definition at line 797 of file variables.cc.
References error(), error_state, octave_value_list::length(), print_usage(), try_local_protect(), wants_local_change(), and warning().
OCTINTERP_API octave_value set_internal_variable | ( | int & | var, | |
const octave_value_list & | args, | |||
int | nargout, | |||
const char * | nm, | |||
int | minval = INT_MIN , |
|||
int | maxval = INT_MAX | |||
) |
Definition at line 756 of file variables.cc.
References error(), error_state, octave_value_list::length(), print_usage(), try_local_protect(), wants_local_change(), and warning().
OCTINTERP_API octave_value set_internal_variable | ( | std::string & | var, | |
const octave_value_list & | args, | |||
int | nargout, | |||
const char * | nm, | |||
bool | empty_ok = true | |||
) |
Definition at line 837 of file variables.cc.
References error(), error_state, octave_value_list::length(), print_usage(), try_local_protect(), wants_local_change(), and warning().
OCTINTERP_API octave_value set_internal_variable | ( | bool & | var, | |
const octave_value_list & | args, | |||
int | nargout, | |||
const char * | nm | |||
) |
Definition at line 677 of file variables.cc.
References error(), error_state, octave_value_list::length(), print_usage(), try_local_protect(), wants_local_change(), and warning().
Referenced by DEFUN().
OCTINTERP_API void set_top_level_value | ( | const std::string & | nm, | |
const octave_value & | val | |||
) |
Definition at line 633 of file variables.cc.
References symbol_table::top_level_varref().
OCTINTERP_API int symbol_exist | ( | const std::string & | name, | |
const std::string & | type = "any" | |||
) |
Definition at line 389 of file variables.cc.
References f, octave_function::fcn_file_name(), file_in_path(), load_path::find_fcn(), octave_value::function_value(), octave_value::is_anonymous_function(), octave_value::is_builtin_function(), octave_value::is_constant(), octave_value::is_defined(), base_file_stat::is_dir(), octave_value::is_dld_function(), octave_value::is_function_handle(), octave_value::is_inline_function(), octave_value::is_object(), octave_value::is_user_function(), lookup_autoload(), and safe_symbol_lookup().
Referenced by DEFUN(), and unique_symbol_name().
OCTINTERP_API std::string unique_symbol_name | ( | const std::string & | basename | ) |
Definition at line 497 of file variables.cc.
References GET_IDX, and symbol_exist().
Referenced by DEFUN_DLD().