Document MapVector.
authorRafael Espindola <rafael.espindola@gmail.com>
Sun, 7 Oct 2012 00:56:09 +0000 (00:56 +0000)
committerRafael Espindola <rafael.espindola@gmail.com>
Sun, 7 Oct 2012 00:56:09 +0000 (00:56 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165366 91177308-0d34-0410-b5e6-96231b3b80d8

docs/ProgrammersManual.html

index 93acb6d300f3f219b9a9358e3959354cabdc340b..64ddb9d105d7ce7e2942b9208d8920bce84df005 100644 (file)
@@ -98,6 +98,7 @@ option</a></li>
       <li><a href="#dss_valuemap">"llvm/ADT/ValueMap.h"</a></li>
       <li><a href="#dss_intervalmap">"llvm/ADT/IntervalMap.h"</a></li>
       <li><a href="#dss_map">&lt;map&gt;</a></li>
+      <li><a href="#dss_mapvector">"llvm/ADT/MapVector.h"</a></li>
       <li><a href="#dss_inteqclasses">"llvm/ADT/IntEqClasses.h"</a></li>
       <li><a href="#dss_immutablemap">"llvm/ADT/ImmutableMap.h"</a></li>
       <li><a href="#dss_othermap">Other Map-Like Container Options</a></li>
@@ -1848,6 +1849,24 @@ another element takes place).</p>
 
 </div>
 
+
+<!-- _______________________________________________________________________ -->
+<h4>
+  <a name="dss_mapvector">"llvm/ADT/MapVector.h"</a>
+</h4>
+<div>
+
+<p> MapVector&lt;KeyT,ValueT&gt provides a subset of the DenseMap interface.
+  The main difference is that the iteration order is guaranteed to be
+  the insertion order, making it an easy (but somewhat expensive) solution
+  for non-deterministic iteration over maps of pointers. </p>
+
+<p> It is implemented by mapping from key to an index in a vector of key,value
+  pairs. This provides fast lookup and iteration, but has two main drawbacks:
+  The key is stored twice and it doesn't support removing elements. </p>
+
+</div>
+
 <!-- _______________________________________________________________________ -->
 <h4>
   <a name="dss_inteqclasses">"llvm/ADT/IntEqClasses.h"</a>