hie-bios-0.14.0: Set up a GHC API session

Safe Haskell | None
Language | Haskell2010

HIE.Bios.Config.YAML

Description

Datatypes for parsing `hie.yaml` files

# Documentation

data CradleConfigYAML a #

Constructors

CradleConfigYAML |

Fields

- cradle :: CradleComponent a
- dependencies :: Maybe [FilePath]

#### Instances

Instances details

FromJSON a => FromJSON (CradleConfigYAML a) # |
Instance details Defined in HIE.Bios.Config.YAML Methods parseJSON :: Value -> Parser (CradleConfigYAML a) # parseJSONList :: Value -> Parser [CradleConfigYAML a] # omittedField :: Maybe (CradleConfigYAML a) #
Generic (CradleConfigYAML a) # |

Instance details

Defined in HIE.Bios.Config.YAML

Associated Types

type Rep (CradleConfigYAML a) |

Instance details

Defined in HIE.Bios.Config.YAML

type Rep (CradleConfigYAML a) = D1 ('MetaData "CradleConfigYAML" "HIE.Bios.Config.YAML" "hie-bios-0.14.0-B6skGdLrNyMgA4W7MNpMu" 'False) (C1 ('MetaCons "CradleConfigYAML" 'PrefixI 'True) (S1 ('MetaSel ('Just "cradle") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (CradleComponent a)) :*: S1 ('MetaSel ('Just "dependencies") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe [FilePath]))))

Methods

from :: CradleConfigYAML a -> Rep (CradleConfigYAML a) x #

to :: Rep (CradleConfigYAML a) x -> CradleConfigYAML a #

type Rep (CradleConfigYAML a) # |

Instance details

Defined in HIE.Bios.Config.YAML

type Rep (CradleConfigYAML a) = D1 ('MetaData "CradleConfigYAML" "HIE.Bios.Config.YAML" "hie-bios-0.14.0-B6skGdLrNyMgA4W7MNpMu" 'False) (C1 ('MetaCons "CradleConfigYAML" 'PrefixI 'True) (S1 ('MetaSel ('Just "cradle") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (CradleComponent a)) :*: S1 ('MetaSel ('Just "dependencies") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe [FilePath]))))

data CradleComponent a #

Constructors

Multi [MultiSubComponent a] |
Cabal CabalConfig |
Stack StackConfig |
Direct DirectConfig |
Bios BiosConfig |
None NoneConfig |
Other (OtherConfig a) |

#### Instances

Instances details

FromJSON a => FromJSON (CradleComponent a) # |
Instance details Defined in HIE.Bios.Config.YAML Methods parseJSON :: Value -> Parser (CradleComponent a) # parseJSONList :: Value -> Parser [CradleComponent a] # omittedField :: Maybe (CradleComponent a) #
Generic (CradleComponent a) # |

Instance details

Defined in HIE.Bios.Config.YAML

Associated Types

type Rep (CradleComponent a) |

Instance details

Defined in HIE.Bios.Config.YAML

type Rep (CradleComponent a) = D1 ('MetaData "CradleComponent" "HIE.Bios.Config.YAML" "hie-bios-0.14.0-B6skGdLrNyMgA4W7MNpMu" 'False) ((C1 ('MetaCons "Multi" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [MultiSubComponent a])) :+: (C1 ('MetaCons "Cabal" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 CabalConfig)) :+: C1 ('MetaCons "Stack" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 StackConfig)))) :+: ((C1 ('MetaCons "Direct" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 DirectConfig)) :+: C1 ('MetaCons "Bios" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 BiosConfig))) :+: (C1 ('MetaCons "None" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 NoneConfig)) :+: C1 ('MetaCons "Other" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (OtherConfig a))))))

Methods

from :: CradleComponent a -> Rep (CradleComponent a) x #

to :: Rep (CradleComponent a) x -> CradleComponent a #

type Rep (CradleComponent a) # |

Instance details

Defined in HIE.Bios.Config.YAML

type Rep (CradleComponent a) = D1 ('MetaData "CradleComponent" "HIE.Bios.Config.YAML" "hie-bios-0.14.0-B6skGdLrNyMgA4W7MNpMu" 'False) ((C1 ('MetaCons "Multi" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [MultiSubComponent a])) :+: (C1 ('MetaCons "Cabal" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 CabalConfig)) :+: C1 ('MetaCons "Stack" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 StackConfig)))) :+: ((C1 ('MetaCons "Direct" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 DirectConfig)) :+: C1 ('MetaCons "Bios" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 BiosConfig))) :+: (C1 ('MetaCons "None" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 NoneConfig)) :+: C1 ('MetaCons "Other" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (OtherConfig a))))))

data MultiSubComponent a #

Constructors

MultiSubComponent |

Fields

- path :: FilePath
- config :: CradleConfigYAML a

#### Instances

Instances details

FromJSON a => FromJSON (MultiSubComponent a) # |
Instance details Defined in HIE.Bios.Config.YAML Methods parseJSON :: Value -> Parser (MultiSubComponent a) # parseJSONList :: Value -> Parser [MultiSubComponent a] # omittedField :: Maybe (MultiSubComponent a) #
Generic (MultiSubComponent a) # |

Instance details

Defined in HIE.Bios.Config.YAML

Associated Types

type Rep (MultiSubComponent a) |

Instance details

Defined in HIE.Bios.Config.YAML

type Rep (MultiSubComponent a) = D1 ('MetaData "MultiSubComponent" "HIE.Bios.Config.YAML" "hie-bios-0.14.0-B6skGdLrNyMgA4W7MNpMu" 'False) (C1 ('MetaCons "MultiSubComponent" 'PrefixI 'True) (S1 ('MetaSel ('Just "path") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 FilePath) :*: S1 ('MetaSel ('Just "config") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (CradleConfigYAML a))))

Methods

from :: MultiSubComponent a -> Rep (MultiSubComponent a) x #

to :: Rep (MultiSubComponent a) x -> MultiSubComponent a #

type Rep (MultiSubComponent a) # |

Instance details

Defined in HIE.Bios.Config.YAML

type Rep (MultiSubComponent a) = D1 ('MetaData "MultiSubComponent" "HIE.Bios.Config.YAML" "hie-bios-0.14.0-B6skGdLrNyMgA4W7MNpMu" 'False) (C1 ('MetaCons "MultiSubComponent" 'PrefixI 'True) (S1 ('MetaSel ('Just "path") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 FilePath) :*: S1 ('MetaSel ('Just "config") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (CradleConfigYAML a))))

data CabalConfig #

Constructors

CabalConfig |

Fields

- cabalProject :: Maybe FilePath
- cabalComponents :: OneOrManyComponents CabalComponent

#### Instances

Instances details

FromJSON CabalConfig # |
Instance details Defined in HIE.Bios.Config.YAML Methods parseJSON :: Value -> Parser CabalConfig # parseJSONList :: Value -> Parser [CabalConfig] # omittedField :: Maybe CabalConfig #

data CabalComponent #

Constructors

CabalComponent |

Fields

- cabalPath :: FilePath
- cabalComponent :: String
- cabalComponentProject :: Maybe FilePath

#### Instances

Instances details

FromJSON CabalComponent # |
Instance details Defined in HIE.Bios.Config.YAML Methods parseJSON :: Value -> Parser CabalComponent # parseJSONList :: Value -> Parser [CabalComponent] # omittedField :: Maybe CabalComponent #

data StackConfig #

Constructors

StackConfig |

Fields

- stackYaml :: Maybe FilePath
- stackComponents :: OneOrManyComponents StackComponent

#### Instances

Instances details

FromJSON StackConfig # |
Instance details Defined in HIE.Bios.Config.YAML Methods parseJSON :: Value -> Parser StackConfig # parseJSONList :: Value -> Parser [StackConfig] # omittedField :: Maybe StackConfig #

data StackComponent #

Constructors

StackComponent |

Fields

- stackPath :: FilePath
- stackComponent :: String
- stackComponentYAML :: Maybe FilePath

#### Instances

Instances details

FromJSON StackComponent # |
Instance details Defined in HIE.Bios.Config.YAML Methods parseJSON :: Value -> Parser StackComponent # parseJSONList :: Value -> Parser [StackComponent] # omittedField :: Maybe StackComponent #

data DirectConfig #

Constructors

DirectConfig |

Fields

- arguments :: [String]

#### Instances

Instances details

FromJSON DirectConfig # |
Instance details Defined in HIE.Bios.Config.YAML Methods parseJSON :: Value -> Parser DirectConfig # parseJSONList :: Value -> Parser [DirectConfig] # omittedField :: Maybe DirectConfig #
Generic DirectConfig # |

Instance details

Defined in HIE.Bios.Config.YAML

Associated Types

type Rep DirectConfig |
Instance details Defined in HIE.Bios.Config.YAML type Rep DirectConfig = D1 ('MetaData "DirectConfig" "HIE.Bios.Config.YAML" "hie-bios-0.14.0-B6skGdLrNyMgA4W7MNpMu" 'False) (C1 ('MetaCons "DirectConfig" 'PrefixI 'True) (S1 ('MetaSel ('Just "arguments") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [String])))

Methods

from :: DirectConfig -> Rep DirectConfig x #

to :: Rep DirectConfig x -> DirectConfig #

type Rep DirectConfig # |
Instance details Defined in HIE.Bios.Config.YAML type Rep DirectConfig = D1 ('MetaData "DirectConfig" "HIE.Bios.Config.YAML" "hie-bios-0.14.0-B6skGdLrNyMgA4W7MNpMu" 'False) (C1 ('MetaCons "DirectConfig" 'PrefixI 'True) (S1 ('MetaSel ('Just "arguments") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [String])))

data BiosConfig #

Constructors

BiosConfig |

Fields

- callable :: Callable
- depsCallable :: Maybe Callable
- ghcPath :: Maybe FilePath

#### Instances

Instances details

FromJSON BiosConfig # |
Instance details Defined in HIE.Bios.Config.YAML Methods parseJSON :: Value -> Parser BiosConfig # parseJSONList :: Value -> Parser [BiosConfig] # omittedField :: Maybe BiosConfig #

data NoneConfig #

Constructors

NoneConfig |

#### Instances

Instances details

FromJSON NoneConfig # |
Instance details Defined in HIE.Bios.Config.YAML Methods parseJSON :: Value -> Parser NoneConfig # parseJSONList :: Value -> Parser [NoneConfig] # omittedField :: Maybe NoneConfig #

data OtherConfig a #

Constructors

OtherConfig |

Fields

- otherConfig :: a
- originalYamlValue :: Value

#### Instances

Instances details

FromJSON a => FromJSON (OtherConfig a) # |
Instance details Defined in HIE.Bios.Config.YAML Methods parseJSON :: Value -> Parser (OtherConfig a) # parseJSONList :: Value -> Parser [OtherConfig a] # omittedField :: Maybe (OtherConfig a) #

data OneOrManyComponents component #

Constructors

SingleComponent String |
ManyComponents [component] |
NoComponent |

#### Instances

Instances details

FromJSON component => FromJSON (OneOrManyComponents component) # |
Instance details Defined in HIE.Bios.Config.YAML Methods parseJSON :: Value -> Parser (OneOrManyComponents component) # parseJSONList :: Value -> Parser [OneOrManyComponents component] # omittedField :: Maybe (OneOrManyComponents component) #

data Callable #

Constructors

Program FilePath |
Shell String |