digit 0.2.3 → 0.2.4
raw patch · 4 files changed
+77/−22 lines, 4 filesPVP ok
version bump matches the API change (PVP)
API changes (from Hackage documentation)
+ Data.Digit: parsenotdigit :: (Monad p, CharParsing p) => p Char
+ Data.Digit: parsenotdigits :: (Monad p, CharParsing p) => p String
+ Data.Digit: parsenotdigits1 :: (Monad p, CharParsing p) => p String
+ Data.Digit: skipdigits :: (Monad p, CharParsing p) => p ()
+ Data.Digit: skipdigits1 :: (Monad p, CharParsing p) => p ()
+ Data.Digit: skipnotdigits :: (Monad p, CharParsing p) => p ()
+ Data.Digit: skipnotdigits1 :: (Monad p, CharParsing p) => p ()
Files
- changelog.md +21/−0
- digit.cabal +2/−2
- etc/changelog +0/−17
- src/Data/Digit.hs +54/−3
+ changelog.md view
@@ -0,0 +1,21 @@+0.2.4++* More Digit parsers.++0.2.3++* Digit parsers.++0.2.2++* Modulus operations.+* `digits` function.+* Fix tests.++0.2.1++* Include digit parsers.++0.2.0++* Update to use digit prisms.
digit.cabal view
@@ -1,5 +1,5 @@ name: digit-version: 0.2.3+version: 0.2.4 license: BSD3 license-File: etc/LICENCE author: Tony Morris <ʇǝu˙sıɹɹoɯʇ@ןןǝʞsɐɥ>@@ -11,7 +11,7 @@ bug-reports: https://github.com/NICTA/digit/issues cabal-version: >= 1.10 build-type: Custom-extra-source-files: etc/CONTRIBUTORS, etc/changelog+extra-source-files: etc/CONTRIBUTORS, changelog.md description: <<http://i.imgur.com/Ns5hntl.jpg>> .
− etc/changelog
@@ -1,17 +0,0 @@-0.2.3--* Digit parsers.--0.2.2--* Modulus operations.-* `digits` function.-* Fix tests.--0.2.1--* Include digit parsers.--0.2.0--* Update to use digit prisms.
src/Data/Digit.hs view
@@ -41,6 +41,13 @@ , parsedigit , parsedigits , parsedigits1+, skipdigits+, skipdigits1+, parsenotdigit+, parsenotdigits+, parsenotdigits1+, skipnotdigits+, skipnotdigits1 -- * Quasi-Quoters , digitQ ) where@@ -56,15 +63,16 @@ import Data.Function(const) import Data.Functor((<$), (<$>)) import Data.Int(Int)-import Data.List(unfoldr, reverse)+import Data.List(unfoldr, reverse, notElem) import Data.Maybe(Maybe(Nothing, Just), maybe, fromMaybe) import Data.Ord(Ord((<)))+import Data.String(String) import Data.Typeable (Typeable) import Language.Haskell.TH(ExpQ, PatQ, varE, varP, mkName) import Language.Haskell.TH.Quote(QuasiQuoter(QuasiQuoter), quotePat, quoteExp, quoteDec, dataToExpQ, dataToPatQ, quoteType) import Prelude(Show(..), Read(..), Enum(..), Bounded, Num(..), error, divMod, mod)-import Text.Parser.Char(CharParsing, char)-import Text.Parser.Combinators((<?>))+import Text.Parser.Char(CharParsing, char, satisfy)+import Text.Parser.Combinators(skipMany, skipSome, (<?>)) -- $setup -- >>> import Prelude@@ -577,6 +585,49 @@ p [Digit] parsedigits1 = some parsedigit++skipdigits ::+ (Monad p, CharParsing p) =>+ p ()+skipdigits =+ skipMany parsedigit++skipdigits1 ::+ (Monad p, CharParsing p) =>+ p ()+skipdigits1 =+ skipSome parsedigit++parsenotdigit ::+ (Monad p, CharParsing p) =>+ p Char+parsenotdigit =+ let p = satisfy (`notElem` ['0' .. '9'])+ in p <?> "not digit"++parsenotdigits ::+ (Monad p, CharParsing p) =>+ p String+parsenotdigits =+ many parsenotdigit++parsenotdigits1 ::+ (Monad p, CharParsing p) =>+ p String+parsenotdigits1 =+ some parsenotdigit++skipnotdigits ::+ (Monad p, CharParsing p) =>+ p ()+skipnotdigits =+ skipMany parsenotdigit++skipnotdigits1 ::+ (Monad p, CharParsing p) =>+ p ()+skipnotdigits1 =+ skipSome parsenotdigit instance Show Digit where show = show . fromEnum