Copyright | (c) Christian Gram Kalhauge 2017 |
---|---|
License | MIT |
Maintainer | kalhuage@cs.ucla.edu |
Safe Haskell | None |
Language | Haskell2010 |
The class file is described in this module.
Synopsis
- data ClassFile r = ClassFile {
- cMagicNumber :: !Word32
- cMinorVersion :: !Word16
- cMajorVersion :: !Word16
- cConstantPool :: !(Choice (ConstantPool r) () r)
- cAccessFlags' :: !(BitSet16 CAccessFlag)
- cThisClass :: !(Ref ClassName r)
- cSuperClass :: !(Ref ClassName r)
- cInterfaces :: !(SizedList16 (Ref ClassName r))
- cFields' :: !(SizedList16 (Field r))
- cMethods' :: !(SizedList16 (Method r))
- cAttributes :: !(Attributes ClassAttributes r)
- cAccessFlags :: ClassFile r -> Set CAccessFlag
- cFields :: ClassFile r -> [Field r]
- cMethods :: ClassFile r -> [Method r]
- cSignature :: ClassFile High -> Maybe (Signature High)
- cEnclosingMethod :: ClassFile High -> Maybe (EnclosingMethod High)
- cInnerClasses :: ClassFile High -> [InnerClass High]
- data ClassAttributes r = ClassAttributes {
- caBootstrapMethods :: [BootstrapMethods r]
- caSignature :: [Signature r]
- caEnclosingMethod :: [EnclosingMethod r]
- caInnerClasses :: [InnerClasses r]
- caVisibleAnnotations :: [RuntimeVisibleAnnotations r]
- caInvisibleAnnotations :: [RuntimeInvisibleAnnotations r]
- caVisibleTypeAnnotations :: [RuntimeVisibleTypeAnnotations ClassTypeAnnotation r]
- caInvisibleTypeAnnotations :: [RuntimeInvisibleTypeAnnotations ClassTypeAnnotation r]
- caOthers :: [Attribute r]
- emptyClassAttributes :: ClassAttributes High
- cBootstrapMethods :: ClassFile High -> [BootstrapMethod High]
Documentation
ClassFile | |
|
Instances
cAccessFlags :: ClassFile r -> Set CAccessFlag Source #
Get the set of access flags
cEnclosingMethod :: ClassFile High -> Maybe (EnclosingMethod High) Source #
cInnerClasses :: ClassFile High -> [InnerClass High] Source #
Attributes
data ClassAttributes r Source #
Instances
cBootstrapMethods :: ClassFile High -> [BootstrapMethod High] Source #