From f97a92f4fc2fc2ff3c85362c31d02c72c754bb58 Mon Sep 17 00:00:00 2001 From: PHO Date: Fri, 13 Jan 2012 07:52:47 +0900 Subject: [PATCH] Data.URI.Scheme Ditz-issue: c80e79a2585ac20cc5ed677d70b6983a2842a81d --- Data/URI/Internal/Scheme.hs | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/Data/URI/Internal/Scheme.hs b/Data/URI/Internal/Scheme.hs index 2e3ba24..da8294e 100644 --- a/Data/URI/Internal/Scheme.hs +++ b/Data/URI/Internal/Scheme.hs @@ -12,7 +12,7 @@ module Data.URI.Internal.Scheme ( Scheme ) where -import Data.Ascii (CIAscii) +import Data.Ascii (AsciiBuilder, CIAscii) import qualified Data.Ascii as A import Data.Attoparsec.Char8 import qualified Data.ByteString.Char8 as BS @@ -64,11 +64,16 @@ instance Default (Parser Scheme) where instance ConvertSuccess Scheme CIAscii where {-# INLINE convertSuccess #-} - convertSuccess (Scheme s) = s + convertSuccess (Scheme s) = foldCase s + +instance ConvertSuccess Scheme AsciiBuilder where + {-# INLINE convertSuccess #-} + convertSuccess = A.toAsciiBuilder ∘ A.fromCIAscii ∘ cs instance ConvertAttempt CIAscii Scheme where {-# INLINE convertAttempt #-} convertAttempt = parseAttempt' def ∘ A.fromCIAscii -deriveAttempts [ ([t| Scheme |], [t| CIAscii |]) +deriveAttempts [ ([t| Scheme |], [t| AsciiBuilder |]) + , ([t| Scheme |], [t| CIAscii |]) ] -- 2.40.0