Dz
Djazair
v1.0.5
🔍

Collections Module

Import using: use collections

Stack

Last-in, First-out (LIFO). Methods: push, pop, peek, contains, clear, isEmpty, size, toArray, toString.

use collections
let s = new collections.Stack()
s.push(10)
s.push(20)
s.push(30)
print(str(s.pop()))     # 30
print(str(s.peek()))    # 20 (top without removing)
print(str(s.size()))    # 2
print(str(s.contains(10)))  # True
print(str(s.isEmpty()))     # False
print(str(s.toArray()))     # [10, 20]
s.clear()
print(str(s.isEmpty()))     # True

Queue

First-in, First-out (FIFO). Methods: enqueue, dequeue, front, rear, contains, clear, isEmpty, size, toArray, toString.

use collections
let q = new collections.Queue()
q.enqueue("a")
q.enqueue("b")
q.enqueue("c")
print(q.dequeue())      # a
print(q.front())        # b
print(q.rear())         # c
print(str(q.size()))    # 2

Deque

Double-ended queue. Methods: pushFront, pushBack, popFront, popBack, front, back, contains, clear, isEmpty, size, toArray, toString.

use collections
let d = new collections.Deque()
d.pushBack(1)
d.pushBack(2)
d.pushFront(0)
print(str(d.popFront()))  # 0
print(str(d.popBack()))   # 2
print(str(d.front()))     # 1
print(str(d.back()))      # 1

Map

Ordered key-value store. Methods: set, get, getOrDefault, has, delete, clear, size, isEmpty, keys, values, entries, mapValues, filterEntries, forEach, merge, toArray, toString.

use collections
let m = new collections.Map()
m.set("name", "Djazair")
m.set("version", 1.0)
print(m.get("name"))              # Djazair
print(m.getOrDefault("missing", "N/A"))  # N/A
print(str(m.has("name")))         # True
print(str(m.keys()))              # ["name", "version"]
print(str(m.values()))            # ["Djazair", 1.0]
m.delete("version")
print(str(m.size()))              # 1

Set

Unique values. Methods: add, has, delete, clear, size, isEmpty, toArray, values, union, intersection, difference, isSubset, equals, toString.

use collections
let setA = new collections.Set()
setA.add(1)
setA.add(2)
setA.add(3)
let setB = new collections.Set()
setB.add(2)
setB.add(3)
setB.add(4)
print(str(setA.union(setB)))        # [1, 2, 3, 4]
print(str(setA.intersection(setB))) # [2, 3]
print(str(setA.difference(setB)))   # [1]
print(str(setB.isSubset(setA)))     # False

LinkedList

Doubly linked list. Methods: append, prepend, popBack, popFront, front, back, contains, toArray, isEmpty, size, clear, toString.

use collections
let ll = new collections.LinkedList()
ll.append("first")
ll.append("second")
ll.prepend("zeroth")
print(ll.front())         # zeroth
print(ll.back())          # second
print(str(ll.toArray()))  # ["zeroth", "first", "second"]

PriorityQueue

Min-heap by priority number. Methods: enqueue(value, priority), dequeue, peek, isEmpty, size, clear, toArray, toString.

use collections
let pq = new collections.PriorityQueue()
pq.enqueue("low", 3)
pq.enqueue("high", 1)
pq.enqueue("mid", 2)
print(pq.dequeue())  # high (lowest priority number first)
print(pq.dequeue())  # mid
print(pq.peek())     # low
© 2026 Harizi Riyadh. Released under the MIT License.
Official Website for Djazair.