Expand description
Neo N3 NEF inspection, disassembly, and decompilation tooling.
This crate provides a well-tested toolkit for parsing NEF containers, decoding Neo VM bytecode, building CFG/SSA views, and rendering both high-level and C#-style outputs. It exposes the same core engine used by the CLI binary in this repository, so library and command-line workflows stay aligned.
Re-exports§
pub use crate::decompiler::analysis::call_graph::CallEdge;pub use crate::decompiler::analysis::call_graph::CallGraph;pub use crate::decompiler::analysis::call_graph::CallTarget;pub use crate::decompiler::analysis::types::MethodTypes;pub use crate::decompiler::analysis::types::TypeInfo;pub use crate::decompiler::analysis::types::ValueType;pub use crate::decompiler::analysis::xrefs::MethodXrefs;pub use crate::decompiler::analysis::xrefs::SlotKind;pub use crate::decompiler::analysis::xrefs::SlotXref;pub use crate::decompiler::analysis::xrefs::Xrefs;pub use crate::decompiler::analysis::MethodRef;pub use crate::decompiler::cfg::ssa::DominanceInfo;pub use crate::decompiler::cfg::ssa::PhiNode;pub use crate::decompiler::cfg::ssa::SsaBlock;pub use crate::decompiler::cfg::ssa::SsaConversion;pub use crate::decompiler::cfg::ssa::SsaExpr;pub use crate::decompiler::cfg::ssa::SsaForm;pub use crate::decompiler::cfg::ssa::SsaStats;pub use crate::decompiler::cfg::ssa::SsaStmt;pub use crate::decompiler::cfg::ssa::SsaVariable;pub use crate::decompiler::cfg::BasicBlock;pub use crate::decompiler::cfg::BlockId;pub use crate::decompiler::cfg::Cfg;pub use crate::decompiler::cfg::CfgBuilder;pub use crate::decompiler::cfg::Edge;pub use crate::decompiler::cfg::EdgeKind;pub use crate::decompiler::cfg::Terminator;pub use crate::decompiler::Decompilation;pub use crate::decompiler::Decompiler;pub use crate::decompiler::OutputFormat;pub use crate::disassembler::Disassembler;pub use crate::disassembler::UnknownHandling;pub use crate::error::Error;pub use crate::error::Result;pub use crate::instruction::Instruction;pub use crate::instruction::OpCode;pub use crate::instruction::Operand;pub use crate::manifest::ContractManifest;pub use crate::manifest::ManifestAbi;pub use crate::manifest::ManifestFeatures;pub use crate::manifest::ManifestMethod;pub use crate::nef::MethodToken;pub use crate::nef::NefFile;pub use crate::nef::NefHeader;pub use crate::nef::NefParser;
Modules§
- cli
- Command line interface for inspecting and decompiling Neo N3 NEF files.
- decompiler
- High-level decompilation pipeline shared by the library and CLI. Parses NEF, disassembles bytecode, lifts control flow, and renders text/C#.
- disassembler
- Stateless Neo VM bytecode decoder used by the decompiler and CLI. Converts raw byte buffers into structured instructions with operands.
- error
- Error types returned by the library.
- instruction
- Neo VM instruction and operand types.
- manifest
- Neo N3 contract manifest parsing and helpers.
- native_
contracts - Lookup information for Neo native contracts.
- nef
- Neo N3 NEF container parsing and helpers.
- syscalls
- Lookup table for Neo N3 syscall metadata.
- web
- Browser-friendly reports and optional WebAssembly bindings.