Mercurial > octave
diff liboctave/util/pathsearch.h @ 21867:0cdfd6d230e6
use std::list<std::string> instead of string_vector in pathsearch functions
* kpse.cc, pathsearch.cc, pathsearch.h: Use std::list<std::string>
instead of string_vector in pathsearch functions.
* ls-mat5.cc, utils.cc, ov-fcn-handle.cc: Update to match.
author | John W. Eaton <jwe@octave.org> |
---|---|
date | Sat, 11 Jun 2016 18:44:07 -0400 |
parents | 949cb46e6bdb |
children | bac0d6f07a3e |
line wrap: on
line diff
--- a/liboctave/util/pathsearch.h Sat Jun 11 16:37:05 2016 -0400 +++ b/liboctave/util/pathsearch.h Sat Jun 11 18:44:07 2016 -0400 @@ -25,10 +25,9 @@ #include "octave-config.h" +#include <list> #include <string> -#include "str-vec.h" - namespace octave { class @@ -38,24 +37,32 @@ public: directory_path (const std::string& s = "", const std::string& d = "") - : p_orig (s), p_default (d), initialized (false), p (), pv () + : m_orig_path (s), m_default_path (d), m_initialized (false), + m_expanded_path (), m_path_elements () { - if (! p_orig.empty ()) + if (! m_orig_path.empty ()) init (); } directory_path (const directory_path& dp) - : p_orig (dp.p_orig), p_default (dp.p_default), - initialized (dp.initialized), p (dp.p), pv (dp.pv) + : m_orig_path (dp.m_orig_path), + m_default_path (dp.m_default_path), + m_initialized (dp.m_initialized), + m_expanded_path (dp.m_expanded_path), + m_path_elements (dp.m_path_elements) { } directory_path& operator = (const directory_path& dp) { - p_orig = dp.p_orig; - p_default = dp.p_default; - initialized = dp.initialized; - p = dp.p; - pv = dp.pv; + if (this != &dp) + { + m_orig_path = dp.m_orig_path; + m_default_path = dp.m_default_path; + m_initialized = dp.m_initialized; + m_expanded_path = dp.m_expanded_path; + m_path_elements = dp.m_path_elements; + } + return *this; } @@ -63,25 +70,29 @@ void set (const std::string& s) { - initialized = false; - p_orig = s; + m_initialized = false; + m_orig_path = s; init (); } - string_vector elements (void); - string_vector all_directories (void); + std::list<std::string> elements (void); + + std::list<std::string> all_directories (void); std::string find_first (const std::string&); + std::string find (const std::string& nm) { return find_first (nm); } - string_vector find_all (const std::string&); + std::list<std::string> find_all (const std::string&); - std::string find_first_of (const string_vector& names); - string_vector find_all_first_of (const string_vector& names); + std::string find_first_of (const std::list<std::string>& names); + + std::list<std::string> + find_all_first_of (const std::list<std::string>& names); void rehash (void) { - initialized = false; + m_initialized = false; init (); } @@ -105,21 +116,21 @@ private: // The colon separated list that we were given. - std::string p_orig; + std::string m_orig_path; // The default path. If specified, replaces leading, trailing, or // doubled colons in p_orig. - std::string p_default; + std::string m_default_path; - // TRUE means we've unpacked p. - bool initialized; + // TRUE means we've unpacked the path p. + bool m_initialized; // A version of the colon separate list on which we have performed // tilde, variable, and possibly default path expansion. - std::string p; + std::string m_expanded_path; // The elements of the list. - string_vector pv; + std::list<std::string> m_path_elements; void init (void);