buffer

Veraltete anzeigen

*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

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

size: number

Größe des Buffers.

Rückgaben

fromstring

Erzeugt einen tamperungssicheren Speicher, der die Inhalte der Strings initialisiert. Die Größe des tamperungssicheren Speichers entspricht der Länge des Strings.

Parameter

str: string

Rückgaben

tostring

Rückgibt die Buffer-Daten als Stringzurück.

Parameter

Rückgaben

Gibt die Größe des Buffers in Bytes zurück.

Parameter

Rückgaben

readi8

Lesen Sie die Daten vom Speicher aus, indem Sie die Bytes am Offset als 8-Bit-Signaturzahl interpretieren und sie in eine Zahl umwandeln.

Parameter

offset: number

Versetzt von Beginn der Buffer-Speicher, beginnend von 0.

Rückgaben

readu8

Lesen Sie die Daten vom Speicher aus der Offset-Reinterpretation als 8-Bit- unsigned Int数 und konvertieren Sie sie in eine Zahl.

Parameter

offset: number

Versetzt von Beginn der Buffer-Speicher, beginnend von 0.

Rückgaben

readi16

Lesen Sie die Daten vom Speicher aus der Offset-Reinterpretation als 16-Bit-gesignierte Zahl und umwandeln Sie sie in eine Zahl.

Parameter

offset: number

Versetzt von Beginn der Buffer-Speicher, beginnend von 0.

Rückgaben

readu16

Lesen Sie die Daten vom Speicher aus dem Offset als 16-Bit- unsigned Int数 um und konvertieren Sie sie in eine Zahl.

Parameter

offset: number

Versetzt von Beginn der Buffer-Speicher, beginnend von 0.

Rückgaben

readi32

Lesen Sie die Daten vom Speicher aus dem Offset als 32-Bit-gesignierte Zahl um und konvertieren Sie sie in eine Zahl.

Parameter

offset: number

Versetzt von Beginn der Buffer-Speicher, beginnend von 0.

Rückgaben

readu32

Lesen Sie die Daten vom Speicher aus dem Offset als 32-Bit- unsigned Int数 um und konvertieren Sie sie in eine Zahl.

Parameter

offset: number

Versetzt von Beginn der Buffer-Speicher, beginnend von 0.

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.

Parameter

offset: number

Versetzt von Beginn der Buffer-Speicher, beginnend von 0.

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.

Parameter

offset: number

Versetzt von Beginn der Buffer-Speicher, beginnend von 0.

Rückgaben

writei8

void

Schreibt Daten in den Speicher, indem das Zahlzeichen in einen 8-Bit-Signatur umgewandelt wird und ein einzelnes Byte geschrieben wird.

Parameter

offset: number

Versetzt von Beginn der Buffer-Speicher, beginnend von 0.

value: number

Eine intellektuelle Zahl in Reichweite [-128, 127].

Rückgaben

void

writeu8

void

Schreibt Daten in den Speicher, indem das Zahlzeichen in einen 8-Bit- unsigned Zahl integriert wird und ein einzelnes Byte geschrieben wird.

Parameter

offset: number

Versetzt von Beginn der Buffer-Speicher, beginnend von 0.

value: number

Eine intellektuelle Zahl in Reichweite [0, 255].

Rückgaben

void

writei16

void

Schreibt Daten in den Speicher, indem die Zahl in einen 16-Bit-签名-Zahlen umgewandelt wird und als einzelne Bytes erneut interpretiert wird.

Parameter

offset: number

Versetzt von Beginn der Buffer-Speicher, beginnend von 0.

value: number

Eine intellektuelle Zahl in Reichweite [-32,768, 32,767].

Rückgaben

void

writeu16

void

Schreibt Daten in den Speicher, indem die Zahl in einen 16-Bit- unsigned Int数 umgewandelt wird und als einzelne Bytes erneut interpretiert wird.

Parameter

offset: number

Versetzt von Beginn der Buffer-Speicher, beginnend von 0.

value: number

Eine integere Zahl in Reichweite [0, 65,536].

Rückgaben

void

writei32

void

Schreibt Daten in den Speicher, indem das Zahl in ein 32-Bit-gesignetes Int数 umwandelt und als einzelne Bytes erneut interpretiert wird.

Parameter

offset: number

Versetzt von Beginn der Buffer-Speicher, beginnend von 0.

value: number

Eine intellektuelle Zahl in Reichweite [-2,147,483,648, 2,147,483,647].

Rückgaben

void

writeu32

void

Schreibt Daten in den Speicher, indem das Zahl in ein 32-Bit- unsigned Int数 umgewandelt wird und als einzelne Bytes erneut interpretiert wird.

Parameter

offset: number

Versetzt von Beginn der Buffer-Speicher, beginnend von 0.

value: number

Eine integere Zahl in Reichweite [0, 4,294,967,295].

Rückgaben

void

writef32

void

Schreibt Daten in den Speicher, indem die Zahl in einen 32-Bit-Schwimmkommawert umgewandelt wird und als einzelne Bytes erneut interpretiert wird.

Parameter

offset: number

Versetzt von Beginn der Buffer-Speicher, beginnend von 0.

value: number

Eine einzelne Präzisionsschwimmkomma-Zahl.

Rückgaben

void

writef64

void

Schreibt Daten in den Speicher, indem die Zahl in einen 64-Bit-Schwimmkommawert umgewandelt wird und als einzelne Bytes erneut interpretiert wird.

Parameter

offset: number

Versetzt von Beginn der Buffer-Speicher, beginnend von 0.

value: number

Eine doppelte Präzisionsschwimmkomma-Zahl.

Rückgaben

void

readstring

Lädt eine Zeichenkette von Länge count aus dem Speicher auf der angegebenen offset .

Parameter

offset: number

Versetzt von Beginn der Buffer-Speicher, beginnend von 0.

count: number

Länge zu gelesen.

Rückgaben

writestring

void

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

offset: number

Versetzt von Beginn der Buffer-Speicher, beginnend von 0.

value: string

Daten zum Schreiben.

count: number

Anzahl der Bytes, die von der Stringzu nehmen sind. Dieser Wert kann nicht größer als die Zeichenlänge sein.

Rückgaben

void

copy

void

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

target: buffer

Puffer, um Daten einzukopieren.

targetOffset: number

Versetzt von Beginn der Buffer-Speicher, beginnend von 0.

source: buffer

uffer, um die Daten zu nehmen.

sourceOffset: number

Versetzt von Beginn der Buffer-Speicher, beginnend von 0.

Standardwert: 0
count: number

Anzahl der Bytes zu kopieren. Wenn übersprungen, wird die gesamte source Daten, die ab sourceOffset beginnt, kopiert.

Rückgaben

void

fill

void

Setzt count Bytes im Speicher zu offset und value fest.

Parameter

Speicher, um die Daten einzuschreiben.

offset: number

Versetzt von Beginn der Buffer-Speicher, beginnend von 0.

value: number

Eine intellektuelle Zahl in Reichweite [0, 255].

count: number

Anzahl der zu schreibenden Bytes. Wenn übersprungen, werden alle Bytes nach dem angegebenen Offset festlegen.

Rückgaben

void