Changeset 154719 in webkit
- Timestamp:
- Aug 27, 2013 8:10:38 PM (11 years ago)
- Location:
- trunk/Source/WebCore
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r154715 r154719 1 2013-08-27 Benjamin Poulain <benjamin@webkit.org> 2 3 Fix the indentation of SpaceSplitString 4 https://bugs.webkit.org/show_bug.cgi?id=120390 5 6 Reviewed by Ryosuke Niwa. 7 8 * dom/SpaceSplitString.h: 9 (WebCore::SpaceSplitStringData::contains): 10 (WebCore::SpaceSplitStringData::isUnique): 11 (WebCore::SpaceSplitStringData::size): 12 (WebCore::SpaceSplitStringData::operator[]): 13 (WebCore::SpaceSplitString::SpaceSplitString): 14 (WebCore::SpaceSplitString::operator!=): 15 (WebCore::SpaceSplitString::clear): 16 (WebCore::SpaceSplitString::contains): 17 (WebCore::SpaceSplitString::containsAll): 18 (WebCore::SpaceSplitString::size): 19 (WebCore::SpaceSplitString::isNull): 20 (WebCore::SpaceSplitString::operator[]): 21 (WebCore::SpaceSplitString::spaceSplitStringContainsValue): 22 (WebCore::SpaceSplitString::ensureUnique): 23 1 24 2013-08-27 Andreas Kling <akling@apple.com> 2 25 -
trunk/Source/WebCore/dom/SpaceSplitString.h
r153005 r154719 28 28 namespace WebCore { 29 29 30 31 32 33 30 class SpaceSplitStringData : public RefCounted<SpaceSplitStringData> { 31 public: 32 static PassRefPtr<SpaceSplitStringData> create(const AtomicString&); 33 static PassRefPtr<SpaceSplitStringData> createUnique(const SpaceSplitStringData&); 34 34 35 35 ~SpaceSplitStringData(); 36 36 37 bool contains(const AtomicString& string) 38 { 39 size_t size = m_vector.size(); 40 for (size_t i = 0; i < size; ++i) { 41 if (m_vector[i] == string) 42 return true; 43 } 44 return false; 37 bool contains(const AtomicString& string) 38 { 39 size_t size = m_vector.size(); 40 for (size_t i = 0; i < size; ++i) { 41 if (m_vector[i] == string) 42 return true; 45 43 } 44 return false; 45 } 46 46 47 47 bool containsAll(SpaceSplitStringData&); 48 48 49 50 49 void add(const AtomicString&); 50 void remove(unsigned index); 51 51 52 53 54 52 bool isUnique() const { return m_keyString.isNull(); } 53 size_t size() const { return m_vector.size(); } 54 const AtomicString& operator[](size_t i) { ASSERT_WITH_SECURITY_IMPLICATION(i < size()); return m_vector[i]; } 55 55 56 57 58 56 private: 57 explicit SpaceSplitStringData(const AtomicString&); 58 explicit SpaceSplitStringData(const SpaceSplitStringData&); 59 59 60 61 62 60 void createVector(const String&); 61 template <typename CharacterType> 62 inline void createVector(const CharacterType*, unsigned); 63 63 64 65 66 64 AtomicString m_keyString; 65 Vector<AtomicString, 4> m_vector; 66 }; 67 67 68 69 70 71 68 class SpaceSplitString { 69 public: 70 SpaceSplitString() { } 71 SpaceSplitString(const AtomicString& string, bool shouldFoldCase) { set(string, shouldFoldCase); } 72 72 73 73 bool operator!=(const SpaceSplitString& other) const { return m_data != other.m_data; } 74 74 75 76 75 void set(const AtomicString&, bool shouldFoldCase); 76 void clear() { m_data.clear(); } 77 77 78 79 80 81 78 bool contains(const AtomicString& string) const { return m_data && m_data->contains(string); } 79 bool containsAll(const SpaceSplitString& names) const { return !names.m_data || (m_data && m_data->containsAll(*names.m_data)); } 80 void add(const AtomicString&); 81 bool remove(const AtomicString&); 82 82 83 84 85 83 size_t size() const { return m_data ? m_data->size() : 0; } 84 bool isNull() const { return !m_data; } 85 const AtomicString& operator[](size_t i) const { ASSERT_WITH_SECURITY_IMPLICATION(i < size()); return (*m_data)[i]; } 86 86 87 88 89 90 91 92 87 static bool spaceSplitStringContainsValue(const String& spaceSplitString, const char* value, unsigned length, bool shouldFoldCase); 88 template<size_t length> 89 static bool spaceSplitStringContainsValue(const String& spaceSplitString, const char (&value)[length], bool shouldFoldCase) 90 { 91 return spaceSplitStringContainsValue(spaceSplitString, value, length - 1, shouldFoldCase); 92 } 93 93 94 95 96 97 98 99 94 private: 95 void ensureUnique() 96 { 97 if (m_data && !m_data->isUnique()) 98 m_data = SpaceSplitStringData::createUnique(*m_data); 99 } 100 100 101 102 101 RefPtr<SpaceSplitStringData> m_data; 102 }; 103 103 104 104 } // namespace WebCore
Note: See TracChangeset
for help on using the changeset viewer.