X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=rebuild-class.hs;h=4afb954b25cd78dcde77a08daeed2f7c87ec423c;hb=907c7d06647c07e3c757a0b1709f1501f2575826;hp=337c5b2f9d95fd94907f270055450e5fa0aff034;hpb=55d6741452443c59d700c01de495f50b56eb6f30;p=hs-java.git diff --git a/rebuild-class.hs b/rebuild-class.hs index 337c5b2..4afb954 100644 --- a/rebuild-class.hs +++ b/rebuild-class.hs @@ -1,17 +1,13 @@ {-# LANGUAGE OverloadedStrings #-} -import Control.Monad -import Data.Array import Data.Binary import System.Environment import qualified Data.ByteString.Lazy as B -import Text.Printf import qualified Data.Map as M -import JVM.Types +import JVM.Common import JVM.ClassFile import JVM.Converter -import JVM.Assembler import JVM.Dump main = do @@ -19,10 +15,10 @@ main = do case args of [clspath,outpath] -> do cls <- parseClassFile clspath - clsfile <- decodeFile clspath :: IO (Class Pointers) + clsfile <- decodeFile clspath :: IO (Class File) dumpClass cls putStrLn $ "Source pool:\n" ++ showListIx (M.elems $ constsPool clsfile) - let result = classFile cls + let result = classDirect2File cls putStrLn $ "Result pool:\n" ++ showListIx (M.elems $ constsPool result) B.writeFile outpath (encodeClass cls)