-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Decompiler Bytecode Java -- -- A serializer and deserializer of Jvm classfile format. @package dbjava @version 1.7 module Jvm.Data.ClassFormat data ClassFile ClassFile :: Magic -> MinorVersion -> MajorVersion -> ConstantPool_Count -> CP_Infos -> AccessFlags -> ThisClass -> SuperClass -> Interfaces_Count -> Interfaces -> Fields_Count -> Field_Infos -> Methods_Count -> Method_Infos -> Attributes_Count -> Attribute_Infos -> ClassFile magic :: ClassFile -> Magic minver :: ClassFile -> MinorVersion maxver :: ClassFile -> MajorVersion count_cp :: ClassFile -> ConstantPool_Count array_cp :: ClassFile -> CP_Infos acfg :: ClassFile -> AccessFlags this :: ClassFile -> ThisClass super :: ClassFile -> SuperClass count_interfaces :: ClassFile -> Interfaces_Count array_interfaces :: ClassFile -> Interfaces count_fields :: ClassFile -> Fields_Count array_fields :: ClassFile -> Field_Infos count_methods :: ClassFile -> Methods_Count array_methods :: ClassFile -> Method_Infos count_attributes :: ClassFile -> Attributes_Count array_attributes :: ClassFile -> Attribute_Infos type CP_Infos = [CP_Info] type Interfaces = [Interface] type Field_Infos = [Field_Info] type Method_Infos = [Method_Info] type Attribute_Infos = [Attribute_Info] data Magic Magic :: Magic data MinorVersion MinorVersion :: Int -> MinorVersion numMinVer :: MinorVersion -> Int data MajorVersion MajorVersion :: Int -> MajorVersion numMaxVer :: MajorVersion -> Int data CP_Info Class_Info :: Tag -> Index_Constant_Pool -> String -> CP_Info tag_cp :: CP_Info -> Tag index_cp :: CP_Info -> Index_Constant_Pool desc :: CP_Info -> String FieldRef_Info :: Tag -> Index_Constant_Pool -> Index_Constant_Pool -> String -> CP_Info tag_cp :: CP_Info -> Tag index_name_cp :: CP_Info -> Index_Constant_Pool index_nameandtype_cp :: CP_Info -> Index_Constant_Pool desc :: CP_Info -> String MethodRef_Info :: Tag -> Index_Constant_Pool -> Index_Constant_Pool -> String -> CP_Info tag_cp :: CP_Info -> Tag index_name_cp :: CP_Info -> Index_Constant_Pool index_nameandtype_cp :: CP_Info -> Index_Constant_Pool desc :: CP_Info -> String InterfaceMethodRef_Info :: Tag -> Index_Constant_Pool -> Index_Constant_Pool -> String -> CP_Info tag_cp :: CP_Info -> Tag index_name_cp :: CP_Info -> Index_Constant_Pool index_nameandtype_cp :: CP_Info -> Index_Constant_Pool desc :: CP_Info -> String String_Info :: Tag -> Index_Constant_Pool -> String -> CP_Info tag_cp :: CP_Info -> Tag index_cp :: CP_Info -> Index_Constant_Pool desc :: CP_Info -> String Integer_Info :: Tag -> Int -> String -> CP_Info tag_cp :: CP_Info -> Tag numi_cp :: CP_Info -> Int desc :: CP_Info -> String Float_Info :: Tag -> Float -> String -> CP_Info tag_cp :: CP_Info -> Tag numf_cp :: CP_Info -> Float desc :: CP_Info -> String Long_Info :: Tag -> Int -> Int -> String -> CP_Info tag_cp :: CP_Info -> Tag numi_l1_cp :: CP_Info -> Int numi_l2_cp :: CP_Info -> Int desc :: CP_Info -> String Double_Info :: Tag -> Int -> Int -> String -> CP_Info tag_cp :: CP_Info -> Tag numi_d1_cp :: CP_Info -> Int numi_d2_cp :: CP_Info -> Int desc :: CP_Info -> String NameAndType_Info :: Tag -> Index_Constant_Pool -> Index_Constant_Pool -> String -> CP_Info tag_cp :: CP_Info -> Tag index_name_cp :: CP_Info -> Index_Constant_Pool index_descr_cp :: CP_Info -> Index_Constant_Pool desc :: CP_Info -> String Utf8_Info :: Tag -> Int -> String -> String -> CP_Info tag_cp :: CP_Info -> Tag tam_cp :: CP_Info -> Int cad_cp :: CP_Info -> String desc :: CP_Info -> String data Tag TagClass :: Tag TagFieldRef :: Tag TagMethodRef :: Tag TagInterfaceMethodRef :: Tag TagString :: Tag TagInteger :: Tag TagFloat :: Tag TagLong :: Tag TagDouble :: Tag TagNameAndType :: Tag TagUtf8 :: Tag data AccessFlags AccessFlags :: [Int] -> AccessFlags acc_Public :: Int acc_Private :: Int acc_Protected :: Int acc_Static :: Int acc_Final :: Int acc_Super_Synchronized :: Int acc_Volatile_Bridge :: Int acc_Transient_Varargs :: Int acc_Native :: Int acc_Interface :: Int acc_Abstract :: Int acc_Strict :: Int acc_Synthetic :: Int acc_Annotation :: Int acc_Enum :: Int data ThisClass ThisClass :: Index_Constant_Pool -> ThisClass index_th :: ThisClass -> Index_Constant_Pool data SuperClass SuperClass :: Index_Constant_Pool -> SuperClass index_sp :: SuperClass -> Index_Constant_Pool data Interface Interface :: Index_Constant_Pool -> Interface index_if :: Interface -> Index_Constant_Pool data Field_Info Field_Info :: AccessFlags -> Index_Constant_Pool -> Index_Constant_Pool -> Int -> Attribute_Infos -> Field_Info af_fi :: Field_Info -> AccessFlags index_name_fi :: Field_Info -> Index_Constant_Pool index_descr_fi :: Field_Info -> Index_Constant_Pool tam_fi :: Field_Info -> Int array_attr_fi :: Field_Info -> Attribute_Infos data Method_Info Method_Info :: AccessFlags -> Index_Constant_Pool -> Index_Constant_Pool -> Int -> Attribute_Infos -> Method_Info af_mi :: Method_Info -> AccessFlags index_name_mi :: Method_Info -> Index_Constant_Pool index_descr_mi :: Method_Info -> Index_Constant_Pool tam_mi :: Method_Info -> Int array_attr_mi :: Method_Info -> Attribute_Infos data Attribute_Info AttributeGeneric :: Index_Constant_Pool -> Int -> ByteString -> Attribute_Info index_name_attr :: Attribute_Info -> Index_Constant_Pool tam_len_attr :: Attribute_Info -> Int rest_attr :: Attribute_Info -> ByteString AttributeConstantValue :: Index_Constant_Pool -> Int -> Index_Constant_Pool -> Attribute_Info index_name_attr :: Attribute_Info -> Index_Constant_Pool tam_attr :: Attribute_Info -> Int index_value_attr :: Attribute_Info -> Index_Constant_Pool AttributeCode :: Index_Constant_Pool -> Int -> Int -> Int -> Int -> ListaInt -> Int -> Tupla4Int -> Int -> Attribute_Infos -> Attribute_Info index_name_attr :: Attribute_Info -> Index_Constant_Pool tam_len_attr :: Attribute_Info -> Int len_stack_attr :: Attribute_Info -> Int len_local_attr :: Attribute_Info -> Int tam_code_attr :: Attribute_Info -> Int array_code_attr :: Attribute_Info -> ListaInt tam_ex_attr :: Attribute_Info -> Int array_ex_attr :: Attribute_Info -> Tupla4Int tam_atrr_attr :: Attribute_Info -> Int array_attr_attr :: Attribute_Info -> Attribute_Infos AttributeExceptions :: Index_Constant_Pool -> Int -> Int -> [Int] -> Attribute_Info index_name_attr :: Attribute_Info -> Index_Constant_Pool tam_len_attr :: Attribute_Info -> Int tam_num_ex_attr :: Attribute_Info -> Int exception_index_table :: Attribute_Info -> [Int] AttributeInnerClasses :: Index_Constant_Pool -> Int -> Int -> [(Int, Int, Int, AccessFlags)] -> Attribute_Info index_name_attr :: Attribute_Info -> Index_Constant_Pool tam_len_attr :: Attribute_Info -> Int tam_classes :: Attribute_Info -> Int array_classes :: Attribute_Info -> [(Int, Int, Int, AccessFlags)] AttributeSynthetic :: Index_Constant_Pool -> Int -> Attribute_Info index_name_attr :: Attribute_Info -> Index_Constant_Pool tam_len_attr :: Attribute_Info -> Int AttributeSourceFile :: Index_Constant_Pool -> Int -> Index_Constant_Pool -> Attribute_Info index_name_attr :: Attribute_Info -> Index_Constant_Pool tam_len_attr :: Attribute_Info -> Int index_src_attr :: Attribute_Info -> Index_Constant_Pool AttributeLineNumberTable :: Index_Constant_Pool -> Int -> Int -> Tupla2Int -> Attribute_Info index_name_attr :: Attribute_Info -> Index_Constant_Pool tam_len_attr :: Attribute_Info -> Int tam_table_attr :: Attribute_Info -> Int array_line_attr :: Attribute_Info -> Tupla2Int AttributeLocalVariableTable :: Index_Constant_Pool -> Int -> Int -> Tupla5Int -> Attribute_Info index_name_attr :: Attribute_Info -> Index_Constant_Pool tam_len_attr :: Attribute_Info -> Int tam__table_attr :: Attribute_Info -> Int array_var_attr :: Attribute_Info -> Tupla5Int AttributeDeprecated :: Index_Constant_Pool -> Int -> Attribute_Info index_name_attr :: Attribute_Info -> Index_Constant_Pool tam_len_attr :: Attribute_Info -> Int type Tupla5Int = [(Int, Int, Int, Int, Int)] type Tupla2Int = [(Int, Int)] type Tupla4Int = [(Int, Int, Int, Int)] type ListaInt = [Int] type ConstantPool_Count = Int type Interfaces_Count = Int type Fields_Count = Int type Methods_Count = Int type Attributes_Count = Int type Index_Constant_Pool = Int instance Show Magic instance Show MinorVersion instance Show MajorVersion instance Show Tag instance Show AccessFlags instance Show Attribute_Info instance Show Method_Info instance Show Field_Info instance Show Interface instance Show SuperClass instance Show ThisClass instance Show CP_Info instance Show ClassFile module Jvm.BinaryClass type Tupla5Int = [(Int, Int, Int, Int, Int)] type Tupla2Int = [(Int, Int)] type Tupla4Int = [(Int, Int, Int, Int)] type ListaInt = [Int] type ConstantPool_Count = Int type Interfaces_Count = Int type Fields_Count = Int type Methods_Count = Int type Attributes_Count = Int type Index_Constant_Pool = Int (.+.) :: Int -> Int -> Int bitsSet :: Int -> Int -> Bool toInt64 :: Int -> Int64 fromWord162Int :: Word16 -> Int fromWord82Int :: Word8 -> Int fromWord322Int :: Word32 -> Int fromWord322Float :: Word32 -> Float fromInt2Word8 :: Int -> Word8 fromInt2Word16 :: Int -> Word16 fromInt2Word32 :: Int -> Word32 fromFloat2Word32 :: Float -> Word32 getMany :: Binary a => Int -> Get [a] getNameCP_Utf8 :: Int -> CP_Infos -> String fChgAttr :: CP_Infos -> Attribute_Info -> Attribute_Info chgAttrG_Fields :: ClassFile -> ClassFile chgAttrG_Methods :: ClassFile -> ClassFile chgAttrG_ClassFile :: ClassFile -> ClassFile encodeClassFile :: FilePath -> ClassFile -> IO () decodeClassFile :: FilePath -> IO ClassFile instance Binary Attribute_Info instance Binary Method_Info instance Binary Field_Info instance Binary Interface instance Binary SuperClass instance Binary ThisClass instance Binary AccessFlags instance Binary Tag instance Binary CP_Info instance Binary MajorVersion instance Binary MinorVersion instance Binary Magic instance Binary ClassFile module Jvm.PrettyClass instruction2pp :: [Int] -> Int -> [PP_Doc] toPP :: Int -> PP_Doc fromBytes2Tupla :: [Int] -> [(Int, Int)] toInts :: [Int] -> [Int] fromBytes2Int :: [Int] -> Int (=<<=) :: Int -> Int -> Int (=|=) :: Int -> Int -> Int getSignedInt :: Int -> Int -> Int instance PP Attribute_Info instance PP Method_Info instance PP Field_Info instance PP Interface instance PP SuperClass instance PP ThisClass instance PP AccessFlags instance PP Tag instance PP CP_Info instance PP MajorVersion instance PP MinorVersion instance PP Magic instance PP ClassFile