utils.ds

Some data structures

Members

Classes

ByteStream
class ByteStream

TODO: do something about this For reading large files which otherwise, would take too much memory

ExtraAlloc
class ExtraAlloc(T)

To manage allocating extra for cases like lists where you need to create new objects often. Also manages initializing the objects through a init function. Creates a number of extra objects at one time, so it has to allocate memory less often.

FIFOStack
class FIFOStack(T)

A FIFO (First In is First Out, first element pushed will be removed first) stack

LinkedList
class LinkedList(T)

A linked list, used where only reading in the forward direction is required

List
class List(T)

Use to manage dynamic arrays that frequently change lengths

LogList
deprecated class LogList(T)

Used in log display widgets (like in dub package qui qui.widgets.LogWidget)

Stack
class Stack(T)

A basic stack with push, and pop

Structs

TreeNode
struct TreeNode(T)

used by Tree class to hold individual nodes in the tree

TreeReader
struct TreeReader(T)

To make reading a Tree (made up of TreeNode) a bit easier

Unions

ByteUnion
union ByteUnion(T)

Used to read some data type as ubyte[x]

Meta