Next: Immutable map, Previous: Heap, Up: Library modules - Utilities [Contents][Index]

`data.ideque`

- Immutable deques- Module:
**data.ideque** -
This module provides a functional double-ended queue (deque, pronounced as “deck”), with amortized O(1) access of queue operations on either end.

It also serves as a convenient bidrectional list structures in a sense that operations from the end of the list is just as efficient as the ones from the front.

Note: If you don’t need immutability and wants space-efficient deque, you can also use

`data.ring-buffer`

as a deque (see Ring buffer).

- Function:
**make-ideque***n :optional init* Creates an ideque of length

`n`with all the elements being`init`. If`init`is omitted,`#f`

is used.This is provided just for the symmetry with other container data structures; it’s not in srfi-134, and the portable code can use

`ideque-tabulate`

.

- Function:
**ideque***element …* [SRFI-134] Returns an ideque with the given elements.

- Function:
**ideque-unfold***p f g seed* [SRFI-134]

- Function:
**ideque-unfold-right***p f g seed* [SRFI-134]

- Function:
**ideque-tabulate***size init* [SRFI-134]

- Function:
**ideque-empty?***idq* [SRFI-134]

- Function:
**ideque-add-front***idq x* - Function:
**ideque-add-back***idq x* [SRFI-134]

- Function:
**ideque-front***idq* - Function:
**ideque-bakc***idq* [SRFI-134]

- Function:
**ideque-remove-front***idq* - Function:
**ideque-remove-back***idq* [SRFI-134]

- Function:
**ideque-reverse***idq* [SRFI-134]

- Function:
**ideque=***idq idq2 …* [SRFI-134]

- Function:
**ideque-ref***idq n* [SRFI-134]

- Function:
**ideque-take***idq n* - Function:
**ideque-take-right***idq n* [SRFI-134]

- Function:
**ideque-drop***idq n* - Function:
**ideque-drop-right***idq n* [SRFI-134]

- Function:
**ideque-split-at***idq n* [SRFI-134]

- Function:
**ideque-length***idq* [SRFI-134]

- Function:
**ideque-append***idq …* [SRFI-134]

- Function:
**ideque-zip***idq idq2 …* [SRFI-134]

- Function:
**ideque-map***proc idq …* [SRFI-134]

- Function:
**ideque-filter-map***proc idq …* [SRFI-134]

- Function:
**ideque-for-each***proc idq …* - Function:
**ideque-for-each-right***proc idq …* [SRFI-134]

- Function:
**ideque-fold***proc knil idq …* - Function:
**ideque-fold-right***proc knil idq …* [SRFI-134]

- Function:
**ideque-append-map***proc idq …* [SRFI-134]

- Function:
**ideque-filter***pred idq* - Function:
**ideque-remove***pred idq* [SRFI-134]

- Function:
**ideque-partition***pred idq* [SRFI-134]

- Function:
**ideque-find***pred idq :optional failure* - Function:
**ideque-find-right***pred idq :optional failure* [SRFI-134]

- Function:
**ideque-take-while***pred idq* - Function:
**ideque-take-while-right***pred idq* [SRFI-134]

- Function:
**ideque-drop-while***pred idq* - Function:
**ideque-drop-while-right***pred idq* [SRFI-134]

- Function:
**ideque-span***pred idq* - Function:
**ideque-break***pred idq* [SRFI-134]

- Function:
**ideque-any***pred idq …* - Function:
**ideque-every***pred idq …* [SRFI-134]

- Function:
**ideque->list***idq* - Function:
**list->ideque***list* [SRFI-134]

- Function:
**ideque->generator***idq* - Function:
**generator->ideque***gen* [SRFI-134]

Next: Immutable map, Previous: Heap, Up: Library modules - Utilities [Contents][Index]