Copyright (C) 1994, Digital Equipment Corp.RTHeapMap provides the routines needed by the collector to walk runtime values.
INTERFACERTHeapMap ; IMPORT RT0; TYPE Visitor <: V_; V_ = OBJECT METHODS apply (a: ADDRESS) END; TYPE ObjectPtr = UNTRACED REF RT0.RefHeader; PROCEDURE WalkRef (h: ObjectPtr; v: Visitor);
For each traced reference at address 'x' in the object referenced by 'h', call 'v(x)'.
PROCEDURE WalkGlobals (v: Visitor);
For each traced reference at address 'x' in a global var, call 'v(x)'.
PROCEDURE WalkModuleGlobals (v: Visitor; m: CARDINAL);
For each traced reference at address 'x' in a global variable of module 'm' (RTModule.Get(m)), call 'v(x)'
END RTHeapMap.