StreamPatch.Patch.Linearize
class HasLength a where Source #
Methods
getLength :: a -> Natural Source #
Defined in StreamPatch.Patch.Linearize
getLength :: String -> Natural Source #
getLength :: ByteString -> Natural Source #
getLength :: Text -> Natural Source #
data Error fs a Source #
Constructors
Two edits wrote to the same offset.
Fields
absolute position in stream
overlapping patch
previous patch
fmap :: (a -> b) -> Error fs a -> Error fs b #
(<$) :: a -> Error fs b -> Error fs a #
fold :: Monoid m => Error fs m -> m #
foldMap :: Monoid m => (a -> m) -> Error fs a -> m #
foldMap' :: Monoid m => (a -> m) -> Error fs a -> m #
foldr :: (a -> b -> b) -> b -> Error fs a -> b #
foldr' :: (a -> b -> b) -> b -> Error fs a -> b #
foldl :: (b -> a -> b) -> b -> Error fs a -> b #
foldl' :: (b -> a -> b) -> b -> Error fs a -> b #
foldr1 :: (a -> a -> a) -> Error fs a -> a #
foldl1 :: (a -> a -> a) -> Error fs a -> a #
toList :: Error fs a -> [a] #
null :: Error fs a -> Bool #
length :: Error fs a -> Int #
elem :: Eq a => a -> Error fs a -> Bool #
maximum :: Ord a => Error fs a -> a #
minimum :: Ord a => Error fs a -> a #
sum :: Num a => Error fs a -> a #
product :: Num a => Error fs a -> a #
traverse :: Applicative f => (a -> f b) -> Error fs a -> f (Error fs b) #
sequenceA :: Applicative f => Error fs (f a) -> f (Error fs a) #
mapM :: Monad m => (a -> m b) -> Error fs a -> m (Error fs b) #
sequence :: Monad m => Error fs (m a) -> m (Error fs a) #
(==) :: Error fs a -> Error fs a -> Bool #
(/=) :: Error fs a -> Error fs a -> Bool #
showsPrec :: Int -> Error fs a -> ShowS #
show :: Error fs a -> String #
showList :: [Error fs a] -> ShowS #
Associated Types
type Rep (Error fs a) :: Type -> Type #
from :: Error fs a -> Rep (Error fs a) x #
to :: Rep (Error fs a) x -> Error fs a #
linearize :: HasLength a => [Patch 'AbsSeek fs a] -> Either (Error fs a) [Patch 'FwdSeek fs a] Source #
comparePatchSeeks :: Ord (SeekRep s) => Patch s fs a -> Patch s fs a -> Ordering Source #