From f5488aba0a9f6f3fac34f43b47717a8e7a4e7ac9 Mon Sep 17 00:00:00 2001 From: "caillon%returnzero.com" Date: Wed, 17 May 2006 02:37:33 +0000 Subject: [PATCH] Bug 177179 slightly optimize inDOMView::GetNodeTypeKey r=timeless/jkeiser sr=bzbarsky a=roc+moz git-svn-id: svn://10.0.0.236/trunk@197671 18797224-902f-48f8-a5cc-f745e15eee43 --- mozilla/layout/inspector/src/inDOMView.cpp | 13 +------------ mozilla/layout/inspector/src/inDOMView.h | 11 ++++++++--- 2 files changed, 9 insertions(+), 15 deletions(-) diff --git a/mozilla/layout/inspector/src/inDOMView.cpp b/mozilla/layout/inspector/src/inDOMView.cpp index 80eb2ef8352..5ec34cd9967 100644 --- a/mozilla/layout/inspector/src/inDOMView.cpp +++ b/mozilla/layout/inspector/src/inDOMView.cpp @@ -265,8 +265,7 @@ inDOMView::AddFilterByType(PRUint16 aType, PRBool aExclusive) NS_IMETHODIMP inDOMView::RemoveFilterByType(PRUint16 aType) { - PRUint16 key = GetNodeTypeKey(aType); - mFilters -= key; + mFilters &= ~(GetNodeTypeKey(aType)); return NS_OK; } @@ -1265,13 +1264,3 @@ inDOMView::AppendAttrsToArray(nsIDOMNamedNodeMap* aKids, nsISupportsArray* aArra } return NS_OK; } - -PRUint16 -inDOMView::GetNodeTypeKey(PRUint16 aType) -{ - PRUint16 key = 1; - for (PRUint32 i = 0; i < aType; ++i) - key = key * 2; - - return key; -} diff --git a/mozilla/layout/inspector/src/inDOMView.h b/mozilla/layout/inspector/src/inDOMView.h index 69aeb0c4f5c..127eb3cff04 100644 --- a/mozilla/layout/inspector/src/inDOMView.h +++ b/mozilla/layout/inspector/src/inDOMView.h @@ -134,8 +134,8 @@ protected: nsCOMPtr mTree; nsCOMPtr mSelection; - PRBool mShowAnonymous; - PRBool mShowSubDocuments; + PRPackedBool mShowAnonymous; + PRPackedBool mShowSubDocuments; PRUint32 mFilters; nsCOMPtr mRootNode; @@ -165,7 +165,12 @@ protected: void RemoveLink(inDOMViewNode* aNode); void ReplaceLink(inDOMViewNode* aNewNode, inDOMViewNode* aOldNode); - PRUint16 GetNodeTypeKey(PRUint16 aType); + inline PRUint16 GetNodeTypeKey(PRUint16 aType) + { + NS_ASSERTION(aType < 16, "You doofus"); + return 1 << aType; + }; + nsresult GetChildNodesFor(nsIDOMNode* aNode, nsISupportsArray **aResult); nsresult AppendKidsToArray(nsIDOMNodeList* aKids, nsISupportsArray* aArray); nsresult AppendAttrsToArray(nsIDOMNamedNodeMap* aKids, nsISupportsArray* aArray);