uri 0.1.2 → 0.1.3
raw patch · 2 files changed
+6/−4 lines, 2 files
Files
- Text/URI.hs +5/−3
- uri.cabal +1/−1
Text/URI.hs view
@@ -92,7 +92,7 @@ okInQuery = satisfiesAny [isPChar, (`elem` "/?")] -- | Checks if character is OK in urlencoded query item okInQueryItem :: Char -> Bool-okInQueryItem = isUnreserved+okInQueryItem c = okInQuery c && (not $ elem c "&=") -- | Checks if character is OK in fragment okInFragment :: Char -> Bool okInFragment = okInQuery@@ -401,13 +401,15 @@ queryP = many $ satisfy (isPChar) <|> oneOf "/?" +queryItemP = satisfy (\c -> isPChar c && (not $ elem c "&=")) <|> oneOf "/?"+ fragmentP = queryP urlEncodedPairsP = many urlEncodedPairP urlEncodedPairP = do- keyV <- manyTill (percentEncodedP <|> plusP <|> unreservedP) (char '=')- valueV <- manyTill (percentEncodedP <|> plusP <|> unreservedP) (skip (char '&') <|> eof)+ keyV <- manyTill (percentEncodedP <|> plusP <|> queryItemP) (char '=')+ valueV <- manyTill (percentEncodedP <|> plusP <|> queryItemP) (skip (char '&') <|> eof) return (keyV, valueV) plusP = do
uri.cabal view
@@ -1,5 +1,5 @@ Name: uri-Version: 0.1.2+Version: 0.1.3 Synopsis: Library for working with URIs Category: Text Description: Library for working with URIs, including parsing, rendering, merging, escaping