refactoring in GF.Grammar.Lookup

This commit is contained in:
krasimir
2009-10-28 17:10:43 +00:00
parent 980844a4ad
commit d130d30669
2 changed files with 40 additions and 82 deletions

View File

@@ -166,7 +166,10 @@ mkLinDefault gr typ = do
let T _ cs = mkWildCases t'
return $ T (TWild p) cs
Sort s | s == cStr -> return $ Vr varStr
QC q p -> lookupFirstTag gr q p
QC q p -> do vs <- lookupParamValues gr q p
case vs of
v:_ -> return v
_ -> Bad (render (text "no parameter values given to type" <+> ppIdent p))
RecType r -> do
let (ls,ts) = unzip r
ts' <- mapM mkDefField ts