-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/
-- | Inspect Haskell source files.
--
-- Inspect .hs files using the ghc api.
@package hsinspect
@version 0.0.4
-- | A ghc plugin that creates a .ghc.flags file populated with the flags
-- that were last used to invoke ghc for some modules, for consumption by
-- hsinspect.
--
--
-- https://downloads.haskell.org/~ghc/latest/docs/html/users_guide/extending_ghc.html#compiler-plugins
module HsInspect.Plugin
plugin :: Plugin
module HsInspect.Sexp
data Sexp
SexpCons :: Sexp -> Sexp -> Sexp
SexpNil :: Sexp
SexpString :: String -> Sexp
SexpSymbol :: String -> Sexp
list :: [Sexp] -> Sexp
toList :: Sexp -> Maybe [Sexp]
alist :: [(Sexp, Sexp)] -> Sexp
attrs :: [(String, Sexp)] -> Sexp
class ToSexp a
toSexp :: ToSexp a => a -> Sexp
render :: Sexp -> String
encode :: ToSexp a => a -> String
instance HsInspect.Sexp.ToSexp GHC.Base.String
instance HsInspect.Sexp.ToSexp a => HsInspect.Sexp.ToSexp [a]
instance HsInspect.Sexp.ToSexp a => HsInspect.Sexp.ToSexp (GHC.Maybe.Maybe a)
instance Data.String.IsString HsInspect.Sexp.Sexp
module HsInspect.Search
search :: GhcMonad m => String -> m [Hit]
getHits :: GhcMonad m => PackageConfig -> m [Hit]
toHit :: GhcMonad m => FindResult -> m [Hit]
finder :: GhcMonad m => LookupResult -> m FindResult
findLookupResult :: HscEnv -> LookupResult -> IO FindResult
lookups :: PackageConfig -> [LookupResult]
data Hit
Hit :: String -> Hit
instance HsInspect.Sexp.ToSexp HsInspect.Search.Hit
instance Json.ToJson HsInspect.Search.Hit
-- | Calculate all exposed modules that could be imported.
module HsInspect.Modules
modules :: GhcMonad m => [String] -> m [Hit]
instance GHC.Classes.Ord HsInspect.Modules.Hit
instance GHC.Classes.Eq HsInspect.Modules.Hit
instance HsInspect.Sexp.ToSexp HsInspect.Modules.Hit
instance Json.ToJson HsInspect.Modules.Hit
module HsInspect.Workarounds
importsOnly :: GhcMonad m => Set ModuleName -> FilePath -> m (Maybe ModuleName, Target)
minf_rdr_env' :: GhcMonad m => ModuleName -> m GlobalRdrEnv
module HsInspect.Packages
packages :: GhcMonad m => FilePath -> m PkgSummary
instance GHC.Classes.Ord HsInspect.Packages.PkgSummary
instance GHC.Classes.Eq HsInspect.Packages.PkgSummary
instance HsInspect.Sexp.ToSexp HsInspect.Packages.PkgSummary
instance Json.ToJson HsInspect.Packages.PkgSummary
module HsInspect.Imports
imports :: GhcMonad m => FilePath -> m [Qualified]
imports' :: GhcMonad m => FilePath -> m [GlobalRdrElt]
showGhc :: Outputable a => a -> String
describe :: GlobalRdrElt -> [Qualified]
data Qualified
Qualified :: Maybe String -> Maybe String -> String -> Qualified
instance GHC.Show.Show HsInspect.Imports.Qualified
instance GHC.Classes.Eq HsInspect.Imports.Qualified
instance HsInspect.Sexp.ToSexp HsInspect.Imports.Qualified
instance Json.ToJson HsInspect.Imports.Qualified