1 {-# LANGUAGE OverloadedStrings #-}
3 import System.Environment
4 import qualified Data.ByteString.Lazy as B
6 import Data.BinaryState
15 cls <- decompileFile clspath
19 forM_ (methods cls) $ \m -> do
21 B.putStrLn (methodName m)
22 case attrByName m "Code" of
23 Nothing -> putStrLn "(no code)\n"
24 Just bytecode -> let code = decodeS (0 :: Integer) bytecode
25 in forM_ (codeInstructions code) $ \i -> do
29 _ -> error "Synopsis: disassemble File.class"