packages feed

sexpresso 1.1.0.0 → 1.2.0.0

raw patch · 4 files changed

+21/−18 lines, 4 filesdep ~megaparsecdep ~recursion-schemesPVP ok

version bump matches the API change (PVP)

Dependency ranges changed: megaparsec, recursion-schemes

API changes (from Hackage documentation)

- Data.SExpresso.Parse.Generic: decode :: MonadParsec e s m => SExprParser m b a -> m [SExpr b a]
+ Data.SExpresso.Parse.Generic: decode :: (MonadParsec e s m, TraversableStream s) => SExprParser m b a -> m [SExpr b a]
- Data.SExpresso.Parse.Generic: decodeOne :: MonadParsec e s m => SExprParser m b a -> m (SExpr b a)
+ Data.SExpresso.Parse.Generic: decodeOne :: (MonadParsec e s m, TraversableStream s) => SExprParser m b a -> m (SExpr b a)
- Data.SExpresso.Parse.Generic: parseSExpr :: MonadParsec e s m => SExprParser m b a -> m (SExpr b a)
+ Data.SExpresso.Parse.Generic: parseSExpr :: (MonadParsec e s m, TraversableStream s) => SExprParser m b a -> m (SExpr b a)
- Data.SExpresso.Parse.Generic: parseSExprList :: MonadParsec e s m => SExprParser m b a -> m (SExpr b a)
+ Data.SExpresso.Parse.Generic: parseSExprList :: (MonadParsec e s m, TraversableStream s) => SExprParser m b a -> m (SExpr b a)
- Data.SExpresso.Parse.Generic: withLocation :: MonadParsec e s m => SExprParser m b a -> SExprParser m (Located b) (Located a)
+ Data.SExpresso.Parse.Generic: withLocation :: (MonadParsec e s m, TraversableStream s) => SExprParser m b a -> SExprParser m (Located b) (Located a)
- Data.SExpresso.Parse.Location: located :: MonadParsec e s m => m a -> m (Located a)
+ Data.SExpresso.Parse.Location: located :: (MonadParsec e s m, TraversableStream s) => m a -> m (Located a)

Files

