| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
RON.Data.RGA
Description
Replicated Growable Array (RGA)
Synopsis
- newtype RGA a = RGA [a]
- data RgaRep
- type RgaString = RGA Char
- edit :: (ReplicatedAsPayload a, ReplicaClock m, MonadE m, MonadObjectState (RGA a) m) => [a] -> m ()
- editText :: (ReplicaClock m, MonadE m, MonadObjectState RgaString m) => Text -> m ()
- getAliveIndices :: (MonadE m, MonadObjectState (RGA a) m) => m [UUID]
- getList :: (Replicated a, MonadE m, MonadObjectState (RGA a) m) => m [a]
- getText :: (MonadE m, MonadObjectState RgaString m) => m Text
- insert :: (Replicated a, MonadE m, MonadObjectState (RGA a) m, ReplicaClock m) => [a] -> Maybe UUID -> m ()
- insertAfter :: (Replicated a, MonadE m, MonadObjectState (RGA a) m, ReplicaClock m) => [a] -> UUID -> m ()
- insertAtBegin :: (Replicated a, MonadE m, MonadObjectState (RGA a) m, ReplicaClock m) => [a] -> m ()
- insertText :: (ReplicaClock m, MonadE m, MonadObjectState RgaString m) => Text -> Maybe UUID -> m ()
- insertTextAfter :: (ReplicaClock m, MonadE m, MonadObjectState RgaString m) => Text -> UUID -> m ()
- insertTextAtBegin :: (ReplicaClock m, MonadE m, MonadObjectState RgaString m) => Text -> m ()
- newFromList :: (Replicated a, MonadState StateFrame m, ReplicaClock m) => [a] -> m (ObjectRef (RGA a))
- newFromText :: (MonadState StateFrame m, ReplicaClock m) => Text -> m (ObjectRef RgaString)
- remove :: (MonadE m, MonadObjectState (RGA a) m, ReplicaClock m) => UUID -> m ()
- rgaType :: UUID
- toList :: RGA a -> [a]
- toText :: RgaString -> Text
Documentation
Typed RGA
Constructors
| RGA [a] |
Instances
| Eq a => Eq (RGA a) Source # | |
| Show a => Show (RGA a) Source # | |
| Replicated a => ReplicatedAsObject (RGA a) Source # | |
Defined in RON.Data.RGA Methods newObject :: (ReplicaClock m, MonadState StateFrame m) => RGA a -> m (ObjectRef (RGA a)) Source # readObject :: (MonadE m, MonadObjectState (RGA a) m) => m (RGA a) Source # | |
| Replicated a => Replicated (RGA a) Source # | |
Defined in RON.Data.RGA | |
| type Rep (RGA a) Source # | |
Defined in RON.Data.RGA | |
Untyped RGA
Instances
| Eq RgaRep Source # | |
| Show RgaRep Source # | |
| Semigroup RgaRep Source # | |
| Monoid RgaRep Source # | |
| Semilattice RgaRep Source # | |
Defined in RON.Data.RGA | |
| Reducible RgaRep Source # | |
Defined in RON.Data.RGA Methods reducibleOpType :: UUID Source # stateFromChunk :: [Op] -> RgaRep Source # stateToChunk :: RgaRep -> [Op] Source # applyPatches :: RgaRep -> Unapplied -> (RgaRep, Unapplied) Source # reduceUnappliedPatches :: Unapplied -> Unapplied Source # | |
edit :: (ReplicatedAsPayload a, ReplicaClock m, MonadE m, MonadObjectState (RGA a) m) => [a] -> m () Source #
Replace content of the RGA throug introducing changes detected by
getGroupedDiffBy.
editText :: (ReplicaClock m, MonadE m, MonadObjectState RgaString m) => Text -> m () Source #
getAliveIndices :: (MonadE m, MonadObjectState (RGA a) m) => m [UUID] Source #
getList :: (Replicated a, MonadE m, MonadObjectState (RGA a) m) => m [a] Source #
Read elements from RGA
getText :: (MonadE m, MonadObjectState RgaString m) => m Text Source #
Read characters from RgaString
Arguments
| :: (Replicated a, MonadE m, MonadObjectState (RGA a) m, ReplicaClock m) | |
| => [a] | |
| -> Maybe UUID | position |
| -> m () |
Arguments
| :: (Replicated a, MonadE m, MonadObjectState (RGA a) m, ReplicaClock m) | |
| => [a] | |
| -> UUID | position |
| -> m () |
insertAtBegin :: (Replicated a, MonadE m, MonadObjectState (RGA a) m, ReplicaClock m) => [a] -> m () Source #
Arguments
| :: (ReplicaClock m, MonadE m, MonadObjectState RgaString m) | |
| => Text | |
| -> Maybe UUID | position |
| -> m () |
Arguments
| :: (ReplicaClock m, MonadE m, MonadObjectState RgaString m) | |
| => Text | |
| -> UUID | position |
| -> m () |
insertTextAtBegin :: (ReplicaClock m, MonadE m, MonadObjectState RgaString m) => Text -> m () Source #
newFromList :: (Replicated a, MonadState StateFrame m, ReplicaClock m) => [a] -> m (ObjectRef (RGA a)) Source #
Create an RGA from a list
newFromText :: (MonadState StateFrame m, ReplicaClock m) => Text -> m (ObjectRef RgaString) Source #
Create an RgaString from a text
Arguments
| :: (MonadE m, MonadObjectState (RGA a) m, ReplicaClock m) | |
| => UUID | position |
| -> m () |
Record a removal of a specific item