[make expanPlaceholder work on Combinators
John Meacham <john@repetae.net>**20080229042134] {
hunk ./E/TypeAnalysis.hs 355
-expandPlaceholder :: Monad m => (TVr,E) -> m (TVr,E)
-expandPlaceholder (tvr,oe) | getProperty prop_PLACEHOLDER tvr = do
-    let rules = filter isBodyRule $  rulesFromARules $ Info.fetch (tvrInfo tvr)
+expandPlaceholder :: Monad m => Comb -> m Comb
+expandPlaceholder comb  | getProperty prop_PLACEHOLDER (combHead comb) = do
+    let rules = filter isBodyRule $  combRules comb
+        tvr = combHead comb
hunk ./E/TypeAnalysis.hs 361
-    if null rules then return (unsetProperty prop_PLACEHOLDER tvr, EError ("Placeholder, no bodies: " ++ tvrShowName tvr) (getType tvr)) else do
-    let (oe',as) = fromLam oe
+    let mcomb nb = (combBody_s nb  . combHead_u (unsetProperty prop_PLACEHOLDER) $ comb)
+    if null rules then return (mcomb $  EError ("Placeholder, no bodies: " ++ tvrShowName tvr) (getType tvr)) else do
+    let (oe',as) = fromLam $ combBody comb
hunk ./E/TypeAnalysis.hs 368
-                | otherwise = error $ pprint (tvr,(oe,show rule1))
+                | otherwise = error $ pprint (tvr,(combBody comb,show rule1))
hunk ./E/TypeAnalysis.hs 377
-    return (unsetProperty prop_PLACEHOLDER tvr,foldr ELam ne as')
+    return (mcomb (foldr ELam ne as'))
hunk ./E/TypeAnalysis.hs 381
-
-
-
-
-
}
