Iterable.mac

..\mac\extra\collections\Iterable.mac

Базовые классы и функции коллекций.

Импорты

Библиотека для динамического создания функций из строковых шаблонов

Реализованные функции-компараторы (compare и equals)

Реализация исключений и блоков try/catch/finally

Вспомогательные классы и функции для реализации ООП паттернов

Релизация функций для сортировки массива

Расширение стандартного класса TArray. Реализует всю базовую функциональность, за исключением переопределенного метода sort()

Полезные утилиты для работы со строковыми переменными

bankinter

rcw

rsexts

Известные зависимые

Реализация списка на основе массива TArray

Файл включает в себя реализацию интерфейса map через два массива

Библиотека коллекций для языка RSL

Объекты коллекторы

Библиотека вспомогательных классов и функций в ООП и функциональном стиле

Файл включает в себя реализацию классического интерфейса map через хэш-таблицу

Файл включает в себя реализацию классического интерфейса set, коллекцию уникальных значений

Файл включает в себя реализацию классов LinkedHashMap

Файл включает в себя реализацию LinkedHashSet - коллекции уникальных элементов с сохранением порядка добавления

Файл включает в себя реализацию связного списка LinkedList и отсортированного связного списка SortedLinkedList

InMemory Database. Позволяет динамически создавать, заполнять структуру со схожим интерфейсом TbFile

Библиотека для легкого тестирования пользовательских классов, макросов и модулей, написанных на RSL

Реализация Stream Api

Файл включает в себя реализацию классического интерфейса map через красно-черное дерево

Реализация отсортированной коллекции уникальных значений

Глобальные константы

const PRESENT = EmptyObj()

Нулевой объект-заглушка для SetInterface

Классы

Class Pair (k, v)

Объект для Map

Class IteratorInterface (collectionInstance)

Интерфейс базового итератора для всех коллекций, методы обязательны для переопределения

Class DescendingIterator (collectionInstance, ind : Integer)

Обратный итератор

Class NativeIterator (_itr : IteratorInterface)

Обертка для IteratorInterface. Позволяет перебирать элементы коллекций (наследников Iterable) нативным for(e, iterable);

Class Iterable ()

Базовый класс коллекций

Class (Iterable) ListInterface ()

Базовый интерфейс для списков

Class (Iterable) MapInterface ()

Базовый интерфейс для коллекций пар "ключ-значение"

Class (Iterable) SetInterface ()

Базовый интерфейс для коллекций уникальных значений