70 private:
71 // Forward iteration
72 // Iterate over the oop fields and metadata.
73 template <bool nv, class OopClosureType>
74 inline int oop_oop_iterate(oop obj, OopClosureType* closure);
75
76 #if INCLUDE_ALL_GCS
77 // Reverse iteration
78 // Iterate over the oop fields and metadata.
79 template <bool nv, class OopClosureType>
80 inline int oop_oop_iterate_reverse(oop obj, OopClosureType* closure);
81 #endif
82
83 // Bounded range iteration
84 // Iterate over the oop fields and metadata.
85 template <bool nv, class OopClosureType>
86 inline int oop_oop_iterate_bounded(oop obj, OopClosureType* closure, MemRegion mr);
87
88 public:
89
90 #define InstanceClassLoaderKlass_OOP_OOP_ITERATE_DECL(OopClosureType, nv_suffix) \
91 int oop_oop_iterate##nv_suffix(oop obj, OopClosureType* blk); \
92 int oop_oop_iterate##nv_suffix##_m(oop obj, OopClosureType* blk, MemRegion mr);
93
94 ALL_OOP_OOP_ITERATE_CLOSURES_1(InstanceClassLoaderKlass_OOP_OOP_ITERATE_DECL)
95 ALL_OOP_OOP_ITERATE_CLOSURES_2(InstanceClassLoaderKlass_OOP_OOP_ITERATE_DECL)
96
97 #if INCLUDE_ALL_GCS
98 #define InstanceClassLoaderKlass_OOP_OOP_ITERATE_BACKWARDS_DECL(OopClosureType, nv_suffix) \
99 int oop_oop_iterate_backwards##nv_suffix(oop obj, OopClosureType* blk);
100
101 ALL_OOP_OOP_ITERATE_CLOSURES_1(InstanceClassLoaderKlass_OOP_OOP_ITERATE_BACKWARDS_DECL)
102 ALL_OOP_OOP_ITERATE_CLOSURES_2(InstanceClassLoaderKlass_OOP_OOP_ITERATE_BACKWARDS_DECL)
103 #endif // INCLUDE_ALL_GCS
104
105 };
106
107 #endif // SHARE_VM_OOPS_INSTANCECLASSLOADERKLASS_HPP
|
70 private:
71 // Forward iteration
72 // Iterate over the oop fields and metadata.
73 template <bool nv, class OopClosureType>
74 inline int oop_oop_iterate(oop obj, OopClosureType* closure);
75
76 #if INCLUDE_ALL_GCS
77 // Reverse iteration
78 // Iterate over the oop fields and metadata.
79 template <bool nv, class OopClosureType>
80 inline int oop_oop_iterate_reverse(oop obj, OopClosureType* closure);
81 #endif
82
83 // Bounded range iteration
84 // Iterate over the oop fields and metadata.
85 template <bool nv, class OopClosureType>
86 inline int oop_oop_iterate_bounded(oop obj, OopClosureType* closure, MemRegion mr);
87
88 public:
89
90 ALL_OOP_OOP_ITERATE_CLOSURES_1(OOP_OOP_ITERATE_DECL)
91 ALL_OOP_OOP_ITERATE_CLOSURES_2(OOP_OOP_ITERATE_DECL)
92
93 #if INCLUDE_ALL_GCS
94 ALL_OOP_OOP_ITERATE_CLOSURES_1(OOP_OOP_ITERATE_BACKWARDS_DECL)
95 ALL_OOP_OOP_ITERATE_CLOSURES_2(OOP_OOP_ITERATE_BACKWARDS_DECL)
96 #endif // INCLUDE_ALL_GCS
97
98 };
99
100 #endif // SHARE_VM_OOPS_INSTANCECLASSLOADERKLASS_HPP
|