lsp-types-2.3.0.1: Haskell library for the Microsoft Language Server Protocol, data types

Safe Haskell | None
Language | GHC2021

Data.IxMap

# Documentation

class Ord (Base f) => IxOrd (f :: k -> Type) where #

Associated Types

type Base (f :: k -> Type) #

Methods

toBase :: forall (a :: k). f a -> Base f #

#### Instances

Instances details

IxOrd (LspId :: Method f 'Request -> Type) # |
Instance details Defined in Language.LSP.Protocol.Message.LspId Associated Types
type Base (LspId :: Method f 'Request -> Type) |
Instance details Defined in Language.LSP.Protocol.Message.LspId type Base (LspId :: Method f 'Request -> Type) = SomeLspId
Methods toBase :: forall (a :: Method f 'Request). LspId a -> Base (LspId :: Method f 'Request -> Type) #

newtype IxMap (k :: a -> Type) (f :: a -> Type) #

Constructors

IxMap |
Fields getMap :: Map (Base k) (Some f)

emptyIxMap :: forall {a} (k :: a -> Type) (f :: a -> Type). IxMap k f #

insertIxMap :: forall {a} k (m :: a) f. IxOrd k => k m -> f m -> IxMap k f -> Maybe (IxMap k f) #

lookupIxMap :: forall {a} k (m :: a) f. IxOrd k => k m -> IxMap k f -> Maybe (f m) #

pickFromIxMap :: forall {a} k (m :: a) f. IxOrd k => k m -> IxMap k f -> (Maybe (f m), IxMap k f) #