frisby 0.1 → 0.2
raw patch · 2 files changed
+21/−14 lines, 2 filesdep ~arraydep ~basePVP ok
version bump matches the API change (PVP)
Dependency ranges changed: array, base
API changes (from Hackage documentation)
+ Text.Parsers.Frisby: instance Applicative (PM s)
Files
- Text/Parsers/Frisby.hs +6/−6
- frisby.cabal +15/−8
Text/Parsers/Frisby.hs view
@@ -1,4 +1,4 @@-{-# LANGUAGE MagicHash, DoRec, RankNTypes, EmptyDataDecls, GADTs,+{-# LANGUAGE MagicHash, RecursiveDo, RankNTypes, EmptyDataDecls, GADTs, GeneralizedNewtypeDeriving, PatternGuards #-} -- for the exported rank-2 type of runPeg, -- as well as the implementation using GADTs, generalised newtype deriving,@@ -182,7 +182,7 @@ import Data.Char(ord,chr) import Control.Monad.State import Data.Array hiding((//))-import Data.Monoid hiding(Any)+import Data.Monoid hiding(Any,(<>)) import qualified Data.Map as Map --inline usable part of Unsafe.Coerce until that module is commonly available@@ -247,6 +247,10 @@ newtype PM s a = PM (PMImp a) deriving(Monad,MonadFix,Functor) +instance Applicative (PM s) where+ (<*>) = ap+ pure = return+ type PMImp a = State Token a @@ -809,7 +813,3 @@ -- | Make a new regex but abort on an error in the regex string itself. regex :: String -> PM s (P s String) regex s = runIdentity (newRegex s)----
frisby.cabal view
@@ -1,14 +1,15 @@ name: frisby-version: 0.1-cabal-version: >=1.1.6+version: 0.2+cabal-version: >=1.6 license: BSD3 copyright: John Meacham (2006) author: John Meacham <john@repetae.net>-maintainer: John Meacham <john@repetae.net>+maintainer: John Meacham <john@repetae.net>, Chris Done <chrisdone@gmail.com> stability: experimental homepage: http://repetae.net/computer/frisby/+homepage: http://repetae.net/computer/frisby/ package-url: http://repetae.net/repos/frisby-synopsis: Linear time composable parser for PEG grammars.+synopsis: Linear time composable parser for PEG grammars description: frisby is a parser library that can parse arbitrary PEG grammars in linear time. Unlike other parsers of PEG grammars, frisby need not be supplied with all possible rules up front,@@ -22,8 +23,14 @@ In addition to many standard combinators, frisby provides routines to translate standard regex syntax into frisby parsers. category: Text-tested-with: GHC==6.12.1-exposed-modules: Text.Parsers.Frisby, Text.Parsers.Frisby.Char-build-type: Simple-build-depends: base>=4 && <5, containers, mtl, array+tested-with: GHC==7.6 license-file: LICENSE+build-type: Simple++library+ exposed-modules: Text.Parsers.Frisby, Text.Parsers.Frisby.Char+ build-depends: base>=4 && <5, containers, mtl, array++source-repository head+ type: git+ location: https://github.com/chrisdone/frisby