HashSet has ListHashSet for having a set with order. To implement 17425 effectively, we need the same kind of data structure for HashTable.
Created attachment 83342 [details] Patch
Maciej suggested I split the patch of 17425 to simplify the review. So I am splitting the diff, here is the data structure. Same comment as on 17425: ListHashTable interface is a lot like ListHashSet. I did not do the custom allocator because that would make the patch quite more complex and that does not have as much value for this use case as it had for the ListHashSet.
To match HashMap, I think you should call this class ListHashMap, not ListHashTable. HashTable is the name we use for the underlying data type these classes are implemented in terms of.
(In reply to comment #3) > To match HashMap, I think you should call this class ListHashMap, not ListHashTable. HashTable is the name we use for the underlying data type these classes are implemented in terms of. I really meant HashTable. If you look at the data structure, it uses an extractor to get the data out of the content. HashMap is using HashTable, storing a pair<>, and extracting the first element as the key. I think it was cleaner to use HashTable for RenderBlock because of the kind of usage we have with the FloatingObjects.
Mjs is your man for this review. Pick on him in #webkit.
Comment on attachment 83342 [details] Patch Maciej suggested to extend ListHashSet with template taking HashTranslator like for HashSet. That seems a good idea. I clear the review flag for now and I will extend ListHashSet tomorrow.
I extended ListHashSet, and updated 54972.