16#ifndef LIEF_ART_JAVA_STRUCTURES_H
17#define LIEF_ART_JAVA_STRUCTURES_H
61template<
class T = no_brooks_read_barrier_t>
68template<
class T = no_brooks_read_barrier_t>
82 uint32_t access_flags;
83 uint64_t direct_methods;
86 uint64_t virtual_methods;
88 uint32_t clinit_thread_id;
89 int32_t dex_class_def_idx;
91 uint32_t num_direct_methods;
92 uint32_t num_instance_fields;
93 uint32_t num_reference_instance_fields;
94 uint32_t num_reference_static_fields;
95 uint32_t num_static_fields;
96 uint32_t num_virtual_methods;
98 uint32_t primitive_type;
99 uint32_t reference_instance_offsets;
103template<
class T = no_brooks_read_barrier_t>
111template<
class T = no_brooks_read_barrier_t>
138template<
class T = no_brooks_read_barrier_t>
141template<
class T = no_brooks_read_barrier_t>
144template<
class T = no_brooks_read_barrier_t>
159 uint32_t access_flags;
160 uint64_t dex_cache_strings;
164 uint32_t class_flags;
166 uint32_t clinit_thread_id;
167 int32_t dex_class_def_idx;
168 int32_t dex_type_idx;
171 uint32_t num_reference_instance_fields;
172 uint32_t num_reference_static_fields;
175 uint32_t object_size;
176 uint32_t primitive_type;
177 uint32_t reference_instance_offsets;
180 uint16_t copied_methods_offset;
181 uint16_t virtual_methods_offset;
186template<
class T = no_brooks_read_barrier_t>
189template<
class T = no_brooks_read_barrier_t>
196 uint64_t resolved_fields;
197 uint64_t resolved_methods;
198 uint64_t resolved_types;
200 uint32_t num_resolved_fields;
201 uint32_t num_resolved_methods;
202 uint32_t num_resolved_types;
203 uint32_t num_strings;
222template<
class T = no_brooks_read_barrier_t>
225template<
class T = no_brooks_read_barrier_t>
228template<
class T = no_brooks_read_barrier_t>
232template<
class T = no_brooks_read_barrier_t>
236template<
class T = no_brooks_read_barrier_t>
254template<
class T = no_brooks_read_barrier_t>
257template<
class T = no_brooks_read_barrier_t>
260template<
class T = no_brooks_read_barrier_t>
280 uint32_t access_flags;
281 uint32_t class_flags;
283 uint32_t clinit_thread_id;
284 int32_t dex_class_def_idx;
285 int32_t dex_type_idx;
286 uint32_t num_reference_instance_fields;
287 uint32_t num_reference_static_fields;
288 uint32_t object_size;
289 uint32_t object_size_alloc_fast_path;
290 uint32_t primitive_type;
291 uint32_t reference_instance_offsets;
293 uint16_t copied_methods_offset;
294 uint16_t virtual_methods_offset;
302template<
class T = no_brooks_read_barrier_t>
305template<
class T = no_brooks_read_barrier_t>
311 uint32_t num_resolved_call_sites;
313 uint64_t resolved_call_sites;
314 uint64_t resolved_fields;
315 uint64_t resolved_method_types;
316 uint64_t resolved_methods;
317 uint64_t resolved_types;
319 uint32_t num_resolved_fields;
320 uint32_t num_resolved_methods_types;
321 uint32_t num_resolved_methods;
322 uint32_t num_resolved_types;
323 uint32_t num_strings;
342template<
class T = no_brooks_read_barrier_t>
345template<
class T = no_brooks_read_barrier_t>
348template<
class T = no_brooks_read_barrier_t>
351template<
class T = no_brooks_read_barrier_t>
354template<
class T = no_brooks_read_barrier_t>
371template<
class T = no_brooks_read_barrier_t>
374template<
class T = no_brooks_read_barrier_t>
377template<
class T = no_brooks_read_barrier_t>
380template<
class T = no_brooks_read_barrier_t>
383template<
class T = no_brooks_read_barrier_t>
Namespace related to the Java part of ART 17.
Definition java_structures.hpp:40
uint32_t heap_reference_t
Definition java_structures.hpp:42
struct ALIGNED_(4) jarray_t
Definition java_structures.hpp:62
Definition java_structures.hpp:37
Namespace related to the Java part of ART 29.
Definition java_structures.hpp:134
ART_17::Java::jstring_t< T > jstring_t
Definition java_structures.hpp:187
struct ALIGNED_(4) jclass_t
Definition java_structures.hpp:145
ART_17::Java::jobject_t< T > jobject_t
Definition java_structures.hpp:139
ART_17::Java::jarray_t< T > jarray_t
Definition java_structures.hpp:142
ART_17::Java::brooks_read_barrier_t brooks_read_barrier_t
Definition java_structures.hpp:136
ART_17::Java::heap_reference_t heap_reference_t
Definition java_structures.hpp:135
Definition java_structures.hpp:131
Namespace related to the Java part of ART 30.
Definition java_structures.hpp:217
ART_29::Java::jstring_t< T > jstring_t
Definition java_structures.hpp:233
ART_29::Java::jdex_cache_t< T > jdex_cache_t
Definition java_structures.hpp:237
ART_29::Java::jarray_t< T > jarray_t
Definition java_structures.hpp:226
ART_29::Java::brooks_read_barrier_t brooks_read_barrier_t
Definition java_structures.hpp:220
ART_29::Java::jobject_t< T > jobject_t
Definition java_structures.hpp:223
ART_29::Java::heap_reference_t heap_reference_t
Definition java_structures.hpp:219
ART_29::Java::jclass_t< T > jclass_t
Definition java_structures.hpp:229
Definition java_structures.hpp:214
Namespace related to the Java part of ART 44.
Definition java_structures.hpp:248
ART_30::Java::jstring_t< T > jstring_t
Definition java_structures.hpp:303
ART_30::Java::heap_reference_t heap_reference_t
Definition java_structures.hpp:251
struct ALIGNED_(4) jclass_t
Definition java_structures.hpp:261
ART_30::Java::jobject_t< T > jobject_t
Definition java_structures.hpp:255
ART_30::Java::jarray_t< T > jarray_t
Definition java_structures.hpp:258
ART_30::Java::brooks_read_barrier_t brooks_read_barrier_t
Definition java_structures.hpp:252
Definition java_structures.hpp:245
Namespace related to the Java part of ART 46.
Definition java_structures.hpp:337
ART_44::Java::heap_reference_t heap_reference_t
Definition java_structures.hpp:339
ART_44::Java::jstring_t< T > jstring_t
Definition java_structures.hpp:352
ART_44::Java::jobject_t< T > jobject_t
Definition java_structures.hpp:343
ART_44::Java::jdex_cache_t< T > jdex_cache_t
Definition java_structures.hpp:355
ART_44::Java::jclass_t< T > jclass_t
Definition java_structures.hpp:349
ART_44::Java::brooks_read_barrier_t brooks_read_barrier_t
Definition java_structures.hpp:340
ART_44::Java::jarray_t< T > jarray_t
Definition java_structures.hpp:346
Definition java_structures.hpp:334
Namespace related to the Java part of ART 46.
Definition java_structures.hpp:366
ART_46::Java::jstring_t< T > jstring_t
Definition java_structures.hpp:381
ART_46::Java::jclass_t< T > jclass_t
Definition java_structures.hpp:378
ART_46::Java::jdex_cache_t< T > jdex_cache_t
Definition java_structures.hpp:384
ART_46::Java::jobject_t< T > jobject_t
Definition java_structures.hpp:372
ART_46::Java::jarray_t< T > jarray_t
Definition java_structures.hpp:375
ART_46::Java::brooks_read_barrier_t brooks_read_barrier_t
Definition java_structures.hpp:369
ART_46::Java::heap_reference_t heap_reference_t
Definition java_structures.hpp:368
Definition java_structures.hpp:363
Definition java_structures.hpp:30
Namespace related to the LIEF's ART module.
Definition ART/enums.hpp:20
LIEF namespace.
Definition Abstract/Binary.hpp:40
Definition java_structures.hpp:44
uint32_t x_rb_ptr
Definition java_structures.hpp:45
uint32_t x_xpadding
Definition java_structures.hpp:46
heap_reference_t klass
Definition java_structures.hpp:58
uint32_t monitor
Definition java_structures.hpp:59
Definition java_structures.hpp:50
heap_reference_t klass
Definition java_structures.hpp:51
uint32_t monitor
Definition java_structures.hpp:52
T brooks_read_barrier
Definition java_structures.hpp:53
Definition java_structures.hpp:32