h2jvm
Safe HaskellNone
LanguageGHC2021

JVM.Data.Raw.ClassFile

Synopsis

Documentation

data ClassFile Source #

Low level representation of the class file format. This is the closest representation to the actual format of the class file, that makes only a few compromises for convenience, such as omitting the explicit x_count fields, instead calculating them from the length of the corresponding vectors. This has the added bonus of making it impossible to construct an invalid class file (in this regard anyway)

Instances

Instances details
Show ClassFile Source # 
Instance details

Defined in JVM.Data.Raw.ClassFile

WriteBinary ClassFile Source # 
Instance details

Defined in JVM.Data.Raw.ClassFile

data FieldInfo Source #

Instances

Instances details
Show FieldInfo Source # 
Instance details

Defined in JVM.Data.Raw.ClassFile

WriteBinary FieldInfo Source # 
Instance details

Defined in JVM.Data.Raw.ClassFile

data AttributeInfo Source #

Constructors

AttributeInfo 

Instances

Instances details
Show AttributeInfo Source # 
Instance details

Defined in JVM.Data.Raw.ClassFile

WriteBinary AttributeInfo Source # 
Instance details

Defined in JVM.Data.Raw.ClassFile

data StackMapFrame Source #

The stack map frame types are defined as follows: > union stack_map_frame { > same_frame; > same_locals_1_stack_item_frame; > same_locals_1_stack_item_frame_extended; > chop_frame; > same_frame_extended; > append_frame; > full_frame; >}

Constructors

SameFrame U1

0-63

SameLocals1StackItemFrame VerificationTypeInfo U1
      same_locals_1_stack_item_frame {
         u1 frame_type = SAME_LOCALS_1_STACK_ITEM; /* 64-127 */
         verification_type_info stack[1];
     }
SameLocals1StackItemFrameExtended VerificationTypeInfo U2 
SameFrameExtended U2 
ChopFrame U1 U2 
AppendFrame (Vector VerificationTypeInfo) U2 
FullFrame (Vector VerificationTypeInfo) (Vector VerificationTypeInfo) U2 

Instances

Instances details
Show StackMapFrame Source # 
Instance details

Defined in JVM.Data.Raw.ClassFile

data MethodInfo Source #

Instances

Instances details
Show MethodInfo Source # 
Instance details

Defined in JVM.Data.Raw.ClassFile

WriteBinary MethodInfo Source # 
Instance details

Defined in JVM.Data.Raw.ClassFile

putAttribute :: Attribute -> Put Source #

Puts the attribute data. This must not include length or name, just the actual value