Chromium Code Reviews
DescriptionAllow custom handling of classes that contain weak pointers that are embedded in collections.
This is currently tested with HeapHashSet. Extending it to other hash
collections is postponed to a later change. To have your type removed from
collections when weak pointers in it no longer point to live objects you need
to give it two methods and a special hash trait. See WeakHandlingHashTraits in
Heap.h for details and PairWithWeakHandling in HeapTest.cpp for an example.
R=ager@chromium.org, haraken@chromium.org, wibling@chromium.org, zerny@chromium.org
BUG=
Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=176009
Patch Set 1 #
Total comments: 8
Patch Set 2 : Also test HeapLinkedHashSet #Patch Set 3 : Also test HeapHashMap with custom weakness in key and value positions. #Patch Set 4 : Feedback from Haraken #
Total comments: 20
Patch Set 5 : Change isWeak in HashTraits to weakHandlingFlag and make it an enum #Patch Set 6 : HeapTest.cpp changes in response to Mads' feedback #Patch Set 7 : Remove incorrectly added trace of WeakPtr from Vistior.h #Patch Set 8 : Merge up #Patch Set 9 : Remove 'typename' that Win compiler does not like #
Messages
Total messages: 17 (0 generated)
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||