AK: Allow creating NonnullPtrVectors from an initializer list

This was present in Vector already. Clang-format fixed some const
positions automatically too.

Also removed a now-ambiguous and unnecessary constructor from Shell.
This commit is contained in:
Sam Atkins 2022-08-24 10:48:44 +01:00 committed by Andreas Kling
parent f3877daac5
commit edc3ed2a0e
Notes: sideshowbarker 2024-07-17 07:20:58 +09:00
2 changed files with 9 additions and 9 deletions

View File

@ -26,10 +26,14 @@ public:
: Base(static_cast<Base const&>(other))
{
}
NonnullPtrVector(std::initializer_list<PtrType> list)
: Base(list)
{
}
using Base::size;
using ConstIterator = SimpleIterator<const NonnullPtrVector, const T>;
using ConstIterator = SimpleIterator<NonnullPtrVector const, T const>;
using Iterator = SimpleIterator<NonnullPtrVector, T>;
using ReverseIterator = SimpleReverseIterator<NonnullPtrVector, T>;
using ReverseConstIterator = SimpleReverseIterator<NonnullPtrVector const, T const>;
@ -60,13 +64,13 @@ public:
ALWAYS_INLINE PtrType const& ptr_at(size_t index) const { return Base::at(index); }
ALWAYS_INLINE T& at(size_t index) { return *Base::at(index); }
ALWAYS_INLINE const T& at(size_t index) const { return *Base::at(index); }
ALWAYS_INLINE T const& at(size_t index) const { return *Base::at(index); }
ALWAYS_INLINE T& operator[](size_t index) { return at(index); }
ALWAYS_INLINE const T& operator[](size_t index) const { return at(index); }
ALWAYS_INLINE T const& operator[](size_t index) const { return at(index); }
ALWAYS_INLINE T& first() { return at(0); }
ALWAYS_INLINE const T& first() const { return at(0); }
ALWAYS_INLINE T const& first() const { return at(0); }
ALWAYS_INLINE T& last() { return at(size() - 1); }
ALWAYS_INLINE const T& last() const { return at(size() - 1); }
ALWAYS_INLINE T const& last() const { return at(size() - 1); }
private:
// NOTE: You can't use resize() on a NonnullFooPtrVector since making the vector

View File

@ -306,10 +306,6 @@ public:
virtual bool is_list() const override { return true; }
virtual bool is_list_without_resolution() const override { return true; }
ListValue(Vector<String> values);
ListValue(Vector<NonnullRefPtr<Value>> values)
: m_contained_values(move(static_cast<NonnullRefPtrVector<Value>&>(values)))
{
}
ListValue(NonnullRefPtrVector<Value> values)
: m_contained_values(move(values))
{