- data Rope a = Rope !Body a
- cons8 :: Reducer ByteString m => Word8 -> Rope m -> Rope m
- empty :: Monoid m => Rope m
- fromChunks :: Reducer ByteString m => [ByteString] -> Rope m
- fromByteString :: Reducer ByteString m => ByteString -> Rope m
- fromLazyByteString :: Reducer ByteString m => ByteString -> Rope m
- fromString :: Reducer ByteString m => String -> Rope m
- fromWords :: Reducer ByteString m => [Word8] -> Rope m
- fromChar :: Reducer ByteString m => Char -> Rope m
- fromWord8 :: Reducer ByteString m => Word8 -> Rope m
- length :: Rope m -> Int
- null :: Rope m -> Bool
- body :: Rope a -> Body
- toChunks :: Rope m -> [ByteString]
- toLazyByteString :: Rope m -> ByteString
- class Reducer ByteString a => Annotation a where
- elide :: Annotation a => Int -> Int -> Rope a -> Rope a
- splitAt :: Annotation a => Int -> Rope a -> (Rope a, Rope a)
- take :: Annotation a => Int -> Rope a -> Rope a
- drop :: Annotation a => Int -> Rope a -> Rope a
- uncons8 :: Annotation m => Rope m -> Maybe (Word8, Rope m)
- unsnoc8 :: Annotation m => Rope m -> Maybe (Rope m, Word8)
- w2c :: Word8 -> Char
- class Packable a where
- pack :: Annotation m => a -> Rope m
- packl :: Annotation m => a -> Rope m -> Rope m
- packr :: Annotation m => Rope m -> a -> Rope m
- break8 :: Annotation m => (Word8 -> Bool) -> Rope m -> (Rope m, Rope m)
- findIndexOrEnd :: (Word8 -> Bool) -> ByteString -> Int
Documentation
Monad Rope | |
Functor Rope | |
Typeable1 Rope | |
Applicative Rope | |
Foldable Rope | |
Traversable Rope | |
Comonad Rope | |
Measured Count (Rope a) | |
(Packable a, Annotation m) => Reducer a (Rope m) | |
Eq a => Eq (Rope a) | |
(Annotation a, Data a) => Data (Rope a) | |
Show a => Show (Rope a) | |
Monoid a => Monoid (Rope a) | |
Annotation n => Packable (Rope n) | |
Annotation a => Annotation (Rope a) | |
MonadWriter (Rope ()) Rope |
Construction
fromChunks :: Reducer ByteString m => [ByteString] -> Rope mSource
fromByteString :: Reducer ByteString m => ByteString -> Rope mSource
fromLazyByteString :: Reducer ByteString m => ByteString -> Rope mSource
fromString :: Reducer ByteString m => String -> Rope mSource
Analysis
Deconstruction
toChunks :: Rope m -> [ByteString]Source
toLazyByteString :: Rope m -> ByteStringSource
Cutting
class Reducer ByteString a => Annotation a whereSource
elide' :: Int -> Int -> Rope a -> aSource
splitAt' :: Int -> Rope a -> (a, a)Source
Annotation () | |
Annotation ByteString | |
Annotation ByteString | |
Annotation Body | |
Annotation a => Annotation (Rope a) | |
(Annotation a, Annotation b) => Annotation (a, b) | |
(Annotation a, Annotation b) => Annotation (:*: a b) |
Pasting
pack :: Annotation m => a -> Rope mSource
packl :: Annotation m => a -> Rope m -> Rope mSource
packr :: Annotation m => Rope m -> a -> Rope mSource
findIndexOrEnd :: (Word8 -> Bool) -> ByteString -> IntSource