Add STL-style typedefs and default constructors to make it possible to
authorDavid Greene <greened@obbligato.org>
Mon, 27 Oct 2008 18:15:15 +0000 (18:15 +0000)
committerDavid Greene <greened@obbligato.org>
Mon, 27 Oct 2008 18:15:15 +0000 (18:15 +0000)
use DenseMap in more contexts.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58256 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/ADT/DenseMap.h

index 70d09a6617d78fa2e3da2029e32658903fad913c..c70d73cd63599a4621329e37eed5e321ed8a1d20 100644 (file)
@@ -105,6 +105,8 @@ class DenseMap {
   unsigned NumEntries;
   unsigned NumTombstones;
 public:
+  typedef KeyT key_type;
+  typedef ValueT mapped_type;
   typedef BucketT value_type;
   
   DenseMap(const DenseMap& other) {
@@ -452,6 +454,8 @@ class DenseMapIterator {
 protected:
   const BucketT *Ptr, *End;
 public:
+  DenseMapIterator(void) : Ptr(0), End(0) {}
+
   DenseMapIterator(const BucketT *Pos, const BucketT *E) : Ptr(Pos), End(E) {
     AdvancePastEmptyBuckets();
   }
@@ -494,6 +498,7 @@ private:
 template<typename KeyT, typename ValueT, typename KeyInfoT, typename ValueInfoT>
 class DenseMapConstIterator : public DenseMapIterator<KeyT, ValueT, KeyInfoT> {
 public:
+  DenseMapConstIterator(void) : DenseMapIterator<KeyT, ValueT, KeyInfoT>() {}
   DenseMapConstIterator(const std::pair<KeyT, ValueT> *Pos,
                         const std::pair<KeyT, ValueT> *E)
     : DenseMapIterator<KeyT, ValueT, KeyInfoT>(Pos, E) {