gtk2hs-buildtools 0.9 → 0.11.1
raw patch · 4 files changed
+16/−9 lines, 4 filesdep ~basedep ~haskell98
Dependency ranges changed: base, haskell98
Files
- c2hs/base/general/FastMutInt.hs +1/−1
- gtk2hs-buildtools.cabal +1/−1
- hierarchyGen/TypeGen.hs +13/−7
- hierarchyGen/hierarchy.list +1/−0
c2hs/base/general/FastMutInt.hs view
@@ -20,7 +20,7 @@ newFastMutInt = IO $ \s -> case newByteArray# size s of { (# s, arr #) -> (# s, FastMutInt arr #) }- where I# size = SIZEOF_HSINT+ where !(I# size) = SIZEOF_HSINT readFastMutInt :: FastMutInt -> IO Int readFastMutInt (FastMutInt arr) = IO $ \s ->
gtk2hs-buildtools.cabal view
@@ -1,5 +1,5 @@ Name: gtk2hs-buildtools-Version: 0.9+Version: 0.11.1 License: GPL-2 License-file: COPYING Copyright: (c) 2001-2010 The Gtk2Hs Team
hierarchyGen/TypeGen.hs view
@@ -23,7 +23,8 @@ data TypeInfo = TypeInfo { tiQueryFunction :: String, -- the GTK blah_get_type function tiAlternateName :: Maybe String,- tiNoEqualInst :: Bool+ tiNoEqualInst :: Bool,+ tiDefaultDestr :: Bool } type TypeTable = [TypeQuery]@@ -72,18 +73,21 @@ (eqInst,rem') = let r = dropWhile isBlank rem in if "noEq" `isPrefixOf` r then (True, drop 4 r) else (False, r)- (name,specialQuery,rem'') = case (dropWhile isBlank rem') of+ (defDestr,rem'') = + let r = dropWhile isBlank rem' in+ if "noDestr" `isPrefixOf` r then (True, drop 7 r) else (False, r)+ (name,specialQuery,rem''') = case (dropWhile isBlank rem'') of ('a':'s':r) -> let (tyName,r') = span isAlphaNum_ (dropWhile isBlank r) in case (dropWhile isBlank r') of (',':r) -> let (tyQuery,r') = span isAlphaNum_ (dropWhile isBlank r) in- (tyName, (tyName, TypeInfo origCName (Just tyQuery) eqInst), r')- r -> (tyName, (tyName, TypeInfo origCName Nothing eqInst), r)- r -> (origHsName, (origHsName, TypeInfo origCName Nothing eqInst), r)+ (tyName, (tyName, TypeInfo origCName (Just tyQuery) eqInst defDestr), r')+ r -> (tyName, (tyName, TypeInfo origCName Nothing eqInst defDestr), r)+ r -> (origHsName, (origHsName, TypeInfo origCName Nothing eqInst defDestr), r) parents = dropWhile (\(c,_) -> c>=col ps) (hierObjs ps) spec = (col ps,name):parents- (readTag, rem''') = case (dropWhile isBlank rem'') of+ (readTag, rem'''') = case (dropWhile isBlank rem''') of ('i':'f':r) -> span isTagName (dropWhile isBlank r) r -> ("default",r) @@ -289,7 +293,9 @@ _ -> id ). indent 0.- indent 0.ss "mk".ss name.ss " = (".ss name.ss ", ".ss destr.ss ")".+ indent 0.ss "mk".ss name.ss " = (".ss name.ss ", ".+ (case lookup name table of Just TypeInfo { tiDefaultDestr = False } -> ss destr+ Just TypeInfo { tiDefaultDestr = True } -> ss "objectUnref").ss ")". indent 0.ss "un".ss name.ss " (".ss name.ss " o) = o". indent 0. indent 0.ss "class ".ss (head parents).ss "Class o => ".ss name.ss "Class o".
hierarchyGen/hierarchy.list view
@@ -183,6 +183,7 @@ # least GObjects. GtkCellLayout if gtk-2.4 GtkTreeSortable if gtk-2.4+ GtkTooltip if gtk-2.12 # These are derived from GObject: GtkStatusIcon if gtk-2.10 GtkTreeSelection