@@ -1,4 +1,6 @@
1−{-# LANGUAGE BangPatterns #-}
1+{-# LANGUAGE BangPatterns, FlexibleInstances, TypeSynonymInstances #-}
2+{-# OPTIONS_GHC -fno-warn-orphans #-}
3+
24-- |
35-- Module : Data.Attoparsec.Text
46-- Copyright : Bryan O'Sullivan 2011
@@ -102,12 +104,16 @@ import Data.Bits (Bits, (.|.), shiftL)
102104import Data.Char (isAlpha, isDigit, isSpace, ord)
103105import Data.Int (Int8, Int16, Int32, Int64)
104106import Data.Ratio ((%))
107+import Data.String (IsString(..))
105108import Data.Text (Text)
106109import Data.Word (Word8, Word16, Word32, Word64, Word)
107110import qualified Data.Attoparsec.Internal.Types as T
108111import qualified Data.Attoparsec.Text.Internal as I
109112import qualified Data.Text as T
110113
114+instance IsString (Parser Text) where
115+ fromString = I.string . T.pack
116+
111117-- $parsec
112118--
113119-- Compared to Parsec 3, Attoparsec makes several tradeoffs. It is