feat: parse the entire classfile

This commit is contained in:
vegowotenks 2025-07-12 23:38:43 +02:00
parent f9fbedc87a
commit d692c3a6c0
5 changed files with 77 additions and 5 deletions

View file

@ -1,9 +1,11 @@
{-# LANGUAGE DerivingVia #-}
{-# LANGUAGE DeriveGeneric #-}
module Language.Java.Classfile (Classfile(..)) where
import GHC.Generics (Generic, Generically(Generically))
import Language.Java.Classfile.Version (Version)
import Language.Java.Classfile.Magic (Magic)
import GHC.Generics (Generic, Generically(Generically))
import Language.Java.Classfile.Extractable (Extractable)
import Language.Java.Classfile.ConstantPool (ConstantPool)
import Language.Java.Classfile.Flags (Flags)
@ -11,6 +13,9 @@ import Language.Java.Classfile.ClassFlag (ClassFlag)
import Language.Java.Classfile.ConstantPool.References (ClassReference)
import Language.Java.Classfile.Interfaces (Interfaces)
import Language.Java.Classfile.Fields (Fields)
import Language.Java.Classfile.Methods (Methods)
import Language.Java.Classfile.Attributes (Attributes)
data Classfile = Classfile
{ magic :: Magic
@ -21,6 +26,8 @@ data Classfile = Classfile
, super :: ClassReference
, interfaces :: Interfaces
, fields :: Fields
, methods :: Methods
, attributes :: Attributes
}
deriving stock (Show, Generic)
deriving Extractable via Generically Classfile