nvim-hs-0.1.1: Haskell plugin backend for neovim

Copyright(c) Sebastian Witte
LicenseApache-2.0
Maintainerwoozletoff@gmail.com
Stabilityexperimental
Safe HaskellNone
LanguageHaskell2010

Neovim.Classes

Description

 

Synopsis

Documentation

class NvimObject o where Source #

Conversion from Object files to Haskell types and back with respect to neovim's interpretation.

Minimal complete definition

toObject

Instances

NvimObject Bool Source # 
NvimObject Char Source # 
NvimObject Double Source # 
NvimObject Int Source # 
NvimObject Int8 Source # 
NvimObject Int16 Source # 
NvimObject Int32 Source # 
NvimObject Int64 Source # 
NvimObject Integer Source # 
NvimObject Word Source # 
NvimObject Word8 Source # 
NvimObject Word16 Source # 
NvimObject Word32 Source # 
NvimObject Word64 Source # 
NvimObject () Source # 
NvimObject Doc Source # 
NvimObject ByteString Source # 
NvimObject Text Source # 
NvimObject Object Source # 
NvimObject AutocmdOptions Source # 
NvimObject CommandArguments Source # 
NvimObject RangeSpecification Source # 
NvimObject CommandOptions Source # 
NvimObject Synchronous Source # 
NvimObject Message Source # 
NvimObject Window Source # 
NvimObject Tabpage Source # 
NvimObject Buffer Source # 
NvimObject NeovimExceptionGen Source # 
NvimObject QuickfixAction Source # 
NvimObject QuickfixErrorType Source # 
NvimObject [Char] Source # 
NvimObject o => NvimObject [o] Source # 
NvimObject o => NvimObject (Maybe o) Source # 
(Monoid strType, NvimObject strType) => NvimObject (QuickfixListItem strType) Source # 
(NvimObject l, NvimObject r) => NvimObject (Either l r) Source #

Right-biased instance for toObject.

(NvimObject o1, NvimObject o2) => NvimObject (o1, o2) Source # 

Methods

toObject :: (o1, o2) -> Object Source #

fromObjectUnsafe :: Object -> (o1, o2) Source #

fromObject :: Object -> Either Doc (o1, o2) Source #

(Ord key, NvimObject key, NvimObject val) => NvimObject (Map key val) Source # 

Methods

toObject :: Map key val -> Object Source #

fromObjectUnsafe :: Object -> Map key val Source #

fromObject :: Object -> Either Doc (Map key val) Source #

(NvimObject o1, NvimObject o2, NvimObject o3) => NvimObject (o1, o2, o3) Source # 

Methods

toObject :: (o1, o2, o3) -> Object Source #

fromObjectUnsafe :: Object -> (o1, o2, o3) Source #

fromObject :: Object -> Either Doc (o1, o2, o3) Source #

(NvimObject o1, NvimObject o2, NvimObject o3, NvimObject o4) => NvimObject (o1, o2, o3, o4) Source # 

Methods

toObject :: (o1, o2, o3, o4) -> Object Source #

fromObjectUnsafe :: Object -> (o1, o2, o3, o4) Source #

fromObject :: Object -> Either Doc (o1, o2, o3, o4) Source #

(NvimObject o1, NvimObject o2, NvimObject o3, NvimObject o4, NvimObject o5) => NvimObject (o1, o2, o3, o4, o5) Source # 

Methods

toObject :: (o1, o2, o3, o4, o5) -> Object Source #

fromObjectUnsafe :: Object -> (o1, o2, o3, o4, o5) Source #

fromObject :: Object -> Either Doc (o1, o2, o3, o4, o5) Source #

(NvimObject o1, NvimObject o2, NvimObject o3, NvimObject o4, NvimObject o5, NvimObject o6) => NvimObject (o1, o2, o3, o4, o5, o6) Source # 

Methods

toObject :: (o1, o2, o3, o4, o5, o6) -> Object Source #

fromObjectUnsafe :: Object -> (o1, o2, o3, o4, o5, o6) Source #

fromObject :: Object -> Either Doc (o1, o2, o3, o4, o5, o6) Source #

(NvimObject o1, NvimObject o2, NvimObject o3, NvimObject o4, NvimObject o5, NvimObject o6, NvimObject o7) => NvimObject (o1, o2, o3, o4, o5, o6, o7) Source # 

Methods

toObject :: (o1, o2, o3, o4, o5, o6, o7) -> Object Source #

fromObjectUnsafe :: Object -> (o1, o2, o3, o4, o5, o6, o7) Source #

fromObject :: Object -> Either Doc (o1, o2, o3, o4, o5, o6, o7) Source #

(NvimObject o1, NvimObject o2, NvimObject o3, NvimObject o4, NvimObject o5, NvimObject o6, NvimObject o7, NvimObject o8) => NvimObject (o1, o2, o3, o4, o5, o6, o7, o8) Source # 

Methods

toObject :: (o1, o2, o3, o4, o5, o6, o7, o8) -> Object Source #

fromObjectUnsafe :: Object -> (o1, o2, o3, o4, o5, o6, o7, o8) Source #

fromObject :: Object -> Either Doc (o1, o2, o3, o4, o5, o6, o7, o8) Source #

(NvimObject o1, NvimObject o2, NvimObject o3, NvimObject o4, NvimObject o5, NvimObject o6, NvimObject o7, NvimObject o8, NvimObject o9) => NvimObject (o1, o2, o3, o4, o5, o6, o7, o8, o9) Source # 

Methods

toObject :: (o1, o2, o3, o4, o5, o6, o7, o8, o9) -> Object Source #

fromObjectUnsafe :: Object -> (o1, o2, o3, o4, o5, o6, o7, o8, o9) Source #

fromObject :: Object -> Either Doc (o1, o2, o3, o4, o5, o6, o7, o8, o9) Source #

type Dictionary = Map ByteString Object Source #

A generic vim dictionary is a simply a map from strings to objects. This type alias is sometimes useful as a type annotation especially if the OverloadedStrings extension is enabled.

(+:) :: NvimObject o => o -> [Object] -> [Object] infixr 5 Source #

Convenient operator to create a list of Object from normal values.

module Data.Int

module Data.Word