Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(7)

Side by Side Diff: Source/core/xml/XPathUtil.cpp

Issue 308963002: Minimize calls to Node::nodeType() as it is virtual (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Fix typo Created 6 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« Source/core/dom/Node.cpp ('K') | « Source/core/xml/XPathStep.cpp ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2005 Frerich Raabe <raabe@kde.org> 2 * Copyright (C) 2005 Frerich Raabe <raabe@kde.org>
3 * Copyright (C) 2006, 2009 Apple Inc. 3 * Copyright (C) 2006, 2009 Apple Inc.
4 * 4 *
5 * Redistribution and use in source and binary forms, with or without 5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions 6 * modification, are permitted provided that the following conditions
7 * are met: 7 * are met:
8 * 8 *
9 * 1. Redistributions of source code must retain the above copyright 9 * 1. Redistributions of source code must retain the above copyright
10 * notice, this list of conditions and the following disclaimer. 10 * notice, this list of conditions and the following disclaimer.
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
42 String stringValue(Node* node) 42 String stringValue(Node* node)
43 { 43 {
44 switch (node->nodeType()) { 44 switch (node->nodeType()) {
45 case Node::ATTRIBUTE_NODE: 45 case Node::ATTRIBUTE_NODE:
46 case Node::PROCESSING_INSTRUCTION_NODE: 46 case Node::PROCESSING_INSTRUCTION_NODE:
47 case Node::COMMENT_NODE: 47 case Node::COMMENT_NODE:
48 case Node::TEXT_NODE: 48 case Node::TEXT_NODE:
49 case Node::CDATA_SECTION_NODE: 49 case Node::CDATA_SECTION_NODE:
50 return node->nodeValue(); 50 return node->nodeValue();
51 default: 51 default:
52 if (isRootDomNode(node) || node->nodeType() == Node::ELEMENT_NODE) { 52 if (isRootDomNode(node) || node->isElementNode()) {
53 StringBuilder result; 53 StringBuilder result;
54 result.reserveCapacity(1024); 54 result.reserveCapacity(1024);
55 55
56 for (Node* n = node->firstChild(); n; n = NodeTraversal::next(*n , node)) { 56 for (Node* n = node->firstChild(); n; n = NodeTraversal::next(*n , node)) {
57 if (n->isTextNode()) { 57 if (n->isTextNode()) {
58 const String& nodeValue = n->nodeValue(); 58 const String& nodeValue = n->nodeValue();
59 result.append(nodeValue); 59 result.append(nodeValue);
60 } 60 }
61 } 61 }
62 62
(...skipping 21 matching lines...) Expand all
84 return false; 84 return false;
85 case Node::TEXT_NODE: 85 case Node::TEXT_NODE:
86 return !(node->parentNode() && node->parentNode()->isAttributeNode() ); 86 return !(node->parentNode() && node->parentNode()->isAttributeNode() );
87 } 87 }
88 ASSERT_NOT_REACHED(); 88 ASSERT_NOT_REACHED();
89 return false; 89 return false;
90 } 90 }
91 91
92 } 92 }
93 } 93 }
OLDNEW
« Source/core/dom/Node.cpp ('K') | « Source/core/xml/XPathStep.cpp ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698