More efficient Python slicing
Call reserve for container types that support it to avoid repeated memory reallocations for new slices or slices that grow in size.
This commit is contained in:
parent
5ebf1cfa5d
commit
5abb3e8008
6 changed files with 45 additions and 0 deletions
|
|
@ -15,6 +15,13 @@
|
|||
}
|
||||
}
|
||||
|
||||
template <class K, class T>
|
||||
struct traits_reserve<std::unordered_map<K,T> > {
|
||||
static void reserve(std::unordered_map<K,T> &seq, typename std::unordered_map<K,T>::size_type n) {
|
||||
seq.reserve(n);
|
||||
}
|
||||
};
|
||||
|
||||
template <class K, class T>
|
||||
struct traits_asptr<std::unordered_map<K,T> > {
|
||||
typedef std::unordered_map<K,T> unordered_map_type;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue