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.
- data ClassFile = ClassFile {
- cMagicNumber :: !Word32
- cMinorVersion :: !Word16
- cMajorVersion :: !Word16
- cConstantPool :: !ConstantPool
- cAccessFlags :: BitSet16 CAccessFlag
- cThisClassIndex :: !ConstantRef
- cSuperClassIndex :: !ConstantRef
- cInterfaces' :: SizedList16 ConstantRef
- cFields' :: SizedList16 Field
- cMethods' :: SizedList16 Method
- cAttributes' :: SizedList16 Attribute
- cInterfaces :: ClassFile -> [ConstantRef]
- cFields :: ClassFile -> [Field]
- cMethods :: ClassFile -> [Method]
- cAttributes :: ClassFile -> [Attribute]
- cThisClass :: ConstantPool -> ClassFile -> Maybe Text
- cSuperClass :: ConstantPool -> ClassFile -> Maybe Text
- cBootstrapMethods :: ConstantPool -> ClassFile -> Maybe (Either String BootstrapMethods)
Documentation
cInterfaces :: ClassFile -> [ConstantRef] Source #
Get a list of ConstantRef
s to interfaces.
cThisClass :: ConstantPool -> ClassFile -> Maybe Text Source #
Lookup the this class in a ConstantPool
cSuperClass :: ConstantPool -> ClassFile -> Maybe Text Source #
Lookup the super class in the ConstantPool
Attributes
cBootstrapMethods :: ConstantPool -> ClassFile -> Maybe (Either String BootstrapMethods) Source #
Fetch the BootstrapMethods
attribute.
There can only one be one exceptions attribute on a class-file.