Skip to main content

roundtrip

Function roundtrip 

Source
pub fn roundtrip(input: &Path, output: &Path) -> Result<()>
Expand description

Run the round-trip pipeline on input, write the result to output, and verify byte-equality with the input.

The pipeline routes by detected format:

  • ELF64-LE is parsed via ud_format::elf::Elf64File and re-emitted. This actually exercises the format reader/writer, so any drift in either path is caught here.
  • Anything else (32-bit ELF, PE, Mach-O, raw bytes) falls through to a byte-copy. The round-trip contract still holds — it’s just the trivial identity until we grow support.

The shape of this function will not change as later phases replace pipeline_bytes with real decompile-then-compile logic. The contract is “input bytes equal output bytes or you get an error”, forever.