diff options
Diffstat (limited to 'include/llvm/ADT')
-rw-r--r-- | include/llvm/ADT/APFloat.h | 2 | ||||
-rw-r--r-- | include/llvm/ADT/DenseMap.h | 7 | ||||
-rw-r--r-- | include/llvm/ADT/DenseSet.h | 16 |
3 files changed, 24 insertions, 1 deletions
diff --git a/include/llvm/ADT/APFloat.h b/include/llvm/ADT/APFloat.h index 861b7b9..3cccc81 100644 --- a/include/llvm/ADT/APFloat.h +++ b/include/llvm/ADT/APFloat.h @@ -344,7 +344,7 @@ namespace llvm { /// 1.01E-2 4 1 1.01E-2 void toString(SmallVectorImpl<char> &Str, unsigned FormatPrecision = 0, - unsigned FormatMaxPadding = 3); + unsigned FormatMaxPadding = 3) const; private: diff --git a/include/llvm/ADT/DenseMap.h b/include/llvm/ADT/DenseMap.h index 7350906..393473bd 100644 --- a/include/llvm/ADT/DenseMap.h +++ b/include/llvm/ADT/DenseMap.h @@ -192,6 +192,13 @@ public: return true; } + void swap(DenseMap& RHS) { + std::swap(NumBuckets, RHS.NumBuckets); + std::swap(Buckets, RHS.Buckets); + std::swap(NumEntries, RHS.NumEntries); + std::swap(NumTombstones, RHS.NumTombstones); + } + value_type& FindAndConstruct(const KeyT &Key) { BucketT *TheBucket; if (LookupBucketFor(Key, TheBucket)) diff --git a/include/llvm/ADT/DenseSet.h b/include/llvm/ADT/DenseSet.h index 0898b96..9388338 100644 --- a/include/llvm/ADT/DenseSet.h +++ b/include/llvm/ADT/DenseSet.h @@ -45,6 +45,10 @@ public: return TheMap.erase(V); } + void swap(DenseSet& RHS) { + TheMap.swap(RHS.TheMap); + } + DenseSet &operator=(const DenseSet &RHS) { TheMap = RHS.TheMap; return *this; @@ -55,6 +59,12 @@ public: class Iterator { typename MapTy::iterator I; public: + typedef typename MapTy::iterator::difference_type difference_type; + typedef ValueT value_type; + typedef value_type *pointer; + typedef value_type &reference; + typedef std::forward_iterator_tag iterator_category; + Iterator(const typename MapTy::iterator &i) : I(i) {} ValueT& operator*() { return I->first; } @@ -68,6 +78,12 @@ public: class ConstIterator { typename MapTy::const_iterator I; public: + typedef typename MapTy::const_iterator::difference_type difference_type; + typedef ValueT value_type; + typedef value_type *pointer; + typedef value_type &reference; + typedef std::forward_iterator_tag iterator_category; + ConstIterator(const typename MapTy::const_iterator &i) : I(i) {} const ValueT& operator*() { return I->first; } |