OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2011 Google Inc. All rights reserved. | 2 * Copyright (C) 2011 Google Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
6 * met: | 6 * met: |
7 * | 7 * |
8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
(...skipping 24 matching lines...) Expand all Loading... |
35 #include "core/dom/MutationObserver.h" | 35 #include "core/dom/MutationObserver.h" |
36 #include "core/dom/Node.h" | 36 #include "core/dom/Node.h" |
37 #include "core/dom/QualifiedName.h" | 37 #include "core/dom/QualifiedName.h" |
38 #include "platform/heap/Handle.h" | 38 #include "platform/heap/Handle.h" |
39 #include "wtf/HashMap.h" | 39 #include "wtf/HashMap.h" |
40 #include "wtf/PassOwnPtr.h" | 40 #include "wtf/PassOwnPtr.h" |
41 | 41 |
42 namespace blink { | 42 namespace blink { |
43 | 43 |
44 class MutationObserverInterestGroup final : public NoBaseWillBeGarbageCollected<
MutationObserverInterestGroup> { | 44 class MutationObserverInterestGroup final : public NoBaseWillBeGarbageCollected<
MutationObserverInterestGroup> { |
| 45 WTF_MAKE_FAST_ALLOCATED_WILL_BE_REMOVED(MutationObserverInterestGroup); |
45 public: | 46 public: |
46 static PassOwnPtrWillBeRawPtr<MutationObserverInterestGroup> createForChildL
istMutation(Node& target) | 47 static PassOwnPtrWillBeRawPtr<MutationObserverInterestGroup> createForChildL
istMutation(Node& target) |
47 { | 48 { |
48 if (!target.document().hasMutationObserversOfType(MutationObserver::Chil
dList)) | 49 if (!target.document().hasMutationObserversOfType(MutationObserver::Chil
dList)) |
49 return nullptr; | 50 return nullptr; |
50 | 51 |
51 MutationRecordDeliveryOptions oldValueFlag = 0; | 52 MutationRecordDeliveryOptions oldValueFlag = 0; |
52 return createIfNeeded(target, MutationObserver::ChildList, oldValueFlag)
; | 53 return createIfNeeded(target, MutationObserver::ChildList, oldValueFlag)
; |
53 } | 54 } |
54 | 55 |
(...skipping 24 matching lines...) Expand all Loading... |
79 | 80 |
80 bool hasOldValue(MutationRecordDeliveryOptions options) { return options & m
_oldValueFlag; } | 81 bool hasOldValue(MutationRecordDeliveryOptions options) { return options & m
_oldValueFlag; } |
81 | 82 |
82 WillBeHeapHashMap<RawPtrWillBeMember<MutationObserver>, MutationRecordDelive
ryOptions> m_observers; | 83 WillBeHeapHashMap<RawPtrWillBeMember<MutationObserver>, MutationRecordDelive
ryOptions> m_observers; |
83 MutationRecordDeliveryOptions m_oldValueFlag; | 84 MutationRecordDeliveryOptions m_oldValueFlag; |
84 }; | 85 }; |
85 | 86 |
86 } | 87 } |
87 | 88 |
88 #endif // MutationObserverInterestGroup_h | 89 #endif // MutationObserverInterestGroup_h |
OLD | NEW |