packages feed

uri-bytestring 0.1 → 0.1.1

raw patch · 3 files changed

+30/−17 lines, 3 filesdep +blaze-builderdep ~bytestring

Dependencies added: blaze-builder

Dependency ranges changed: bytestring

Files

bench/Main.hs view
@@ -5,7 +5,7 @@ ------------------------------------------------------------------------------- import           Control.DeepSeq.Generics import           Criterion.Main-import           Data.ByteString.Builder+import           Blaze.ByteString.Builder import           Data.String import qualified Network.URI              as NU -------------------------------------------------------------------------------@@ -17,7 +17,6 @@ instance NFData UserInfo instance NFData URI instance NFData RelativeRef-instance NFData NU.URI instance NFData SchemaError instance NFData URIParseError 
src/URI/ByteString/Internal.hs view
@@ -5,22 +5,24 @@ module URI.ByteString.Internal where  -------------------------------------------------------------------------------+import           Blaze.ByteString.Builder           (Builder)+import qualified Blaze.ByteString.Builder           as BB+import qualified Blaze.ByteString.Builder.Char.Utf8 as BB import           Control.Applicative import           Control.Monad import           Data.Attoparsec.ByteString-import qualified Data.Attoparsec.ByteString as A+import qualified Data.Attoparsec.ByteString         as A import           Data.Bits-import           Data.ByteString            (ByteString)-import qualified Data.ByteString            as BS-import           Data.ByteString.Builder    (Builder)-import qualified Data.ByteString.Builder    as BB-import           Data.Char                  (ord)+import           Data.ByteString                    (ByteString)+import qualified Data.ByteString                    as BS+import           Data.Char                          (ord) import           Data.Ix-import           Data.List                  (delete, intersperse, stripPrefix, (\\))+import           Data.List                          (delete, intersperse,+                                                     stripPrefix, (\\)) import           Data.Maybe import           Data.Monoid import           Data.Word-import           Text.Read                  (readMaybe)+import           Text.Read                          (readMaybe) ------------------------------------------------------------------------------- import           URI.ByteString.Types -------------------------------------------------------------------------------@@ -56,7 +58,7 @@ -- >>> BB.toLazyByteString $ serializeURI $ URI {uriScheme = Scheme {schemeBS = "http"}, uriAuthority = Just (Authority {authorityUserInfo = Nothing, authorityHost = Host {hostBS = "www.example.org"}, authorityPort = Nothing}), uriPath = "/foo", uriQuery = Query {queryPairs = [("bar","baz")]}, uriFragment = Just "quux"} -- "http://www.example.org/foo?bar=baz#quux" serializeURI :: URI -> Builder-serializeURI URI {..} = scheme <> BB.string8 "://" <>+serializeURI URI {..} = scheme <> BB.fromString "://" <>                         serializeRelativeRef rr   where     scheme = bs $ schemeBS uriScheme@@ -89,7 +91,7 @@     userinfo = maybe mempty serializeUserInfo authorityUserInfo     host = hostBS authorityHost     port = maybe mempty packPort authorityPort-    packPort (Port p) = c8 ':' <> BB.string8 (show p)+    packPort (Port p) = c8 ':' <> BB.fromString (show p)   -------------------------------------------------------------------------------@@ -99,12 +101,12 @@  ------------------------------------------------------------------------------- bs :: ByteString -> Builder-bs = BB.byteString+bs = BB.fromByteString   ------------------------------------------------------------------------------- c8 :: Char -> Builder-c8 = BB.char8+c8 = BB.fromChar   -------------------------------------------------------------------------------@@ -720,7 +722,7 @@ urlEncode' :: [Word8] -> ByteString -> Builder urlEncode' extraUnreserved = mconcat . map encodeChar . BS.unpack     where-      encodeChar ch | unreserved' ch = BB.word8 ch+      encodeChar ch | unreserved' ch = BB.fromWord8 ch                     | otherwise     = h2 ch        unreserved' ch | ch >= 65 && ch <= 90  = True -- A-Z
uri-bytestring.cabal view
@@ -1,5 +1,5 @@ name:                uri-bytestring-version:             0.1+version:             0.1.1 synopsis:            Haskell URI parsing as ByteStrings description: uri-bytestring aims to be an RFC3986 compliant URI parser that uses efficient ByteStrings for parsing and representing the URI data. license:             BSD3@@ -19,6 +19,10 @@   changelog.md   bench/*.hs +flag lib-Werror+  default: False+  manual: True+ library   exposed-modules:     URI.ByteString@@ -31,11 +35,15 @@        attoparsec       >= 0.10    && < 0.13     , base             >= 4.6     && < 4.8-    , bytestring       >= 0.10.2.0 && < 0.11+    , bytestring       >= 0.9.1   && < 0.11+    , blaze-builder    >= 0.3.0.0 && < 0.5    hs-source-dirs:      src   default-language:    Haskell2010 +  if flag(lib-Werror)+    ghc-options: -Werror+   ghc-options: -Wall  test-suite test@@ -57,6 +65,9 @@     , quickcheck-instances   default-language:    Haskell2010 +  if flag(lib-Werror)+    ghc-options: -Werror+   ghc-options: -Wall  @@ -73,6 +84,7 @@     , deepseq-generics     , network-uri     , bytestring+    , blaze-builder  source-repository head   type:     git