jdc-core 0.2.1

Machine-neutral decompiler core: IR, CFG structuring, statement conversion, Java emission. Front-end agnostic (JVM class files, DEX, ...).
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
//! Machine-neutral IR: expressions, statements, and the per-block build result.
//!
//! These types are what a front-end produces and what everything in this crate
//! consumes. They describe *Java source*, not any particular bytecode: a
//! `Term::Cond` carries the condition expression, a `SwitchTargets::Table`
//! carries the decoded key range — the machine-specific decoding happened
//! before, in the front-end.

pub mod build;
pub mod expr;
pub mod stmt;

pub use build::{BlockResult, BuildError, SwitchTargets, Term};
pub use expr::{
    AssignOp, BinOp, ConcatPart, ConstVal, Expr, LambdaExpr, LambdaKind, TypeRef, UnOp,
};
pub use stmt::Stmt;