docs(rust): refresh migration boundary
Document the Rust-owned public end-of-frame compression orchestration and both multi-file compression scheduler boundaries, including the C callbacks that remain responsible for private file and codec operations. Test Plan: - git diff --cached --check
This commit is contained in:
+13
-9
@@ -61,8 +61,9 @@ zstd ABI:
|
|||||||
Rust while C retains the private contexts and mutation callbacks.
|
Rust while C retains the private contexts and mutation callbacks.
|
||||||
The public sequence APIs likewise use Rust-owned validation, frame-header,
|
The public sequence APIs likewise use Rust-owned validation, frame-header,
|
||||||
checksum, and output-accounting orchestration around C-owned block state.
|
checksum, and output-accounting orchestration around C-owned block state.
|
||||||
The `ZSTD_compress2_c` fallback also uses a Rust-owned stable-buffer
|
The public end-of-frame path and the `ZSTD_compress2_c` fallback also use
|
||||||
orchestration boundary while C retains the context reset and stream adapter.
|
Rust-owned orchestration boundaries while C retains the context reset,
|
||||||
|
stream adapter, checksum/epilogue, and trace callbacks.
|
||||||
- `zstd_compress_params` owns the compression-level tables (formerly
|
- `zstd_compress_params` owns the compression-level tables (formerly
|
||||||
`clevels.h`), parameter bounds, clamping, validation, table selection,
|
`clevels.h`), parameter bounds, clamping, validation, table selection,
|
||||||
source/dictionary adjustment, and match-state/CDict size estimation.
|
source/dictionary adjustment, and match-state/CDict size estimation.
|
||||||
@@ -118,8 +119,10 @@ zstd ABI:
|
|||||||
asynchronous-pool adapters, metadata, zstd codec/error mapping, and
|
asynchronous-pool adapters, metadata, zstd codec/error mapping, and
|
||||||
adaptive-policy integration, while Rust owns the mixed-format probe/dispatch
|
adaptive-policy integration, while Rust owns the mixed-format probe/dispatch
|
||||||
loop, zstd stream-compression I/O loop, scalar adaptive decisions,
|
loop, zstd stream-compression I/O loop, scalar adaptive decisions,
|
||||||
optional-format decompression loops, and decompression result policy/final
|
optional-format decompression loops, decompression result policy/final
|
||||||
accounting.
|
accounting, and both shared- and separate-destination multi-file
|
||||||
|
compression schedulers. C retains destination-name construction and the
|
||||||
|
private file/resource callbacks for the separate-destination path.
|
||||||
Rust already owns the file preference policy, filename decisions,
|
Rust already owns the file preference policy, filename decisions,
|
||||||
source/destination opening, dictionary buffers, asynchronous I/O pools,
|
source/destination opening, dictionary buffers, asynchronous I/O pools,
|
||||||
and pass-through copy leaf.
|
and pass-through copy leaf.
|
||||||
@@ -134,16 +137,17 @@ zstd ABI:
|
|||||||
|
|
||||||
Dictionary-ingestion dispatch, CCtx dictionary/prefix attachment dispatch, the
|
Dictionary-ingestion dispatch, CCtx dictionary/prefix attachment dispatch, the
|
||||||
CLI zstd compression stream loop, scalar adaptive decisions, and the
|
CLI zstd compression stream loop, scalar adaptive decisions, and the
|
||||||
shared-destination multi-file compression scheduler,
|
shared- and separate-destination multi-file compression schedulers,
|
||||||
single-threaded stream initialization and the buffered/stable stream state
|
single-threaded stream initialization and the buffered/stable stream state
|
||||||
machine, MT stream initialization, MT outer scheduling and flush policy, MT
|
machine, MT stream initialization, MT outer scheduling and flush policy, MT
|
||||||
compression-job stage sequencing and error flow, public sequence-API
|
compression-job stage sequencing and error flow, public sequence-API
|
||||||
orchestration, sequence-store and block policy,
|
orchestration, sequence-store and block policy,
|
||||||
external-sequence/literals block loop, optional-format decompression loops,
|
external-sequence/literals block loop, optional-format decompression loops,
|
||||||
block decoder wrappers, and decompression result policy now run in Rust. CDict
|
block decoder wrappers, decompression result policy, and public end-of-frame
|
||||||
lifecycle, the private dictionary-content loader, reset policy, private
|
compression orchestration now run in Rust. CDict lifecycle, the private
|
||||||
CCtx/matchfinder/workspace operations, and codec/adaptive-policy callbacks
|
dictionary-content loader, reset policy, private CCtx/matchfinder/workspace
|
||||||
remain in C. The remaining C paths must move before the rewrite is complete.
|
operations, and codec/adaptive-policy callbacks remain in C. The remaining C
|
||||||
|
paths must move before the rewrite is complete.
|
||||||
Keeping that boundary explicit prevents a passing hybrid build from being
|
Keeping that boundary explicit prevents a passing hybrid build from being
|
||||||
mistaken for the final all-Rust result.
|
mistaken for the final all-Rust result.
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user