-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Small library for typesafe's configuration specification -- -- Small library for typesafe's configuration specification @package hocon @version 0.1.0.2 module Data.Map groupBy :: (Ord k, Eq k) => (v -> k) -> [v] -> Map k [v] sortByKey :: Ord k => Map k v -> Map k v type Map k v = [(k, v)] module Data.HOCON data Config HOCONNode :: Map String Config -> Config HOCONString :: String -> Config HOCONNumber :: Double -> Config HOCONList :: [Config] -> Config HOCONBool :: Bool -> Config HOCONNull :: Config getNode :: String -> Config -> Maybe (Map String Config) hasPath :: String -> Config -> Bool getString :: String -> Config -> Maybe String getNumber :: String -> Config -> Maybe Double getList :: String -> Config -> Maybe [Config] getBool :: String -> Config -> Maybe Bool isNull :: Config -> Bool getConfig :: String -> Config -> Maybe Config pretty :: Config -> String instance GHC.Classes.Eq Data.HOCON.Config instance GHC.Show.Show Data.HOCON.Config module Data.Bifunctor.Extra -- | A bifunctor is a type constructor that takes two type arguments and is -- a functor in both arguments. That is, unlike with -- Functor, a type constructor such as Either does not need -- to be partially applied for a Bifunctor instance, and the -- methods in this class permit mapping functions over the Left -- value or the Right value, or both at the same time. -- -- Formally, the class Bifunctor represents a bifunctor from -- Hask -> Hask. -- -- Intuitively it is a bifunctor where both the first and second -- arguments are covariant. -- -- You can define a Bifunctor by either defining bimap or -- by defining both first and second. -- -- If you supply bimap, you should ensure that: -- --
--   bimap id idid
--   
-- -- If you supply first and second, ensure: -- --
--   first idid
--   second idid
--   
-- -- If you supply both, you should also ensure: -- --
--   bimap f g ≡ first f . second g
--   
-- -- These ensure by parametricity: -- --
--   bimap  (f . g) (h . i) ≡ bimap f h . bimap g i
--   first  (f . g) ≡ first  f . first  g
--   second (f . g) ≡ second f . second g
--   
class Bifunctor (p :: Type -> Type -> Type) -- | Map over both arguments at the same time. -- --
--   bimap f g ≡ first f . second g
--   
-- --

Examples

-- --
--   >>> bimap toUpper (+1) ('j', 3)
--   ('J',4)
--   
-- --
--   >>> bimap toUpper (+1) (Left 'j')
--   Left 'J'
--   
-- --
--   >>> bimap toUpper (+1) (Right 3)
--   Right 4
--   
bimap :: Bifunctor p => (a -> b) -> (c -> d) -> p a c -> p b d -- | Map covariantly over the first argument. -- --
--   first f ≡ bimap f id
--   
-- --

Examples

-- --
--   >>> first toUpper ('j', 3)
--   ('J',3)
--   
-- --
--   >>> first toUpper (Left 'j')
--   Left 'J'
--   
first :: Bifunctor p => (a -> b) -> p a c -> p b c -- | Map covariantly over the second argument. -- --
--   secondbimap id
--   
-- --

Examples

-- --
--   >>> second (+1) ('j', 3)
--   ('j',4)
--   
-- --
--   >>> second (+1) (Right 3)
--   Right 4
--   
second :: Bifunctor p => (b -> c) -> p a b -> p a c mapValues :: (b -> c) -> Map a b -> Map a c module Text.Parser.HOCON.Internal objectParser :: Parser Config stringParser :: Parser Config parseProps :: Parser (String, Config) parseLabel :: Parser String arrayParser :: Parser Config numberParser :: Parser Config booleanParser :: Parser Config nullParser :: Parser Config preProcessing :: String -> String hoconParser :: Parser Config postProcessing :: Config -> Config module Text.Parser.HOCON parseHOCON :: String -> Either ParseError Config -- | The abstract data type ParseError represents parse errors. It -- provides the source position (SourcePos) of the error and a -- list of error messages (Message). A ParseError can be -- returned by the function parse. ParseError is an -- instance of the Show and Eq classes. data ParseError