Байты
пакет hl
Доступно в hl
Статические методы
staticinlinefromAddress(h:Int64):Bytes
Создаёт указатель по заданному адресу памяти (очень небезопасно)
staticinlinefromBytes(bytes:Bytes):Bytes
staticfromValue(v:Dynamic, length:Ref<Int>):Bytes
staticinlinegetArray<T>(a:Array<T>):Bytes
Получает ссылку на байты из массива базовых типов (копирование не происходит)
Методы
address():Int64
Возвращает значение адреса байтов. В 32-битной системе верхние 32 бита всегда будут 0
blit(pos:Int, src:Bytes, srcPos:Int, len:Int):Void
compare(pos:Int, bytes:Bytes, bytesPos:Int, size:Int):Int
compare16(bytes:Bytes, size:Int):Int
fill(pos:Int, size:Int, v:Int):Void
find(pos:Int, size:Int, bytes:Bytes, bytesPos:Int, bytesSize:Int):Int
inlinegetF32(pos:Int):F32
inlinegetF64(pos:Int):Float
inlinegetI32(pos:Int):Int
inlinegetUI16(pos:Int):Int
inlinegetUI8(pos:Int):Int
offset(delta:Int):Bytes
Обратите внимание, что вам необходимо сохранить исходные несмещённые байты, чтобы они не были удалены сборщиком мусора, если указатель не был выделен сборщиком мусора.
parseFloat(pos:Int, size:Int):Float
parseInt(pos:Int, size:Int):Null<Int>
inlinesetF32(pos:Int, value:F32):Void
inlinesetF64(pos:Int, value:Float):Void
inlinesetI32(pos:Int, value:Int):Void
inlinesetUI16(pos:Int, v:Int):Void
inlinesetUI8(pos:Int, value:Int):Int
sortF64(pos:Int, length:Int, f:(Float, Float) ‑> Int):Void
sortI32(pos:Int, length:Int, f:(Int, Int) ‑> Int):Void
sub(pos:Int, size:Int):Bytes
subtract(other:Bytes):Int
Возвращает смещение между двумя указателями. Это может привести к переполнению в 64 битах, если адреса двух указателей отличаются более чем на 4 ГБ
inlinetoBytes(len:Int):Bytes
ucs2Length(bytePos:Int):Int
utf16ToUtf8(len:Int, outSize:Ref<Int>):Bytes
utf8ToUtf16(bytePos:Int, outSize:Ref<Int>):Bytes
© 2005–2020 Haxe Foundation
Licensed under a MIT license.
https://api.haxe.org/hl/Bytes.html