docs(rust): record migrated policy seams
Keep the migration boundary accurate after moving frame-progression dispatch, the decompression no-forward-progress threshold, and compression metadata-transfer selection into Rust. The README now states which scalar inputs Rust owns and which private callbacks, probes, and operations remain in C. Test Plan: - git diff --cached --check - Capped clippy, CLI tests, native build, smoke test, and full upstream suite passed before this documentation-only commit
This commit is contained in:
+10
-5
@@ -68,6 +68,9 @@ zstd ABI:
|
||||
The public end-of-frame path and the `ZSTD_compress2_c` fallback also use
|
||||
Rust-owned orchestration boundaries while C retains the context reset,
|
||||
stream adapter, checksum/epilogue, and trace callbacks.
|
||||
Public frame-progression dispatch is Rust-owned as well; C projects the
|
||||
scalar single-thread inputs and keeps the private MT context behind a
|
||||
callback.
|
||||
- `zstd_compress_params` owns the compression-level tables (formerly
|
||||
`clevels.h`), parameter bounds, clamping, validation, table selection,
|
||||
source/dictionary adjustment, and match-state/CDict size estimation.
|
||||
@@ -119,9 +122,9 @@ zstd ABI:
|
||||
- `zstd_decompress` owns the public decompression context, one-shot,
|
||||
dictionary, parameter, and streaming state machines. Its C shim retains
|
||||
the configuration-dependent context layout and platform details, plus
|
||||
legacy and trace leaves; Rust owns decoder storage allocation, custom
|
||||
memory dispatch, and the `ZSTD_copyDCtx` prefix copy up to the projected
|
||||
`inBuff` field.
|
||||
legacy and trace leaves; Rust owns the no-forward-progress threshold
|
||||
policy, decoder storage allocation, custom memory dispatch, and the
|
||||
`ZSTD_copyDCtx` prefix copy up to the projected `inBuff` field.
|
||||
- Command-line frontend
|
||||
- `zstd_cli` owns the Rust parser, safety policy, and dispatch. It is built
|
||||
by the separate `cli/` static-library package only for program archives,
|
||||
@@ -133,8 +136,10 @@ zstd ABI:
|
||||
optional-format decompression loops, decompression result policy/final
|
||||
accounting, both shared- and separate-destination multi-file compression
|
||||
schedulers, and both shared- and separate-destination decompression
|
||||
schedulers. C retains destination-name construction and the private
|
||||
file/resource/format callbacks for these scheduler boundaries.
|
||||
schedulers. Rust also owns the scalar compression metadata-transfer
|
||||
decision; C retains the private stat probe, metadata operations,
|
||||
destination-name construction, and the private file/resource/format
|
||||
callbacks for these scheduler boundaries.
|
||||
Rust already owns the file preference policy, filename decisions,
|
||||
source/destination opening, dictionary buffers, asynchronous I/O pools,
|
||||
and pass-through copy leaf.
|
||||
|
||||
Reference in New Issue
Block a user