ribosome-host-0.9.9.9: Neovim plugin host for Polysemy
Safe HaskellSafe-Inferred
LanguageHaskell2010

Ribosome.Host.Class.Msgpack.Decode

Description

The class for decoding messagepack.

Synopsis

Documentation

class MsgpackDecode a where Source #

Class of values that can be decoded from MessagePack Objects.

Minimal complete definition

Nothing

Methods

fromMsgpack :: Object -> Either DecodeError a Source #

Decode a value from a MessagePack Object.

The default implementation uses generic derivation.

Instances

Instances details
MsgpackDecode Int64 Source # 
Instance details

Defined in Ribosome.Host.Class.Msgpack.Decode

MsgpackDecode ByteString Source # 
Instance details

Defined in Ribosome.Host.Class.Msgpack.Decode

MsgpackDecode Object Source # 
Instance details

Defined in Ribosome.Host.Class.Msgpack.Decode

MsgpackDecode MicroSeconds Source # 
Instance details

Defined in Ribosome.Host.Class.Msgpack.Decode

MsgpackDecode MilliSeconds Source # 
Instance details

Defined in Ribosome.Host.Class.Msgpack.Decode

MsgpackDecode NanoSeconds Source # 
Instance details

Defined in Ribosome.Host.Class.Msgpack.Decode

MsgpackDecode Seconds Source # 
Instance details

Defined in Ribosome.Host.Class.Msgpack.Decode

MsgpackDecode Buffer Source # 
Instance details

Defined in Ribosome.Host.Api.Data

MsgpackDecode Tabpage Source # 
Instance details

Defined in Ribosome.Host.Api.Data

MsgpackDecode Window Source # 
Instance details

Defined in Ribosome.Host.Api.Data

MsgpackDecode DecodeError Source # 
Instance details

Defined in Ribosome.Host.Class.Msgpack.Decode

MsgpackDecode FieldError Source # 
Instance details

Defined in Ribosome.Host.Class.Msgpack.Decode

MsgpackDecode ValidUtf8 Source # 
Instance details

Defined in Ribosome.Host.Class.Msgpack.Decode

MsgpackDecode ValidUtf8String Source # 
Instance details

Defined in Ribosome.Host.Class.Msgpack.Decode

MsgpackDecode ApiInfo Source # 
Instance details

Defined in Ribosome.Host.Data.ApiInfo

MsgpackDecode ExtType Source # 
Instance details

Defined in Ribosome.Host.Data.ApiInfo

MsgpackDecode ExtTypeMeta Source # 
Instance details

Defined in Ribosome.Host.Data.ApiInfo

MsgpackDecode RpcDecl Source # 
Instance details

Defined in Ribosome.Host.Data.ApiInfo

MsgpackDecode ApiType Source # 
Instance details

Defined in Ribosome.Host.Data.ApiType

MsgpackDecode Bang Source # 
Instance details

Defined in Ribosome.Host.Data.Bang

MsgpackDecode Bar Source # 
Instance details

Defined in Ribosome.Host.Data.Bar

MsgpackDecode ChannelId Source # 
Instance details

Defined in Ribosome.Host.Data.ChannelId

MsgpackDecode CommandMods Source # 
Instance details

Defined in Ribosome.Host.Data.CommandMods

MsgpackDecode CommandRegister Source # 
Instance details

Defined in Ribosome.Host.Data.CommandRegister

MsgpackDecode EventName Source # 
Instance details

Defined in Ribosome.Host.Data.Event

MsgpackDecode Execution Source # 
Instance details

Defined in Ribosome.Host.Data.Execution

MsgpackDecode LuaRef Source # 
Instance details

Defined in Ribosome.Host.Data.LuaRef

MsgpackDecode RequestId Source # 
Instance details

Defined in Ribosome.Host.Data.Request

MsgpackDecode RpcMethod Source # 
Instance details

Defined in Ribosome.Host.Data.Request

MsgpackDecode RpcError Source # 
Instance details

Defined in Ribosome.Host.Data.RpcError

MsgpackDecode RpcMessage Source # 
Instance details

Defined in Ribosome.Host.Data.RpcMessage

MsgpackDecode AutocmdBuffer Source # 
Instance details

Defined in Ribosome.Host.Data.RpcType

MsgpackDecode AutocmdEvents Source # 
Instance details

Defined in Ribosome.Host.Data.RpcType

MsgpackDecode AutocmdGroup Source # 
Instance details

Defined in Ribosome.Host.Data.RpcType

MsgpackDecode AutocmdId Source # 
Instance details

Defined in Ribosome.Host.Data.RpcType

MsgpackDecode AutocmdPatterns Source # 
Instance details

Defined in Ribosome.Host.Data.RpcType

MsgpackDecode Text Source # 
Instance details

Defined in Ribosome.Host.Class.Msgpack.Decode

MsgpackDecode String Source # 
Instance details

Defined in Ribosome.Host.Class.Msgpack.Decode

