-- RefCounts.mesa
-- Last Edited by: Paul Rovner, December 10, 1982 4:33 pm

RefCounts: DEFINITIONS
= BEGIN
  
GetCount: PROC[ref: REF ANY] RETURNS[count: NAT, markedAsOnStack: BOOL];

  -- BEWARE Enumerate is UNSAFE. See Paul Rovner before using it.
Enumerate: PROC[proc: PROC[ref: REF ANY, count: NAT, markedAsOnStack: BOOL]
                           RETURNS[stop: BOOL]]
      RETURNS[ref: REF ANY, count: NAT, markedAsOnStack: BOOL];
         -- (ref = NIL) => not stopped

END.