stack-3.9.1: A program for developing Haskell projects
LicenseBSD-3-Clause
Safe HaskellNone
LanguageGHC2024

Stack.Types.Cache

Description

 
Synopsis

Documentation

type FileCache = Map FilePath FileCacheInfo Source #

Type synonym representing caches of files and information about them sufficient to identify if they have changed subsequently.

newtype BuildFileCache Source #

Type representing caches of information about files sufficient to identify if they have changed subsequently. Stored on disk.

Constructors

BuildFileCache 

Fields

Instances

Instances details
FromJSON BuildFileCache Source # 
Instance details

Defined in Stack.Types.Cache

ToJSON BuildFileCache Source # 
Instance details

Defined in Stack.Types.Cache

NFData BuildFileCache Source # 
Instance details

Defined in Stack.Types.Cache

Methods

rnf :: BuildFileCache -> () #

Generic BuildFileCache Source # 
Instance details

Defined in Stack.Types.Cache

Associated Types

type Rep BuildFileCache 
Instance details

Defined in Stack.Types.Cache

type Rep BuildFileCache = D1 ('MetaData "BuildFileCache" "Stack.Types.Cache" "stack-3.9.1-B4Ctg8fkjlTKHjOvS8wzBh" 'True) (C1 ('MetaCons "BuildFileCache" 'PrefixI 'True) (S1 ('MetaSel ('Just "fileCache") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 FileCache)))
Show BuildFileCache Source # 
Instance details

Defined in Stack.Types.Cache

Eq BuildFileCache Source # 
Instance details

Defined in Stack.Types.Cache

type Rep BuildFileCache Source # 
Instance details

Defined in Stack.Types.Cache

type Rep BuildFileCache = D1 ('MetaData "BuildFileCache" "Stack.Types.Cache" "stack-3.9.1-B4Ctg8fkjlTKHjOvS8wzBh" 'True) (C1 ('MetaCons "BuildFileCache" 'PrefixI 'True) (S1 ('MetaSel ('Just "fileCache") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 FileCache)))

newtype FileCacheInfo Source #

Type representing information about a file sufficient to identify if it has changed subsequently.

Constructors

FileCacheInfo 

Fields

Instances

Instances details
FromJSON FileCacheInfo Source # 
Instance details

Defined in Stack.Types.Cache

ToJSON FileCacheInfo Source # 
Instance details

Defined in Stack.Types.Cache

NFData FileCacheInfo Source # 
Instance details

Defined in Stack.Types.Cache

Methods

rnf :: FileCacheInfo -> () #

Generic FileCacheInfo Source # 
Instance details

Defined in Stack.Types.Cache

Associated Types

type Rep FileCacheInfo 
Instance details

Defined in Stack.Types.Cache

type Rep FileCacheInfo = D1 ('MetaData "FileCacheInfo" "Stack.Types.Cache" "stack-3.9.1-B4Ctg8fkjlTKHjOvS8wzBh" 'True) (C1 ('MetaCons "FileCacheInfo" 'PrefixI 'True) (S1 ('MetaSel ('Just "hash") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 SHA256)))
Show FileCacheInfo Source # 
Instance details

Defined in Stack.Types.Cache

Methods

showsPrec :: Int -> FileCacheInfo -> ShowS

show :: FileCacheInfo -> String #

showList :: [FileCacheInfo] -> ShowS

Eq FileCacheInfo Source # 
Instance details

Defined in Stack.Types.Cache

type Rep FileCacheInfo Source # 
Instance details

Defined in Stack.Types.Cache

type Rep FileCacheInfo = D1 ('MetaData "FileCacheInfo" "Stack.Types.Cache" "stack-3.9.1-B4Ctg8fkjlTKHjOvS8wzBh" 'True) (C1 ('MetaCons "FileCacheInfo" 'PrefixI 'True) (S1 ('MetaSel ('Just "hash") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 SHA256)))

data ConfigCache Source #

Stored in the project's SQLite database to know whether the Cabal configuration has changed or libarary or executable Cabal flags have changed.

Constructors

ConfigCache 

Fields

Instances

Instances details
NFData ConfigCache Source # 
Instance details

Defined in Stack.Types.Cache

Methods

rnf :: ConfigCache -> () #

Data ConfigCache Source # 
Instance details

Defined in Stack.Types.Cache

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> ConfigCache -> c ConfigCache #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c ConfigCache #

toConstr :: ConfigCache -> Constr #

dataTypeOf :: ConfigCache -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c ConfigCache) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c ConfigCache) #

gmapT :: (forall b. Data b => b -> b) -> ConfigCache -> ConfigCache #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> ConfigCache -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> ConfigCache -> r #

gmapQ :: (forall d. Data d => d -> u) -> ConfigCache -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> ConfigCache -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> ConfigCache -> m ConfigCache #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> ConfigCache -> m ConfigCache #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> ConfigCache -> m ConfigCache #

Generic ConfigCache Source # 
Instance details

Defined in Stack.Types.Cache

Associated Types

type Rep ConfigCache 
Instance details

Defined in Stack.Types.Cache

type Rep ConfigCache = D1 ('MetaData "ConfigCache" "Stack.Types.Cache" "stack-3.9.1-B4Ctg8fkjlTKHjOvS8wzBh" 'False) (C1 ('MetaCons "ConfigCache" 'PrefixI 'True) ((S1 ('MetaSel ('Just "configureOpts") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 ConfigureOpts) :*: (S1 ('MetaSel ('Just "deps") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Set GhcPkgId)) :*: S1 ('MetaSel ('Just "components") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Set ByteString)))) :*: (S1 ('MetaSel ('Just "buildHaddocks") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Bool) :*: (S1 ('MetaSel ('Just "pkgSrc") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 CachePkgSrc) :*: S1 ('MetaSel ('Just "pathEnvVar") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Text)))))

Methods

from :: ConfigCache -> Rep ConfigCache x

to :: Rep ConfigCache x -> ConfigCache

Show ConfigCache Source # 
Instance details

Defined in Stack.Types.Cache

Methods

showsPrec :: Int -> ConfigCache -> ShowS

show :: ConfigCache -> String #

showList :: [ConfigCache] -> ShowS

Eq ConfigCache Source # 
Instance details

Defined in Stack.Types.Cache

type Rep ConfigCache Source # 
Instance details

Defined in Stack.Types.Cache

type Rep ConfigCache = D1 ('MetaData "ConfigCache" "Stack.Types.Cache" "stack-3.9.1-B4Ctg8fkjlTKHjOvS8wzBh" 'False) (C1 ('MetaCons "ConfigCache" 'PrefixI 'True) ((S1 ('MetaSel ('Just "configureOpts") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 ConfigureOpts) :*: (S1 ('MetaSel ('Just "deps") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Set GhcPkgId)) :*: S1 ('MetaSel ('Just "components") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Set ByteString)))) :*: (S1 ('MetaSel ('Just "buildHaddocks") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Bool) :*: (S1 ('MetaSel ('Just "pkgSrc") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 CachePkgSrc) :*: S1 ('MetaSel ('Just "pathEnvVar") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Text)))))

data CachePkgSrc Source #

Instances

Instances details
NFData CachePkgSrc Source # 
Instance details

Defined in Stack.Types.Cache

Methods

rnf :: CachePkgSrc -> () #

Data CachePkgSrc Source # 
Instance details

Defined in Stack.Types.Cache

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> CachePkgSrc -> c CachePkgSrc #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c CachePkgSrc #

toConstr :: CachePkgSrc -> Constr #

dataTypeOf :: CachePkgSrc -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c CachePkgSrc) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c CachePkgSrc) #

gmapT :: (forall b. Data b => b -> b) -> CachePkgSrc -> CachePkgSrc #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> CachePkgSrc -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> CachePkgSrc -> r #

gmapQ :: (forall d. Data d => d -> u) -> CachePkgSrc -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> CachePkgSrc -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> CachePkgSrc -> m CachePkgSrc #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> CachePkgSrc -> m CachePkgSrc #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> CachePkgSrc -> m CachePkgSrc #

Generic CachePkgSrc Source # 
Instance details

Defined in Stack.Types.Cache

Associated Types

type Rep CachePkgSrc 
Instance details

Defined in Stack.Types.Cache

type Rep CachePkgSrc = D1 ('MetaData "CachePkgSrc" "Stack.Types.Cache" "stack-3.9.1-B4Ctg8fkjlTKHjOvS8wzBh" 'False) (C1 ('MetaCons "CacheSrcUpstream" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "CacheSrcLocal" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 FilePath)))

Methods

from :: CachePkgSrc -> Rep CachePkgSrc x

to :: Rep CachePkgSrc x -> CachePkgSrc

Read CachePkgSrc Source # 
Instance details

Defined in Stack.Types.Cache

Methods

readsPrec :: Int -> ReadS CachePkgSrc

readList :: ReadS [CachePkgSrc]

readPrec :: ReadPrec CachePkgSrc

readListPrec :: ReadPrec [CachePkgSrc]

Show CachePkgSrc Source # 
Instance details

Defined in Stack.Types.Cache

Methods

showsPrec :: Int -> CachePkgSrc -> ShowS

show :: CachePkgSrc -> String #

showList :: [CachePkgSrc] -> ShowS

Eq CachePkgSrc Source # 
Instance details

Defined in Stack.Types.Cache

PersistField CachePkgSrc Source # 
Instance details

Defined in Stack.Types.Cache

Methods

toPersistValue :: CachePkgSrc -> PersistValue

fromPersistValue :: PersistValue -> Either Text CachePkgSrc

PersistFieldSql CachePkgSrc Source # 
Instance details

Defined in Stack.Types.Cache

Methods

sqlType :: Proxy CachePkgSrc -> SqlType

SymbolToField "pkgSrc" ConfigCacheParent CachePkgSrc 
Instance details

Defined in Stack.Storage.Project

type Rep CachePkgSrc Source # 
Instance details

Defined in Stack.Types.Cache

type Rep CachePkgSrc = D1 ('MetaData "CachePkgSrc" "Stack.Types.Cache" "stack-3.9.1-B4Ctg8fkjlTKHjOvS8wzBh" 'False) (C1 ('MetaCons "CacheSrcUpstream" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "CacheSrcLocal" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 FilePath)))

data PrecompiledCache base Source #

Information on a compiled package: the library .conf file (if relevant), the sub-libraries (if present) and all of the executable paths.

Constructors

PrecompiledCache 

Fields

Instances

Instances details
NFData (PrecompiledCache Abs) Source # 
Instance details

Defined in Stack.Types.Cache

Methods

rnf :: PrecompiledCache Abs -> () #

NFData (PrecompiledCache Rel) Source # 
Instance details

Defined in Stack.Types.Cache

Methods

rnf :: PrecompiledCache Rel -> () #

Generic (PrecompiledCache base) Source # 
Instance details

Defined in Stack.Types.Cache

Associated Types

type Rep (PrecompiledCache base) 
Instance details

Defined in Stack.Types.Cache

type Rep (PrecompiledCache base) = D1 ('MetaData "PrecompiledCache" "Stack.Types.Cache" "stack-3.9.1-B4Ctg8fkjlTKHjOvS8wzBh" 'False) (C1 ('MetaCons "PrecompiledCache" 'PrefixI 'True) (S1 ('MetaSel ('Just "library") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Maybe (Path base File))) :*: (S1 ('MetaSel ('Just "subLibs") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 [Path base File]) :*: S1 ('MetaSel ('Just "exes") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 [Path base File]))))

Methods

from :: PrecompiledCache base -> Rep (PrecompiledCache base) x

to :: Rep (PrecompiledCache base) x -> PrecompiledCache base

Show (PrecompiledCache base) Source # 
Instance details

Defined in Stack.Types.Cache

Methods

showsPrec :: Int -> PrecompiledCache base -> ShowS

show :: PrecompiledCache base -> String #

showList :: [PrecompiledCache base] -> ShowS

Eq (PrecompiledCache base) Source # 
Instance details

Defined in Stack.Types.Cache

type Rep (PrecompiledCache base) Source # 
Instance details

Defined in Stack.Types.Cache

type Rep (PrecompiledCache base) = D1 ('MetaData "PrecompiledCache" "Stack.Types.Cache" "stack-3.9.1-B4Ctg8fkjlTKHjOvS8wzBh" 'False) (C1 ('MetaCons "PrecompiledCache" 'PrefixI 'True) (S1 ('MetaSel ('Just "library") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Maybe (Path base File))) :*: (S1 ('MetaSel ('Just "subLibs") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 [Path base File]) :*: S1 ('MetaSel ('Just "exes") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 [Path base File]))))

data ConfigCacheType Source #

Type representing types of cache in the Stack project SQLite database.

Constructors

ConfigCacheTypeConfig

Cabal configuration cache.

ConfigCacheTypeFlagLibrary GhcPkgId

Library Cabal flag cache.

ConfigCacheTypeFlagExecutable PackageIdentifier

Executable Cabal flag cache.

Instances

Instances details
Show ConfigCacheType Source # 
Instance details

Defined in Stack.Types.Cache

Eq ConfigCacheType Source # 
Instance details

Defined in Stack.Types.Cache

PersistField ConfigCacheType Source # 
Instance details

Defined in Stack.Types.Cache

Methods

toPersistValue :: ConfigCacheType -> PersistValue

fromPersistValue :: PersistValue -> Either Text ConfigCacheType

PersistFieldSql ConfigCacheType Source # 
Instance details

Defined in Stack.Types.Cache

Methods

sqlType :: Proxy ConfigCacheType -> SqlType

SymbolToField "type" ConfigCacheParent ConfigCacheType 
Instance details

Defined in Stack.Storage.Project

data Action Source #

Type representing actions for which the last time the action was performed should be cached.

Constructors

UpgradeCheck 

Instances

Instances details
Show Action Source # 
Instance details

Defined in Stack.Types.Cache

Methods

showsPrec :: Int -> Action -> ShowS

show :: Action -> String #

showList :: [Action] -> ShowS

Eq Action Source # 
Instance details

Defined in Stack.Types.Cache

Methods

(==) :: Action -> Action -> Bool #

(/=) :: Action -> Action -> Bool #

Ord Action Source # 
Instance details

Defined in Stack.Types.Cache

PersistField Action Source # 
Instance details

Defined in Stack.Types.Cache

Methods

toPersistValue :: Action -> PersistValue

fromPersistValue :: PersistValue -> Either Text Action

PersistFieldSql Action Source # 
Instance details

Defined in Stack.Types.Cache

Methods

sqlType :: Proxy Action -> SqlType