зеркало из https://github.com/mozilla/gecko-dev.git
Backed out changeset 9b131da7e0cc (bug 1595750) for causing Windows build bustages CLOSED TREE
This commit is contained in:
Родитель
a1f6b4c396
Коммит
985bd5675a
|
@ -2730,30 +2730,6 @@ Span<const ElementType> MakeSpan(
|
|||
return aTArray;
|
||||
}
|
||||
|
||||
template <typename T>
|
||||
class nsTArrayBackInserter
|
||||
: public std::iterator<std::output_iterator_tag, void, void, void, void> {
|
||||
nsTArray<T>& mArray;
|
||||
|
||||
public:
|
||||
explicit nsTArrayBackInserter(nsTArray<T>& aArray) : mArray{aArray} {}
|
||||
|
||||
template <typename O>
|
||||
nsTArrayBackInserter& operator=(O&& aValue) {
|
||||
mArray.EmplaceBack(std::forward<O>(aValue));
|
||||
return *this;
|
||||
}
|
||||
|
||||
nsTArrayBackInserter& operator*() { return *this; }
|
||||
|
||||
void operator++() {}
|
||||
};
|
||||
|
||||
template <typename T>
|
||||
auto MakeBackInserter(nsTArray<T>& aArray) {
|
||||
return nsTArrayBackInserter<T>{aArray};
|
||||
}
|
||||
|
||||
} // namespace mozilla
|
||||
|
||||
// MOZ_DBG support
|
||||
|
|
|
@ -443,15 +443,4 @@ TEST(TArray, RemoveElementsAt_ByIterator)
|
|||
ASSERT_EQ(expected, array);
|
||||
}
|
||||
|
||||
TEST(TArray, MakeBackInserter)
|
||||
{
|
||||
const std::vector<int> src{1, 2, 3, 4};
|
||||
nsTArray<int> dst;
|
||||
|
||||
std::copy(src.begin(), src.end(), MakeBackInserter(dst));
|
||||
|
||||
const nsTArray<int> expected{1, 2, 3, 4};
|
||||
ASSERT_EQ(expected, dst);
|
||||
}
|
||||
|
||||
} // namespace TestTArray
|
||||
|
|
Загрузка…
Ссылка в новой задаче