appledouble: initial commit, extracted from ad-decoder
The codec module (src/appledouble.rs) lifted verbatim from ad-decoder's working tree at extraction time — including its uncommitted entry-ID constant additions — with only the crate-level docs rewritten. 17 in-module tests carried over and green. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
17
README.md
Normal file
17
README.md
Normal file
@@ -0,0 +1,17 @@
|
||||
# appledouble
|
||||
|
||||
AppleSingle/AppleDouble container codec: exhaustive parse, lossless build.
|
||||
|
||||
Extracted from [ad-decoder] as a shared crate. Entries decode into a
|
||||
`BTreeMap<u32, Vec<u8>>` with typed views over Real Name (3), Comment (4),
|
||||
File Dates (8), Finder Info (9), and Macintosh File Info (10) — everything
|
||||
else is preserved as raw bytes, so parse → build round trips are lossless
|
||||
even for entry types this crate has no opinion about. The macOS `ATTR`
|
||||
extension (arbitrary xattrs packed after Finder Info) is parsed and rebuilt.
|
||||
|
||||
Consumers:
|
||||
- **ad-decoder** — assertive (non-obliterative) sidecar folding onto APFS
|
||||
- **adx** — AS/AD inspection and editing
|
||||
- **fsinspect** — FUSE-side AppleDouble synthesis for Linux EA recovery
|
||||
|
||||
[ad-decoder]: https://code.movq.us/movq/ad-decoder
|
||||
Reference in New Issue
Block a user