| Index: Source/core/xml/XPathStep.h
|
| diff --git a/Source/core/xml/XPathStep.h b/Source/core/xml/XPathStep.h
|
| index 71056a1d048e3316ae9ab55e1df39f4fe3b1a308..8aceda0182dc6753321113e745d660c20f8b87e8 100644
|
| --- a/Source/core/xml/XPathStep.h
|
| +++ b/Source/core/xml/XPathStep.h
|
| @@ -40,7 +40,6 @@ class Predicate;
|
|
|
| class Step final : public ParseNode {
|
| WTF_MAKE_NONCOPYABLE(Step);
|
| - WTF_MAKE_FAST_ALLOCATED_WILL_BE_REMOVED(Step);
|
| public:
|
| enum Axis {
|
| AncestorAxis, AncestorOrSelfAxis, AttributeAxis,
|
| @@ -50,8 +49,7 @@ public:
|
| SelfAxis
|
| };
|
|
|
| - class NodeTest : public NoBaseWillBeGarbageCollectedFinalized<NodeTest> {
|
| - WTF_MAKE_FAST_ALLOCATED_WILL_BE_REMOVED(NodeTest);
|
| + class NodeTest : public GarbageCollectedFinalized<NodeTest> {
|
| public:
|
| enum Kind {
|
| TextNodeTest, CommentNodeTest, ProcessingInstructionNodeTest, AnyNodeTest, NameTest
|
| @@ -81,8 +79,8 @@ public:
|
| Kind kind() const { return m_kind; }
|
| const AtomicString& data() const { return m_data; }
|
| const AtomicString& namespaceURI() const { return m_namespaceURI; }
|
| - WillBeHeapVector<OwnPtrWillBeMember<Predicate>>& mergedPredicates() { return m_mergedPredicates; }
|
| - const WillBeHeapVector<OwnPtrWillBeMember<Predicate>>& mergedPredicates() const { return m_mergedPredicates; }
|
| + HeapVector<Member<Predicate>>& mergedPredicates() { return m_mergedPredicates; }
|
| + const HeapVector<Member<Predicate>>& mergedPredicates() const { return m_mergedPredicates; }
|
|
|
| private:
|
| Kind m_kind;
|
| @@ -90,11 +88,11 @@ public:
|
| AtomicString m_namespaceURI;
|
|
|
| // When possible, we merge some or all predicates with node test for better performance.
|
| - WillBeHeapVector<OwnPtrWillBeMember<Predicate>> m_mergedPredicates;
|
| + HeapVector<Member<Predicate>> m_mergedPredicates;
|
| };
|
|
|
| Step(Axis, const NodeTest&);
|
| - Step(Axis, const NodeTest&, WillBeHeapVector<OwnPtrWillBeMember<Predicate>>&);
|
| + Step(Axis, const NodeTest&, HeapVector<Member<Predicate>>&);
|
| virtual ~Step();
|
| DECLARE_VIRTUAL_TRACE();
|
|
|
| @@ -106,7 +104,7 @@ public:
|
| const NodeTest& nodeTest() const { return *m_nodeTest; }
|
|
|
| private:
|
| - friend void optimizeStepPair(Step*, Step*, bool&);
|
| + friend bool optimizeStepPair(Step*, Step*);
|
| bool predicatesAreContextListInsensitive() const;
|
| NodeTest& nodeTest() { return *m_nodeTest; }
|
|
|
| @@ -115,11 +113,11 @@ private:
|
| String namespaceFromNodetest(const String& nodeTest) const;
|
|
|
| Axis m_axis;
|
| - OwnPtrWillBeMember<NodeTest> m_nodeTest;
|
| - WillBeHeapVector<OwnPtrWillBeMember<Predicate>> m_predicates;
|
| + Member<NodeTest> m_nodeTest;
|
| + HeapVector<Member<Predicate>> m_predicates;
|
| };
|
|
|
| -void optimizeStepPair(Step*, Step*, bool& dropSecondStep);
|
| +bool optimizeStepPair(Step*, Step*);
|
|
|
| } // namespace XPath
|
|
|
|
|