-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | A GHC plugin for automatically importing modules. -- -- Imp is a GHC plugin for automatically importing modules. @package imp @version 1.0.2.0 module Imp.Exception.InvalidAlias newtype InvalidAlias InvalidAlias :: String -> InvalidAlias new :: String -> InvalidAlias instance GHC.Show.Show Imp.Exception.InvalidAlias.InvalidAlias instance GHC.Classes.Eq Imp.Exception.InvalidAlias.InvalidAlias instance GHC.Exception.Type.Exception Imp.Exception.InvalidAlias.InvalidAlias module Imp.Exception.InvalidModuleName newtype InvalidModuleName InvalidModuleName :: String -> InvalidModuleName new :: String -> InvalidModuleName instance GHC.Show.Show Imp.Exception.InvalidModuleName.InvalidModuleName instance GHC.Classes.Eq Imp.Exception.InvalidModuleName.InvalidModuleName instance GHC.Exception.Type.Exception Imp.Exception.InvalidModuleName.InvalidModuleName module Imp.Exception.InvalidOption newtype InvalidOption InvalidOption :: String -> InvalidOption new :: String -> InvalidOption instance GHC.Show.Show Imp.Exception.InvalidOption.InvalidOption instance GHC.Classes.Eq Imp.Exception.InvalidOption.InvalidOption instance GHC.Exception.Type.Exception Imp.Exception.InvalidOption.InvalidOption module Imp.Exception.InvalidPackage newtype InvalidPackage InvalidPackage :: String -> InvalidPackage new :: String -> InvalidPackage instance GHC.Show.Show Imp.Exception.InvalidPackage.InvalidPackage instance GHC.Classes.Eq Imp.Exception.InvalidPackage.InvalidPackage instance GHC.Exception.Type.Exception Imp.Exception.InvalidPackage.InvalidPackage module Imp.Exception.InvalidPackageName newtype InvalidPackageName InvalidPackageName :: String -> InvalidPackageName new :: String -> InvalidPackageName instance GHC.Show.Show Imp.Exception.InvalidPackageName.InvalidPackageName instance GHC.Classes.Eq Imp.Exception.InvalidPackageName.InvalidPackageName instance GHC.Exception.Type.Exception Imp.Exception.InvalidPackageName.InvalidPackageName module Imp.Exception.UnexpectedArgument newtype UnexpectedArgument UnexpectedArgument :: String -> UnexpectedArgument new :: String -> UnexpectedArgument instance GHC.Show.Show Imp.Exception.UnexpectedArgument.UnexpectedArgument instance GHC.Classes.Eq Imp.Exception.UnexpectedArgument.UnexpectedArgument instance GHC.Exception.Type.Exception Imp.Exception.UnexpectedArgument.UnexpectedArgument module Imp.Exception.UnknownOption newtype UnknownOption UnknownOption :: String -> UnknownOption new :: String -> UnknownOption instance GHC.Show.Show Imp.Exception.UnknownOption.UnknownOption instance GHC.Classes.Eq Imp.Exception.UnknownOption.UnknownOption instance GHC.Exception.Type.Exception Imp.Exception.UnknownOption.UnknownOption module Imp.Extra.Exception isType :: forall e. Exception e => SomeException -> Bool module Imp.Extra.ImportDecl toModuleName :: ImportDecl GhcPs -> ModuleName module Imp.Extra.Located overValue :: Functor f => (a -> f b) -> Located a -> f (Located b) module Imp.Extra.ParsedResult overModule :: Functor f => (HsParsedModule -> f HsParsedModule) -> ParsedResult -> f ParsedResult module Imp.Extra.ReadP run :: ReadP a -> String -> Maybe a module Imp.Extra.ModuleName fromString :: MonadThrow m => String -> m ModuleName module Imp.Extra.SrcSpanAnnN leftmostSmallest :: SrcSpanAnnN -> SrcSpanAnnN -> SrcSpanAnnN module Imp.Ghc type HsModulePs = HsModule GhcPs newImportDecl :: ModuleName -> ImportDecl GhcPs module Imp.Extra.HsParsedModule overModule :: Functor f => (Located HsModulePs -> f (Located HsModulePs)) -> HsParsedModule -> f HsParsedModule module Imp.Extra.HsModule overDecls :: Functor f => ([LHsDecl GhcPs] -> f [LHsDecl GhcPs]) -> HsModulePs -> f HsModulePs overImports :: ([LImportDecl GhcPs] -> [LImportDecl GhcPs]) -> HsModulePs -> HsModulePs module Imp.Type.Flag data Flag Alias :: String -> Flag Help :: Bool -> Flag Package :: String -> Flag Version :: Bool -> Flag options :: [OptDescr Flag] fromArguments :: MonadThrow m => [String] -> m [Flag] instance GHC.Show.Show Imp.Type.Flag.Flag instance GHC.Classes.Eq Imp.Type.Flag.Flag module Imp.Exception.ShowHelp data ShowHelp ShowHelp :: ShowHelp new :: ShowHelp instance GHC.Show.Show Imp.Exception.ShowHelp.ShowHelp instance GHC.Classes.Eq Imp.Exception.ShowHelp.ShowHelp instance GHC.Exception.Type.Exception Imp.Exception.ShowHelp.ShowHelp module Imp.Type.PackageName newtype PackageName PackageName :: PackageName -> PackageName fromCabal :: PackageName -> PackageName toCabal :: PackageName -> PackageName fromString :: MonadThrow m => String -> m PackageName toStringLiteral :: PackageName -> StringLiteral instance GHC.Show.Show Imp.Type.PackageName.PackageName instance GHC.Classes.Eq Imp.Type.PackageName.PackageName module Imp.Type.Source data Source Implicit :: Source Explicit :: ModuleName -> Source fromModuleName :: ModuleName -> Source fromString :: MonadThrow m => String -> m Source isImplicit :: Source -> Bool instance GHC.Show.Show Imp.Type.Source.Source instance GHC.Classes.Eq Imp.Type.Source.Source module Imp.Type.Target newtype Target Target :: ModuleName -> Target fromModuleName :: ModuleName -> Target fromString :: MonadThrow m => String -> m Target toModuleName :: Target -> ModuleName instance GHC.Show.Show Imp.Type.Target.Target instance GHC.Classes.Ord Imp.Type.Target.Target instance GHC.Classes.Eq Imp.Type.Target.Target module Imp.Type.Package data Package Package :: Target -> PackageName -> Package [module_] :: Package -> Target [package] :: Package -> PackageName fromString :: MonadThrow m => String -> m Package toMap :: [Package] -> Map Target PackageName instance GHC.Show.Show Imp.Type.Package.Package instance GHC.Classes.Eq Imp.Type.Package.Package module Imp.Type.Alias data Alias Alias :: Source -> Target -> Alias [source] :: Alias -> Source [target] :: Alias -> Target fromString :: MonadThrow m => String -> m Alias toMap :: [Alias] -> Map Target Source instance GHC.Show.Show Imp.Type.Alias.Alias instance GHC.Classes.Eq Imp.Type.Alias.Alias module Imp.Type.Config data Config Config :: [Alias] -> Bool -> [Package] -> Bool -> Config [aliases] :: Config -> [Alias] [help] :: Config -> Bool [packages] :: Config -> [Package] [version] :: Config -> Bool initial :: Config fromFlags :: MonadThrow m => [Flag] -> m Config applyFlag :: MonadThrow m => Config -> Flag -> m Config instance GHC.Show.Show Imp.Type.Config.Config instance GHC.Classes.Eq Imp.Type.Config.Config module Imp.Exception.ShowVersion data ShowVersion ShowVersion :: ShowVersion new :: ShowVersion instance GHC.Show.Show Imp.Exception.ShowVersion.ShowVersion instance GHC.Classes.Eq Imp.Exception.ShowVersion.ShowVersion instance GHC.Exception.Type.Exception Imp.Exception.ShowVersion.ShowVersion module Imp.Type.Context data Context Context :: Map Target Source -> Map Target PackageName -> Context [aliases] :: Context -> Map Target Source [packages] :: Context -> Map Target PackageName fromConfig :: MonadThrow m => Config -> m Context instance GHC.Show.Show Imp.Type.Context.Context instance GHC.Classes.Eq Imp.Type.Context.Context module Imp plugin :: Plugin parsedResultAction :: [CommandLineOption] -> ModSummary -> ParsedResult -> Hsc ParsedResult handleException :: SomeException -> IO a exceptionToExitCode :: SomeException -> ExitCode imp :: MonadThrow m => [String] -> ModuleName -> Located HsModulePs -> m (Located HsModulePs) updateQualifiedIdentifiers :: Data a => ModuleName -> Set ModuleName -> Set ModuleName -> a -> State (Map ModuleName SrcSpanAnnN) a overData :: (Data a, Monad m) => (forall b. Data b => b -> m b) -> a -> m a updateImports :: ModuleName -> Map Target Source -> Map Target PackageName -> Map ModuleName SrcSpanAnnN -> [LImportDecl GhcPs] -> [LImportDecl GhcPs] createImport :: Map Target Source -> Map Target PackageName -> ModuleName -> Maybe (ImportDecl GhcPs)