module Language.JVM
( decodeClassFile
, module Language.JVM.Attribute
, module Language.JVM.ClassFile
, module Language.JVM.Constant
, module Language.JVM.Field
, module Language.JVM.Method
) where
import qualified Data.ByteString.Lazy as BL
import Data.Binary
import Language.JVM.Attribute
import Language.JVM.ClassFile
import Language.JVM.Constant
import Language.JVM.Field
import Language.JVM.Method
decodeClassFile :: BL.ByteString -> Either String ClassFile
decodeClassFile bs = do
case decodeOrFail bs of
Right (_, _, cf) -> Right cf
Left (_, _, msg) -> Left msg