GNU Octave
3.8.0
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
|
#include "load-path.h"
Classes | |
class | dir_info |
class | file_info |
Public Types | |
typedef void(* | hook_fcn_ptr )(const std::string &dir) |
Public Member Functions | |
~load_path (void) |
Static Public Member Functions | |
static void | append (const std::string &dir, bool warn=false) |
static void | clear (void) |
static bool | contains_canonical (const std::string &dir_name) |
static std::list< std::string > | dir_list (void) |
static string_vector | dirs (void) |
static void | display (std::ostream &os) |
static string_vector | fcn_names (void) |
static string_vector | files (const std::string &dir, bool omit_exts=false) |
static string_vector | find_all_first_of (const string_vector &files) |
static std::string | find_dir (const std::string &dir) |
static std::string | find_fcn (const std::string &fcn, std::string &dir_name) |
static std::string | find_fcn (const std::string &fcn) |
static std::string | find_fcn_file (const std::string &fcn) |
static std::string | find_file (const std::string &file) |
static std::string | find_first_of (const string_vector &files) |
static string_vector | find_matching_dirs (const std::string &dir) |
static std::string | find_method (const std::string &class_name, const std::string &meth, std::string &dir_name) |
static std::string | find_method (const std::string &class_name, const std::string &meth) |
static std::string | find_mex_file (const std::string &fcn) |
static std::string | find_oct_file (const std::string &fcn) |
static std::string | find_private_fcn (const std::string &dir, const std::string &fcn) |
static std::string | get_command_line_path (void) |
static void | initialize (bool set_initial_path=false) |
static std::list< std::string > | methods (const std::string &class_name) |
static std::list< std::string > | overloads (const std::string &meth) |
static std::string | path (void) |
static void | prepend (const std::string &dir, bool warn=false) |
static bool | remove (const std::string &dir) |
static void | set (const std::string &p, bool warn=false) |
static void | set_add_hook (hook_fcn_ptr f) |
static void | set_command_line_path (const std::string &p) |
static void | set_remove_hook (hook_fcn_ptr f) |
static std::string | system_path (void) |
static void | update (void) |
Protected Member Functions | |
load_path (void) |
Private Types | |
typedef abs_dir_cache_type::iterator | abs_dir_cache_iterator |
typedef std::map< std::string, dir_info > | abs_dir_cache_type |
typedef abs_dir_cache_type::const_iterator | const_abs_dir_cache_iterator |
typedef dir_info_list_type::const_iterator | const_dir_info_list_iterator |
typedef fcn_map_type::const_iterator | const_fcn_map_iterator |
typedef file_info_list_type::const_iterator | const_file_info_list_iterator |
typedef method_map_type::const_iterator | const_method_map_iterator |
typedef private_fcn_map_type::const_iterator | const_private_fcn_map_iterator |
typedef dir_info_list_type::iterator | dir_info_list_iterator |
typedef std::list< dir_info > | dir_info_list_type |
typedef fcn_map_type::iterator | fcn_map_iterator |
typedef std::map< std::string, file_info_list_type > | fcn_map_type |
typedef file_info_list_type::iterator | file_info_list_iterator |
typedef std::list< file_info > | file_info_list_type |
typedef method_map_type::iterator | method_map_iterator |
typedef std::map< std::string, fcn_map_type > | method_map_type |
typedef private_fcn_map_type::iterator | private_fcn_map_iterator |
typedef std::map< std::string, dir_info::fcn_file_map_type > | private_fcn_map_type |
Private Member Functions | |
void | add_to_fcn_map (const dir_info &di, bool at_end) const |
void | add_to_method_map (const dir_info &di, bool at_end) const |
void | add_to_private_fcn_map (const dir_info &di) const |
bool | contains (const std::string &dir) const |
void | do_add (const std::string &dir, bool at_end, bool warn) |
void | do_append (const std::string &dir, bool warn) |
void | do_clear (void) |
bool | do_contains_canonical (const std::string &dir) const |
std::list< std::string > | do_dir_list (void) const |
string_vector | do_dirs (void) const |
void | do_display (std::ostream &os) const |
string_vector | do_fcn_names (void) const |
string_vector | do_files (const std::string &dir, bool omit_exts) const |
string_vector | do_find_all_first_of (const string_vector &files) const |
std::string | do_find_dir (const std::string &dir) const |
std::string | do_find_fcn (const std::string &fcn, std::string &dir_name, int type=M_FILE|OCT_FILE|MEX_FILE) const |
std::string | do_find_file (const std::string &file) const |
std::string | do_find_first_of (const string_vector &files) const |
string_vector | do_find_matching_dirs (const std::string &dir) const |
std::string | do_find_method (const std::string &class_name, const std::string &meth, std::string &dir_name, int type=M_FILE|OCT_FILE|MEX_FILE) const |
std::string | do_find_private_fcn (const std::string &dir, const std::string &fcn, int type=M_FILE|OCT_FILE|MEX_FILE) const |
std::string | do_get_command_line_path (void) const |
void | do_initialize (bool set_initial_path) |
std::list< std::string > | do_methods (const std::string &class_name) const |
std::list< std::string > | do_overloads (const std::string &meth) const |
std::string | do_path (void) const |
void | do_prepend (const std::string &dir, bool warn) |
bool | do_remove (const std::string &dir) |
void | do_set (const std::string &p, bool warn, bool is_init=false) |
std::string | do_system_path (void) const |
void | do_update (void) const |
const_dir_info_list_iterator | find_dir_info (const std::string &dir) const |
dir_info_list_iterator | find_dir_info (const std::string &dir) |
void | move (std::list< dir_info >::iterator i, bool at_end) |
void | move_fcn_map (const std::string &dir, const string_vector &fcn_files, bool at_end) |
void | move_method_map (const std::string &dir, bool at_end) |
void | remove_fcn_map (const std::string &dir, const string_vector &fcn_files) |
void | remove_method_map (const std::string &dir) |
void | remove_private_fcn_map (const std::string &dir) |
Static Private Member Functions | |
static bool | check_file_type (std::string &fname, int type, int possible_types, const std::string &fcn, const char *who) |
static void | cleanup_instance (void) |
static bool | instance_ok (void) |
Private Attributes | |
dir_info_list_type | dir_info_list |
fcn_map_type | fcn_map |
std::set< std::string > | init_dirs |
method_map_type | method_map |
private_fcn_map_type | private_fcn_map |
Static Private Attributes | |
static abs_dir_cache_type | abs_dir_cache |
static hook_fcn_ptr | add_hook = execute_pkg_add |
static std::string | command_line_path |
static load_path * | instance = 0 |
static const int | M_FILE = 1 |
static const int | MEX_FILE = 4 |
static const int | OCT_FILE = 2 |
static hook_fcn_ptr | remove_hook = execute_pkg_del |
static std::string | sys_path |
Friends | |
dir_info::fcn_file_map_type | get_fcn_files (const std::string &d) |
string_vector | get_file_list (const dir_info::fcn_file_map_type &lst) |
void | print_fcn_list (std::ostream &os, const dir_info::fcn_file_map_type &lst) |
void | print_types (std::ostream &os, int types) |
Definition at line 35 of file load-path.h.
|
private |
Definition at line 419 of file load-path.h.
|
private |
Definition at line 416 of file load-path.h.
|
private |
Definition at line 418 of file load-path.h.
|
private |
Definition at line 413 of file load-path.h.
|
private |
Definition at line 429 of file load-path.h.
|
private |
Definition at line 423 of file load-path.h.
|
private |
Definition at line 442 of file load-path.h.
|
private |
Definition at line 436 of file load-path.h.
|
private |
Definition at line 414 of file load-path.h.
|
private |
Definition at line 411 of file load-path.h.
|
private |
Definition at line 430 of file load-path.h.
|
private |
Definition at line 427 of file load-path.h.
|
private |
Definition at line 424 of file load-path.h.
|
private |
Definition at line 421 of file load-path.h.
typedef void(* load_path::hook_fcn_ptr)(const std::string &dir) |
Definition at line 47 of file load-path.h.
|
private |
Definition at line 443 of file load-path.h.
|
private |
Definition at line 440 of file load-path.h.
|
private |
Definition at line 437 of file load-path.h.
|
private |
Definition at line 434 of file load-path.h.
|
inlineprotected |
Definition at line 41 of file load-path.h.
Referenced by instance_ok().
|
inline |
Definition at line 49 of file load-path.h.
Definition at line 1746 of file load-path.cc.
References concat(), load_path::dir_info::dir_name, load_path::file_info::dir_name, load_path::dir_info::fcn_files, fcn_map, fi, in_path_list(), symbol_table::is_built_in_function_name(), Array< T >::length(), M_FILE, MEX_FILE, OCT_FILE, sys_path, load_path::file_info::types, and warning_with_id().
Referenced by do_add(), and do_update().
Definition at line 1851 of file load-path.cc.
References concat(), load_path::dir_info::dir_name, fi, load_path::dir_info::class_info::method_file_map, load_path::dir_info::method_file_map, method_map, private_fcn_map, load_path::dir_info::class_info::private_file_map, and load_path::file_info::types.
Referenced by do_add(), and do_update().
Definition at line 1842 of file load-path.cc.
References load_path::dir_info::dir_name, private_fcn_map, and load_path::dir_info::private_file_map.
Referenced by do_add(), and do_update().
Definition at line 69 of file load-path.h.
Referenced by Faddpath().
|
staticprivate |
Definition at line 896 of file load-path.cc.
References error(), M_FILE, MEX_FILE, and OCT_FILE.
Referenced by do_find_fcn(), do_find_method(), and do_find_private_fcn().
Definition at line 457 of file load-path.h.
Referenced by instance_ok().
Definition at line 57 of file load-path.h.
|
private |
Definition at line 351 of file load-path.cc.
References dir_info_list, and find_dir_info().
|
inlinestatic |
Definition at line 92 of file load-path.h.
Referenced by octave_qt_link::file_in_path().
|
inlinestatic |
Definition at line 203 of file load-path.h.
|
inlinestatic |
Definition at line 198 of file load-path.h.
|
inlinestatic |
Definition at line 225 of file load-path.h.
Definition at line 671 of file load-path.cc.
References add_hook, add_to_fcn_map(), add_to_method_map(), add_to_private_fcn_map(), dir_info_list, base_file_stat::error(), error_state, find_dir_info(), base_file_stat::is_dir(), move(), strip_trailing_separators(), file_ops::tilde_expand(), warning(), and warning_with_id().
Referenced by do_append(), and do_prepend().
Definition at line 544 of file load-path.cc.
References dir_info_list, fcn_map, method_map, and private_fcn_map.
Referenced by do_set().
|
private |
Definition at line 357 of file load-path.cc.
References dir_info_list, and same_file().
|
private |
Definition at line 1475 of file load-path.cc.
References dir_info_list.
|
private |
Definition at line 1458 of file load-path.cc.
References dir_info_list.
|
private |
Definition at line 1625 of file load-path.cc.
References concat(), dir_info_list, string_vector::empty(), fcn_map, get_file_list, string_vector::list_in_columns(), load_path::dir_info::class_info::method_file_map, method_map, print_fcn_list, print_types, and private_fcn_map.
|
private |
Definition at line 1516 of file load-path.cc.
References fcn_map.
|
private |
Definition at line 1488 of file load-path.cc.
References dir_info_list, find_dir_info(), if(), and Array< T >::length().
|
private |
Definition at line 1389 of file load-path.cc.
References octave_env::absolute_pathname(), file_ops::concat(), concat(), dir_info_list, file_ops::dir_sep_chars(), base_file_stat::exists(), Array< T >::length(), string_vector::resize(), and octave_env::rooted_relative_pathname().
|
private |
Definition at line 1216 of file load-path.cc.
References octave_env::absolute_pathname(), dir_info_list, file_ops::dir_sep_chars(), file_ops::dir_sep_str(), base_file_stat::exists(), base_file_stat::is_dir(), file_ops::is_dir_sep(), make_absolute(), and octave_env::rooted_relative_pathname().
|
private |
Definition at line 990 of file load-path.cc.
References check_file_type(), concat(), load_path::file_info::dir_name, do_find_method(), fcn_map, fi, and load_path::file_info::types.
|
private |
Definition at line 1165 of file load-path.cc.
References octave_env::absolute_pathname(), concat(), dir_info_list, file_ops::dir_sep_chars(), base_file_stat::exists(), Array< T >::length(), and octave_env::rooted_relative_pathname().
|
private |
Definition at line 1310 of file load-path.cc.
References octave_env::absolute_pathname(), file_ops::concat(), concat(), dir_info_list, file_ops::dir_sep_chars(), base_file_stat::exists(), Array< T >::length(), string_vector::resize(), and octave_env::rooted_relative_pathname().
|
private |
Definition at line 1263 of file load-path.cc.
References octave_env::absolute_pathname(), dir_info_list, file_ops::dir_sep_chars(), file_ops::dir_sep_str(), base_file_stat::exists(), base_file_stat::is_dir(), file_ops::is_dir_sep(), make_absolute(), and octave_env::rooted_relative_pathname().
|
private |
Definition at line 1075 of file load-path.cc.
References check_file_type(), concat(), load_path::file_info::dir_name, fi, method_map, and load_path::file_info::types.
Referenced by do_find_fcn().
|
private |
Definition at line 1045 of file load-path.cc.
References check_file_type(), file_ops::concat(), concat(), and private_fcn_map.
|
inlineprivate |
Definition at line 559 of file load-path.h.
References command_line_path.
Definition at line 507 of file load-path.cc.
References command_line_path, do_set(), octave_env::getenv(), maybe_add_path_elts(), dir_path::path_sep_str(), sys_path, Vfcn_file_dir, Vlocal_api_fcn_file_dir, Vlocal_api_oct_file_dir, Vlocal_fcn_file_dir, Vlocal_oct_file_dir, Vlocal_ver_fcn_file_dir, Vlocal_ver_oct_file_dir, and Voct_file_dir.
|
private |
Definition at line 1123 of file load-path.cc.
References method_map.
|
private |
Definition at line 1146 of file load-path.cc.
References method_map.
|
private |
Definition at line 1533 of file load-path.cc.
References dirs(), Array< T >::length(), and dir_path::path_sep_str().
|
private |
Definition at line 822 of file load-path.cc.
References dir_info_list, find_dir_info(), remove_fcn_map(), remove_hook, remove_method_map(), remove_private_fcn_map(), strip_trailing_separators(), file_ops::tilde_expand(), and warning().
Definition at line 586 of file load-path.cc.
References add_hook, dir_info_list, do_append(), do_clear(), do_prepend(), init_dirs, action_container::protect_var(), unwind_protect::run_first(), split_path(), and warning_with_id().
Referenced by do_initialize().
|
inlineprivate |
Definition at line 557 of file load-path.h.
Definition at line 867 of file load-path.cc.
References add_to_fcn_map(), add_to_method_map(), add_to_private_fcn_map(), dir_info_list, fcn_map, method_map, private_fcn_map, and load_path::dir_info::update().
|
inlinestatic |
Definition at line 215 of file load-path.h.
Referenced by F__list_functions__(), and make_name_list().
|
inlinestatic |
Definition at line 209 of file load-path.h.
Referenced by F__list_functions__().
|
inlinestatic |
Definition at line 192 of file load-path.h.
Referenced by Ffile_in_loadpath().
|
inlinestatic |
Definition at line 174 of file load-path.h.
Referenced by contents_file_in_path(), and Ffind_dir_in_path().
|
private |
Definition at line 315 of file load-path.cc.
References dir_info_list, and file_ops::tilde_expand().
Referenced by contains(), do_add(), do_files(), and do_remove().
|
private |
Definition at line 333 of file load-path.cc.
References dir_info_list, and file_ops::tilde_expand().
|
inlinestatic |
Definition at line 125 of file load-path.h.
Referenced by symbol_table::fcn_info::fcn_info_rep::find_user_function(), out_of_date_check(), and symbol_exist().
|
inlinestatic |
Definition at line 131 of file load-path.h.
|
inlinestatic |
Definition at line 144 of file load-path.h.
Referenced by do_which(), and fcn_file_in_path().
|
inlinestatic |
Definition at line 168 of file load-path.h.
Referenced by do_stream_open(), do_which(), file_in_path(), octave_qt_link::file_in_path(), find_file_to_load(), and Fmd5sum().
|
inlinestatic |
Definition at line 186 of file load-path.h.
Referenced by Ffile_in_loadpath().
|
inlinestatic |
Definition at line 180 of file load-path.h.
Referenced by Ffind_dir_in_path().
|
inlinestatic |
Definition at line 97 of file load-path.h.
Referenced by DEFUN(), octave_class::load_ascii(), octave_class::load_binary(), octave_class::load_hdf5(), read_mat5_binary_element(), octave_class::save_ascii(), octave_class::save_binary(), octave_class::save_hdf5(), and save_mat5_binary_element().
|
inlinestatic |
Definition at line 106 of file load-path.h.
|
inlinestatic |
Definition at line 160 of file load-path.h.
Referenced by mex_file_in_path().
|
inlinestatic |
Definition at line 152 of file load-path.h.
Referenced by oct_file_in_path().
|
inlinestatic |
Definition at line 137 of file load-path.h.
Referenced by symbol_table::fcn_info::fcn_info_rep::load_private_function().
|
inlinestatic |
Definition at line 243 of file load-path.h.
Referenced by Fcommand_line_path().
Definition at line 51 of file load-path.h.
References set_initial_path.
Referenced by Frestoredefaultpath(), and octave_initialize_interpreter().
Definition at line 290 of file load-path.cc.
References singleton_cleanup_list::add(), cleanup_instance(), error(), instance, and load_path().
|
inlinestatic |
Definition at line 113 of file load-path.h.
Referenced by DEFUN().
Definition at line 469 of file load-path.cc.
References dir_info_list, load_path::dir_info::dir_name, load_path::dir_info::fcn_files, move_fcn_map(), and move_method_map().
Referenced by do_add().
|
private |
Definition at line 376 of file load-path.cc.
References fcn_map, fi, and Array< T >::length().
Referenced by move().
Definition at line 425 of file load-path.cc.
References concat(), fi, and method_map.
Referenced by move().
|
inlinestatic |
Definition at line 119 of file load-path.h.
Referenced by make_fcn_handle().
|
inlinestatic |
Definition at line 220 of file load-path.h.
Referenced by Faddpath(), Fpath(), and Frmpath().
Definition at line 75 of file load-path.h.
Referenced by Faddpath(), and octave_qt_link::file_in_path().
|
inlinestatic |
Definition at line 81 of file load-path.h.
Referenced by Frmpath().
|
private |
Definition at line 733 of file load-path.cc.
References fcn_map, and Array< T >::length().
Referenced by do_remove().
|
private |
Definition at line 782 of file load-path.cc.
References concat(), and method_map.
Referenced by do_remove().
|
private |
Definition at line 63 of file load-path.h.
Referenced by Fpath().
|
inlinestatic |
Definition at line 231 of file load-path.h.
References f.
|
inlinestatic |
Definition at line 235 of file load-path.h.
References command_line_path, and dir_path::path_sep_str().
Referenced by octave_initialize_interpreter().
|
inlinestatic |
Definition at line 233 of file load-path.h.
References f.
|
inlinestatic |
Definition at line 249 of file load-path.h.
Referenced by F__pathorig__(), Frestoredefaultpath(), read_mat5_binary_element(), and octave_fcn_handle::set_fcn().
Definition at line 86 of file load-path.h.
Referenced by symbol_table::fcn_info::fcn_info_rep::builtin_find(), symbol_table::fcn_info::fcn_info_rep::find(), make_fcn_handle(), octave_change_to_directory(), octave_base_reader::octave_gets(), and rehash_internal().
|
friend |
Definition at line 218 of file load-path.cc.
Referenced by load_path::dir_info::get_method_file_map(), and load_path::dir_info::get_private_file_map().
|
friend |
Definition at line 1595 of file load-path.cc.
Referenced by do_display(), and load_path::dir_info::initialize().
|
friend |
Definition at line 1579 of file load-path.cc.
Referenced by do_display().
Definition at line 1551 of file load-path.cc.
Referenced by do_display(), and print_fcn_list().
|
staticprivate |
Definition at line 467 of file load-path.h.
Referenced by load_path::dir_info::initialize(), and load_path::dir_info::update().
|
staticprivate |
Definition at line 459 of file load-path.h.
|
staticprivate |
Definition at line 463 of file load-path.h.
Referenced by do_initialize().
|
mutableprivate |
Definition at line 445 of file load-path.h.
Referenced by contains(), do_add(), do_clear(), do_contains_canonical(), do_dir_list(), do_dirs(), do_display(), do_files(), do_find_all_first_of(), do_find_dir(), do_find_file(), do_find_first_of(), do_find_matching_dirs(), do_remove(), do_set(), do_update(), find_dir_info(), and move().
|
mutableprivate |
Definition at line 447 of file load-path.h.
Referenced by add_to_fcn_map(), do_clear(), do_display(), do_fcn_names(), do_find_fcn(), do_update(), move_fcn_map(), and remove_fcn_map().
|
mutableprivate |
Definition at line 453 of file load-path.h.
Referenced by do_set().
|
staticprivate |
Definition at line 455 of file load-path.h.
Referenced by instance_ok().
|
staticprivate |
Definition at line 256 of file load-path.h.
Referenced by add_to_fcn_map(), check_file_type(), get_fcn_files(), and print_types().
|
mutableprivate |
Definition at line 451 of file load-path.h.
Referenced by add_to_method_map(), do_clear(), do_display(), do_find_method(), do_methods(), do_overloads(), do_update(), move_method_map(), and remove_method_map().
|
staticprivate |
Definition at line 258 of file load-path.h.
Referenced by add_to_fcn_map(), check_file_type(), get_fcn_files(), get_file_list(), and print_types().
|
staticprivate |
Definition at line 257 of file load-path.h.
Referenced by add_to_fcn_map(), check_file_type(), get_fcn_files(), get_file_list(), and print_types().
|
mutableprivate |
Definition at line 449 of file load-path.h.
Referenced by add_to_method_map(), add_to_private_fcn_map(), do_clear(), do_display(), do_find_private_fcn(), do_update(), and remove_private_fcn_map().
|
staticprivate |
Definition at line 461 of file load-path.h.
Referenced by do_remove().
|
staticprivate |
Definition at line 465 of file load-path.h.
Referenced by add_to_fcn_map(), and do_initialize().