std.list
Datenstrukturen für int64- und Vec2-Werte: dynamische Liste (ListInt64, wächst bei Bedarf), statische Listen mit fix 8 oder 16 Elementen (StaticList8, StaticList16), Stack mit 32 Elementen (LIFO, StackInt64), Queue mit 32 Elementen (FIFO, QueueInt64) und Ring-Buffer für Vec2-Werte. Alle Typen unterstützen Add, Get, Set, Len, Clear und IsEmpty.
Einsatzbereiche: Protokoll-Parser, Spielmechaniken, Ereignis-Queues, Datenpuffer für Netzwerk-I/O, Algorithmus-Implementierungen.
Autor: Andreas Röne
Copyright: 2024-2025 Andreas Röne
Typen
ListInt64 = int64
Funktionen
| Signatur | Sichtbarkeit | Beschreibung |
ListInt64New(): int64 | pub | Erstellt neue dynamische Liste |
ListInt64WithCapacity(capacity: int64): int64 | pub | Erstellt Liste mit Anfangskapazität |
ListInt64Add(list: int64, value: int64): void | pub | Fügt Wert am Ende an |
ListInt64Get(list: int64, index: int64): int64 | pub | Liest Wert an Index |
ListInt64Set(list: int64, index: int64, value: int64): void | pub | Setzt Wert an Index |
ListInt64Len(list: int64): int64 | pub | Gibt Anzahl der Elemente zurück |
ListInt64Clear(list: int64): void | pub | Entfernt alle Elemente |
ListInt64IsEmpty(list: int64): bool | pub | Prüft ob Liste leer ist |
StaticList8 (struct)
| Feld | Typ |
data | array[8]int64 |
length | int64 |
| Signatur | Sichtbarkeit | Beschreibung |
StaticList8New(): StaticList8 | pub | Erstellt leere 8-Elemente-Liste |
StaticList8Add(list: StaticList8, value: int64): bool | pub | Fügt Wert hinzu, bool=Erfolg |
StaticList8Get(list: StaticList8, index: int64): int64 | pub | Liest Wert an Index |
StaticList8Set(list: StaticList8, index: int64, value: int64): bool | pub | Setzt Wert an Index |
StaticList8Len(list: StaticList8): int64 | pub | Gibt Anzahl der Elemente zurück |
StaticList8Clear(list: StaticList8): void | pub | Entfernt alle Elemente |
StaticList8IsEmpty(list: StaticList8): bool | pub | Prüft ob Liste leer ist |
StaticList16 (struct)
| Feld | Typ |
data | array[16]int64 |
length | int64 |
| Signatur | Sichtbarkeit | Beschreibung |
StaticList16New(): StaticList16 | pub | Erstellt leere 16-Elemente-Liste |
StaticList16Add(list: StaticList16, value: int64): bool | pub | Fügt Wert hinzu, bool=Erfolg |
StaticList16Get(list: StaticList16, index: int64): int64 | pub | Liest Wert an Index |
StaticList16Set(list: StaticList16, index: int64, value: int64): bool | pub | Setzt Wert an Index |
StaticList16Len(list: StaticList16): int64 | pub | Gibt Anzahl der Elemente zurück |
StaticList16Clear(list: StaticList16): void | pub | Entfernt alle Elemente |
StaticList16IsEmpty(list: StaticList16): bool | pub | Prüft ob Liste leer ist |
Vec2List = int64
| Signatur | Sichtbarkeit | Beschreibung |
Vec2ListNew(): int64 { return 0; } | pub | Erstellt neue Vec2-Liste |
Vec2ListLen(list: int64): int64 { return 0; } | pub | Gibt Anzahl der Elemente zurück |
Vec2ListClear(list: int64): void { } | pub | Entfernt alle Elemente |
Vec2ListIsEmpty(list: int64): bool { return true; } | pub | Prüft ob Liste leer ist |
RingBufferVec2 = int64
| Signatur | Sichtbarkeit | Beschreibung |
RingBufferVec2New(): int64 { return 0; } | pub | Erstellt neuen Vec2-Ringpuffer |
RingBufferVec2WithCapacity(cap: int64): int64 { return 0; } | pub | Erstellt Ringpuffer mit Kapazität |
RingBufferVec2Len(rb: int64): int64 { return 0; } | pub | Gibt Anzahl der Elemente zurück |
RingBufferVec2IsEmpty(rb: int64): bool { return true; } | pub | Prüft ob Puffer leer ist |
RingBufferVec2IsFull(rb: int64): bool { return false; } | pub | Prüft ob Puffer voll ist |
RingBufferVec2Clear(rb: int64): void { } | pub | Entfernt alle Elemente |
StackInt64 (struct)
| Feld | Typ |
data | array[32]int64 |
top | int64 |
| Signatur | Sichtbarkeit | Beschreibung |
StackInt64New(): StackInt64 | pub | Erstellt leeren Stack |
StackInt64Push(s: StackInt64, value: int64): bool | pub | Legt Wert oben auf Stack |
StackInt64Pop(s: StackInt64): int64 | pub | Nimmt oberstes Element vom Stack |
StackInt64Peek(s: StackInt64): int64 | pub | Liest oberstes Element ohne Entnahme |
StackInt64IsEmpty(s: StackInt64): bool | pub | Prüft ob Stack leer ist |
StackInt64IsFull(s: StackInt64): bool | pub | Prüft ob Stack voll ist |
QueueInt64 (struct)
| Feld | Typ |
data | array[32]int64 |
front | int64 |
rear | int64 |
count | int64 |
| Signatur | Sichtbarkeit | Beschreibung |
QueueInt64New(): QueueInt64 | pub | Erstellt leere Queue |
QueueInt64Enqueue(q: QueueInt64, value: int64): bool | pub | Fügt Wert am Ende ein |
QueueInt64Dequeue(q: QueueInt64): int64 | pub | Entnimmt Wert vom Anfang |
QueueInt64Peek(q: QueueInt64): int64 | pub | Liest ersten Wert ohne Entnahme |
QueueInt64IsEmpty(q: QueueInt64): bool | pub | Prüft ob Queue leer ist |
QueueInt64IsFull(q: QueueInt64): bool | pub | Prüft ob Queue voll ist |