hphp/hack/manual/hsl/Classes/HH.Lib.IO/MemoryHandle/index.md
:::info[Note] This is a point-in-time snapshot of the API documentation from January 2026. Going forward, we will not be maintaining a public copy of these references, and recommend users to refer to the built-in signature helpers available in the Hack LSP instead for complete and up-to-date information. :::
Read from/write to an in-memory buffer
This class is intended for use in unit tests.
namespace HH\Lib\IO;
final class MemoryHandle implements CloseableSeekableReadWriteHandle {...}
->__construct(string $buffer = '', MemoryHandleWriteMode $writeMode = MemoryHandleWriteMode::OVERWRITE)->appendToBuffer(string $data): void->close(): void->closeWhenDisposed(): \IDisposable->getBuffer(): string->readAllowPartialSuccessAsync(?int $max_bytes = NULL, ?int $_timeout_nanos = NULL): Awaitable<string>->readImpl(?int $max_bytes = NULL): string->reset(string $data = ''): void->seek(int $pos): void->tell(): int->writeAllowPartialSuccessAsync(string $data, ?int $timeout_nanos = NULL): Awaitable<int>HH\Lib\IO\WriteHandle)->writeAllAsync(string $bytes, ?int $timeout_ns = NULL): Awaitable<void>HH\Lib\IO\ReadHandle)->readAllAsync(?int $max_bytes = NULL, ?int $timeout_ns = NULL): Awaitable<string>->readFixedSizeAsync(int $size, ?int $timeout_ns = NULL): Awaitable<string>