cpp: Use #pragma once instead of #ifndef guards
[ghc.git] / rts / sm / MarkWeak.h
1 /* -----------------------------------------------------------------------------
2 *
3 * (c) The GHC Team 1998-2008
4 *
5 * Weak pointers and weak-like things in the GC
6 *
7 * Documentation on the architecture of the Garbage Collector can be
8 * found in the online commentary:
9 *
10 * http://ghc.haskell.org/trac/ghc/wiki/Commentary/Rts/Storage/GC
11 *
12 * ---------------------------------------------------------------------------*/
13
14 #pragma once
15
16 #include "BeginPrivate.h"
17
18 extern StgWeak *old_weak_ptr_list;
19 extern StgTSO *resurrected_threads;
20 extern StgTSO *exception_threads;
21
22 void collectFreshWeakPtrs ( void );
23 void initWeakForGC ( void );
24 bool traverseWeakPtrList ( void );
25 void markWeakPtrList ( void );
26 void scavengeLiveWeak ( StgWeak * );
27
28 #include "EndPrivate.h"