| OLD | NEW |
| 1 /* | 1 /* |
| 2 * (C) 1999 Lars Knoll (knoll@kde.org) | 2 * (C) 1999 Lars Knoll (knoll@kde.org) |
| 3 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2012, 2013 Apple Inc.
All rights reserved. | 3 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2012, 2013 Apple Inc.
All rights reserved. |
| 4 * | 4 * |
| 5 * This library is free software; you can redistribute it and/or | 5 * This library is free software; you can redistribute it and/or |
| 6 * modify it under the terms of the GNU Library General Public | 6 * modify it under the terms of the GNU Library General Public |
| 7 * License as published by the Free Software Foundation; either | 7 * License as published by the Free Software Foundation; either |
| 8 * version 2 of the License, or (at your option) any later version. | 8 * version 2 of the License, or (at your option) any later version. |
| 9 * | 9 * |
| 10 * This library is distributed in the hope that it will be useful, | 10 * This library is distributed in the hope that it will be useful, |
| (...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 72 WTF_EXPORT float charactersToFloat(const LChar*, size_t, bool* ok = 0); | 72 WTF_EXPORT float charactersToFloat(const LChar*, size_t, bool* ok = 0); |
| 73 WTF_EXPORT float charactersToFloat(const UChar*, size_t, bool* ok = 0); | 73 WTF_EXPORT float charactersToFloat(const UChar*, size_t, bool* ok = 0); |
| 74 WTF_EXPORT float charactersToFloat(const LChar*, size_t, size_t& parsedLength); | 74 WTF_EXPORT float charactersToFloat(const LChar*, size_t, size_t& parsedLength); |
| 75 WTF_EXPORT float charactersToFloat(const UChar*, size_t, size_t& parsedLength); | 75 WTF_EXPORT float charactersToFloat(const UChar*, size_t, size_t& parsedLength); |
| 76 | 76 |
| 77 enum TrailingZerosTruncatingPolicy { | 77 enum TrailingZerosTruncatingPolicy { |
| 78 KeepTrailingZeros, | 78 KeepTrailingZeros, |
| 79 TruncateTrailingZeros | 79 TruncateTrailingZeros |
| 80 }; | 80 }; |
| 81 | 81 |
| 82 enum UTF8ConversionMode { |
| 83 LenientUTF8Conversion, |
| 84 StrictUTF8Conversion, |
| 85 StrictUTF8ConversionReplacingUnpairedSurrogatesWithFFFD |
| 86 }; |
| 87 |
| 82 template<bool isSpecialCharacter(UChar), typename CharacterType> | 88 template<bool isSpecialCharacter(UChar), typename CharacterType> |
| 83 bool isAllSpecialCharacters(const CharacterType*, size_t); | 89 bool isAllSpecialCharacters(const CharacterType*, size_t); |
| 84 | 90 |
| 85 // You can find documentation about this class in this doc: | 91 // You can find documentation about this class in this doc: |
| 86 // https://docs.google.com/document/d/1kOCUlJdh2WJMJGDf-WoEQhmnjKLaOYRbiHz5TiGJl
14/edit?usp=sharing | 92 // https://docs.google.com/document/d/1kOCUlJdh2WJMJGDf-WoEQhmnjKLaOYRbiHz5TiGJl
14/edit?usp=sharing |
| 87 class WTF_EXPORT String { | 93 class WTF_EXPORT String { |
| 88 public: | 94 public: |
| 89 // Construct a null string, distinguishable from an empty string. | 95 // Construct a null string, distinguishable from an empty string. |
| 90 String() { } | 96 String() { } |
| 91 | 97 |
| (...skipping 84 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 176 | 182 |
| 177 unsigned sizeInBytes() const | 183 unsigned sizeInBytes() const |
| 178 { | 184 { |
| 179 if (!m_impl) | 185 if (!m_impl) |
| 180 return 0; | 186 return 0; |
| 181 return m_impl->length() * (is8Bit() ? sizeof(LChar) : sizeof(UChar)); | 187 return m_impl->length() * (is8Bit() ? sizeof(LChar) : sizeof(UChar)); |
| 182 } | 188 } |
| 183 | 189 |
| 184 CString ascii() const; | 190 CString ascii() const; |
| 185 CString latin1() const; | 191 CString latin1() const; |
| 186 | 192 CString utf8(UTF8ConversionMode = LenientUTF8Conversion) const; |
| 187 typedef enum { | |
| 188 LenientConversion, | |
| 189 StrictConversion, | |
| 190 StrictConversionReplacingUnpairedSurrogatesWithFFFD, | |
| 191 } ConversionMode; | |
| 192 | |
| 193 CString utf8(ConversionMode = LenientConversion) const; | |
| 194 | 193 |
| 195 UChar operator[](unsigned index) const | 194 UChar operator[](unsigned index) const |
| 196 { | 195 { |
| 197 if (!m_impl || index >= m_impl->length()) | 196 if (!m_impl || index >= m_impl->length()) |
| 198 return 0; | 197 return 0; |
| 199 return (*m_impl)[index]; | 198 return (*m_impl)[index]; |
| 200 } | 199 } |
| 201 | 200 |
| 202 static String number(int); | 201 static String number(int); |
| 203 static String number(unsigned); | 202 static String number(unsigned); |
| (...skipping 469 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 673 static const bool canCompareWithMemcmp = false; | 672 static const bool canCompareWithMemcmp = false; |
| 674 }; | 673 }; |
| 675 | 674 |
| 676 // Shared global empty string. | 675 // Shared global empty string. |
| 677 WTF_EXPORT const String& emptyString(); | 676 WTF_EXPORT const String& emptyString(); |
| 678 | 677 |
| 679 } | 678 } |
| 680 | 679 |
| 681 using WTF::CString; | 680 using WTF::CString; |
| 682 using WTF::KeepTrailingZeros; | 681 using WTF::KeepTrailingZeros; |
| 682 using WTF::StrictUTF8Conversion; |
| 683 using WTF::StrictUTF8ConversionReplacingUnpairedSurrogatesWithFFFD; |
| 683 using WTF::String; | 684 using WTF::String; |
| 684 using WTF::emptyString; | 685 using WTF::emptyString; |
| 685 using WTF::append; | 686 using WTF::append; |
| 686 using WTF::appendNumber; | 687 using WTF::appendNumber; |
| 687 using WTF::charactersAreAllASCII; | 688 using WTF::charactersAreAllASCII; |
| 688 using WTF::charactersToIntStrict; | 689 using WTF::charactersToIntStrict; |
| 689 using WTF::charactersToUIntStrict; | 690 using WTF::charactersToUIntStrict; |
| 690 using WTF::charactersToInt64Strict; | 691 using WTF::charactersToInt64Strict; |
| 691 using WTF::charactersToUInt64Strict; | 692 using WTF::charactersToUInt64Strict; |
| 692 using WTF::charactersToIntPtrStrict; | 693 using WTF::charactersToIntPtrStrict; |
| 693 using WTF::charactersToInt; | 694 using WTF::charactersToInt; |
| 694 using WTF::charactersToUInt; | 695 using WTF::charactersToUInt; |
| 695 using WTF::charactersToInt64; | 696 using WTF::charactersToInt64; |
| 696 using WTF::charactersToUInt64; | 697 using WTF::charactersToUInt64; |
| 697 using WTF::charactersToIntPtr; | 698 using WTF::charactersToIntPtr; |
| 698 using WTF::charactersToDouble; | 699 using WTF::charactersToDouble; |
| 699 using WTF::charactersToFloat; | 700 using WTF::charactersToFloat; |
| 700 using WTF::equal; | 701 using WTF::equal; |
| 701 using WTF::equalIgnoringCase; | 702 using WTF::equalIgnoringCase; |
| 702 using WTF::find; | 703 using WTF::find; |
| 703 using WTF::isAllSpecialCharacters; | 704 using WTF::isAllSpecialCharacters; |
| 704 using WTF::isSpaceOrNewline; | 705 using WTF::isSpaceOrNewline; |
| 705 using WTF::reverseFind; | 706 using WTF::reverseFind; |
| 706 | 707 |
| 707 #include "wtf/text/AtomicString.h" | 708 #include "wtf/text/AtomicString.h" |
| 708 #endif | 709 #endif |
| OLD | NEW |