frisby 0.2 → 0.2.1
raw patch · 2 files changed
+15/−6 lines, 2 filesdep +semigroupsdep ~arraydep ~basedep ~containersnew-uploaderPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
Dependencies added: semigroups
Dependency ranges changed: array, base, containers, mtl
API changes (from Hackage documentation)
- Text.Parsers.Frisby: instance Alternative (P s)
- Text.Parsers.Frisby: instance Alternative PE
- Text.Parsers.Frisby: instance Applicative (P s)
- Text.Parsers.Frisby: instance Applicative (PM s)
- Text.Parsers.Frisby: instance Applicative PE
- Text.Parsers.Frisby: instance Eq Regex
- Text.Parsers.Frisby: instance Eq Token
- Text.Parsers.Frisby: instance Functor (P s)
- Text.Parsers.Frisby: instance Functor (PM s)
- Text.Parsers.Frisby: instance Functor PE
- Text.Parsers.Frisby: instance Functor Results
- Text.Parsers.Frisby: instance Ix Token
- Text.Parsers.Frisby: instance Monad (PM s)
- Text.Parsers.Frisby: instance MonadFix (PM s)
- Text.Parsers.Frisby: instance Monoid (P s a)
- Text.Parsers.Frisby: instance Monoid (PE a)
- Text.Parsers.Frisby: instance Num Token
- Text.Parsers.Frisby: instance Ord Regex
- Text.Parsers.Frisby: instance Ord Token
- Text.Parsers.Frisby: instance Show Regex
- Text.Parsers.Frisby: instance Show Token
+ Text.Parsers.Frisby: infix 2 ##>
+ Text.Parsers.Frisby: infixl 1 //>
+ Text.Parsers.Frisby: infixl 3 <++>
+ Text.Parsers.Frisby: infixl 4 <<-
+ Text.Parsers.Frisby: instance Control.Monad.Fix.MonadFix (Text.Parsers.Frisby.PM s)
+ Text.Parsers.Frisby: instance Data.Semigroup.Semigroup (Text.Parsers.Frisby.P s a)
+ Text.Parsers.Frisby: instance Data.Semigroup.Semigroup (Text.Parsers.Frisby.PE a)
+ Text.Parsers.Frisby: instance GHC.Arr.Ix Text.Parsers.Frisby.Token
+ Text.Parsers.Frisby: instance GHC.Base.Alternative (Text.Parsers.Frisby.P s)
+ Text.Parsers.Frisby: instance GHC.Base.Alternative Text.Parsers.Frisby.PE
+ Text.Parsers.Frisby: instance GHC.Base.Applicative (Text.Parsers.Frisby.P s)
+ Text.Parsers.Frisby: instance GHC.Base.Applicative (Text.Parsers.Frisby.PM s)
+ Text.Parsers.Frisby: instance GHC.Base.Applicative Text.Parsers.Frisby.PE
+ Text.Parsers.Frisby: instance GHC.Base.Functor (Text.Parsers.Frisby.P s)
+ Text.Parsers.Frisby: instance GHC.Base.Functor (Text.Parsers.Frisby.PM s)
+ Text.Parsers.Frisby: instance GHC.Base.Functor Text.Parsers.Frisby.PE
+ Text.Parsers.Frisby: instance GHC.Base.Functor Text.Parsers.Frisby.Results
+ Text.Parsers.Frisby: instance GHC.Base.Monad (Text.Parsers.Frisby.PM s)
+ Text.Parsers.Frisby: instance GHC.Base.Monoid (Text.Parsers.Frisby.P s a)
+ Text.Parsers.Frisby: instance GHC.Base.Monoid (Text.Parsers.Frisby.PE a)
+ Text.Parsers.Frisby: instance GHC.Classes.Eq Text.Parsers.Frisby.Regex
+ Text.Parsers.Frisby: instance GHC.Classes.Eq Text.Parsers.Frisby.Token
+ Text.Parsers.Frisby: instance GHC.Classes.Ord Text.Parsers.Frisby.Regex
+ Text.Parsers.Frisby: instance GHC.Classes.Ord Text.Parsers.Frisby.Token
+ Text.Parsers.Frisby: instance GHC.Num.Num Text.Parsers.Frisby.Token
+ Text.Parsers.Frisby: instance GHC.Show.Show Text.Parsers.Frisby.Regex
+ Text.Parsers.Frisby: instance GHC.Show.Show Text.Parsers.Frisby.Token
Files
- Text/Parsers/Frisby.hs +10/−1
- frisby.cabal +5/−5
Text/Parsers/Frisby.hs view
@@ -176,12 +176,15 @@ import Control.Applicative hiding(many,optional) --though same meaning 'many', and superior 'optional'+import qualified Control.Applicative (many) import qualified Data.IntSet as IntSet import Control.Monad.Fix import Control.Monad.Identity import Data.Char(ord,chr) import Control.Monad.State import Data.Array hiding((//))+import Data.Semigroup (Semigroup)+import qualified Data.Semigroup as Semigroup import Data.Monoid hiding(Any,(<>)) import qualified Data.Map as Map @@ -256,7 +259,7 @@ -- 's' added for safe state, just as the ST monad's interface uses newtype P s a = P { fromP :: PE a }- deriving(Functor,Applicative,Alternative,Monoid)+ deriving(Functor,Applicative,Alternative,Semigroup,Monoid) data PE a where Char :: IntSet.IntSet -> PE Char@@ -289,9 +292,15 @@ --the function (++), (,) ... but, 'text', etc, does this too mf <*> ma = PMap (\(f,a) -> f a) (Then mf ma) pure = Unit+ instance Alternative PE where (<|>) = Slash empty = Failure+ some p = uncurry (:) <$> Then p (Star p)+ many = Star++instance Semigroup (PE a) where+ (<>) = Slash instance Monoid (PE a) where mappend = Slash
frisby.cabal view
@@ -1,10 +1,10 @@ name: frisby-version: 0.2+version: 0.2.1 cabal-version: >=1.6 license: BSD3 copyright: John Meacham (2006) author: John Meacham <john@repetae.net>-maintainer: John Meacham <john@repetae.net>, Chris Done <chrisdone@gmail.com>+maintainer: Ben Gamari <ben@smart-cactus.org> stability: experimental homepage: http://repetae.net/computer/frisby/ homepage: http://repetae.net/computer/frisby/@@ -23,14 +23,14 @@ In addition to many standard combinators, frisby provides routines to translate standard regex syntax into frisby parsers. category: Text-tested-with: GHC==7.6+tested-with: GHC == 7.6.*, GHC == 7.8.*, GHC == 7.10.*, GHC == 8.0.*, GHC == 8.2.* license-file: LICENSE build-type: Simple library exposed-modules: Text.Parsers.Frisby, Text.Parsers.Frisby.Char- build-depends: base>=4 && <5, containers, mtl, array+ build-depends: base>=4 && <5, containers, mtl, array, semigroups source-repository head type: git- location: https://github.com/chrisdone/frisby+ location: https://github.com/bgamari/frisby