| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
HieDb.Types
Contents
Synopsis
- newtype HieDb = HieDb {}
- data HieDbException = IncompatibleSchemaVersion {}
- setHieTrace :: HieDb -> Maybe (Text -> IO ()) -> IO ()
- data SourceFile
- data ModuleInfo = ModuleInfo {}
- type Res a = a :. ModuleInfo
- toNsChar :: NameSpace -> Char
- fromNsChar :: Char -> Maybe NameSpace
- data HieModuleRow = HieModuleRow {}
- data RefRow = RefRow {
- refSrc :: FilePath
- refNameOcc :: OccName
- refNameMod :: ModuleName
- refNameUnit :: UnitId
- refSLine :: Int
- refSCol :: Int
- refELine :: Int
- refECol :: Int
- data DeclRow = DeclRow {}
- data TypeName = TypeName {}
- data TypeRef = TypeRef {
- typeRefOccId :: Int64
- typeRefHieFile :: FilePath
- typeRefDepth :: Int
- typeRefSLine :: Int
- typeRefSCol :: Int
- typeRefELine :: Int
- typeRefECol :: Int
- data DefRow = DefRow {}
- class Monad m => NameCacheMonad m where
- newtype DbMonadT m a = DbMonadT {
- runDbMonad :: ReaderT (IORef NameCache) m a
- type DbMonad = DbMonadT IO
- runDbM :: IORef NameCache -> DbMonad a -> IO a
- data HieDbErr
- data Symbol = Symbol {}
- readNameSpace :: ReadP NameSpace
- readColon :: ReadP ()
- readSymbol :: ReadP Symbol
- newtype LibDir = LibDir FilePath
- type HieTarget = Either FilePath (ModuleName, Maybe UnitId)
Documentation
data HieDbException Source #
Constructors
| IncompatibleSchemaVersion | |
Fields | |
Instances
| Eq HieDbException Source # | |
Defined in HieDb.Types Methods (==) :: HieDbException -> HieDbException -> Bool # (/=) :: HieDbException -> HieDbException -> Bool # | |
| Ord HieDbException Source # | |
Defined in HieDb.Types Methods compare :: HieDbException -> HieDbException -> Ordering # (<) :: HieDbException -> HieDbException -> Bool # (<=) :: HieDbException -> HieDbException -> Bool # (>) :: HieDbException -> HieDbException -> Bool # (>=) :: HieDbException -> HieDbException -> Bool # max :: HieDbException -> HieDbException -> HieDbException # min :: HieDbException -> HieDbException -> HieDbException # | |
| Show HieDbException Source # | |
Defined in HieDb.Types Methods showsPrec :: Int -> HieDbException -> ShowS # show :: HieDbException -> String # showList :: [HieDbException] -> ShowS # | |
| Exception HieDbException Source # | |
Defined in HieDb.Types Methods toException :: HieDbException -> SomeException # | |
data SourceFile Source #
Encodes the original haskell source file of a module, along with whether it is "real" or not A file is "real" if it comes from the user project, as opposed to a dependency
data ModuleInfo Source #
Constructors
| ModuleInfo | |
Fields
| |
Instances
| Eq ModuleInfo Source # | |
Defined in HieDb.Types | |
| Show ModuleInfo Source # | |
Defined in HieDb.Types Methods showsPrec :: Int -> ModuleInfo -> ShowS # show :: ModuleInfo -> String # showList :: [ModuleInfo] -> ShowS # | |
| FromRow ModuleInfo Source # | |
Defined in HieDb.Types Methods | |
| ToRow ModuleInfo Source # | |
Defined in HieDb.Types Methods toRow :: ModuleInfo -> [SQLData] # | |
type Res a = a :. ModuleInfo Source #
data HieModuleRow Source #
Constructors
| HieModuleRow | |
Fields
| |
Instances
| Eq HieModuleRow Source # | |
Defined in HieDb.Types | |
| Show HieModuleRow Source # | |
Defined in HieDb.Types Methods showsPrec :: Int -> HieModuleRow -> ShowS # show :: HieModuleRow -> String # showList :: [HieModuleRow] -> ShowS # | |
| FromRow HieModuleRow Source # | |
Defined in HieDb.Types Methods | |
| ToRow HieModuleRow Source # | |
Defined in HieDb.Types Methods toRow :: HieModuleRow -> [SQLData] # | |
Constructors
| RefRow | |
Fields
| |
Constructors
| DeclRow | |
Constructors
| TypeRef | |
Fields
| |
Constructors
| DefRow | |
class Monad m => NameCacheMonad m where Source #
Monad with access to NameCacheUpdater, which is needed to deserialize .hie files
Methods
Instances
| MonadIO m => NameCacheMonad (DbMonadT m) Source # | |
Defined in HieDb.Types Methods | |
Constructors
| DbMonadT | |
Fields
| |
Instances
| MonadTrans DbMonadT Source # | |
Defined in HieDb.Types | |
| Monad m => Monad (DbMonadT m) Source # | |
| Monad m => Functor (DbMonadT m) Source # | |
| Monad m => Applicative (DbMonadT m) Source # | |
Defined in HieDb.Types | |
| MonadIO m => MonadIO (DbMonadT m) Source # | |
Defined in HieDb.Types | |
| MonadIO m => NameCacheMonad (DbMonadT m) Source # | |
Defined in HieDb.Types Methods | |
Constructors
| NotIndexed ModuleName (Maybe UnitId) | |
| AmbiguousUnitId (NonEmpty ModuleInfo) | |
| NameNotFound OccName (Maybe ModuleName) (Maybe UnitId) | |
| NoNameAtPoint HieTarget (Int, Int) | |
| NameUnhelpfulSpan Name String |
readSymbol :: ReadP Symbol Source #
GHC Library Directory. Typically you'll want to use
libdir from ghc-paths
type HieTarget = Either FilePath (ModuleName, Maybe UnitId) Source #
A way to specify which HieFile to operate on.
Either the path to .hie file is given in the Left
Or ModuleName (with optional UnitId) is given in the Right
Orphan instances
| FromField Fingerprint Source # | |
Methods | |
| FromField ModuleName Source # | |
Methods | |
| FromField UnitId Source # | |
Methods | |
| FromField OccName Source # | |
Methods | |
| ToField Fingerprint Source # | |
Methods toField :: Fingerprint -> SQLData # | |
| ToField ModuleName Source # | |
Methods toField :: ModuleName -> SQLData # | |
| ToField UnitId Source # | |
| ToField OccName Source # | |