packages feed

ascii 0.0.1.1 → 0.0.2

raw patch · 2 files changed

+13/−26 lines, 2 filesdep +case-insensitivePVP: major bump suggested

API removals or changes: PVP suggests a major version bump

Dependencies added: case-insensitive

API changes (from Hackage documentation)

- Data.Ascii: data CIAscii
- Data.Ascii: instance Data CIAscii
- Data.Ascii: instance Eq CIAscii
- Data.Ascii: instance IsString CIAscii
- Data.Ascii: instance Ord CIAscii
- Data.Ascii: instance Read CIAscii
- Data.Ascii: instance Show CIAscii
- Data.Ascii: instance Typeable CIAscii
+ Data.Ascii: instance FoldCase Ascii
+ Data.Ascii: instance Monoid Ascii
+ Data.Ascii: type CIAscii = CI Ascii

Files

Data/Ascii.hs view
@@ -31,7 +31,7 @@ import Data.ByteString (ByteString) import qualified Data.ByteString as S import qualified Data.ByteString.Char8 as S8-import Data.Char (toLower, isAscii)+import Data.Char (isAscii) import Data.String (IsString (..)) import Data.Data (Data) import Data.Typeable (Typeable)@@ -40,26 +40,12 @@ import qualified Data.Text.Encoding as TE import qualified Blaze.ByteString.Builder as Blaze import Data.Monoid (Monoid)+import Data.CaseInsensitive (FoldCase, CI, mk, original)  newtype Ascii = Ascii ByteString-    deriving (Show, Eq, Read, Ord, Data, Typeable, IsString)--data CIAscii = CIAscii-    { ciOriginal :: !ByteString-    , ciLowerCase :: !ByteString-    }-    deriving (Data, Typeable)+    deriving (Show, Eq, Read, Ord, Data, Typeable, IsString, FoldCase, Monoid) -instance Show CIAscii where-    show = show . ciOriginal-instance Read CIAscii where-    readsPrec i = map (\(x, y) -> (toCIAscii x, y)) . readsPrec i-instance Eq CIAscii where-    x == y = ciLowerCase x == ciLowerCase y-instance Ord CIAscii where-    x <= y = ciLowerCase x <= ciLowerCase y-instance IsString CIAscii where-    fromString = toCIAscii . unsafeFromString+type CIAscii = CI Ascii  fromByteString :: ByteString -> Maybe Ascii fromByteString bs@@ -87,10 +73,10 @@ unsafeFromText = Ascii . TE.encodeUtf8  toCIAscii :: Ascii -> CIAscii-toCIAscii (Ascii bs) = CIAscii bs $ S8.map toLower bs+toCIAscii = mk  fromCIAscii :: CIAscii -> Ascii-fromCIAscii = Ascii . ciOriginal+fromCIAscii = original  toByteString :: Ascii -> ByteString toByteString (Ascii bs) = bs@@ -102,7 +88,7 @@ toText (Ascii bs) = TE.decodeASCII bs  ciToByteString :: CIAscii -> ByteString-ciToByteString = ciOriginal+ciToByteString = toByteString . original  toAsciiBuilder :: Ascii -> AsciiBuilder toAsciiBuilder (Ascii bs) = AsciiBuilder $ Blaze.fromByteString bs
ascii.cabal view
@@ -1,5 +1,5 @@ Name:                ascii-Version:             0.0.1.1+Version:             0.0.2 Synopsis:            Type-safe, bytestring-based ASCII values. License:             BSD3 License-file:        LICENSE@@ -12,8 +12,9 @@  Library   Exposed-modules:     Data.Ascii-  Build-depends:       base            >= 4             && < 5-                     , bytestring      >= 0.9           && < 0.10-                     , text            >= 0.11          && < 0.12-                     , blaze-builder   >= 0.2.1.4       && < 0.3+  Build-depends:       base             >= 4             && < 5+                     , bytestring       >= 0.9           && < 0.10+                     , text             >= 0.11          && < 0.12+                     , blaze-builder    >= 0.2.1.4       && < 0.3+                     , case-insensitive >= 0.2           && < 0.3   Ghc-options:         -Wall