diff options
author | Kulanthaivel Palanichamy <kulanthaivel@codeaurora.org> | 2012-08-15 17:14:48 -0700 |
---|---|---|
committer | Steve Kondik <shade@chemlab.org> | 2013-01-20 18:38:34 -0800 |
commit | 91437969ddb28bc81b3652986a67aae7e2465db2 (patch) | |
tree | 4d09df4e02a483e573700d8bfacb6fec8b658a7c /Source/WebCore/dom/NamedNodeMap.h | |
parent | 0f5d4355d7a384679722338d55f65bbb92350cfc (diff) | |
download | external_webkit-91437969ddb28bc81b3652986a67aae7e2465db2.zip external_webkit-91437969ddb28bc81b3652986a67aae7e2465db2.tar.gz external_webkit-91437969ddb28bc81b3652986a67aae7e2465db2.tar.bz2 |
[WebKit] Browsermark DomAdvSearch and DomSearch optimizations
This patch is a combination of the following optimizations.
Optimize appendCharactersReplacingEntities
[Performance] Optimize innerHTML and outerHTML
https://bugs.webkit.org/show_bug.cgi?id=81214
Optimize Dromaeo/dom-query.html by caching NodeRareData on Document
https://bugs.webkit.org/show_bug.cgi?id=90059
Optimize Dromaeo/dom-attr.html by speeding up Element::getAttribute()
https://bugs.webkit.org/show_bug.cgi?id=90174
Change argument types of Element::getAttribute*() from String to AtomicString
https://bugs.webkit.org/show_bug.cgi?id=90246
Conflicts:
Source/WebCore/ChangeLog
Source/WebCore/dom/Document.cpp
Source/WebCore/dom/Document.h
Conflicts:
Source/WebCore/ChangeLog
Change-Id: I9ca3d2e883155e2ad08c3cb0c5912b935ebe9406
Diffstat (limited to 'Source/WebCore/dom/NamedNodeMap.h')
-rw-r--r-- | Source/WebCore/dom/NamedNodeMap.h | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/Source/WebCore/dom/NamedNodeMap.h b/Source/WebCore/dom/NamedNodeMap.h index c3c2cd9..f4aedb0 100644 --- a/Source/WebCore/dom/NamedNodeMap.h +++ b/Source/WebCore/dom/NamedNodeMap.h @@ -46,11 +46,11 @@ public: // Public DOM interface. - PassRefPtr<Node> getNamedItem(const String& name) const; - PassRefPtr<Node> removeNamedItem(const String& name, ExceptionCode&); + PassRefPtr<Node> getNamedItem(const AtomicString& name) const; + PassRefPtr<Node> removeNamedItem(const AtomicString& name, ExceptionCode&); - PassRefPtr<Node> getNamedItemNS(const String& namespaceURI, const String& localName) const; - PassRefPtr<Node> removeNamedItemNS(const String& namespaceURI, const String& localName, ExceptionCode&); + PassRefPtr<Node> getNamedItemNS(const AtomicString& namespaceURI, const AtomicString& localName) const; + PassRefPtr<Node> removeNamedItemNS(const AtomicString& namespaceURI, const AtomicString& localName, ExceptionCode&); PassRefPtr<Node> getNamedItem(const QualifiedName& name) const; PassRefPtr<Node> removeNamedItem(const QualifiedName& name, ExceptionCode&); @@ -111,8 +111,8 @@ private: void detachAttributesFromElement(); void detachFromElement(); - Attribute* getAttributeItem(const String& name, bool shouldIgnoreAttributeCase) const; - Attribute* getAttributeItemSlowCase(const String& name, bool shouldIgnoreAttributeCase) const; + Attribute* getAttributeItem(const AtomicString& name, bool shouldIgnoreAttributeCase) const; + Attribute* getAttributeItemSlowCase(const AtomicString& name, bool shouldIgnoreAttributeCase) const; void clearAttributes(); int declCount() const; @@ -135,7 +135,7 @@ inline Attribute* NamedNodeMap::getAttributeItem(const QualifiedName& name) cons // We use a boolean parameter instead of calling shouldIgnoreAttributeCase so that the caller // can tune the behavior (hasAttribute is case sensitive whereas getAttribute is not). -inline Attribute* NamedNodeMap::getAttributeItem(const String& name, bool shouldIgnoreAttributeCase) const +inline Attribute* NamedNodeMap::getAttributeItem(const AtomicString& name, bool shouldIgnoreAttributeCase) const { unsigned len = length(); bool doSlowCheck = shouldIgnoreAttributeCase; |