Order an order of elements with a numerical index


Inherits from: Object : Collection : SequenceableCollection



Keeps elements in an order and allows to put them at arbitrary slots 

without having to allocate a large array. 


see also: SparseArray


Note: put and at are slower than in IdentityDictionary / PriorityQueue, do is faster.



*new(size)

create a new order.

//  example

g = Order.new;

g.put(7, 100); // put a value (100) at index 7

g.clear; // empty

*newFromIndices(array, indices)

create a new order from given items and indices


*doRange(function, from to)

iterate over a range of the order's items.



// example


a = Order.new;


a[0] = \z;

a[0] = \y;

a[5] = \five;

a[4] = \four;


a[0] = \z;

a[5] = \five;

a[4] = \four;


a.indices;


a[9] = 100;

a.indices;