src/share/vm/gc_implementation/shared/markSweep.hpp

Print this page
rev 4616 : 8014277: Remove ObjectClosure as base class for BoolObjectClosure


  71   };
  72   class AdjustKlassClosure : public KlassClosure {
  73    public:
  74     void do_klass(Klass* klass);
  75   };
  76 
  77   class FollowStackClosure: public VoidClosure {
  78    public:
  79     virtual void do_void();
  80   };
  81 
  82   class AdjustPointerClosure: public OopsInGenClosure {
  83    public:
  84     virtual void do_oop(oop* p);
  85     virtual void do_oop(narrowOop* p);
  86   };
  87 
  88   // Used for java/lang/ref handling
  89   class IsAliveClosure: public BoolObjectClosure {
  90    public:
  91     virtual void do_object(oop p);
  92     virtual bool do_object_b(oop p);
  93   };
  94 
  95   class KeepAliveClosure: public OopClosure {
  96    protected:
  97     template <class T> void do_oop_work(T* p);
  98    public:
  99     virtual void do_oop(oop* p);
 100     virtual void do_oop(narrowOop* p);
 101   };
 102 
 103   //
 104   // Friend decls
 105   //
 106   friend class AdjustPointerClosure;
 107   friend class KeepAliveClosure;
 108   friend class VM_MarkSweep;
 109   friend void marksweep_init();
 110 
 111   //




  71   };
  72   class AdjustKlassClosure : public KlassClosure {
  73    public:
  74     void do_klass(Klass* klass);
  75   };
  76 
  77   class FollowStackClosure: public VoidClosure {
  78    public:
  79     virtual void do_void();
  80   };
  81 
  82   class AdjustPointerClosure: public OopsInGenClosure {
  83    public:
  84     virtual void do_oop(oop* p);
  85     virtual void do_oop(narrowOop* p);
  86   };
  87 
  88   // Used for java/lang/ref handling
  89   class IsAliveClosure: public BoolObjectClosure {
  90    public:

  91     virtual bool do_object_b(oop p);
  92   };
  93 
  94   class KeepAliveClosure: public OopClosure {
  95    protected:
  96     template <class T> void do_oop_work(T* p);
  97    public:
  98     virtual void do_oop(oop* p);
  99     virtual void do_oop(narrowOop* p);
 100   };
 101 
 102   //
 103   // Friend decls
 104   //
 105   friend class AdjustPointerClosure;
 106   friend class KeepAliveClosure;
 107   friend class VM_MarkSweep;
 108   friend void marksweep_init();
 109 
 110   //