]> git.tdb.fi Git - libs/core.git/blobdiff - source/stringcodec/iso885915.cpp
Remove deprecated things
[libs/core.git] / source / stringcodec / iso885915.cpp
index 3e71f753afcfdfdc6ce1c57c75378cb1f01c9cad..eb26264d8dd5bacd7d72bc481ffbad5632dc25c7 100644 (file)
@@ -29,7 +29,7 @@ void Iso885915::Encoder::encode_char(unichar ch, string &buf)
 {
        int tch = transform_mapping_or_direct(mapping, map_size, ch, false);
        if(tch<0 || tch>0xFF)
-               error(ch, buf, "Can't express character in ISO-8859-15");
+               error(ch, buf, invalid_character(ch, "ISO-8859-15"));
        else
                buf += tch;
 
@@ -44,19 +44,10 @@ void Iso885915::Encoder::transliterate(unichar, string &buf)
 unichar Iso885915::Decoder::decode_char(const string &str, string::const_iterator &i)
 {
        if(i==str.end())
-               return error("No input");
+               return -1;
 
-       unsigned char ch = *i;
-       int tch = transform_mapping_or_direct(mapping, map_size, ch, true);
-
-       unichar result;
-       if(tch==-1)
-               result = error("Undefined ISO-8859-15 character");
-       else
-               result = tch;
-
-       ++i;
-       return result;
+       unsigned char ch = *i++;
+       return transform_mapping_or_direct(mapping, map_size, ch, true);
 }
 
 } // namespace StringCodec