feat: Reference type family

This commit is contained in:
vegowotenks 2025-07-13 10:08:45 +02:00
parent 00898b18dc
commit e30e3b02e1
2 changed files with 12 additions and 5 deletions

View file

@ -20,7 +20,7 @@ import Language.Java.Classfile.Extractable (Extractable)
import Language.Java.Classfile.ConstantPool (ConstantPool)
import Language.Java.Classfile.Flags (Flags)
import Language.Java.Classfile.ClassFlag (ClassFlag)
import Language.Java.Classfile.ConstantPool.References (ClassReference)
import Language.Java.Classfile.ConstantPool.References (Class)
import Language.Java.Classfile.Interfaces (Interfaces)
import Language.Java.Classfile.Fields (Fields)
import Language.Java.Classfile.Methods (Methods)
@ -33,8 +33,8 @@ data Classfile stage = Classfile
, version :: Version
, constantPool :: ConstantPool stage
, accessFlags :: ClassFlags stage
, this :: ClassReference
, super :: ClassReference
, this :: Class stage
, super :: Class stage
, interfaces :: Interfaces
, fields :: Fields
, methods :: Methods
@ -42,7 +42,7 @@ data Classfile stage = Classfile
}
deriving stock (Generic)
deriving instance (Show (Magic stage), Show (ConstantPool stage), Show (ClassFlags stage)) => Show (Classfile stage)
deriving instance (Show (Magic stage), Show (ConstantPool stage), Show (ClassFlags stage), Show (Class stage)) => Show (Classfile stage)
deriving via Generically (Classfile Parse) instance (Extractable (Classfile Parse))
type ClassFlags :: Stage -> Type