diff options
| author | aarne <unknown> | 2004-05-18 20:57:13 +0000 |
|---|---|---|
| committer | aarne <unknown> | 2004-05-18 20:57:13 +0000 |
| commit | 8963681a3b821e85185877dd61b7804661fc5c24 (patch) | |
| tree | fc2f4dee924cccd3d46c4983d80bc7b9a755ef41 /src/GF/API.hs | |
| parent | 086733a6fe03c5065002a8fb414af06c9cf67d51 (diff) | |
peel head i ; gt nometas ; gf2hs
Diffstat (limited to 'src/GF/API.hs')
| -rw-r--r-- | src/GF/API.hs | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/src/GF/API.hs b/src/GF/API.hs index d748a5517..42101706d 100644 --- a/src/GF/API.hs +++ b/src/GF/API.hs @@ -160,13 +160,14 @@ randomTreesIO opts gr n = do generateTrees :: Options -> GFGrammar -> Maybe Tree -> [Tree] generateTrees opts gr mt = optIntOrAll opts flagNumber - [tr | t <- Gen.generateTrees gr' cat dpt mn mt, Ok tr <- [mkTr t]] + [tr | t <- Gen.generateTrees gr' ifm cat dpt mn mt, Ok tr <- [mkTr t]] where mkTr = annotate gr' . qualifTerm (absId gr) gr' = grammar gr cat = firstAbsCat opts gr dpt = maybe 3 id $ getOptInt opts flagDepth mn = getOptInt opts flagAlts + ifm = not $ oElem noMetas opts speechGenerate :: Options -> String -> IO () speechGenerate opts str = do @@ -296,11 +297,14 @@ optTermCommand opts st = {- -- wraps term in a function and optionally computes the result -wrapByFun :: Options -> StateGrammar -> Ident -> Term -> Term -wrapByFun opts g f t = +wrapByFun :: Options -> GFGrammar -> Ident -> Tree -> Tree +wrapByFun opts gr f t = if oElem doCompute opts - then err (const t) id $ computeAbsTerm (stateAbstract g) (appCons f [t]) - else appCons f [t] + then err (const t) id $ computeAbsTerm (stateAbstract g) (appCons f' [t]) + else appCons f' [t] + where + qualifTerm (absId gr) $ + optTransfer :: Options -> StateGrammar -> Term -> Term optTransfer opts g = case getOptVal opts transferFun of |
