packages feed

sexpresso 1.2.0.0 → 1.2.1.0

raw patch · 5 files changed

+29/−18 lines, 5 filesdep ~megaparsecnew-uploaderPVP ok

version bump matches the API change (PVP)

Dependency ranges changed: megaparsec

API changes (from Hackage documentation)

+ Data.SExpresso.Language.SchemeR5RS: instance Data.Data.Data Data.SExpresso.Language.SchemeR5RS.Complex
+ Data.SExpresso.Language.SchemeR5RS: instance Data.Data.Data Data.SExpresso.Language.SchemeR5RS.Datum
+ Data.SExpresso.Language.SchemeR5RS: instance Data.Data.Data Data.SExpresso.Language.SchemeR5RS.Exactness
+ Data.SExpresso.Language.SchemeR5RS: instance Data.Data.Data Data.SExpresso.Language.SchemeR5RS.Precision
+ Data.SExpresso.Language.SchemeR5RS: instance Data.Data.Data Data.SExpresso.Language.SchemeR5RS.Radix
+ Data.SExpresso.Language.SchemeR5RS: instance Data.Data.Data Data.SExpresso.Language.SchemeR5RS.SExprType
+ Data.SExpresso.Language.SchemeR5RS: instance Data.Data.Data Data.SExpresso.Language.SchemeR5RS.SReal
+ Data.SExpresso.Language.SchemeR5RS: instance Data.Data.Data Data.SExpresso.Language.SchemeR5RS.SchemeNumber
+ Data.SExpresso.Language.SchemeR5RS: instance Data.Data.Data Data.SExpresso.Language.SchemeR5RS.SchemeToken
+ Data.SExpresso.Language.SchemeR5RS: instance Data.Data.Data Data.SExpresso.Language.SchemeR5RS.Sign
+ Data.SExpresso.Language.SchemeR5RS: instance Data.Data.Data Data.SExpresso.Language.SchemeR5RS.Suffix
+ Data.SExpresso.Language.SchemeR5RS: instance Data.Data.Data Data.SExpresso.Language.SchemeR5RS.UInteger
+ Data.SExpresso.SExpr: instance (Data.Data.Data b, Data.Data.Data a) => Data.Data.Data (Data.SExpresso.SExpr.SExpr b a)

Files

