< prev index next >

src/hotspot/share/prims/jvmtiClassFileReconstituter.hpp

Print this page




 101   void write_method_info(const methodHandle& method);
 102   void write_code_attribute(const methodHandle& method);
 103   void write_exceptions_attribute(ConstMethod* const_method);
 104   void write_synthetic_attribute();
 105   void write_class_attributes();
 106   void write_source_file_attribute();
 107   void write_source_debug_extension_attribute();
 108   u2 line_number_table_entries(const methodHandle& method);
 109   void write_line_number_table_attribute(const methodHandle& method, u2 num_entries);
 110   void write_local_variable_table_attribute(const methodHandle& method, u2 num_entries);
 111   void write_local_variable_type_table_attribute(const methodHandle& method, u2 num_entries);
 112   void write_stackmap_table_attribute(const methodHandle& method, int stackmap_table_len);
 113   u2 inner_classes_attribute_length();
 114   void write_inner_classes_attribute(int length);
 115   void write_signature_attribute(u2 generic_signaure_index);
 116   void write_attribute_name_index(const char* name);
 117   void write_annotations_attribute(const char* attr_name, AnnotationArray* annos);
 118   void write_bootstrapmethod_attribute();
 119   void write_nest_host_attribute();
 120   void write_nest_members_attribute();

 121 
 122   address writeable_address(size_t size);
 123   void write_u1(u1 x);
 124   void write_u2(u2 x);
 125   void write_u4(u4 x);
 126   void write_u8(u8 x);
 127 
 128  public:
 129   // Calls to this constructor must be proceeded by a ResourceMark
 130   // and a HandleMark
 131   JvmtiClassFileReconstituter(InstanceKlass* ik) :
 132                                       JvmtiConstantPoolReconstituter(ik) {
 133     _buffer_size = initial_buffer_size;
 134     _buffer = _buffer_ptr = NEW_RESOURCE_ARRAY(u1, _buffer_size);
 135     _thread = Thread::current();
 136     write_class_file_format();
 137   };
 138 
 139   size_t class_file_size()    { return _buffer_ptr - _buffer; }
 140 


 101   void write_method_info(const methodHandle& method);
 102   void write_code_attribute(const methodHandle& method);
 103   void write_exceptions_attribute(ConstMethod* const_method);
 104   void write_synthetic_attribute();
 105   void write_class_attributes();
 106   void write_source_file_attribute();
 107   void write_source_debug_extension_attribute();
 108   u2 line_number_table_entries(const methodHandle& method);
 109   void write_line_number_table_attribute(const methodHandle& method, u2 num_entries);
 110   void write_local_variable_table_attribute(const methodHandle& method, u2 num_entries);
 111   void write_local_variable_type_table_attribute(const methodHandle& method, u2 num_entries);
 112   void write_stackmap_table_attribute(const methodHandle& method, int stackmap_table_len);
 113   u2 inner_classes_attribute_length();
 114   void write_inner_classes_attribute(int length);
 115   void write_signature_attribute(u2 generic_signaure_index);
 116   void write_attribute_name_index(const char* name);
 117   void write_annotations_attribute(const char* attr_name, AnnotationArray* annos);
 118   void write_bootstrapmethod_attribute();
 119   void write_nest_host_attribute();
 120   void write_nest_members_attribute();
 121   void write_permitted_subtypes_attribute();
 122 
 123   address writeable_address(size_t size);
 124   void write_u1(u1 x);
 125   void write_u2(u2 x);
 126   void write_u4(u4 x);
 127   void write_u8(u8 x);
 128 
 129  public:
 130   // Calls to this constructor must be proceeded by a ResourceMark
 131   // and a HandleMark
 132   JvmtiClassFileReconstituter(InstanceKlass* ik) :
 133                                       JvmtiConstantPoolReconstituter(ik) {
 134     _buffer_size = initial_buffer_size;
 135     _buffer = _buffer_ptr = NEW_RESOURCE_ARRAY(u1, _buffer_size);
 136     _thread = Thread::current();
 137     write_class_file_format();
 138   };
 139 
 140   size_t class_file_size()    { return _buffer_ptr - _buffer; }
 141 
< prev index next >