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

Stack.Types.NamedComponent

Description

Module exporting the NamedComponent type and related functions.

Synopsis

Documentation

data NamedComponent Source #

Type representing components of a fully-resolved Cabal package.

Constructors

CLib 
CSubLib !Text 
CFlib !Text 
CExe !Text 
CTest !Text 
CBench !Text 

Instances

Instances details
Show NamedComponent Source # 
Instance details

Defined in Stack.Types.NamedComponent

Eq NamedComponent Source # 
Instance details

Defined in Stack.Types.NamedComponent

Ord NamedComponent Source # 
Instance details

Defined in Stack.Types.NamedComponent

HasField "qualifiedName" StackBenchmark NamedComponent 
Instance details

Defined in Stack.Types.Component

HasField "qualifiedName" StackExecutable NamedComponent 
Instance details

Defined in Stack.Types.Component

HasField "qualifiedName" StackForeignLibrary NamedComponent 
Instance details

Defined in Stack.Types.Component

HasField "qualifiedName" StackLibrary NamedComponent 
Instance details

Defined in Stack.Types.Component

HasField "qualifiedName" StackTestSuite NamedComponent 
Instance details

Defined in Stack.Types.Component

renderComponentTo :: IsString a => NamedComponent -> a Source #

Render a component to anything with an IsString instance. For Text prefer renderComponent.

splitComponents :: [NamedComponent] -> (Set Text, Set Text, Set Text, Set Text) Source #

A function to split the given list of components into sets of the names of the named components by the type of component (sub-libraries, executables, test-suites, benchmarks), ignoring any main unnamed library component or foreign library component. This function should be used very sparingly; more often than not, you can keep/parse the components split from the start.