]> git.lyx.org Git - lyx.git/blobdiff - src/support/lstrings.cpp
Use *.* to select all files in the file selection dialog on Windows. Using shortcuts...
[lyx.git] / src / support / lstrings.cpp
index aa5bbc6cbc024c565be155da640614ddaae2ce67..8c0633fd7d7d46d94395af4b012995114035d86e 100644 (file)
 #include "support/lstrings.h"
 
 #include "support/convert.h"
-#include "support/debug.h"
-#include "support/lyxlib.h"
 #include "support/qstring_helpers.h"
 #include "support/textutils.h"
 
 #include <boost/tokenizer.hpp>
 #include <boost/assert.hpp>
 
-#include <cctype>
-#include <cstdlib>
-
 #include <algorithm>
-#include <sstream>
 
 using namespace std;
 
@@ -40,11 +34,11 @@ docstring const & empty_docstring()
        return s;
 }
 
-// Using this allows us to have std::string default arguments in headers
+// Using this allows us to have string default arguments in headers
 // without #include <string>
-std::string const & empty_string()
+string const & empty_string()
 {
-       static std::string s;
+       static string s;
        return s;
 }
 
@@ -410,8 +404,8 @@ char_type uppercase(char_type c)
 
 namespace {
 
-// since we cannot use std::tolower and std::toupper directly in the
-// calls to std::transform yet, we use these helper clases. (Lgb)
+// since we cannot use tolower and toupper directly in the
+// calls to transform yet, we use these helper clases. (Lgb)
 
 struct local_lowercase {
        char_type operator()(char_type c) const {
@@ -483,14 +477,7 @@ bool prefixIs(string const & a, string const & pre)
 {
        size_t const prelen = pre.length();
        size_t const alen = a.length();
-
-       if (prelen > alen || a.empty())
-               return false;
-#if defined(STD_STRING_IS_GOOD)
-       return a.compare(0, prelen, pre) == 0;
-#else
-       return ::strncmp(a.c_str(), pre.c_str(), prelen) == 0;
-#endif
+       return prelen <= alen && !a.empty() && a.compare(0, prelen, pre) == 0;
 }
 
 
@@ -498,11 +485,7 @@ bool prefixIs(docstring const & a, docstring const & pre)
 {
        size_t const prelen = pre.length();
        size_t const alen = a.length();
-
-       if (prelen > alen || a.empty())
-               return false;
-       else
-               return a.compare(0, prelen, pre) == 0;
+       return prelen <= alen && !a.empty() && a.compare(0, prelen, pre) == 0;
 }
 
 
@@ -525,16 +508,7 @@ bool suffixIs(string const & a, string const & suf)
 {
        size_t const suflen = suf.length();
        size_t const alen = a.length();
-
-       if (suflen > alen)
-               return false;
-
-#if !defined(USE_INCLUDED_STRING) && !defined(STD_STRING_IS_GOOD)
-       string tmp(a, alen - suflen);
-       return ::strncmp(tmp.c_str(), suf.c_str(), suflen) == 0;
-#else
-       return a.compare(alen - suflen, suflen, suf) == 0;
-#endif
+       return suflen <= alen && a.compare(alen - suflen, suflen, suf) == 0;
 }
 
 
@@ -622,10 +596,10 @@ namespace {
 
 /// Substitute all \a oldchar with \a newchar
 template<typename Ch> inline
-std::basic_string<Ch> const subst_char(std::basic_string<Ch> const & a,
+basic_string<Ch> const subst_char(basic_string<Ch> const & a,
                Ch oldchar, Ch newchar)
 {
-       typedef std::basic_string<Ch> String;
+       typedef basic_string<Ch> String;
        String tmp(a);
        typename String::iterator lit = tmp.begin();
        typename String::iterator end = tmp.end();