stack-2.15.1: The Haskell Tool Stack
Safe HaskellSafe-Inferred
LanguageGHC2021

Stack.Types.Package

Synopsis

Documentation

data BuildInfoOpts Source #

GHC options based on cabal information and ghc-options.

Constructors

BuildInfoOpts 

Fields

Instances

Instances details
Show BuildInfoOpts Source # 
Instance details

Defined in Stack.Types.Package

newtype ExeName Source #

Name of an executable.

Constructors

ExeName 

Fields

Instances

Instances details
Data ExeName Source # 
Instance details

Defined in Stack.Types.Package

Methods

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

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

toConstr :: ExeName -> Constr #

dataTypeOf :: ExeName -> DataType #

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

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

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

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

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

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

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

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

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

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

IsString ExeName Source # 
Instance details

Defined in Stack.Types.Package

Methods

fromString :: String -> ExeName #

Generic ExeName Source # 
Instance details

Defined in Stack.Types.Package

Associated Types

type Rep ExeName :: Type -> Type #

Methods

from :: ExeName -> Rep ExeName x #

to :: Rep ExeName x -> ExeName #

Show ExeName Source # 
Instance details

Defined in Stack.Types.Package

NFData ExeName Source # 
Instance details

Defined in Stack.Types.Package

Methods

rnf :: ExeName -> () #

Eq ExeName Source # 
Instance details

Defined in Stack.Types.Package

Methods

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

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

Ord ExeName Source # 
Instance details

Defined in Stack.Types.Package

Hashable ExeName Source # 
Instance details

Defined in Stack.Types.Package

Methods

hashWithSalt :: Int -> ExeName -> Int #

hash :: ExeName -> Int #

type Rep ExeName Source # 
Instance details

Defined in Stack.Types.Package

