Функции из этой группы предназначены для оперирования переменными типа
COLLECTION. Коллекция является списком объектов, с индексацией по
целочисленному ключу (начиная с 0). Коллекция может содержать элементы
любых типов, в том числе и переменные типа COLLECTION. Коллекция может быть
неоднородной, т.е. содержать объекты разных типов. В текущей реализации доступ к
элементу коллекции по индексу осуществляется за линейное время. Первая функция создает пустую коллекцию, вторая является конструктором
копирования. COLLECTION CREATE_COLLECTION () COLLECTION CREATE_COLLECTION (COLLECTION IntValue) Функция возвращает количество элементов в коллекции. DOUBLE GET_COLLECTION_COUNT (COLLECTION Name) Функция удаляет элемент с индексом «index» из коллекции «Name». COLLECTION REMOVE_COLLECTION_ITEM (COLLECTION Name, DOUBLE
index) Функция вставляет значение «value» в качестве элемента с индексом
«index». Выполняется вставка в коллекцию элемента с индексом
«index», существующий элемент коллекции с индексом «index» сдвигается на единицу
в элемент с индексом «index+1», и т.д. для всех существующих элементов, индекс
которых равен или больше значения индекса вставки. См. Пример
. COLLECTION INSERT_COLLECTION_ITEM (COLLECTION Name, DOUBLE
index, ANY value) Функция заменяет значение элемента с индексом «index» на значение
«value». COLLECTION SET_COLLECTION_ITEM (COLLECTION Name, DOUBLE
index, ANY value) Функция возвращает значение элемента с индексом «index». ANY GET_COLLECTION_ITEM (COLLECTION Name, DOUBLE index)
CREATE_COLLECTION
GET_COLLECTION_COUNT
REMOVE_COLLECTION_ITEM
INSERT_COLLECTION_ITEM
SET_COLLECTION_ITEM
GET_COLLECTION_ITEM
Параметры:
№
Параметр
Тип
Описание
1
INTVALUE
COLLECTION
Коллекция для инициализации вновь создаваемого объекта
2
NAME
STRING
Имя коллекции
3
INDEX
DOUBLE
Индекс для обращения к коллекции. Должен содержать целочисленное
значение
4
VALUE
ANY
Значение произвольного типа для включения в
коллекцию
‘
col=CREATE_COLLECTION()
FOR i FROM 0 TO 9
col=INSERT_COLLECTION_ITEM(col,0,0)
col=SET_COLLECTION_ITEM(col,0,i)
END FOR
s = GET_COLLECTION_ITEM(col,5)
len = GET_COLLECTION_COUNT(col)
‘
Создается пустая коллекция. Затем 10 раз в коллекцию вставляется нулевой элемент со значением 0 и тут же его значение меняется на значение переменной цикла. В результате получается коллекция из 10-ти элементов. После выполнения программы «s»=4, «len»=10, а «col» имеет следующий вид:
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |