Initial support for adding body from signature

This commit is contained in:
Alejandro Serrano
2014-06-10 21:34:05 +02:00
parent cedf59ace7
commit 323c1b5471
6 changed files with 104 additions and 2 deletions

View File

@@ -39,6 +39,7 @@ usage = progVersion
++ "\t ghc-mod info" ++ ghcOptHelp ++ "<HaskellFile> <module> <expression>\n"
++ "\t ghc-mod type" ++ ghcOptHelp ++ "<HaskellFile> <module> <line-no> <column-no>\n"
++ "\t ghc-mod split" ++ ghcOptHelp ++ "<HaskellFile> <module> <line-no> <column-no>\n"
++ "\t ghc-mod sig" ++ ghcOptHelp ++ "<HaskellFile> <module> <line-no> <column-no>\n"
++ "\t ghc-mod find <symbol>\n"
++ "\t ghc-mod lint [-h opt] <HaskellFile>\n"
++ "\t ghc-mod root\n"
@@ -121,6 +122,7 @@ main = flip E.catches handlers $ do
"info" -> nArgs 3 infoExpr opt cradle cmdArg1 cmdArg3
"type" -> nArgs 4 $ typeExpr opt cradle cmdArg1 (read cmdArg3) (read cmdArg4)
"split" -> nArgs 4 $ splitVar opt cradle cmdArg1 (read cmdArg3) (read cmdArg4)
"sig" -> nArgs 4 $ fillSig opt cradle cmdArg1 (read cmdArg3) (read cmdArg4)
"find" -> runGhcMod opt $ nArgs 1 $ findSymbol cmdArg1
"lint" -> nArgs 1 withFile (lintSyntax opt) cmdArg1
"root" -> rootInfo opt cradle

View File

@@ -145,6 +145,7 @@ loop opt set mvar = do
"info" -> toGhcMod $ showInfo opt set arg
"type" -> toGhcMod $ showType opt set arg
"split" -> toGhcMod $ doSplit opt set arg
"sig" -> toGhcMod $ doSig opt set arg
"boot" -> bootIt set
"browse" -> browseIt set arg
"quit" -> return ("quit", False, set)
@@ -265,6 +266,16 @@ doSplit opt set fileArg = do
ret <- splits opt file (read line) (read column)
return (ret, True, set')
doSig :: Options
-> Set FilePath
-> FilePath
-> Ghc (String, Bool, Set FilePath)
doSig opt set fileArg = do
let [file, line, column] = words fileArg
set' <- newFileSet set file
ret <- sig opt file (read line) (read column)
return (ret, True, set')
----------------------------------------------------------------
bootIt :: Set FilePath