by Unknown Person
A library that implements basic data structures used in everyday programming. [More]
To download this library for your Linux/Mac installation, enter this on your command line:

DreamDownload byond://UnknownPerson.upContainers##version=20

Emulator users, in the BYOND pager go to File | Open Location and enter this URL:


Version 2.0
Date added: May 8 2008
Last updated: May 31 2008
4 fans
Latest Version: 2.0

upContainers is a library that defines and implements primitive data structures used in everyday programming. Currently, the library defines stacks (/Stack), queues (/Queue), sets (/Set), and many other common data easily implementable structures. Documentation is located in the library.

- Stack (/Stack)
- Queue (/Queue)
- Set (/Set)
- Deque (/Deque)
- Linked List (/LinkedList)
- Doubly-Linked List (/DLinkedList)

Example code:
#include <UnknownPerson/upContainers>

var/Stack/S = new /Stack (list(1,2,3,4,5))


src << S.Pop()

var/LinkedList/L = new /LinkedList (list(5,2,3,7))

var/lNode/new_node = lNode(L, 7)

for(var/lNode/n = L.getFront(), n != null, n = n.getNext())
src << n.getData()

Release Info:

Version 2.0 (May 31st, 2008)
- Added the Linked List (/LinkedList) and Doubly-Linked List structure (/DLinkedList), which utilizes the Linked Node structures (/lNode and /dlNode) to store data
- Added the Deque structure (/Deque), which allows pushing and popping from both sides of the line. (IainPeregrine, Hiead)
- Added the /Set/Copy(), which returns a duplicate of a set
- Empty sets and queues would give a runtime error on getTop(), getFront(), and getBack() (Thurnok)
- Sets, Queues, and Stacks now support single-item initialization. If a non-list value is submitted through the first arg, the container object will be initialized with the single value. (Thurnok)
- Stacks, Sets and Queues did not properly assign an internal list if an initializer list was sent through New()

Version 1.0 (May 9th, 2008)
- library released (features sets, queues, and stacks)