ArrayUtilsClass

Private Class ArrayUtilsClass ()

Класс утилит для удобной работы с массивами типа TArray. Представлен singlton объектом ArrayUtils. Например чтобы создать массив, необходимо импортировать макрофайл и вызвать метод

copy sample
import "..\\mac\\Extra\\ext_ArrayUtil.mac";
var myArr = ArrayUtilsof("first el", 2, null);

Методы

macro addArray (arr : TArray, arr2 : TArray)

Добавляет в конец массива arr элементы массива arr2

macro contains (arr : TArray, element : Variant, compfunc)

Возвращает true если массив arr содержит element

macro containsNull (arr : TArray)

Возвращает true если массив arr содержит хоть один элемент null

macro copy (arr : TArray) : TArray

Возвращает копию массива arr

macro filter (arr, predicFunc)

Возвращает новый массив, состоящий из элементов исходного массива arr, для которых функция-предикат func возвращает true

macro findInArray (arr : TArray, find : Variant, compareFun) : Variant

Ищет и возвращает результат поиска в массиве arr объекта или примитива find согласно функции компаратору compareFun

macro indexOf (arr, element, compfunc)

Возвращает индекс элемента массива arr равного element, -1 в случае если ничего не найдено

macro isNullOrEmpty (arr) : Bool

Возвращает true, если массив arr равен null или размер массива равен 0

macro lastIndexOf (arr, element, compfunc)

Метод аналогичен indexOf; но возвращает индекс последнего элемента или -1;

macro map (arr, mapFunc)

Возвращает новый массив преобразованных функцией mapFunc всех элементов исходного массива arr

macro mergeArrays (arr1 : TArray, arr2 : TArray) : TArray

Возвращает объединённый массив из элементов массивов arr1 и arr2

macro newIterator (arr)

Возвращает итератор подобный IteratorInterface для работы с массивом arr

macro notNullOrEmpty (arr) : Bool

Возвращает false, если массив arr равен null или размер массива равен 0

macro of (varargs) : TArray

Возвращает новый массив типа TArray и заполняет его аргументами

macro reduce (arr, reduceFunc, accumulator)

Возвращает результат выполнения функции reduceFunc на элементы исходного массива arr

macro remove (arr : @TArray, ind : Integer)

Удаляет элемент в массиве arr с индексом ind, "схлопывая" пустоту

macro reverse (arr : TArray)

Разворачивает массив arr

macro subArray (arr : TArray, from : Integer, to : Integer)

Возвращает новый массив, заполненный элементами исходного массива arr с индекса from (включительно) по индекс to (исключительно)

macro toScreen (arr)

Выводит на экран элементы массива arr