Ka-Pi

A JVM Bytecode Manipulation Framework inspired by ASM.

Ka-Pi, known as coffee pronounced in Min Nan, which has multiple usages and an indispensable place in not only modern society, but also computer science.

Features

Ka-Pi offers several essential modules relates to JVM ecosystem:

Basic usages

Parse class file

```rust use kapi::asm::parse::readclass; use ka_pi::error::KapiResult;

fn main() -> KapiResult<()> { let classpath = "compiledsource/out/production/compiledsource/Main.class"; let classtree = readclass(classpath)?;

println!("{:#?}", class_tree);

Ok(())

} ```

Implementation Status

asm

parse

Class structure parsing

See also

There are other related jvm projects developed by me may help the production of JVM projects along with Ka-Pi: - frape - A direct interop bridge between Rust and Java reflection library in low communication cost. (No releases yet.) - jars - A simple jar extraction library.

Author

Kyle Lin (ChAoS-UnItY)

License

Copyright © 2023, Kyle Lin (ChAoS-UnItY). Released under the MIT License.