type Rep ExeName = D1 ('MetaData "ExeName" "Stack.Types.Package" "stack-2.15.1-BDsvBT8AtC4AOYQNYrK19c" 'True) (C1 ('MetaCons "ExeName" 'PrefixI 'True) (S1 ('MetaSel ('Just "exeName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text)))

newtype FileCacheInfo Source #

Constructors

FileCacheInfo 

Fields

Instances

Instances details
FromJSON FileCacheInfo Source # 
Instance details

Defined in Stack.Types.Package

ToJSON FileCacheInfo Source # 
Instance details

Defined in Stack.Types.Package

Generic FileCacheInfo Source # 
Instance details

Defined in Stack.Types.Package

Associated Types

type Rep FileCacheInfo :: Type -> Type #

Show FileCacheInfo Source # 
Instance details

Defined in Stack.Types.Package

NFData FileCacheInfo Source # 
Instance details

Defined in Stack.Types.Package

Methods

rnf :: FileCacheInfo -> () #

Eq FileCacheInfo Source # 
Instance details

Defined in Stack.Types.Package

type Rep FileCacheInfo Source # 
Instance details

Defined in Stack.Types.Package

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

data InstallLocation Source #

Type representing user package databases that packages can be installed into.

Constructors

Snap

The write-only package database, formerly known as the snapshot database.

Local

The mutable package database, formerly known as the local database.

data Installed Source #

Type representing information about what is installed.

Constructors

Library PackageIdentifier InstalledLibraryInfo

A library, including its installed package id and, optionally, its license.

Executable PackageIdentifier

An executable.

Instances

Instances details
Show Installed Source # 
Instance details

Defined in Stack.Types.Installed

Eq Installed Source # 
Instance details

Defined in Stack.Types.Installed

data InstalledPackageLocation Source #

Type representing user (non-global) package databases that can provide installed packages.

Constructors

InstalledTo InstallLocation

A package database that a package can be installed into.

ExtraPkgDb

An 'extra' package database, specified by extra-package-dbs.

data LocalPackage Source #

Information on a locally available package of source code.

Constructors

LocalPackage 

Fields

Instances

Instances details
Show LocalPackage Source # 
Instance details

Defined in Stack.Types.Package

newtype MemoizedWith env a Source #

Constructors

MemoizedWith 

Fields

Instances

Instances details
Applicative (MemoizedWith env) Source # 
Instance details

Defined in Stack.Types.Package

Methods

pure :: a -> MemoizedWith env a #

(<*>) :: MemoizedWith env (a -> b) -> MemoizedWith env a -> MemoizedWith env b #

liftA2 :: (a -> b -> c) -> MemoizedWith env a -> MemoizedWith env b -> MemoizedWith env c #

(*>) :: MemoizedWith env a -> MemoizedWith env b -> MemoizedWith env b #

(<*) :: MemoizedWith env a -> MemoizedWith env b -> MemoizedWith env a #

Functor (MemoizedWith env) Source # 
Instance details

Defined in Stack.Types.Package

Methods

fmap :: (a -> b) -> MemoizedWith env a -> MemoizedWith env b #

(<$) :: a -> MemoizedWith env b -> MemoizedWith env a #

Monad (MemoizedWith env) Source # 
Instance details

Defined in Stack.Types.Package

Methods

(>>=) :: MemoizedWith env a -> (a -> MemoizedWith env b) -> MemoizedWith env b #

(>>) :: MemoizedWith env a -> MemoizedWith env b -> MemoizedWith env b #

return :: a -> MemoizedWith env a #

Show (MemoizedWith env a) Source # 
Instance details

Defined in Stack.Types.Package

Methods

showsPrec :: Int -> MemoizedWith env a -> ShowS #

show :: MemoizedWith env a -> String #

showList :: [MemoizedWith env a] -> ShowS #

data Package Source #

Some package info.

Constructors

Package 

Fields

Instances

Instances details
Show Package Source # 
Instance details

Defined in Stack.Types.Package

Eq Package Source #

Compares the package name.

Instance details

Defined in Stack.Types.Package

Methods

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

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

Ord Package Source #

Compares the package name.

Instance details

Defined in Stack.Types.Package

data PackageConfig Source #

Package build configuration

Constructors

PackageConfig 

Fields

Instances

Instances details
Show PackageConfig Source # 
Instance details

Defined in Stack.Types.Package

data PackageDatabase Source #

Type representing package databases that can provide installed packages.

Constructors

GlobalPkgDb

GHC's global package database.

UserPkgDb InstalledPackageLocation (Path Abs Dir)

A user package database.

data PackageDbVariety Source #

Type representing varieties of package databases that can provide installed packages.

Constructors

GlobalDb

GHC's global package database.

ExtraDb

An 'extra' package database, specified by extra-package-dbs.

WriteOnlyDb

The write-only package database, for immutable packages.

MutableDb

The mutable package database.

data PackageSource Source #

Where the package's source is located: local directory or package index

Constructors

PSFilePath LocalPackage

Package which exist on the filesystem

PSRemote PackageLocationImmutable Version FromSnapshot CommonPackage

Package which is downloaded remotely.

Instances

Instances details
Show PackageSource Source # 
Instance details

Defined in Stack.Types.Package

dotCabalCFilePath :: DotCabalPath -> Maybe (Path Abs File) Source #

Get the c file path.

dotCabalMain :: DotCabalDescriptor -> Maybe FilePath Source #

Maybe get the main name from the .cabal descriptor.

dotCabalModule :: DotCabalDescriptor -> Maybe ModuleName Source #

Maybe get the module name from the .cabal descriptor.

installedMapGhcPkgId :: PackageIdentifier -> InstalledLibraryInfo -> Map PackageIdentifier GhcPkgId Source #

Gathers all the GhcPkgId provided by a library into a map

memoizeRefWith :: MonadIO m => RIO env a -> m (MemoizedWith env a) Source #

toPackageDbVariety :: PackageDatabase -> PackageDbVariety Source #

A function to yield the variety of package database for a given package database that can provide installed packages.