ChangeLog.md view
@@ -1,5 +1,10 @@ # Changelog for S-expresso +Version 1.2.0.0+---------------+* Update to stack lts 18.10+* Thanks to Ollie Charles from asking for this update+ Version 1.1.0.0 --------------- 
sexpresso.cabal view
@@ -1,13 +1,11 @@ cabal-version: 1.12 --- This file has been generated from package.yaml by hpack version 0.31.2.+-- This file has been generated from package.yaml by hpack version 0.34.4. -- -- see: https://github.com/sol/hpack------ hash: cd4a5d89acd75970af22375142f81c7b7320e72ae7403de680177c6ad12e1116  name:           sexpresso-version:        1.1.0.0+version:        1.2.0.0 synopsis:       A flexible library for parsing and printing S-expression description:    Please see the README on GitHub at <https://github.com/archambaultv/sexpresso#readme> category:       Data@@ -44,10 +42,10 @@   ghc-options: -Wall   build-depends:       base >=4.7 && <5-    , bifunctors >=5.5 && <5.6+    , bifunctors ==5.5.*     , containers >=0.5 && <0.7-    , megaparsec >=7.0 && <=8.0.0-    , recursion-schemes >=5.1 && <5.2+    , megaparsec >=7.0 && <9.1.0+    , recursion-schemes >=5.1 && <5.3     , text >=0.2 && <1.3   default-language: Haskell2010 @@ -65,10 +63,10 @@   ghc-options: -Wall -threaded -rtsopts -with-rtsopts=-N   build-depends:       base >=4.7 && <5-    , bifunctors >=5.5 && <5.6+    , bifunctors ==5.5.*     , containers >=0.5 && <0.7-    , megaparsec >=7.0 && <=8.0.0-    , recursion-schemes >=5.1 && <5.2+    , megaparsec >=7.0 && <9.1.0+    , recursion-schemes >=5.1 && <5.3     , sexpresso     , smallcheck >=1.0     , tasty >=0.8
src/Data/SExpresso/Parse/Generic.hs view
@@ -109,7 +109,7 @@ getAtom (SExprParser _ _ a _ _) = a  -- | The 'withLocation' function adds source location to a @'SExprParser'@. See also 'Location'.-withLocation :: (MonadParsec e s m) => SExprParser m b a -> SExprParser m (Located b) (Located a)+withLocation :: (MonadParsec e s m, TraversableStream s) => SExprParser m b a -> SExprParser m (Located b) (Located a) withLocation (SExprParser pSTag pETag atom sp sr) =   let s = do         pos <- getSourcePos@@ -251,10 +251,10 @@     (_, SList _ _, _) -> True     (SAtom a1, SAtom a2, _) -> getSpacingRule' a1 a2 == SOptional -sepEndBy' :: (MonadParsec e s m) => m (SExpr b a) -> m () -> (a -> a -> SpacingRule) -> m [SExpr b a]+sepEndBy' :: (MonadParsec e s m, TraversableStream s) => m (SExpr b a) -> m () -> (a -> a -> SpacingRule) -> m [SExpr b a] sepEndBy' p sep f = sepEndBy1' p sep f <|> pure [] -sepEndBy1' :: (MonadParsec e s m) => m (SExpr b a) -> m () -> (a -> a -> SpacingRule) -> m [SExpr b a]+sepEndBy1' :: (MonadParsec e s m, TraversableStream s) => m (SExpr b a) -> m () -> (a -> a -> SpacingRule) -> m [SExpr b a] sepEndBy1' p sep f = do   x <- p   xs <- parseContent x@@ -275,7 +275,7 @@                          "A space was expected at " <> sourcePosPretty (fromJust mpos)) mzero  -- | The 'parseSExprList' function return a parser for parsing S-expression of the form @'SList' _ _@.-parseSExprList :: (MonadParsec e s m) =>+parseSExprList :: (MonadParsec e s m, TraversableStream s) =>                 SExprParser m b a -> m (SExpr b a) parseSExprList def@(SExprParser pSTag pETag _ sp sr)  = do           c <- pSTag@@ -287,7 +287,7 @@ -- | The 'parseSExpr' function return a parser for parsing -- S-expression ('SExpr'), that is either an atom (@'SAtom' _@) or a -- list @'SList' _ _@. See also 'decodeOne' and 'decode'.-parseSExpr :: (MonadParsec e s m) =>+parseSExpr :: (MonadParsec e s m, TraversableStream s) =>               SExprParser m b a -> m (SExpr b a) parseSExpr def = (getAtom def >>= return . SAtom) <|> (parseSExprList def) @@ -295,7 +295,7 @@ -- containing only one S-expression ('SExpr'). It can parse extra -- whitespace at the beginning and at the end of the file. See also -- 'parseSExpr' and 'decode'.-decodeOne :: (MonadParsec e s m) => SExprParser m b a -> m (SExpr b a)+decodeOne :: (MonadParsec e s m, TraversableStream s) => SExprParser m b a -> m (SExpr b a) decodeOne def =   let ws = getSpace def   in optional ws *> parseSExpr def <* (optional ws >> eof)@@ -304,7 +304,7 @@ -- containing many S-expression ('SExpr'). It can parse extra -- whitespace at the beginning and at the end of the file. See also -- 'parseSExpr' and 'decodeOne'.-decode :: (MonadParsec e s m) => SExprParser m b a -> m [SExpr b a]+decode :: (MonadParsec e s m, TraversableStream s) => SExprParser m b a -> m [SExpr b a] decode def =   let ws = getSpace def   in optional ws *> sepEndBy' (parseSExpr def) ws (getSpacingRule def) <* eof
src/Data/SExpresso/Parse/Location.hs view
@@ -42,7 +42,7 @@                deriving (Eq, Ord, Show, Functor)  -- | The 'located' function adds a source span to a parser.-located :: (MonadParsec e s m) => m a -> m (Located a)+located :: (MonadParsec e s m, TraversableStream s) => m a -> m (Located a) located parser = do   begin <- getSourcePos   result <- parser