utils.ds

Some data structures

Members

Classes

ByteStream
class ByteStream

For reading/writing sequentially to a ubyte[]

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 First-In First-Out stack

FileReader
deprecated class FileReader

**NOT IMPLEMENTED YET** For reading large files which otherwise, would take too much memory

LinkedList
class LinkedList(T)

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

List
deprecated 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 linked list based stack with push, and pop

Structs

Flags
struct Flags(T)

Stores bit flags against each enum member, and provides overloaded bitwise operators

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