]> Dogcows Code - chaz/openbox/commitdiff
add 'userstring', a std::string with a flag for UTF-8
authorDana Jansens <danakj@orodu.net>
Sun, 12 Jan 2003 19:42:44 +0000 (19:42 +0000)
committerDana Jansens <danakj@orodu.net>
Sun, 12 Jan 2003 19:42:44 +0000 (19:42 +0000)
otk/userstring.hh [new file with mode: 0644]

diff --git a/otk/userstring.hh b/otk/userstring.hh
new file mode 100644 (file)
index 0000000..0690f80
--- /dev/null
@@ -0,0 +1,28 @@
+// -*- mode: C++; indent-tabs-mode: nil; c-basic-offset: 2; -*-
+#ifndef   __userstring_hh
+#define   __userstring_hh
+
+#include <string>
+
+//! userstring is a std::string with an extra flag specifying if the string is
+//! UTF-8 encoded.
+class userstring : public std::string
+{
+private:
+  bool _utf8;
+
+public:
+  userstring(bool utf8) : std::string(), _utf8(utf8) {}
+  userstring(const userstring& s, bool utf8, size_type pos = 0,
+            size_type n = npos) : std::string(s, pos, n), _utf8(utf8) {}
+  userstring(const charT *s, bool utf8) : std::string(s), _utf8(utf8) {}
+  userstring(const charT* s, size_type n, bool utf8) : std::string(s, n),
+                                                      _utf8(utf8) {}
+  userstring(size_type n, charT c, bool utf8) : std::string(n, c),
+                                               _utf8(utf8) {}
+
+  //! Returns if the string is encoded in UTF-8 or not
+  inline bool utf8() const { return _utf8; }
+};
+
+#endif // __userstring_hh
This page took 0.025919 seconds and 4 git commands to generate.