on master help sign in
Merge pull request #1870 from soimort/ideslave-module-support

Support for module import in IDESlave

commit09a4aaaf8fa32d1b19e3c7ec9c52eeec7b682206 authorDavid Christiansen <david@davidchristiansen.dk> dateMon 9 Feb 2015, 11:51 (12 years ago) parentc155da48ecdf60
1 file changed+5
src/Idris/REPL.hs+5
src/Idris/REPL.hs+5
@@ -537,6 +537,7 @@ ideslaveProcess fn Warranty = process fn Warranty
537537ideslaveProcess fn Help = process fn Help
538538ideslaveProcess fn (ChangeDirectory f) = do process fn (ChangeDirectory f)
539539 iPrintResult "changed directory to"
540+ideslaveProcess fn (ModImport f) = process fn (ModImport f)
540541ideslaveProcess fn (Eval t) = process fn (Eval t)
541542ideslaveProcess fn (NewDefn decls) = do process fn (NewDefn decls)
542543 iPrintResult "defined"
@@ -722,6 +723,10 @@ process fn Warranty = iPrintResult warranty
722723process fn (ChangeDirectory f)
723724 = do runIO $ setCurrentDirectory f
724725 return ()
726+process fn (ModImport f) = do fmod <- loadModule f
727+ case fmod of
728+ Just pr -> isetPrompt pr
729+ Nothing -> iPrintError $ "Can't find import " ++ f
725730process fn (Eval t)
726731 = withErrorReflection $ do logLvl 5 $ show t
727732 getIState >>= flip warnDisamb t