unison-runtime-0.0.0
Safe HaskellSafe-Inferred
LanguageHaskell2010

Unison.Runtime.Serialize

Documentation

class Tag t where Source #

Methods

tag2word :: t -> Word8 Source #

word2tag :: MonadGet m => Word8 -> m t Source #

Instances

Instances details
Tag BLTag Source # 
Instance details

Defined in Unison.Runtime.ANF.Serialize.Tags

Tag CoTag Source # 
Instance details

Defined in Unison.Runtime.ANF.Serialize.Tags

Tag FnTag Source # 
Instance details

Defined in Unison.Runtime.ANF.Serialize.Tags

Tag LtTag Source # 
Instance details

Defined in Unison.Runtime.ANF.Serialize.Tags

Tag MtTag Source # 
Instance details

Defined in Unison.Runtime.ANF.Serialize.Tags

Tag TmTag Source # 
Instance details

Defined in Unison.Runtime.ANF.Serialize.Tags

Tag VaTag Source # 
Instance details

Defined in Unison.Runtime.ANF.Serialize.Tags

Tag Prim1 Source # 
Instance details

Defined in Unison.Runtime.Serialize

Tag Prim2 Source # 
Instance details

Defined in Unison.Runtime.Serialize

putTag :: Tag t => t -> Builder Source #

getTag :: MonadGet m => Tag t => m t Source #

getVarInt :: (MonadGet m, Num b, Bits b) => m b Source #

getPositive :: forall m n. (Bounded n, Integral n, MonadGet m) => m n Source #

putFoldable :: Foldable f => (a -> Builder) -> f a -> Builder Source #

putMap :: (a -> Builder) -> (b -> Builder) -> Map a b -> Builder Source #

getList :: MonadGet m => m a -> m [a] Source #

getSeq :: MonadGet m => m a -> m (Seq a) Source #

getMap :: (MonadGet m, Ord a) => m a -> m b -> m (Map a b) Source #

putMapping :: (a -> Builder) -> (b -> Builder) -> [(a, b)] -> Builder Source #

getMapping :: MonadGet m => m a -> m b -> m [(a, b)] Source #

putEnumMap :: EnumKey k => (k -> Builder) -> (v -> Builder) -> EnumMap k v -> Builder Source #

getEnumMap :: MonadGet m => EnumKey k => m k -> m v -> m (EnumMap k v) Source #

getEnumSet :: MonadGet m => EnumKey k => m k -> m (EnumSet k) Source #

putMaybe :: Maybe a -> (a -> Builder) -> Builder Source #

getMaybe :: MonadGet m => m a -> m (Maybe a) Source #

putPair :: (a -> Builder) -> (b -> Builder) -> (a, b) -> Builder Source #

getPair :: MonadGet m => m a -> m b -> m (a, b) Source #

getArray :: MonadGet m => m a -> m (Array a) Source #

putArray :: (a -> Builder) -> Array a -> Builder Source #