ChangeLog.md view
@@ -1,5 +1,9 @@ # Changelog for S-expresso +Version 1.2.1.0+---------------+* Add `Data` instances. [#12](https://github.com/archambaultv/sexpresso/pull/12).+ Version 1.2.0.0 --------------- * Update to stack lts 18.10
README.md view
@@ -1,6 +1,10 @@ [![License OBSD](https://img.shields.io/badge/license-0BSD-brightgreen.svg)](https://opensource.org/licenses/0BSD) [![Hackage](https://img.shields.io/hackage/v/sexpresso.svg)](http://hackage.haskell.org/package/sexpresso) +# S-expresso is now in passive maintenance+I will try my best to fix new issues or merge new pull requests, but I do not work on this project anymore.+Expect some delay before I reply. If you wish to take over the project please contact me.+ # S-expresso  S-expresso is a Haskell library designed to help you parse and print
sexpresso.cabal view
@@ -1,11 +1,11 @@ cabal-version: 1.12 --- This file has been generated from package.yaml by hpack version 0.34.4.+-- This file has been generated from package.yaml by hpack version 0.34.5. -- -- see: https://github.com/sol/hpack  name:           sexpresso-version:        1.2.0.0+version:        1.2.1.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,7 +44,7 @@       base >=4.7 && <5     , bifunctors ==5.5.*     , containers >=0.5 && <0.7-    , megaparsec >=7.0 && <9.1.0+    , megaparsec >=7.0 && <9.3.0     , recursion-schemes >=5.1 && <5.3     , text >=0.2 && <1.3   default-language: Haskell2010@@ -65,7 +65,7 @@       base >=4.7 && <5     , bifunctors ==5.5.*     , containers >=0.5 && <0.7-    , megaparsec >=7.0 && <9.1.0+    , megaparsec >=7.0 && <9.3.0     , recursion-schemes >=5.1 && <5.3     , sexpresso     , smallcheck >=1.0
src/Data/SExpresso/Language/SchemeR5RS.hs view
@@ -13,6 +13,7 @@ -- R5RS datum (see 'Datum') by the function 'sexpr2Datum'.  +{-# LANGUAGE DeriveDataTypeable #-} {-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE TypeFamilies #-} {-# LANGUAGE ScopedTypeVariables #-}@@ -75,6 +76,7 @@   ) where  import Control.Monad (mzero)+import Data.Data import Data.Maybe import Data.Proxy import Data.List@@ -115,7 +117,7 @@   | TCommaAt   -- | The dot (.) symbol.   | TDot-  deriving (Eq, Show)+  deriving (Eq, Show, Data)  -- | The 'tokenParser' parses a 'SchemeToken' tokenParser :: (MonadParsec e s m, Token s ~ Char) => m SchemeToken@@ -152,7 +154,7 @@   STList   -- | A vector   | STVector-  deriving (Eq, Show)+  deriving (Eq, Show, Data)  -- | The 'sexpr' defines a 'SExprParser' to parse a Scheme R5RS -- s-expression as an @'SExpr' 'SExprType' 'SchemeToken'@. If you also@@ -184,7 +186,7 @@            | DComma Datum            | DCommaAt Datum            | DVector [Datum]-           deriving (Eq, Show)+           deriving (Eq, Show, Data)  -- | The 'sexpr2Datum' function takes a list of 'SchemeToken' and -- returns a list of 'Datum'. In case of failure it will report an@@ -310,7 +312,7 @@  ------------------------- Numbers ------------------------- data Radix = R2 | R8 | R10 | R16-           deriving (Eq, Show)+           deriving (Eq, Show, Data)  -- | A Scheme R5RS number is either exact or inexact. The paragraph -- 6.4.2 from the R5RS report should clarify the meaning of exact and@@ -325,11 +327,11 @@ -- exponent, or a \“#\” character in the place of a digit, otherwise it -- is exact.\"\"\" data Exactness = Exact | Inexact-               deriving (Eq, Show)+               deriving (Eq, Show, Data)  -- | The 'Sign' datatype indicates if a number is positive ('Plus') or negative ('Minus') data Sign = Plus | Minus-          deriving (Eq, Show)+          deriving (Eq, Show, Data)  -- | A Scheme R5RS number can have many # signs at the end. This type alias -- indicates the number of # signs parsed.@@ -351,7 +353,7 @@   | UIntPounds Integer Pounds   -- | Integer made only of #. It can only appear as the third argument in numbers of the form @'SDecimal' _ _ _ _@.   | UPounds Pounds-  deriving (Eq, Show)+  deriving (Eq, Show, Data)  hasPounds :: UInteger -> Bool hasPounds (UInteger _) = False@@ -374,12 +376,12 @@   PDouble |   -- | Suffix starting with l.   PLong-  deriving (Eq, Show)+  deriving (Eq, Show, Data)  -- | The 'Suffix' data type represents the suffix for a Scheme R5RS -- decimal number. It is a based 10 exponent. data Suffix = Suffix Precision Sign Integer-            deriving (Eq, Show)+            deriving (Eq, Show, Data)  -- | The 'SReal' data type represents a Scheme R5RS real number. data SReal =@@ -391,7 +393,7 @@   -- | A signed decimal number. The first number appears before the   -- dot, the second one after the dot.   | SDecimal Sign UInteger UInteger (Maybe Suffix)-  deriving (Eq, Show)+  deriving (Eq, Show, Data)  isInexactR :: SReal -> Bool isInexactR (SInteger _ i) = isInexactI i@@ -406,7 +408,7 @@   | CAngle SReal SReal   -- | A complex number in absolute notation.   | CAbsolute SReal SReal-  deriving (Eq, Show)+  deriving (Eq, Show, Data)  isInexact :: Complex -> Bool isInexact (CReal s) = isInexactR s@@ -415,7 +417,7 @@  -- | A Scheme R5RS number is an exact or inexact complex number. data SchemeNumber = SchemeNumber Exactness Complex-                  deriving (Eq, Show)+                  deriving (Eq, Show, Data)  -- | The 'number' parser parses a Scheme R5RS number. number :: (MonadParsec e s m, Token s ~ Char) => m SchemeNumber
src/Data/SExpresso/SExpr.hs view
@@ -13,7 +13,7 @@ {-# LANGUAGE TemplateHaskell #-} {-# LANGUAGE KindSignatures #-} {-# LANGUAGE TypeFamilies #-}-{-# LANGUAGE DeriveFunctor, DeriveFoldable, DeriveTraversable #-}+{-# LANGUAGE DeriveFunctor, DeriveFoldable, DeriveTraversable, DeriveDataTypeable #-}   module Data.SExpresso.SExpr@@ -33,6 +33,7 @@   where  import Data.Bifunctor.TH+import Data.Data import Data.Functor.Foldable.TH  -- | The datatype 'SExpr' is the definition of an S-expression for the@@ -43,7 +44,7 @@ -- like source position for example. data SExpr b a = SList b [SExpr b a]                | SAtom a-               deriving (Eq, Show, Functor, Traversable, Foldable)+               deriving (Eq, Show, Functor, Traversable, Foldable, Data)  $(deriveBifunctor ''SExpr) $(deriveBifoldable ''SExpr)