Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
Spectra integration API for rsleigh.
Provides a unified Decoder interface across all supported architectures,
managing context/global-set lifecycle and returning optimized P-code.
Usage
use rsleigh_api::{Decoder, Architecture};
let mut decoder = Decoder::new(Architecture::X86_64);
let inst = decoder.decode(&[0x48, 0x89, 0xd8], 0x1000).unwrap();
assert_eq!(inst.disassembly, "MOV RAX,RBX");
assert_eq!(inst.len, 3);
Stability
This crate is the stable entry point for embedding rsleigh as a
decoder/lifter. Audit P2 #2: the surface listed below is covered by
semver and changes go through deprecation; everything outside this
list (the rsleigh-decompile analysis crate, the rsleigh-cli
binary, signature/FID heuristics, printer text rewrites) is
experimental and may change without notice.
Stable surface:
- [
Decoder], [Decoder::new], [Decoder::decode], [Decoder::architecture] - [
Architecture] (variants may be added; existing variants stay) - [
Architecture::addr_size], [Architecture::register_name] - Re-exports from
pcode-ir:Instruction,PcodeOp,Varnode,AddressSpaceId,DecodeError
Anything else in this crate (helper functions, internal context
types, generated-crate re-exports) is implementation detail.
rsleigh_decompile::*, rsleigh_decompile::printer::*,
rsleigh_decompile::fold::*, etc. are not covered by this
stability promise — pin a specific patch version if you depend on
their shape.