forked from OSchip/llvm-project
Fix typeo. grow() cannot shrink storage. clear() should really nuke storage
llvm-svn: 11865
This commit is contained in:
parent
36ab728fe5
commit
973556b724
|
@ -9,7 +9,7 @@
|
||||||
//
|
//
|
||||||
// This file implements a dense map. A dense map template takes two
|
// This file implements a dense map. A dense map template takes two
|
||||||
// types. The first is the mapped type and the second is a functor
|
// types. The first is the mapped type and the second is a functor
|
||||||
// that maps its argument to a size_t. On instanciation a "null" value
|
// that maps its argument to a size_t. On instantiation a "null" value
|
||||||
// can be provided to be used as a "does not exist" indicator in the
|
// can be provided to be used as a "does not exist" indicator in the
|
||||||
// map. A member function grow() is provided that given the value of
|
// map. A member function grow() is provided that given the value of
|
||||||
// the maximally indexed key (the argument of the functor) makes sure
|
// the maximally indexed key (the argument of the functor) makes sure
|
||||||
|
@ -48,11 +48,13 @@ public:
|
||||||
}
|
}
|
||||||
|
|
||||||
void clear() {
|
void clear() {
|
||||||
storage_.assign(storage_.size(), nullVal_);
|
storage_.clear();
|
||||||
}
|
}
|
||||||
|
|
||||||
void grow(IndexT n) {
|
void grow(IndexT n) {
|
||||||
storage_.resize(toIndex_(n) + 1, nullVal_);
|
unsigned NewSize = toIndex_(n) + 1;
|
||||||
|
if (NewSize > storage_.size())
|
||||||
|
storage_.resize(NewSize, nullVal_);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue