Repository navigation
librle(PackBits RLE の WAL)と圧縮共通 API conde を追加 - #144
Merged
Merged
Conversation
- foundation/include/foundation/conde.h: common API for compression libraries (cpt_<algo>_compress/decompress/compress_bound, CONDE_* codes) - foundation/lib/rle: word-wise PackBits WAL "rle" 1.0, /lib/rle.1.wal - lzma follows conde: CPT_LZMA_* aliases, cpt_lzma_compress_bound, ABI 1.1 - tests in foundation/tests/rle, disk image check, README and MEMORY.md Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01UDsnzoHQdxS5iCeCurShAt
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Requested by src3453 · project thread
Closes #142
概要
foundation/include/foundation/conde.hに定義。cpt_<algo>_compress/_decompress/_compress_boundとステータスコードCONDE_*。今後の圧縮ライブラリもこれに従う。foundation/lib/rle: PackBits 形式の WAL「rle」ABI 1.0。ラン検出・コピー・埋め込みを 4 byte 単位で行い、heap・libfnd・作業領域を使わない。/lib/rle.1.wal(約 10 KB)として既定ディスクに入る。CPT_LZMA_*は別名で互換、cpt_lzma_compress_boundを追加し ABI 1.1)。検証
python3 -m unittest foundation.tests.rle.test_rle(5 件): ホストは独立実装の PackBits 展開器との突き合わせ・容量不足・不正ストリーム、ゲストは rle と lzma を同時 import して -O1/-O2 × scalar/pipeline で往復。foundation/tests/lzma(3 件)、foundation/tests/disk(7 件、/lib/rle.1.walの存在を追加)も成功。clang-20 + llvmlite 0.46 で実行。Generated by Claude Code