Есть проект использующий cocoapods, и есть форк пода и исправлением бага. Для исправления бага нужна реализация очереди, которую хотелось добавить как зависимость пакета.
Но всё, что я вижу на Cocoapods.org выглядит как попытки попонтоваться знанием синтаксического сахара swift, при том что сами коллекции реализованы как перевызовы методов вроде `.append` и `.remove(at:0)`.
Может быть кто знает адекватную реализацию очереди основанную на циклическом массиве?
Честно говоря мне просто влом разворачивать тестовый проект и писать нормальную реализацию очереди 100500й раз
А вообще я предпочитаю использовать сторонние библиотеки даже если я могу написать реализацию сам: меньше вероятность присутствия бага, так как код сторонней реализации посмотрели как минимум 2 пары глаз (я и автор), а мой - только одна.
циклический массив - один из способов реализации очереди и некоторых других структур, когда вместо фактического изменения внутреннего массива используются указатели на начало и на конец очереди. При добавлении элемента указатель на конец сдвигается вперёд, при удалении - вперёд сдвигается указатель на начало
"Цикличность" состоит в том, что если указатель на конец больше, чем размер массива - элементы начинают писаться в начало массива на место удалённых элементов (index = tail % length)