| Index: cc/base/list_container.h
|
| diff --git a/cc/base/list_container.h b/cc/base/list_container.h
|
| index 04c7f14a0322bcc03b99d761540f401742beab7a..07e7d321feb371c8ab43b87592af8cdea4170f55 100644
|
| --- a/cc/base/list_container.h
|
| +++ b/cc/base/list_container.h
|
| @@ -27,6 +27,10 @@ namespace cc {
|
| template <class BaseElementType>
|
| class ListContainer {
|
| public:
|
| + ListContainer(ListContainer&& other) : helper_(sizeof(BaseElementType)) {
|
| + helper_.data_.swap(other.helper_.data_);
|
| + }
|
| +
|
| // BaseElementType is the type of raw pointers this class hands out; however,
|
| // its derived classes might require different memory sizes.
|
| // max_size_for_derived_class the largest memory size required for all the
|
| @@ -144,6 +148,11 @@ class ListContainer {
|
| return result;
|
| }
|
|
|
| + ListContainer& operator=(ListContainer&& other) {
|
| + helper_.data_.swap(other.helper_.data_);
|
| + return *this;
|
| + }
|
| +
|
| template <typename DerivedElementType>
|
| void swap(ListContainer<DerivedElementType>& other) {
|
| helper_.data_.swap(other.helper_.data_);
|
|
|