Bounded-memory sequential packer/unpacker for folder trees.
Properties
- hashCode → int
-
The hash code for this object.
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited
Static Methods
-
pack(
{required RandomAccessFile sink, required List< PqPackEntry> entries, int chunkSize = 1 << 20}) → Future<int> -
Writes
entriestosinksequentially. Returns the entry count. -
packStream(
List< PqPackEntry> entries, {int chunkSize = 1 << 20}) → Stream<List< int> > -
Emits
entriesas one sequential pack stream — the streaming counterpart of pack, for piping straight into an AEAD writer so the plaintext pack never exists on disk. Bounded memory: one chunk in flight at a time. -
unpack(
{required RandomAccessFile source, required String outputDirPath, int chunkSize = 1 << 20}) → Future< int> -
Reads a pack from
sourceand materializes each entry underoutputDirPath. Every path is re-validated against traversal. Returns the entry count. -
unpackFromStream(
Stream< Uint8List> source, {required String outputDirPath}) → Future<int> -
Restores a folder tree from a pack
sourcestream (e.g. the authenticated plaintext frames ofPqForgeStreamCipher.decryptStream) underoutputDirPath. Every path is re-validated against traversal.
Constants
- maxPathBytes → const int
- Largest accepted archive path length (defensive bound on untrusted input).