buffer
*Dieser Inhalt wurde mit KI (Beta) übersetzt und kann Fehler enthalten. Um diese Seite auf Englisch zu sehen, klicke hier.
Ein Buffer ist ein Objekt, das eine feste Größe mutable Block of Memory repräsentiert. Die Buffer-Bibliothek bietet Funktionen für die Erstellung und Manipulation von Buffer-Objekten, wobei alle seine Funktionen innerhalb der globalen buffer Variable.
Buffer ist eine Low-Level-binäre Datenstruktur, die die Verwendung von string.pack() und string.unpack() ersetzt. Anwendungsfälle umfassen das Lesen und Schreiben von bestehenden Binärdaten, das Arbeiten mit Daten in kompakterer Form, die SerIALisierung auf benutzerdefinierte Binärformate und die allgemeine Arbeit mit nativen Memoiren wie fixen Längen und Sch floats.
Wenn durch Roblox-APIs geschickt wird, einschließlich das Senden eines Buffers über benutzerdefinierte Ereignisse, die Identität des Buffer-Objekts wird nicht erhalten und das Ziel eine Kopie erhalten wird. Ähnlich wie andere Einschränkungen, kann das gleiche Buffer-Objekt nicht von mehreren Class.Actor -Skripts (Parallel Luau) verwendet werden.
Viele der Funktionen akzeptieren einen Offset in Bytes von Beginn der Buffer. Offset von 0 von Beginn des Buffer-Speicher-Blocks greift auf den ersten Byte zu. Alle Offsets, Zähler und Größen sollten nicht negative Zahlwerte sein. Wenn die Bytes, die von einer Lesen oder Schreiben Operation auf dem Buffer außerhalb des Buffers sind, sind, wird ein Fehler geworfen.
Die Methoden read und write, die mit Zahlen und Floating arbeiten, verwenden little-endian Encoding.
Zusammenfassung
Funktionen
Erstellt einen Buffer.
Erstellt einen tamperungsschutz von einer String.
Konvertiert einen Buffer in eine String.
Gibt die Größe des Buffers in Bytes zurück.
Lädt einen 8-bitigen signierten Inti aus dem Speicher.
Lädt einen 8-bitigen un签ierten Int von der Speicherung.
Lädt einen 16-Bit-签名-整数 aus dem Speicher.
Lädt einen 16-Bit- unsigned Int von der Speicherung.
Lädt eine 32-bitige signierte Zahl aus dem Speicher.
Lädt einen 32-Bit- unsigned Int von der Speicherung.
Lies eine 32-Bit-Schwimmkomma-Wert aus dem Speicher.
Lies eine 64-Bit-Schwimmkomma-Wert aus dem Speicher.
Schreibt einen 8-bitigen signierten Intelligenz auf den Speicher.
Schreibt eine 8-bitige nicht signierte Zahl in den Speicher.
Schreibt einen 16-Bit-签名-整数 in den Speicher.
Schreibt eine 16-bitige, nicht signierte Zahl in den Speicher.
Schreibt eine 32-bitige signierte Zahl in den Speicher.
Schreibt eine 32-bitige nicht signierte Zahl in den Speicher.
Schreibt einen 32-Bit-Schwimmwert auf den Speicher.
Schreibt einen 64-Bit-Schwimmwert auf den Speicher.
Lässt eine Zeichenkette aus dem Speicher.
Schreibt eine Zeichenfolge in den Speicher.
Kopiert Bytes zwischen Büffern.
Setzt einen Teil der Speicherzone auf einen 8-Bit- unsigned-Wert.
Funktionen
create
Erstellt einen tamper-Cache mit der angeforderten Größe und allen darauf initialisierten Bytes auf 0. Die Größenbegrenzung beträgt 1 GiB, oder 1,073,741,824 Bytes. Beachten Sie, dass größere Tamper-Caches möglicherweise nicht alle zugewiesen werden können, wenn das Gerät wenig Speicher hat.
Parameter
Größe des Buffers.
Rückgaben
readf32
Lesen Sie die Daten aus dem Puffer, indem Sie die Bytes am Offset als 32-Bit-Schwimmkomma-Wert umwandeln und ihn in eine Zahl umwandeln. Wenn der Schwimmkomma-Wert NaN (kein Zahl) entspricht, kann der zurückgegebene Wert in eine andere ruhige NaN-Repräsentation umgewandelt werden.
Rückgaben
readf64
Lesen Sie die Daten aus dem Puffer, indem Sie die Bytes am Offset als 64-Bit-Schwimmkomma-Wert umwandeln und ihn in eine Zahl umwandeln. Wenn der Wert des Schwebungspunkts NaN (kein Zahl) entspricht, kann der zurückgegebene Wert in eine andere ruhige NaN-Repräsentation umgewandelt werden.
Rückgaben
writei8
Schreibt Daten in den Speicher, indem das Zahlzeichen in einen 8-Bit-Signatur umgewandelt wird und ein einzelnes Byte geschrieben wird.
Parameter
Rückgaben
writeu8
Schreibt Daten in den Speicher, indem das Zahlzeichen in einen 8-Bit- unsigned Zahl integriert wird und ein einzelnes Byte geschrieben wird.
Parameter
Rückgaben
writei16
Schreibt Daten in den Speicher, indem die Zahl in einen 16-Bit-签名-Zahlen umgewandelt wird und als einzelne Bytes erneut interpretiert wird.
Parameter
Rückgaben
writeu16
Schreibt Daten in den Speicher, indem die Zahl in einen 16-Bit- unsigned Int数 umgewandelt wird und als einzelne Bytes erneut interpretiert wird.
Parameter
Rückgaben
writei32
Schreibt Daten in den Speicher, indem das Zahl in ein 32-Bit-gesignetes Int数 umwandelt und als einzelne Bytes erneut interpretiert wird.
Parameter
Rückgaben
writeu32
Schreibt Daten in den Speicher, indem das Zahl in ein 32-Bit- unsigned Int数 umgewandelt wird und als einzelne Bytes erneut interpretiert wird.
Parameter
Rückgaben
writef32
Schreibt Daten in den Speicher, indem die Zahl in einen 32-Bit-Schwimmkommawert umgewandelt wird und als einzelne Bytes erneut interpretiert wird.
Parameter
Rückgaben
writef64
Schreibt Daten in den Speicher, indem die Zahl in einen 64-Bit-Schwimmkommawert umgewandelt wird und als einzelne Bytes erneut interpretiert wird.
Parameter
Rückgaben
writestring
Schreibt Daten von einer Zeile in den Speicher auf der angegebenen offset . Wenn ein optionales count angegeben ist, werden nur count Bytes aus der Stringgenommen.
Parameter
Rückgaben
copy
Kopiert count Bytes von source ab dem Offset sourceOffset in den 1> target1> bei 4> targetOffset4> .
Es ist möglich, dass source und target dasselbe sein. Wenn Sie eine überlappende Region innerhalb desselben Buffers kopieren, handelt es sich als ob die Quellregion in einen temporären Buffer kopiert wird und dann dieser Buffer auf das Ziel kopiert wird.
Parameter
Puffer, um Daten einzukopieren.
Versetzt von Beginn der Buffer-Speicher, beginnend von 0.
uffer, um die Daten zu nehmen.
Versetzt von Beginn der Buffer-Speicher, beginnend von 0.
Anzahl der Bytes zu kopieren. Wenn übersprungen, wird die gesamte source Daten, die ab sourceOffset beginnt, kopiert.
Rückgaben
fill
Setzt count Bytes im Speicher zu offset und value fest.
Parameter
Speicher, um die Daten einzuschreiben.
Versetzt von Beginn der Buffer-Speicher, beginnend von 0.
Eine intellektuelle Zahl in Reichweite [0, 255].
Anzahl der zu schreibenden Bytes. Wenn übersprungen, werden alle Bytes nach dem angegebenen Offset festlegen.