2.5.16. List

TODO.

2.5.16.1. Instruction

list.append op1 op2 [list::Append]
Operator 1:ref<list<*>>
Operator 2:ref<list<*>>

Appends all elements of op2 to op1.

target = list.back op1 [list::Back]
Target:any
Operator 1:ref<list<*>>

Returns the last element from the list referenced by op1. If the list is empty, raises an ~~Underflow exception.

list.erase op1 [list::Erase]
Operator 1:iterator<list<*>>

Removes the list element located by the iterator in op1.

target = list.front op1 [list::Front]
Target:any
Operator 1:ref<list<*>>

Returns the first element from the list referenced by op1. If the list is empty, raises an ~~Underflow exception.

list.insert op1 op2 [list::Insert]
Operator 1:any
Operator 2:iterator<list<*>>

Inserts the element op1 into a list before the element located by the iterator in op2. If the iterator is at the end position, the element will become the new list tail.

target = list.pop_back op1 [list::PopBack]
Target:any
Operator 1:ref<list<*>>

Removes the last element from the list referenced by op1 and returns it. If the list is empty, raises an ~~Underflow exception.

target = list.pop_front op1 [list::PopFront]
Target:any
Operator 1:ref<list<*>>

Removes the first element from the list referenced by op1 and returns it. If the list is empty, raises an ~~Underflow exception.

list.push_back op1 op2 [list::PushBack]
Operator 1:ref<list<*>>
Operator 2:any

Appends op2 to the list in reference by op1.

list.push_front op1 op2 [list::PushFront]
Operator 1:ref<list<*>>
Operator 2:any

Prepends op2 to the list in reference by op1.

target = list.size op1 [list::Size]
Target:int<64>
Operator 1:ref<list<*>>

Returns the current size of the list reference by op1.

list.timeout op1 op2 op3 [list::Timeout]
Operator 1:ref<list<*>>
Operator 2:enum { }
Operator 3:interval

Activates automatic expiration of items for list op1. All subsequently inserted entries will be expired after an interval of op3 after insertion (if op2 is Expire::Create) or last access (if op2 is Expire::Access). Expiration is disabled if *op3 is zero. Throws NoTimerManager if no timer manager has been associated with the set at construction.