]> granicus.if.org Git - taglib/commitdiff
Add methods to check if this string is Latin1/ASCII compatible.
authorScott Wheeler <wheeler@kde.org>
Wed, 30 Jan 2008 12:42:23 +0000 (12:42 +0000)
committerScott Wheeler <wheeler@kde.org>
Wed, 30 Jan 2008 12:42:23 +0000 (12:42 +0000)
git-svn-id: svn://anonsvn.kde.org/home/kde/trunk/kdesupport/taglib@768593 283d02a7-25f6-0310-bc7c-ecb5cbfe19da

taglib/toolkit/tstring.cpp
taglib/toolkit/tstring.h

index 86f386db33855b14206e64c3da9784529bf08ebc..79e1beeabcc12d84667494419dcc125ed0f32316 100644 (file)
@@ -461,6 +461,24 @@ String String::stripWhiteSpace() const
   return String(wstring(begin, end + 1));
 }
 
+bool String::isLatin1() const
+{
+  for(wstring::const_iterator it = d->data.begin(); it != d->data.end(); it++) {
+    if(*it >= 256)
+      return false;
+  }
+  return true;
+}
+
+bool String::isAscii() const
+{
+  for(wstring::const_iterator it = d->data.begin(); it != d->data.end(); it++) {
+    if(*it >= 128)
+      return false;
+  }
+  return true;
+}
+
 String String::number(int n) // static
 {
   if(n == 0)
index 1f99075574d0ae6becb32480c20eb69bafe2e1d1..1abdd70e5eae12392f3079aa7ba5f38682fe8899 100644 (file)
@@ -292,6 +292,16 @@ namespace TagLib {
      */
     String stripWhiteSpace() const;
 
+    /*!
+     * Returns true if the file only uses characters required by Latin1.
+     */
+    bool isLatin1() const;
+
+    /*!
+     * Returns true if the file only uses characters required by (7-bit) ASCII.
+     */
+    bool isAscii() const;
+
     /*!
      * Converts the base-10 integer \a n to a string.
      */