MsgpackDecode Integer Source # 
Instance details

Defined in Ribosome.Host.Class.Msgpack.Decode

MsgpackDecode () Source # 
Instance details

Defined in Ribosome.Host.Class.Msgpack.Decode

MsgpackDecode Bool Source # 
Instance details

Defined in Ribosome.Host.Class.Msgpack.Decode

MsgpackDecode Char Source # 
Instance details

Defined in Ribosome.Host.Class.Msgpack.Decode

MsgpackDecode Double Source # 
Instance details

Defined in Ribosome.Host.Class.Msgpack.Decode

MsgpackDecode Float Source # 
Instance details

Defined in Ribosome.Host.Class.Msgpack.Decode

MsgpackDecode Int Source # 
Instance details

Defined in Ribosome.Host.Class.Msgpack.Decode

Typeable style => MsgpackDecode (Range style) Source # 
Instance details

Defined in Ribosome.Host.Data.Range

MsgpackDecode a => MsgpackDecode (Maybe a) Source # 
Instance details

Defined in Ribosome.Host.Class.Msgpack.Decode

(Typeable a, MsgpackDecode a) => MsgpackDecode [a] Source # 
Instance details

Defined in Ribosome.Host.Class.Msgpack.Decode

(MsgpackDecode a, MsgpackDecode b) => MsgpackDecode (Either a b) Source # 
Instance details

Defined in Ribosome.Host.Class.Msgpack.Decode

(Ord k, Typeable k, Typeable v, MsgpackDecode k, MsgpackDecode v) => MsgpackDecode (Map k v) Source # 
Instance details

Defined in Ribosome.Host.Class.Msgpack.Decode

(Typeable b, Typeable t, DecodePath b t) => MsgpackDecode (Path b t) Source # 
Instance details

Defined in Ribosome.Host.Class.Msgpack.Decode

(Typeable a, Typeable b, MsgpackDecode a, MsgpackDecode b) => MsgpackDecode (a, b) Source # 
Instance details

Defined in Ribosome.Host.Class.Msgpack.Decode

(Typeable a, Typeable b, Typeable c, MsgpackDecode a, MsgpackDecode b, MsgpackDecode c) => MsgpackDecode (a, b, c) Source # 
Instance details

Defined in Ribosome.Host.Class.Msgpack.Decode

Methods

fromMsgpack :: Object -> Either DecodeError (a, b, c) Source #

(Typeable a, Typeable b, Typeable c, Typeable d, MsgpackDecode a, MsgpackDecode b, MsgpackDecode c, MsgpackDecode d) => MsgpackDecode (a, b, c, d) Source # 
Instance details

Defined in Ribosome.Host.Class.Msgpack.Decode

Methods

fromMsgpack :: Object -> Either DecodeError (a, b, c, d) Source #

(Typeable a, Typeable b, Typeable c, Typeable d, Typeable e, MsgpackDecode a, MsgpackDecode b, MsgpackDecode c, MsgpackDecode d, MsgpackDecode e) => MsgpackDecode (a, b, c, d, e) Source # 
Instance details

Defined in Ribosome.Host.Class.Msgpack.Decode

Methods

fromMsgpack :: Object -> Either DecodeError (a, b, c, d, e) Source #

(Typeable a, Typeable b, Typeable c, Typeable d, Typeable e, Typeable f, MsgpackDecode a, MsgpackDecode b, MsgpackDecode c, MsgpackDecode d, MsgpackDecode e, MsgpackDecode f) => MsgpackDecode (a, b, c, d, e, f) Source # 
Instance details

Defined in Ribosome.Host.Class.Msgpack.Decode

Methods

fromMsgpack :: Object -> Either DecodeError (a, b, c, d, e, f) Source #

(Typeable a, Typeable b, Typeable c, Typeable d, Typeable e, Typeable f, Typeable g, MsgpackDecode a, MsgpackDecode b, MsgpackDecode c, MsgpackDecode d, MsgpackDecode e, MsgpackDecode f, MsgpackDecode g) => MsgpackDecode (a, b, c, d, e, f, g) Source # 
Instance details

Defined in Ribosome.Host.Class.Msgpack.Decode

Methods

fromMsgpack :: Object -> Either DecodeError (a, b, c, d, e, f, g) Source #

class MissingKey a where Source #

This class decides what to return when a key in an ObjectMap is missing for a corresponding record field.

Primarily used for Maybe fields, since they should decode to Nothing when the key is absent.

Methods

missingKey :: String -> Map String Object -> Either FieldError a Source #

Return a fallback value for a missing key in an ObjectMap.

Instances

Instances details
MissingKey a Source # 
Instance details

Defined in Ribosome.Host.Class.Msgpack.Decode

MissingKey (Maybe a) Source # 
Instance details

Defined in Ribosome.Host.Class.Msgpack.Decode

pattern Msgpack :: forall a. MsgpackDecode a => a -> Object Source #

Pattern synonym for decoding an Object.