rope-0.2: Data/Rope.hs
module Data.Rope (
-- * Size
Rope
, length -- :: Rope -> Int
, null -- :: Rope -> Bool
-- * Slicing
, Breakable(..)
, splitAt -- :: Int -> Rope -> (Rope, Rope)
, take -- :: Int -> Rope -> Rope
, drop -- :: Int -> Rope -> Rope
-- * Walking
-- ** construction
, Reducer(..)
, empty -- :: Rope
, fromByteString -- :: ByteString -> Rope
, fromChunks -- :: [ByteString] -> Rope
, fromLazyByteString -- :: L.ByteString -> Rope
, fromWords -- :: [Word8] -> Rope
, fromChar -- :: Char -> Rope
, fromWord8 -- :: Word8 -> Rope
, fromString -- :: String -> Rope
-- * Deconstructing 'Rope's
, Unpackable(..)
, toChunks -- :: Rope -> [ByteString]
, toLazyByteString -- :: Rope -> L.ByteString
, toString -- :: Rope -> String
) where
import Prelude hiding (null,head,length,drop,take,splitAt, last)
import Data.Rope.Util.Reducer (Reducer(..))
import Data.Rope.Internal
( Rope
, empty
, length
, null
, fromChunks
, fromByteString
, fromLazyByteString
, fromWords
, fromChar
, fromWord8
, fromString
, toString
, toChunks
, toLazyByteString
, Breakable(..)
, Unpackable(..)
, splitAt
, take
, drop)