equal
deleted
inserted
replaced
108 \ |
108 \ |
109 public: \ |
109 public: \ |
110 /* Constructors */ \ |
110 /* Constructors */ \ |
111 type##Handle () : Handle() {} \ |
111 type##Handle () : Handle() {} \ |
112 type##Handle (type##Oop obj) : Handle((oop)obj) { \ |
112 type##Handle (type##Oop obj) : Handle((oop)obj) { \ |
113 assert(SharedSkipVerify || is_null() || ((oop)obj)->is_a(), \ |
113 assert(is_null() || ((oop)obj)->is_a(), \ |
114 "illegal type"); \ |
114 "illegal type"); \ |
115 } \ |
115 } \ |
116 type##Handle (Thread* thread, type##Oop obj) : Handle(thread, (oop)obj) { \ |
116 type##Handle (Thread* thread, type##Oop obj) : Handle(thread, (oop)obj) { \ |
117 assert(SharedSkipVerify || is_null() || ((oop)obj)->is_a(), "illegal type"); \ |
117 assert(is_null() || ((oop)obj)->is_a(), "illegal type"); \ |
118 } \ |
118 } \ |
119 \ |
119 \ |
120 /* Operators for ease of use */ \ |
120 /* Operators for ease of use */ \ |
121 type##Oop operator () () const { return obj(); } \ |
121 type##Oop operator () () const { return obj(); } \ |
122 type##Oop operator -> () const { return non_null_obj(); } \ |
122 type##Oop operator -> () const { return non_null_obj(); } \ |
199 class instanceKlassHandle : public KlassHandle { |
199 class instanceKlassHandle : public KlassHandle { |
200 public: |
200 public: |
201 /* Constructors */ |
201 /* Constructors */ |
202 instanceKlassHandle () : KlassHandle() {} |
202 instanceKlassHandle () : KlassHandle() {} |
203 instanceKlassHandle (const Klass* k) : KlassHandle(k) { |
203 instanceKlassHandle (const Klass* k) : KlassHandle(k) { |
204 assert(SharedSkipVerify || k == NULL || k->oop_is_instance(), |
204 assert(k == NULL || k->oop_is_instance(), |
205 "illegal type"); |
205 "illegal type"); |
206 } |
206 } |
207 instanceKlassHandle (Thread* thread, const Klass* k) : KlassHandle(thread, k) { |
207 instanceKlassHandle (Thread* thread, const Klass* k) : KlassHandle(thread, k) { |
208 assert(SharedSkipVerify || k == NULL || k->oop_is_instance(), |
208 assert(k == NULL || k->oop_is_instance(), |
209 "illegal type"); |
209 "illegal type"); |
210 } |
210 } |
211 /* Access to klass part */ |
211 /* Access to klass part */ |
212 InstanceKlass* operator () () const { return (InstanceKlass*)obj(); } |
212 InstanceKlass* operator () () const { return (InstanceKlass*)obj(); } |
213 InstanceKlass* operator -> () const { return (InstanceKlass*)obj(); } |
213 InstanceKlass* operator -> () const { return (InstanceKlass*)obj(); } |