55template <
class ObjectType>
87 jassert (
this != &other);
118 while (
l->item !=
nullptr)
119 l = &(
l->item->nextListItem);
132 for (
auto* i = item; i !=
nullptr; i = i->nextListItem)
146 while (--index >= 0 &&
l->item !=
nullptr)
147 l = &(
l->item->nextListItem);
160 while (--index >= 0 &&
l->item !=
nullptr)
161 l = &(
l->item->nextListItem);
169 for (
auto* i = item; i !=
nullptr; i = i->nextListItem)
183 jassert (
newItem->nextListItem ==
nullptr);
197 while (index != 0 &&
l->item !=
nullptr)
199 l = &(
l->item->nextListItem);
212 jassert (
newItem->nextListItem ==
nullptr);
216 item->nextListItem =
oldItem->nextListItem.item;
217 oldItem->nextListItem.item =
nullptr;
240 for (
auto* i =
other.item; i !=
nullptr; i = i->nextListItem)
258 oldItem->nextListItem.item =
nullptr;
278 while (item !=
nullptr)
294 while (
l->item !=
nullptr)
299 l = &(
l->item->nextListItem);
313 for (
auto* i = item; i !=
nullptr; i = i->nextListItem)
320 std::swap (item,
other.item);
347 endOfList = &(
newItem->nextListItem);
353 JUCE_DECLARE_NON_COPYABLE (
Appender)
Appender(LinkedListPointer &endOfListPointer) noexcept
void append(ObjectType *const newItem) noexcept
LinkedListPointer & getLast() noexcept
LinkedListPointer * findPointerTo(ObjectType *const itemToLookFor) noexcept
LinkedListPointer & operator[](int index) noexcept
ObjectType * replaceNext(ObjectType *const newItem) noexcept
void append(ObjectType *const newItem)
LinkedListPointer & operator=(ObjectType *const newItem) noexcept
bool contains(const ObjectType *const itemToLookFor) const noexcept
ObjectType * removeNext() noexcept
LinkedListPointer(ObjectType *const headItem) noexcept
void insertNext(ObjectType *const newItem)
ObjectType * get() const noexcept
void addCopyOfList(const LinkedListPointer &other)
int size() const noexcept
void insertAtIndex(int index, ObjectType *newItem)
void copyToArray(ObjectType **destArray) const noexcept
LinkedListPointer() noexcept
void swapWith(LinkedListPointer &other) noexcept
void remove(ObjectType *const itemToRemove)