rasa-0.1.8: src/Rasa/Internal/Text.hs
{-# language Rank2Types #-}
module Rasa.Internal.Text
( asText
, asString
, asLines
) where
import Control.Lens
import qualified Yi.Rope as Y
import qualified Data.Text as T
-- | An iso which converts to/from 'Y.YiString' -> Text
asText :: Iso' Y.YiString T.Text
asText = iso Y.toText Y.fromText
-- | An iso which converts to/from 'Y.YiString' -> String
asString :: Iso' Y.YiString String
asString = iso Y.toString Y.fromString
-- | An iso which converts to/from 'Y.YiString' -> ['Y.YiString']
asLines :: Iso' Y.YiString [Y.YiString]
asLines = iso Y.lines' Y.concat