summaryrefslogtreecommitdiff
path: root/src/GF
diff options
context:
space:
mode:
Diffstat (limited to 'src/GF')
-rw-r--r--src/GF/Command/Commands.hs9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/GF/Command/Commands.hs b/src/GF/Command/Commands.hs
index 8f82b468f..6891b45b0 100644
--- a/src/GF/Command/Commands.hs
+++ b/src/GF/Command/Commands.hs
@@ -600,14 +600,15 @@ allCommands cod env@(pgf, mos) = Map.fromList [
exec = \opts arg -> do
case arg of
[Fun id []] -> case Map.lookup id (funs (abstract pgf)) of
- Just (ty,def) -> putStrLn (render (text "fun" <+> text (prCId id) <+> colon <+> ppType 0 ty $$
+ Just (ty,def) -> putStrLn (render (text "fun" <+> text (prCId id) <+> colon <+> ppType 0 ty $$
if def == EEq []
then empty
else text "def" <+> text (prCId id) <+> char '=' <+> ppExpr 0 def))
Nothing -> case Map.lookup id (cats (abstract pgf)) of
- Just hyps -> putStrLn (render (text "cat" <+>
- text (prCId id) <+>
- hsep (map ppHypo hyps)))
+ Just hyps -> putStrLn (render (text "cat" <+> text (prCId id) <+> hsep (map ppHypo hyps) $$
+ space $$
+ text "fun" <+> vcat [text (prCId fid) <+> colon <+> ppType 0 ty
+ | (fid,ty) <- functionsToCat pgf id]))
Nothing -> putStrLn "unknown identifier"
_ -> putStrLn "a single identifier is expected from the command"
return void