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 code) = decodeS (0 :: Integer) bytecode
27 _ -> error "Synopsis: disassemble File.class"