mirror of
https://github.com/corda/corda.git
synced 2025-01-25 05:46:46 +00:00
24 lines
429 B
C
24 lines
429 B
C
|
#include "machine.h"
|
||
|
|
||
|
namespace vm {
|
||
|
|
||
|
class HeapMap {
|
||
|
public:
|
||
|
virtual int find(object value) = 0;
|
||
|
virtual void dispose() = 0;
|
||
|
};
|
||
|
|
||
|
class HeapWalker {
|
||
|
public:
|
||
|
virtual void root() = 0;
|
||
|
virtual unsigned visitNew(object value) = 0;
|
||
|
virtual void visitOld(object value, unsigned number) = 0;
|
||
|
virtual void push(unsigned offset) = 0;
|
||
|
virtual void pop() = 0;
|
||
|
};
|
||
|
|
||
|
HeapMap*
|
||
|
walk(Thread* t, HeapWalker* w);
|
||
|
|
||
|
} // namespace vm
|