X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=GHC%2FWeak.lhs;h=5935f1833f011e05dfe377fc9d3a26928941d5bd;hb=a09d886b49d91f9595ec774d6ede487045545f7c;hp=7179e3da8965082ed65d24f88423ffd37c9e6b2f;hpb=aaf764b3ad8b1816d68b5f27299eac125f08e1a5;p=haskell-directory.git diff --git a/GHC/Weak.lhs b/GHC/Weak.lhs index 7179e3d..5935f18 100644 --- a/GHC/Weak.lhs +++ b/GHC/Weak.lhs @@ -14,11 +14,13 @@ -- ----------------------------------------------------------------------------- +-- #hide module GHC.Weak where import GHC.Base import Data.Maybe import GHC.IOBase ( IO(..), unIO ) +import Data.Typeable ( Typeable1(..), mkTyCon, mkTyConApp ) {-| A weak pointer object with a key and a value. The value has type @v@. @@ -62,6 +64,9 @@ for runnable finalizers before declaring the system to be deadlocked. -} data Weak v = Weak (Weak# v) +#include "Typeable.h" +INSTANCE_TYPEABLE1(Weak,weakTc,"Weak") + -- | Establishes a weak pointer to @k@, with value @v@ and a finalizer. -- -- This is the most general interface for building a weak pointer.