equal
deleted
inserted
replaced
62 // void (*_listener_fun)(void *this_obj, address* cache) |
62 // void (*_listener_fun)(void *this_obj, address* cache) |
63 // gets called with the cache's new address. This gives the user of the GrowableCache a callback |
63 // gets called with the cache's new address. This gives the user of the GrowableCache a callback |
64 // to update its pointer to the address cache. |
64 // to update its pointer to the address cache. |
65 // |
65 // |
66 |
66 |
67 class GrowableElement : public CHeapObj { |
67 class GrowableElement : public CHeapObj<mtInternal> { |
68 public: |
68 public: |
69 virtual address getCacheValue() =0; |
69 virtual address getCacheValue() =0; |
70 virtual bool equals(GrowableElement* e) =0; |
70 virtual bool equals(GrowableElement* e) =0; |
71 virtual bool lessThan(GrowableElement *e)=0; |
71 virtual bool lessThan(GrowableElement *e)=0; |
72 virtual GrowableElement *clone() =0; |
72 virtual GrowableElement *clone() =0; |
128 // Used by : JvmtiBreakpoints |
128 // Used by : JvmtiBreakpoints |
129 // Used by JVMTI methods: none directly. |
129 // Used by JVMTI methods: none directly. |
130 // Note : typesafe wrapper for GrowableCache of JvmtiBreakpoint |
130 // Note : typesafe wrapper for GrowableCache of JvmtiBreakpoint |
131 // |
131 // |
132 |
132 |
133 class JvmtiBreakpointCache : public CHeapObj { |
133 class JvmtiBreakpointCache : public CHeapObj<mtInternal> { |
134 |
134 |
135 private: |
135 private: |
136 GrowableCache _cache; |
136 GrowableCache _cache; |
137 |
137 |
138 public: |
138 public: |
256 // |
256 // |
257 // It would be possible to make JvmtiBreakpoints a static class, but I've made it |
257 // It would be possible to make JvmtiBreakpoints a static class, but I've made it |
258 // CHeap allocated to emphasize its similarity to JvmtiFramePops. |
258 // CHeap allocated to emphasize its similarity to JvmtiFramePops. |
259 // |
259 // |
260 |
260 |
261 class JvmtiBreakpoints : public CHeapObj { |
261 class JvmtiBreakpoints : public CHeapObj<mtInternal> { |
262 private: |
262 private: |
263 |
263 |
264 JvmtiBreakpointCache _bps; |
264 JvmtiBreakpointCache _bps; |
265 |
265 |
266 // These should only be used by VM_ChangeBreakpoints |
266 // These should only be used by VM_ChangeBreakpoints |
494 * when operating on the queue (except for the "pending" events). |
494 * when operating on the queue (except for the "pending" events). |
495 */ |
495 */ |
496 class JvmtiDeferredEventQueue : AllStatic { |
496 class JvmtiDeferredEventQueue : AllStatic { |
497 friend class JvmtiDeferredEvent; |
497 friend class JvmtiDeferredEvent; |
498 private: |
498 private: |
499 class QueueNode : public CHeapObj { |
499 class QueueNode : public CHeapObj<mtInternal> { |
500 private: |
500 private: |
501 JvmtiDeferredEvent _event; |
501 JvmtiDeferredEvent _event; |
502 QueueNode* _next; |
502 QueueNode* _next; |
503 |
503 |
504 public: |
504 public: |