Commit Graph

47 Commits

Author SHA1 Message Date
Daniel Gröber
41de8b8b2e Sandwich new Monad layer GmOutT into transformer stack
This way we can have access to some options pre Cradle setup which
should fix the output interleaving problems I was observing.
2015-09-01 10:32:27 +02:00
Daniel Gröber
f023d939e2 Fix GHC 7.10 warnings 2015-08-03 05:46:51 +02:00
Sergey Vinokurov
7b6eb55b11 Transform ModuleString and Expression type synonyms into newtypes 2015-06-02 10:43:29 +03:00
Sergey Vinokurov
4a9d578681 Improve style 2015-06-02 10:43:29 +03:00
Daniel Gröber
539c294dd4 Fix a bunch of relate exception handling problems
should handle exceptions outside of runGmlT otherwise we don't catch ghc
load related ones.
2015-03-09 22:04:04 +01:00
Daniel Gröber
82bb0090c0 Refactoring to use cabal-helper-wrapper
This turned out to be quite involved but save for this huge commit it's
actually quite awesome and squashes quite a few bugs and nasty
problems (hopefully). Most importantly we now have native cabal
component support without the user having to do anything to get it!

To do this we traverse imports starting from each component's
entrypoints (library modules or Main source file for executables) and
use this information to find which component's options each module will
build with. Under the assumption that these modules have to build with
every component they're used in we can now just pick one.

Quite a few internal assumptions have been invalidated by this
change. Most importantly the runGhcModT* family of cuntions now change
the current working directory to `cradleRootDir`.
2015-03-05 17:35:24 +01:00
Daniel Gröber
2b4fd77c28 Add GHC-7.10 support 2015-02-08 12:43:35 +01:00
klapaucius
fc7ce47e93 fix for varid bug in showExports & processExports 2014-12-24 22:17:36 +01:00
Daniel Gröber
a0ae09a3e6 Give readProcess' more sensible error messages.
Also a bunch of refactoring for GhcModError
2014-08-28 15:57:49 +02:00
Kazu Yamamoto
26316262aa converting GhcMonad to IOish. 2014-07-18 14:54:39 +09:00
Kazu Yamamoto
cee1b83daa the first step to create SymbolDB via a file. 2014-07-17 11:57:19 +09:00
Daniel Gröber
f0bfcb8811 Use GhcModT everywhere and remove the GhcMod alias
Not doing this makes having GhcModT pretty pointless as users of the
library wouldn't be able to use custom inner monads as evey function for
dealing with GhcModT's would be constraint to (GhcModT IO) thus only
allowing IO as the inner monad.
2014-07-15 01:03:56 +02:00
Daniel Gröber
b6896a481a Move initializeFlagsWithCradle to Monad.hs 2014-07-12 03:33:04 +02:00
Daniel Gröber
9f94bc863c Add Module type 2014-07-11 05:44:31 +02:00
Daniel Gröber
80e2761f2f Ghc->GhcMod: finish Browse, Check 2014-05-14 18:05:40 +02:00
Daniel Gröber
ebfb740a2e Move convert to it's own module. 2014-05-14 17:06:30 +02:00
Daniel Gröber
f1535efcf2 Ghc -> GhcMod: Browse, Check 2014-05-14 17:06:29 +02:00
Kazu Yamamoto
000076223f removing the third argument from initializeFlagsWithCradle. 2014-04-28 13:00:25 +09:00
Kazu Yamamoto
c45415a367 cleaning up check, splice flag and logger. 2014-04-26 17:54:15 +09:00
Kazu Yamamoto
93dadfef44 error handling for browse. 2014-04-24 12:45:47 +09:00
Kazu Yamamoto
e49fef6765 setTargetFiles now loads files. 2014-04-24 12:15:59 +09:00
Kazu Yamamoto
0c1469e53c <package>:<module> style.
refactoring for #159.
2014-04-24 11:26:30 +09:00
Kazu Yamamoto
79946f9a3d removing withGHCDummyFile. 2014-04-23 16:37:24 +09:00
Kazu Yamamoto
4764ff1acb ghc-modi boot. 2014-04-21 16:30:31 +09:00
Kazu Yamamoto
2f55a19d49 cleaning up APIs. 2014-04-21 12:46:14 +09:00
Kazu Yamamoto
a6579c656b Displaying a qualified name if two unqualified names are conflict (#130). 2014-04-03 09:49:23 +09:00
Kazu Yamamoto
4fd7224c9c closed import. 2014-03-27 14:38:06 +09:00
Kazu Yamamoto
782da60d0c adding docs. 2014-03-26 12:09:02 +09:00
Kazu Yamamoto
38a3e32ac3 browseAll. 2014-03-25 11:14:16 +09:00
Kazu Yamamoto
16e050439d removing fast/slow code. 2014-03-17 15:56:00 +09:00
Kazu Yamamoto
fb0222ff76 burying the gap. 2014-02-06 22:09:00 +09:00
Kazu Yamamoto
45154e6eb1 implementing fromTyThing. 2014-02-06 21:34:40 +09:00
Kazu Yamamoto
629cf409ae layout only. 2014-02-06 21:27:39 +09:00
Kazu Yamamoto
831fc67c8c Merge branch 'ghci-style-load2' of github.com:khorser/ghc-mod into khorser-ghci-style-load2
Conflicts:
	Language/Haskell/GhcMod/Browse.hs
2013-11-20 14:28:20 +09:00
Sergey Khorev
429cdfa83b Try loading a module if findModule failed for it 2013-11-20 08:57:45 +04:00
mvoidex
97c2c62c31 Local function rewritten to use justIf 2013-11-18 18:22:49 +04:00
mvoidex
444dd225e1 Added -q option to list fully qualified names with browse command 2013-11-17 22:31:47 +04:00
mvoidex
d4505041a9 Added project opt to specify module package-id 2013-10-29 20:48:27 +04:00
Kohei Suzuki
136e09e704 ghc-mod browse should take care of sandboxes 2013-09-27 12:25:41 +09:00
Kazu Yamamoto
5e53841451 improving doc. 2013-09-05 14:35:28 +09:00
Kazu Yamamoto
1cd83ce2e0 showUnqualifiedPage is now in Doc.hs. 2013-07-14 17:07:30 +09:00
Kazu Yamamoto
9c5eec47ca Removing warnings.
Tests passed: GHC 7.4.2 and GHC 7.6.3
2013-07-05 16:43:54 +09:00
Daniil Frumin
9eb446e24b Moving all CPP stuff (that depends on GHC version) to Gap
- Moved some functions from Language.Haskell.GhcMod.Doc to Gap
- Moved HasType typeclass and some functions from Info to Gap
- Adjusted all the other modules to use necessary functions from Gap
  instead of the functions from modified modules
2013-07-02 12:48:44 +04:00
Kazu Yamamoto
089d490607 writing docs. 2013-05-20 14:28:56 +09:00
Kazu Yamamoto
849c308e5c Separating IO and Ghc. 2013-05-20 11:29:44 +09:00
mvoidex
f2f3b120af Moving commands to Ghc monad 2013-05-19 01:16:37 +04:00
Kazu Yamamoto
bac4bbbcf3 Changing GHCMod as a library. 2013-05-17 10:00:01 +09:00