]> git.lyx.org Git - lyx.git/blobdiff - src/support/lstrings.h
Extend the otexstream class to also report about paragraph breaks.
[lyx.git] / src / support / lstrings.h
index eca670ea3d435f6b78c92f9825ee7489ea0f12a9..576a5b921df363639c09e6cbc13d21b4123a1445 100644 (file)
@@ -18,7 +18,6 @@
 
 #include "support/docstring.h"
 
-#include <string>
 #include <vector>
 
 
@@ -45,7 +44,9 @@ bool isStrUnsignedInt(std::string const & str);
 bool isStrDbl(std::string const & str);
 
 /// does the string contain a digit?
-bool hasDigit(docstring const & str);
+bool hasDigitASCII(docstring const & str);
+
+bool isHexChar(char_type);
 
 bool isHex(docstring const & str);
 
@@ -96,6 +97,8 @@ docstring const ascii_lowercase(docstring const &);
 /// Changes the case of \p s to lowercase.
 /// Does not depend on the locale.
 docstring const lowercase(docstring const & s);
+// Currently unused, but the code is there if needed.
+// std::string const lowercase(std::string const & s);
 
 /// Changes the case of \p s to uppercase.
 /// Does not depend on the locale.
@@ -187,6 +190,9 @@ std::string const subst(std::string const & a,
 docstring const subst(docstring const & a,
                docstring const & oldstr, docstring const & newstr);
 
+/// Count all occurences of char \a chr inside \a str
+int count_char(std::string const & str, char chr);
+
 /// Count all occurences of char \a chr inside \a str
 int count_char(docstring const & str, docstring::value_type chr);
 
@@ -227,6 +233,7 @@ docstring const ltrim(docstring const & a, char const * p = " ");
     will be the whole of the string if no delimiter is found.
     The return value is what follows delim, if anything. So the return
     value is the null string if no delimiter is found.
+    'a' and 'piece' must be different variables.
     Examples:
     \code
     s1= "a;bc"; s2= ""
@@ -241,6 +248,7 @@ std::string const split(std::string const & a, char delim);
 
 /// Same as split but uses the last delim.
 std::string const rsplit(std::string const & a, std::string & piece, char delim);
+docstring const rsplit(docstring const & a, docstring & piece, char_type delim);
 docstring const rsplit(docstring const & a, char_type delim);
 
 /// Escapes non ASCII chars and other problematic characters that cause