hls-plugin-api-0.7.0.0: Haskell Language Server API for plugin communication
Safe HaskellNone
LanguageHaskell2010

Ide.Plugin.Config

Synopsis

Documentation

getInitialConfig :: InitializeRequest -> Either Text Config Source #

Given an InitializeRequest message, this function returns the parsed Config object if possible. Otherwise, it returns the default configuration

getConfigFromNotification :: DidChangeConfigurationNotification -> Either Text Config Source #

Given a DidChangeConfigurationNotification message, this function returns the parsed Config object if possible.

data Config Source #

We (initially anyway) mirror the hie configuration, so that existing clients can simply switch executable and not have any nasty surprises. There will be surprises relating to config options being ignored, initially though.

Instances

Instances details
Eq Config Source # 
Instance details

Defined in Ide.Plugin.Config

Methods

(==) :: Config -> Config -> Bool #

(/=) :: Config -> Config -> Bool #

Show Config Source # 
Instance details

Defined in Ide.Plugin.Config

ToJSON Config Source # 
Instance details

Defined in Ide.Plugin.Config

FromJSON Config Source # 
Instance details

Defined in Ide.Plugin.Config

Default Config Source # 
Instance details

Defined in Ide.Plugin.Config

Methods

def :: Config #

data PluginConfig Source #

A PluginConfig is a generic configuration for a given HLS plugin. It provides a "big switch" to turn it on or off as a whole, as well as small switches per feature, and a slot for custom config. This provides a regular naming scheme for all plugin config.

data CheckParents Source #

Instances

Instances details
Eq CheckParents Source # 
Instance details

Defined in Ide.Plugin.Config

Ord CheckParents Source # 
Instance details

Defined in Ide.Plugin.Config

Show CheckParents Source # 
Instance details

Defined in Ide.Plugin.Config

Generic CheckParents Source # 
Instance details

Defined in Ide.Plugin.Config

Associated Types

type Rep CheckParents :: Type -> Type #

ToJSON CheckParents Source # 
Instance details

Defined in Ide.Plugin.Config

FromJSON CheckParents Source # 
Instance details

Defined in Ide.Plugin.Config

type Rep CheckParents Source # 
Instance details

Defined in Ide.Plugin.Config

type Rep CheckParents = D1 ('MetaData "CheckParents" "Ide.Plugin.Config" "hls-plugin-api-0.7.0.0-4G2n1RCXmEZ5ORCCaA7b0k" 'False) ((C1 ('MetaCons "NeverCheck" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "CheckOnClose" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "CheckOnSaveAndClose" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "AlwaysCheck" 'PrefixI 'False) (U1 :: Type -> Type)))