< prev index next >

src/hotspot/share/prims/jvmtiClassFileReconstituter.hpp

Print this page

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

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

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