mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-10-21 03:53:04 +02:00
Add STL-style typedefs and default constructors to make it possible to
use DenseMap in more contexts. llvm-svn: 58256
This commit is contained in:
parent
78744a795a
commit
e8f05397ca
@ -105,6 +105,8 @@ class DenseMap {
|
|||||||
unsigned NumEntries;
|
unsigned NumEntries;
|
||||||
unsigned NumTombstones;
|
unsigned NumTombstones;
|
||||||
public:
|
public:
|
||||||
|
typedef KeyT key_type;
|
||||||
|
typedef ValueT mapped_type;
|
||||||
typedef BucketT value_type;
|
typedef BucketT value_type;
|
||||||
|
|
||||||
DenseMap(const DenseMap& other) {
|
DenseMap(const DenseMap& other) {
|
||||||
@ -452,6 +454,8 @@ class DenseMapIterator {
|
|||||||
protected:
|
protected:
|
||||||
const BucketT *Ptr, *End;
|
const BucketT *Ptr, *End;
|
||||||
public:
|
public:
|
||||||
|
DenseMapIterator(void) : Ptr(0), End(0) {}
|
||||||
|
|
||||||
DenseMapIterator(const BucketT *Pos, const BucketT *E) : Ptr(Pos), End(E) {
|
DenseMapIterator(const BucketT *Pos, const BucketT *E) : Ptr(Pos), End(E) {
|
||||||
AdvancePastEmptyBuckets();
|
AdvancePastEmptyBuckets();
|
||||||
}
|
}
|
||||||
@ -494,6 +498,7 @@ private:
|
|||||||
template<typename KeyT, typename ValueT, typename KeyInfoT, typename ValueInfoT>
|
template<typename KeyT, typename ValueT, typename KeyInfoT, typename ValueInfoT>
|
||||||
class DenseMapConstIterator : public DenseMapIterator<KeyT, ValueT, KeyInfoT> {
|
class DenseMapConstIterator : public DenseMapIterator<KeyT, ValueT, KeyInfoT> {
|
||||||
public:
|
public:
|
||||||
|
DenseMapConstIterator(void) : DenseMapIterator<KeyT, ValueT, KeyInfoT>() {}
|
||||||
DenseMapConstIterator(const std::pair<KeyT, ValueT> *Pos,
|
DenseMapConstIterator(const std::pair<KeyT, ValueT> *Pos,
|
||||||
const std::pair<KeyT, ValueT> *E)
|
const std::pair<KeyT, ValueT> *E)
|
||||||
: DenseMapIterator<KeyT, ValueT, KeyInfoT>(Pos, E) {
|
: DenseMapIterator<KeyT, ValueT, KeyInfoT>(Pos, E) {
|
||||||
|
Loading…
Reference in New Issue
Block a user