comparison src/share/vm/memory/iterator.hpp @ 14521:29ccc4cbabca

Merge
author Gilles Duboscq <duboscq@ssw.jku.at>
date Wed, 12 Mar 2014 13:30:08 +0100
parents be0ac0e8f6e7
children 4ca6dc0799b6 5255b195f828
comparison
equal deleted inserted replaced
14520:f84115370178 14521:29ccc4cbabca
1 /* 1 /*
2 * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. 2 * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 * 4 *
5 * This code is free software; you can redistribute it and/or modify it 5 * This code is free software; you can redistribute it and/or modify it
6 * under the terms of the GNU General Public License version 2 only, as 6 * under the terms of the GNU General Public License version 2 only, as
7 * published by the Free Software Foundation. 7 * published by the Free Software Foundation.
126 class KlassClosure : public Closure { 126 class KlassClosure : public Closure {
127 public: 127 public:
128 virtual void do_klass(Klass* k) = 0; 128 virtual void do_klass(Klass* k) = 0;
129 }; 129 };
130 130
131 class CLDClosure : public Closure {
132 public:
133 virtual void do_cld(ClassLoaderData* cld) = 0;
134 };
135
131 class KlassToOopClosure : public KlassClosure { 136 class KlassToOopClosure : public KlassClosure {
132 OopClosure* _oop_closure; 137 OopClosure* _oop_closure;
133 public: 138 public:
134 KlassToOopClosure(OopClosure* oop_closure) : _oop_closure(oop_closure) {} 139 KlassToOopClosure(OopClosure* oop_closure) : _oop_closure(oop_closure) {}
135 virtual void do_klass(Klass* k); 140 virtual void do_klass(Klass* k);
136 }; 141 };
137 142
138 class CLDToOopClosure { 143 class CLDToOopClosure : public CLDClosure {
139 OopClosure* _oop_closure; 144 OopClosure* _oop_closure;
140 KlassToOopClosure _klass_closure; 145 KlassToOopClosure _klass_closure;
141 bool _must_claim_cld; 146 bool _must_claim_cld;
142 147
143 public: 148 public: