ghcide-2.9.0.0: The core of an IDE
Safe HaskellSafe-Inferred
LanguageGHC2021

Development.IDE

Synopsis

Documentation

data Doc ann #

The abstract data type Doc ann represents pretty documents that have been annotated with data of type ann.

More specifically, a value of type Doc represents a non-empty set of possible layouts of a document. The layout functions select one of these possibilities, taking into account things like the width of the output document.

The annotation is an arbitrary piece of data associated with (part of) a document. Annotations may be used by the rendering backends in order to display output differently, such as

  • color information (e.g. when rendering to the terminal)
  • mouseover text (e.g. when rendering to rich HTML)
  • whether to show something or not (to allow simple or detailed versions)

The simplest way to display a Doc is via the Show class.

>>> putStrLn (show (vsep ["hello", "world"]))
hello
world

Instances

Instances details
Functor Doc

Alter the document’s annotations.

This instance makes Doc more flexible (because it can be used in Functor-polymorphic values), but fmap is much less readable compared to using reAnnotate in code that only works for Doc anyway. Consider using the latter when the type does not matter.

Instance details

Defined in Prettyprinter.Internal

Methods

fmap :: (a -> b) -> Doc a -> Doc b #

(<$) :: a -> Doc b -> Doc a #

IsString (Doc ann)
>>> pretty ("hello\nworld")
hello
world

This instance uses the Pretty Doc instance, and uses the same newline to line conversion.

Instance details

Defined in Prettyprinter.Internal

Methods

fromString :: String -> Doc ann #

Monoid (Doc ann)
mempty = emptyDoc
mconcat = hcat
>>> mappend "hello" "world" :: Doc ann
helloworld
Instance details

Defined in Prettyprinter.Internal

Methods

mempty :: Doc ann #

mappend :: Doc ann -> Doc ann -> Doc ann #

mconcat :: [Doc ann] -> Doc ann #

Semigroup (Doc ann)
x <> y = hcat [x, y]
>>> "hello" <> "world" :: Doc ann
helloworld
Instance details

Defined in Prettyprinter.Internal

Methods

(<>) :: Doc ann -> Doc ann -> Doc ann #

sconcat :: NonEmpty (Doc ann) -> Doc ann #

stimes :: Integral b => b -> Doc ann -> Doc ann #

Generic (Doc ann) 
Instance details

Defined in Prettyprinter.Internal

Associated Types

type Rep (Doc ann) :: Type -> Type #

Methods

from :: Doc ann -> Rep (Doc ann) x #

to :: Rep (Doc ann) x -> Doc ann #

Show (Doc ann)

(show doc) prettyprints document doc with defaultLayoutOptions, ignoring all annotations.

Instance details

Defined in Prettyprinter.Internal

Methods

showsPrec :: Int -> Doc ann -> ShowS #

show :: Doc ann -> String #

showList :: [Doc ann] -> ShowS #

type Rep (Doc ann) 
Instance details

Defined in Prettyprinter.Internal

type Rep (Doc ann) = D1 ('MetaData "Doc" "Prettyprinter.Internal" "prettyprinter-1.7.1-5e7OiMaiyLWFEOfH8r8oT4" 'False) (((C1 ('MetaCons "Fail" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Empty" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Char" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Char)))) :+: (C1 ('MetaCons "Text" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Int) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Text)) :+: (C1 ('MetaCons "Line" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "FlatAlt" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Doc ann)) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Doc ann)))))) :+: ((C1 ('MetaCons "Cat" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Doc ann)) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Doc ann))) :+: (C1 ('MetaCons "Nest" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Int) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Doc ann))) :+: C1 ('MetaCons "Union" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Doc ann)) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Doc ann))))) :+: ((C1 ('MetaCons "Column" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Int -> Doc ann))) :+: C1 ('MetaCons "WithPageWidth" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (PageWidth -> Doc ann)))) :+: (C1 ('MetaCons "Nesting" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Int -> Doc ann))) :+: C1 ('MetaCons "Annotated" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ann) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Doc ann)))))))

data Location #

Constructors

Location 

Fields

Instances

Instances details
FromJSON Location 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.Location

ToJSON Location 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.Location

Generic Location 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.Location

Associated Types

type Rep Location :: Type -> Type #

Methods

from :: Location -> Rep Location x #

to :: Rep Location x -> Location #

Show Location 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.Location

NFData Location 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.Location

Methods

rnf :: Location -> () #

Eq Location 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.Location

Ord Location 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.Location

Hashable Location 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.Location

Methods

hashWithSalt :: Int -> Location -> Int #

hash :: Location -> Int #

Pretty Location 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.Location

Methods

pretty :: Location -> Doc ann #

prettyList :: [Location] -> Doc ann #

HasLocation DiagnosticRelatedInformation Location 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

location :: Lens' DiagnosticRelatedInformation Location

HasLocation SymbolInformation Location 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

location :: Lens' SymbolInformation Location

HasRange Location Range 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

HasUri Location Uri 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

uri :: Lens' Location Uri

HasLocation InlayHintLabelPart (Maybe Location) 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

location :: Lens' InlayHintLabelPart (Maybe Location)

HasLocation WorkspaceSymbol (Location |? LocationUriOnly) 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

location :: Lens' WorkspaceSymbol (Location |? LocationUriOnly)

type Rep Location 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.Location

type Rep Location = D1 ('MetaData "Location" "Language.LSP.Protocol.Internal.Types.Location" "lsp-types-2.3.0.0-6bqFZs2MzRL81rzZYRuAwB" 'False) (C1 ('MetaCons "Location" 'PrefixI 'True) (S1 ('MetaSel ('Just "_uri") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Uri) :*: S1 ('MetaSel ('Just "_range") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Range)))

data Position #

Constructors

Position 

Fields

Instances

Instances details
FromJSON Position 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.Position

ToJSON Position 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.Position

Generic Position 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.Position

Associated Types

type Rep Position :: Type -> Type #

Methods

from :: Position -> Rep Position x #

to :: Rep Position x -> Position #

Show Position 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.Position

NFData Position 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.Position

Methods

rnf :: Position -> () #

Eq Position 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.Position

Ord Position 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.Position

Hashable Position 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.Position

Methods

hashWithSalt :: Int -> Position -> Int #

hash :: Position -> Int #

Pretty Position 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.Position

Methods

pretty :: Position -> Doc ann #

prettyList :: [Position] -> Doc ann #

HasCharacter Position UInt 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

character :: Lens' Position UInt

HasEnd Range Position 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

HasLine Position UInt 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

line :: Lens' Position UInt

HasPosition CallHierarchyPrepareParams Position 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

position :: Lens' CallHierarchyPrepareParams Position

HasPosition CompletionParams Position 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

position :: Lens' CompletionParams Position

HasPosition DeclarationParams Position 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

position :: Lens' DeclarationParams Position

HasPosition DefinitionParams Position 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

position :: Lens' DefinitionParams Position

HasPosition DocumentHighlightParams Position 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

position :: Lens' DocumentHighlightParams Position

HasPosition DocumentOnTypeFormattingParams Position 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

position :: Lens' DocumentOnTypeFormattingParams Position

HasPosition HoverParams Position 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

position :: Lens' HoverParams Position

HasPosition ImplementationParams Position 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

position :: Lens' ImplementationParams Position

HasPosition InlayHint Position 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

position :: Lens' InlayHint Position

HasPosition LinkedEditingRangeParams Position 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

position :: Lens' LinkedEditingRangeParams Position

HasPosition MonikerParams Position 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

position :: Lens' MonikerParams Position

HasPosition PrepareRenameParams Position 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

position :: Lens' PrepareRenameParams Position

HasPosition ReferenceParams Position 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

position :: Lens' ReferenceParams Position

HasPosition RenameParams Position 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

position :: Lens' RenameParams Position

HasPosition SignatureHelpParams Position 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

position :: Lens' SignatureHelpParams Position

HasPosition TextDocumentPositionParams Position 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

position :: Lens' TextDocumentPositionParams Position

HasPosition TypeDefinitionParams Position 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

position :: Lens' TypeDefinitionParams Position

HasPosition TypeHierarchyPrepareParams Position 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

position :: Lens' TypeHierarchyPrepareParams Position

HasStart Range Position 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

HasPositions SelectionRangeParams [Position] 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

positions :: Lens' SelectionRangeParams [Position]

type Rep Position 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.Position

type Rep Position = D1 ('MetaData "Position" "Language.LSP.Protocol.Internal.Types.Position" "lsp-types-2.3.0.0-6bqFZs2MzRL81rzZYRuAwB" 'False) (C1 ('MetaCons "Position" 'PrefixI 'True) (S1 ('MetaSel ('Just "_line") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 UInt) :*: S1 ('MetaSel ('Just "_character") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 UInt)))

data Plugin c Source #

Instances

Instances details
Monoid (Plugin c) Source # 
Instance details

Defined in Development.IDE.Plugin

Methods

mempty :: Plugin c #

mappend :: Plugin c -> Plugin c -> Plugin c #

mconcat :: [Plugin c] -> Plugin c #

Semigroup (Plugin c) Source # 
Instance details

Defined in Development.IDE.Plugin

Methods

(<>) :: Plugin c -> Plugin c -> Plugin c #

sconcat :: NonEmpty (Plugin c) -> Plugin c #

stimes :: Integral b => b -> Plugin c -> Plugin c #

Default (Plugin c) Source # 
Instance details

Defined in Development.IDE.Plugin

Methods

def :: Plugin c #

data Diagnostic #

Constructors

Diagnostic 

Fields

Instances

Instances details
FromJSON Diagnostic 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.Diagnostic

ToJSON Diagnostic 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.Diagnostic

Generic Diagnostic 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.Diagnostic

Associated Types

type Rep Diagnostic :: Type -> Type #

Show Diagnostic 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.Diagnostic

NFData Diagnostic 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.Diagnostic

Methods

rnf :: Diagnostic -> () #

Eq Diagnostic 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.Diagnostic

Ord Diagnostic 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.Diagnostic

Hashable Diagnostic 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.Diagnostic

Pretty Diagnostic 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.Diagnostic

Methods

pretty :: Diagnostic -> Doc ann #

prettyList :: [Diagnostic] -> Doc ann #

HasMessage Diagnostic Text 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

HasRange Diagnostic Range 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

HasCode Diagnostic (Maybe (Int32 |? Text)) 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

code :: Lens' Diagnostic (Maybe (Int32 |? Text))

HasCodeDescription Diagnostic (Maybe CodeDescription) 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

codeDescription :: Lens' Diagnostic (Maybe CodeDescription)

HasData_ Diagnostic (Maybe Value) 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

HasDiagnostics CodeAction (Maybe [Diagnostic]) 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

diagnostics :: Lens' CodeAction (Maybe [Diagnostic])

HasDiagnostics CodeActionContext [Diagnostic] 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

diagnostics :: Lens' CodeActionContext [Diagnostic]

HasDiagnostics PublishDiagnosticsParams [Diagnostic] 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

diagnostics :: Lens' PublishDiagnosticsParams [Diagnostic]

HasItems FullDocumentDiagnosticReport [Diagnostic] 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

items :: Lens' FullDocumentDiagnosticReport [Diagnostic]

HasItems RelatedFullDocumentDiagnosticReport [Diagnostic] 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

items :: Lens' RelatedFullDocumentDiagnosticReport [Diagnostic]

HasItems WorkspaceFullDocumentDiagnosticReport [Diagnostic] 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

items :: Lens' WorkspaceFullDocumentDiagnosticReport [Diagnostic]

HasRelatedInformation Diagnostic (Maybe [DiagnosticRelatedInformation]) 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

relatedInformation :: Lens' Diagnostic (Maybe [DiagnosticRelatedInformation])

HasSeverity Diagnostic (Maybe DiagnosticSeverity) 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

HasSource Diagnostic (Maybe Text) 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

HasTags Diagnostic (Maybe [DiagnosticTag]) 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

tags :: Lens' Diagnostic (Maybe [DiagnosticTag])

type Rep Diagnostic 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.Diagnostic

type Rep Diagnostic = D1 ('MetaData "Diagnostic" "Language.LSP.Protocol.Internal.Types.Diagnostic" "lsp-types-2.3.0.0-6bqFZs2MzRL81rzZYRuAwB" 'False) (C1 ('MetaCons "Diagnostic" 'PrefixI 'True) (((S1 ('MetaSel ('Just "_range") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Range) :*: S1 ('MetaSel ('Just "_severity") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe DiagnosticSeverity))) :*: (S1 ('MetaSel ('Just "_code") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe (Int32 |? Text))) :*: S1 ('MetaSel ('Just "_codeDescription") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe CodeDescription)))) :*: ((S1 ('MetaSel ('Just "_source") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: S1 ('MetaSel ('Just "_message") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Text)) :*: (S1 ('MetaSel ('Just "_tags") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe [DiagnosticTag])) :*: (S1 ('MetaSel ('Just "_relatedInformation") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe [DiagnosticRelatedInformation])) :*: S1 ('MetaSel ('Just "_data_") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Value)))))))

data ParseResult a :: TYPE ('SumRep '['TupleRep '[LiftedRep, LiftedRep], LiftedRep]) where #

The result of running a parser.

Bundled Patterns

pattern PFailed :: PState -> ParseResult a

The parser has consumed a (possibly empty) prefix of the input and failed.

The carried parsing state can be used to resume parsing. It is the state right before failure, including the fatal parse error. getPsMessages and getPsErrorMessages must return a non-empty bag of errors.

pattern POk :: PState -> a -> ParseResult a

The parser has consumed a (possibly empty) prefix of the input and produced a result. Use getPsMessages to check for accumulated warnings and non-fatal errors.

The carried parsing state can be used to resume parsing.

data Action a #

An action representing something that can be run as part of a Rule.

Actions can be pure functions but also have access to IO via MonadIO and 'MonadUnliftIO. It should be assumed that actions throw exceptions, these can be caught with actionCatch. In particular, it is permissible to use the MonadFail instance, which will lead to an IOException.

Instances

Instances details
MonadFail Action 
Instance details

Defined in Development.IDE.Graph.Internal.Types

Methods

fail :: String -> Action a #

MonadIO Action 
Instance details

Defined in Development.IDE.Graph.Internal.Types

Methods

liftIO :: IO a -> Action a #

Applicative Action 
Instance details

Defined in Development.IDE.Graph.Internal.Types

Methods

pure :: a -> Action a #

(<*>) :: Action (a -> b) -> Action a -> Action b #

liftA2 :: (a -> b -> c) -> Action a -> Action b -> Action c #

(*>) :: Action a -> Action b -> Action b #

(<*) :: Action a -> Action b -> Action a #

Functor Action 
Instance details

Defined in Development.IDE.Graph.Internal.Types

Methods

fmap :: (a -> b) -> Action a -> Action b #

(<$) :: a -> Action b -> Action a #

Monad Action 
Instance details

Defined in Development.IDE.Graph.Internal.Types

Methods

(>>=) :: Action a -> (a -> Action b) -> Action b #

(>>) :: Action a -> Action b -> Action b #

return :: a -> Action a #

MonadCatch Action 
Instance details

Defined in Development.IDE.Graph.Internal.Types

Methods

catch :: (HasCallStack, Exception e) => Action a -> (e -> Action a) -> Action a #

MonadMask Action 
Instance details

Defined in Development.IDE.Graph.Internal.Types

Methods

mask :: HasCallStack => ((forall a. Action a -> Action a) -> Action b) -> Action b #

uninterruptibleMask :: HasCallStack => ((forall a. Action a -> Action a) -> Action b) -> Action b #

generalBracket :: HasCallStack => Action a -> (a -> ExitCase b -> Action c) -> (a -> Action b) -> Action (b, c) #

MonadThrow Action 
Instance details

Defined in Development.IDE.Graph.Internal.Types

Methods

throwM :: (HasCallStack, Exception e) => e -> Action a #

MonadUnliftIO Action 
Instance details

Defined in Development.IDE.Graph.Internal.Types

Methods

withRunInIO :: ((forall a. Action a -> IO a) -> IO b) -> Action b #

data Rules a #

A computation that defines all the rules that form part of the computation graph.

Rules has access to IO through MonadIO. Use of IO is at your own risk: if you write Rules that throw exceptions, then you need to make sure to handle them yourself when you run the resulting Rules.

Instances

Instances details
MonadIO Rules 
Instance details

Defined in Development.IDE.Graph.Internal.Types

Methods

liftIO :: IO a -> Rules a #

Applicative Rules 
Instance details

Defined in Development.IDE.Graph.Internal.Types

Methods

pure :: a -> Rules a #

(<*>) :: Rules (a -> b) -> Rules a -> Rules b #

liftA2 :: (a -> b -> c) -> Rules a -> Rules b -> Rules c #

(*>) :: Rules a -> Rules b -> Rules b #

(<*) :: Rules a -> Rules b -> Rules a #

Functor Rules 
Instance details

Defined in Development.IDE.Graph.Internal.Types

Methods

fmap :: (a -> b) -> Rules a -> Rules b #

(<$) :: a -> Rules b -> Rules a #

Monad Rules 
Instance details

Defined in Development.IDE.Graph.Internal.Types

Methods

(>>=) :: Rules a -> (a -> Rules b) -> Rules b #

(>>) :: Rules a -> Rules b -> Rules b #

return :: a -> Rules a #

Monoid a => Monoid (Rules a) 
Instance details

Defined in Development.IDE.Graph.Internal.Types

Methods

mempty :: Rules a #

mappend :: Rules a -> Rules a -> Rules a #

mconcat :: [Rules a] -> Rules a #

Semigroup a => Semigroup (Rules a) 
Instance details

Defined in Development.IDE.Graph.Internal.Types

Methods

(<>) :: Rules a -> Rules a -> Rules a #

sconcat :: NonEmpty (Rules a) -> Rules a #

stimes :: Integral b => b -> Rules a -> Rules a #

type family RuleResult key #

The type mapping between the key or a rule and the resulting value.

Instances

Instances details
type RuleResult AddWatchedFile Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type RuleResult GenerateCore Source #

Convert to Core, requires TypeCheck*

Instance details

Defined in Development.IDE.Core.RuleTypes

type RuleResult GetBindings Source #

A IntervalMap telling us what is in scope at each point

Instance details

Defined in Development.IDE.Core.RuleTypes

type RuleResult GetClientSettings Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type RuleResult GetDocMap Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type RuleResult GetFileContents Source #

Get the contents of a file, either dirty (if the buffer is modified) or Nothing to mean use from disk.

Instance details

Defined in Development.IDE.Core.RuleTypes

type RuleResult GetFileExists Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type RuleResult GetHieAst Source #

The uncompressed HieAST

Instance details

Defined in Development.IDE.Core.RuleTypes

type RuleResult GetImportMap Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type RuleResult GetKnownTargets Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type RuleResult GetLinkable Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type RuleResult GetLocatedImports Source #

Resolve the imports in a module to the file path of a module in the same package

Instance details

Defined in Development.IDE.Core.RuleTypes

type RuleResult GetModIface Source #

Get a module interface details, either from an interface file or a typechecked module

Instance details

Defined in Development.IDE.Core.RuleTypes

type RuleResult GetModIfaceFromDisk Source #

Read the module interface file from disk. Throws an error for VFS files. This is an internal rule, use GetModIface instead.

Instance details

Defined in Development.IDE.Core.RuleTypes

type RuleResult GetModIfaceFromDiskAndIndex Source #

GetModIfaceFromDisk and index the `.hie` file into the database. This is an internal rule, use GetModIface instead.

Instance details

Defined in Development.IDE.Core.RuleTypes

type RuleResult GetModSummary Source #

Generate a ModSummary that has enough information to be used to get .hi and .hie files. without needing to parse the entire source

Instance details

Defined in Development.IDE.Core.RuleTypes

type RuleResult GetModSummaryWithoutTimestamps Source #

Generate a ModSummary with the timestamps and preprocessed content elided, for more successful early cutoff

Instance details

Defined in Development.IDE.Core.RuleTypes

type RuleResult GetModificationTime Source #

Get the modification time of a file.

Instance details

Defined in Development.IDE.Core.RuleTypes

type RuleResult GetModuleGraph Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type RuleResult GetParsedModule Source #

The parse tree for the file using GetFileContents

Instance details

Defined in Development.IDE.Core.RuleTypes

type RuleResult GetParsedModuleWithComments Source #

The parse tree for the file using GetFileContents, all comments included using Opt_KeepRawTokenStream

Instance details

Defined in Development.IDE.Core.RuleTypes

type RuleResult GhcSession Source #

A GHC session that we reuse.

Instance details

Defined in Development.IDE.Core.RuleTypes

type RuleResult GhcSessionDeps Source #

A GHC session preloaded with all the dependencies This rule is also responsible for calling ReportImportCycles for the direct dependencies

Instance details

Defined in Development.IDE.Core.RuleTypes

type RuleResult GhcSessionIO Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type RuleResult IsFileOfInterest Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type RuleResult NeedsCompilation Source #

Does this module need to be compiled?

Instance details

Defined in Development.IDE.Core.RuleTypes

type RuleResult ReportImportCycles Source #

This rule is used to report import cycles. It depends on GetModuleGraph. We cannot report the cycles directly from GetModuleGraph since we can only report diagnostics for the current file.

Instance details

Defined in Development.IDE.Core.RuleTypes

type RuleResult TypeCheck Source #

The type checked version of this file, requires TypeCheck+

Instance details

Defined in Development.IDE.Core.RuleTypes

type RuleResult LocalCompletions Source #

Produce completions info for a file

Instance details

Defined in Development.IDE.Plugin.Completions.Types

type RuleResult NonLocalCompletions Source # 
Instance details

Defined in Development.IDE.Plugin.Completions.Types

type RuleResult GetGlobalBindingTypeSigs Source # 
Instance details

Defined in Development.IDE.Plugin.TypeLenses

type RuleResult (Q k) Source # 
Instance details

Defined in Development.IDE.Types.Shake

type RuleResult (Q k) = A (RuleResult k)

newtype Recorder msg #

Note that this is logging actions _of the program_, not of the user. You shouldn't call warning/error if the user has caused an error, only if our code has gone wrong and is itself erroneous (e.g. we threw an exception).

Constructors

Recorder 

Fields

Instances

Instances details
Contravariant Recorder 
Instance details

Defined in Ide.Logger

Methods

contramap :: (a' -> a) -> Recorder a -> Recorder a' #

(>$) :: b -> Recorder b -> Recorder a #

Monoid (Recorder msg) 
Instance details

Defined in Ide.Logger

Methods

mempty :: Recorder msg #

mappend :: Recorder msg -> Recorder msg -> Recorder msg #

mconcat :: [Recorder msg] -> Recorder msg #

Semigroup (Recorder msg) 
Instance details

Defined in Ide.Logger

Methods

(<>) :: Recorder msg -> Recorder msg -> Recorder msg #

sconcat :: NonEmpty (Recorder msg) -> Recorder msg #

stimes :: Integral b => b -> Recorder msg -> Recorder msg #

data WithPriority a #

Constructors

WithPriority 

Instances

Instances details
Functor WithPriority 
Instance details

Defined in Ide.Logger

Methods

fmap :: (a -> b) -> WithPriority a -> WithPriority b #

(<$) :: a -> WithPriority b -> WithPriority a #

data Priority #

Constructors

Debug

Verbose debug logging.

Info

Useful information in case an error has to be understood.

Warning

These error messages should not occur in a expected usage, and should be investigated.

Error

Such log messages must never occur in expected usage.

Instances

Instances details
Bounded Priority 
Instance details

Defined in Ide.Logger

Enum Priority 
Instance details

Defined in Ide.Logger

Read Priority 
Instance details

Defined in Ide.Logger

Show Priority 
Instance details

Defined in Ide.Logger

Eq Priority 
Instance details

Defined in Ide.Logger

Ord Priority 
Instance details

Defined in Ide.Logger

data PageWidth #

Maximum number of characters that fit in one line. The layout algorithms will try not to exceed the set limit by inserting line breaks when applicable (e.g. via softline').

Constructors

AvailablePerLine !Int !Double

Layouters should not exceed the specified space per line.

  • The Int is the number of characters, including whitespace, that fit in a line. A typical value is 80.
  • The Double is the ribbon with, i.e. the fraction of the total page width that can be printed on. This allows limiting the length of printable text per line. Values must be between 0 and 1, and 0.4 to 1 is typical.
Unbounded

Layouters should not introduce line breaks on their own.

Instances

Instances details
Show PageWidth 
Instance details

Defined in Prettyprinter.Internal

Eq PageWidth 
Instance details

Defined in Prettyprinter.Internal

Ord PageWidth 
Instance details

Defined in Prettyprinter.Internal

data SimpleDocStream ann #

The data type SimpleDocStream represents laid out documents and is used by the display functions.

A simplified view is that Doc = [SimpleDocStream], and the layout functions pick one of the SimpleDocStreams based on which one fits the layout constraints best. This means that SimpleDocStream has all complexity contained in Doc resolved, making it very easy to convert it to other formats, such as plain text or terminal output.

To write your own Doc to X converter, it is therefore sufficient to convert from SimpleDocStream. The »Render« submodules provide some built-in converters to do so, and helpers to create own ones.

Constructors

SFail 
SEmpty 
SChar !Char (SimpleDocStream ann) 
SText !Int !Text (SimpleDocStream ann)

length is O(n), so we cache it in the Int field.

SLine !Int (SimpleDocStream ann)

Int = indentation level for the (next) line

SAnnPush ann (SimpleDocStream ann)

Add an annotation to the remaining document.

SAnnPop (SimpleDocStream ann)

Remove a previously pushed annotation.

Instances

Instances details
Foldable SimpleDocStream

Collect all annotations from a document.

Instance details

Defined in Prettyprinter.Internal

Methods

fold :: Monoid m => SimpleDocStream m -> m #

foldMap :: Monoid m => (a -> m) -> SimpleDocStream a -> m #

foldMap' :: Monoid m => (a -> m) -> SimpleDocStream a -> m #

foldr :: (a -> b -> b) -> b -> SimpleDocStream a -> b #

foldr' :: (a -> b -> b) -> b -> SimpleDocStream a -> b #

foldl :: (b -> a -> b) -> b -> SimpleDocStream a -> b #

foldl' :: (b -> a -> b) -> b -> SimpleDocStream a -> b #

foldr1 :: (a -> a -> a) -> SimpleDocStream a -> a #

foldl1 :: (a -> a -> a) -> SimpleDocStream a -> a #

toList :: SimpleDocStream a -> [a] #

null :: SimpleDocStream a -> Bool #

length :: SimpleDocStream a -> Int #

elem :: Eq a => a -> SimpleDocStream a -> Bool #

maximum :: Ord a => SimpleDocStream a -> a #

minimum :: Ord a => SimpleDocStream a -> a #

sum :: Num a => SimpleDocStream a -> a #

product :: Num a => SimpleDocStream a -> a #

Traversable SimpleDocStream

Transform a document based on its annotations, possibly leveraging Applicative effects.

Instance details

Defined in Prettyprinter.Internal

Methods

traverse :: Applicative f => (a -> f b) -> SimpleDocStream a -> f (SimpleDocStream b) #

sequenceA :: Applicative f => SimpleDocStream (f a) -> f (SimpleDocStream a) #

mapM :: Monad m => (a -> m b) -> SimpleDocStream a -> m (SimpleDocStream b) #

sequence :: Monad m => SimpleDocStream (m a) -> m (SimpleDocStream a) #

Functor SimpleDocStream

Alter the document’s annotations.

This instance makes SimpleDocStream more flexible (because it can be used in Functor-polymorphic values), but fmap is much less readable compared to using reAnnotateST in code that only works for SimpleDocStream anyway. Consider using the latter when the type does not matter.

Instance details

Defined in Prettyprinter.Internal

Methods

fmap :: (a -> b) -> SimpleDocStream a -> SimpleDocStream b #

(<$) :: a -> SimpleDocStream b -> SimpleDocStream a #

Generic (SimpleDocStream ann) 
Instance details

Defined in Prettyprinter.Internal

Associated Types

type Rep (SimpleDocStream ann) :: Type -> Type #

Methods

from :: SimpleDocStream ann -> Rep (SimpleDocStream ann) x #

to :: Rep (SimpleDocStream ann) x -> SimpleDocStream ann #

Show ann => Show (SimpleDocStream ann) 
Instance details

Defined in Prettyprinter.Internal

Eq ann => Eq (SimpleDocStream ann) 
Instance details

Defined in Prettyprinter.Internal

Ord ann => Ord (SimpleDocStream ann) 
Instance details

Defined in Prettyprinter.Internal

type Rep (SimpleDocStream ann) 
Instance details

Defined in Prettyprinter.Internal

type Rep (SimpleDocStream ann) = D1 ('MetaData "SimpleDocStream" "Prettyprinter.Internal" "prettyprinter-1.7.1-5e7OiMaiyLWFEOfH8r8oT4" 'False) ((C1 ('MetaCons "SFail" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "SEmpty" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "SChar" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Char) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (SimpleDocStream ann))))) :+: ((C1 ('MetaCons "SText" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Int) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Text) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (SimpleDocStream ann)))) :+: C1 ('MetaCons "SLine" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Int) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (SimpleDocStream ann)))) :+: (C1 ('MetaCons "SAnnPush" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ann) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (SimpleDocStream ann))) :+: C1 ('MetaCons "SAnnPop" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (SimpleDocStream ann))))))

data FusionDepth #

Fusion depth parameter, used by fuse.

Constructors

Shallow

Do not dive deep into nested documents, fusing mostly concatenations of text nodes together.

Deep

Recurse into all parts of the Doc, including different layout alternatives, and location-sensitive values such as created by nesting which cannot be fused before, but only during, the layout process. As a result, the performance cost of using deep fusion is often hard to predict, and depends on the interplay between page layout and document to prettyprint.

This value should only be used if profiling shows it is significantly faster than using Shallow.

class Pretty a where #

Overloaded conversion to Doc.

Laws:

  1. output should be pretty. :-)

Minimal complete definition

pretty

Methods

pretty :: a -> Doc ann #

>>> pretty 1 <+> pretty "hello" <+> pretty 1.234
1 hello 1.234

prettyList :: [a] -> Doc ann #

prettyList is only used to define the instance Pretty a => Pretty [a]. In normal circumstances only the pretty function is used.

>>> prettyList [1, 23, 456]
[1, 23, 456]

Instances

Instances details
Pretty Void

Finding a good example for printing something that does not exist is hard, so here is an example of printing a list full of nothing.

>>> pretty ([] :: [Void])
[]
Instance details

Defined in Prettyprinter.Internal

Methods

pretty :: Void -> Doc ann #

prettyList :: [Void] -> Doc ann #

Pretty Int16 
Instance details

Defined in Prettyprinter.Internal

Methods

pretty :: Int16 -> Doc ann #

prettyList :: [Int16] -> Doc ann #

Pretty Int32 
Instance details

Defined in Prettyprinter.Internal

Methods

pretty :: Int32 -> Doc ann #

prettyList :: [Int32] -> Doc ann #

Pretty Int64 
Instance details

Defined in Prettyprinter.Internal

Methods

pretty :: Int64 -> Doc ann #

prettyList :: [Int64] -> Doc ann #

Pretty Int8 
Instance details

Defined in Prettyprinter.Internal

Methods

pretty :: Int8 -> Doc ann #

prettyList :: [Int8] -> Doc ann #

Pretty Word16 
Instance details

Defined in Prettyprinter.Internal

Methods

pretty :: Word16 -> Doc ann #

prettyList :: [Word16] -> Doc ann #

Pretty Word32 
Instance details

Defined in Prettyprinter.Internal

Methods

pretty :: Word32 -> Doc ann #

prettyList :: [Word32] -> Doc ann #

Pretty Word64 
Instance details

Defined in Prettyprinter.Internal

Methods

pretty :: Word64 -> Doc ann #

prettyList :: [Word64] -> Doc ann #

Pretty Word8 
Instance details

Defined in Prettyprinter.Internal

Methods

pretty :: Word8 -> Doc ann #

prettyList :: [Word8] -> Doc ann #

Pretty Log Source # 
Instance details

Defined in Development.IDE.Core.FileStore

Methods

pretty :: Log -> Doc ann #

prettyList :: [Log] -> Doc ann #

Pretty Log Source # 
Instance details

Defined in Development.IDE.Core.OfInterest

Methods

pretty :: Log -> Doc ann #

prettyList :: [Log] -> Doc ann #

Pretty FileOfInterestStatus Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Pretty Log Source # 
Instance details

Defined in Development.IDE.Core.Rules

Methods

pretty :: Log -> Doc ann #

prettyList :: [Log] -> Doc ann #

Pretty Log Source # 
Instance details

Defined in Development.IDE.Core.Service

Methods

pretty :: Log -> Doc ann #

prettyList :: [Log] -> Doc ann #

Pretty Log Source # 
Instance details

Defined in Development.IDE.Core.Shake

Methods

pretty :: Log -> Doc ann #

prettyList :: [Log] -> Doc ann #

Pretty Log Source # 
Instance details

Defined in Development.IDE.LSP.HoverDefinition

Methods

pretty :: Log -> Doc ann #

prettyList :: [Log] -> Doc ann #

Pretty Log Source # 
Instance details

Defined in Development.IDE.LSP.LanguageServer

Methods

pretty :: Log -> Doc ann #

prettyList :: [Log] -> Doc ann #

Pretty Log Source # 
Instance details

Defined in Development.IDE.LSP.Notifications

Methods

pretty :: Log -> Doc ann #

prettyList :: [Log] -> Doc ann #

Pretty Log Source # 
Instance details

Defined in Development.IDE.Main

Methods

pretty :: Log -> Doc ann #

prettyList :: [Log] -> Doc ann #

Pretty Log Source # 
Instance details

Defined in Development.IDE.Main.HeapStats

Methods

pretty :: Log -> Doc ann #

prettyList :: [Log] -> Doc ann #

Pretty Log Source # 
Instance details

Defined in Development.IDE.Plugin.Completions

Methods

pretty :: Log -> Doc ann #

prettyList :: [Log] -> Doc ann #

Pretty Log Source # 
Instance details

Defined in Development.IDE.Plugin.HLS

Methods

pretty :: Log -> Doc ann #

prettyList :: [Log] -> Doc ann #

Pretty Log Source # 
Instance details

Defined in Development.IDE.Plugin.HLS.GhcIde

Methods

pretty :: Log -> Doc ann #

prettyList :: [Log] -> Doc ann #

Pretty Log Source # 
Instance details

Defined in Development.IDE.Plugin.TypeLenses

Methods

pretty :: Log -> Doc ann #

prettyList :: [Log] -> Doc ann #

Pretty Log Source # 
Instance details

Defined in Development.IDE.Session

Methods

pretty :: Log -> Doc ann #

prettyList :: [Log] -> Doc ann #

Pretty Log 
Instance details

Defined in HIE.Bios.Types

Methods

pretty :: Log -> Doc ann #

prettyList :: [Log] -> Doc ann #

Pretty PluginError 
Instance details

Defined in Ide.Plugin.Error

Methods

pretty :: PluginError -> Doc ann #

prettyList :: [PluginError] -> Doc ann #

Pretty HandleRequestResult 
Instance details

Defined in Ide.Plugin.HandleRequestTypes

Pretty RejectionReason 
Instance details

Defined in Ide.Plugin.HandleRequestTypes

Pretty SessionLoadingPreferenceConfig 
Instance details

Defined in Ide.Types

Pretty LspServerLog 
Instance details

Defined in Language.LSP.Server.Control

Methods

pretty :: LspServerLog -> Doc ann #

prettyList :: [LspServerLog] -> Doc ann #

Pretty LspCoreLog 
Instance details

Defined in Language.LSP.Server.Core

Methods

pretty :: LspCoreLog -> Doc ann #

prettyList :: [LspCoreLog] -> Doc ann #

Pretty VfsLog 
Instance details

Defined in Language.LSP.VFS

Methods

pretty :: VfsLog -> Doc ann #

prettyList :: [VfsLog] -> Doc ann #

Pretty AnnotatedTextEdit 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.AnnotatedTextEdit

Methods

pretty :: AnnotatedTextEdit -> Doc ann #

prettyList :: [AnnotatedTextEdit] -> Doc ann #

Pretty ApplyWorkspaceEditParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ApplyWorkspaceEditParams

Methods

pretty :: ApplyWorkspaceEditParams -> Doc ann #

prettyList :: [ApplyWorkspaceEditParams] -> Doc ann #

Pretty ApplyWorkspaceEditResult 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ApplyWorkspaceEditResult

Methods

pretty :: ApplyWorkspaceEditResult -> Doc ann #

prettyList :: [ApplyWorkspaceEditResult] -> Doc ann #

Pretty BaseSymbolInformation 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.BaseSymbolInformation

Methods

pretty :: BaseSymbolInformation -> Doc ann #

prettyList :: [BaseSymbolInformation] -> Doc ann #

Pretty CallHierarchyClientCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.CallHierarchyClientCapabilities

Methods

pretty :: CallHierarchyClientCapabilities -> Doc ann #

prettyList :: [CallHierarchyClientCapabilities] -> Doc ann #

Pretty CallHierarchyIncomingCall 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.CallHierarchyIncomingCall

Methods

pretty :: CallHierarchyIncomingCall -> Doc ann #

prettyList :: [CallHierarchyIncomingCall] -> Doc ann #

Pretty CallHierarchyIncomingCallsParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.CallHierarchyIncomingCallsParams

Methods

pretty :: CallHierarchyIncomingCallsParams -> Doc ann #

prettyList :: [CallHierarchyIncomingCallsParams] -> Doc ann #

Pretty CallHierarchyItem 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.CallHierarchyItem

Methods

pretty :: CallHierarchyItem -> Doc ann #

prettyList :: [CallHierarchyItem] -> Doc ann #

Pretty CallHierarchyOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.CallHierarchyOptions

Methods

pretty :: CallHierarchyOptions -> Doc ann #

prettyList :: [CallHierarchyOptions] -> Doc ann #

Pretty CallHierarchyOutgoingCall 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.CallHierarchyOutgoingCall

Methods

pretty :: CallHierarchyOutgoingCall -> Doc ann #

prettyList :: [CallHierarchyOutgoingCall] -> Doc ann #

Pretty CallHierarchyOutgoingCallsParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.CallHierarchyOutgoingCallsParams

Methods

pretty :: CallHierarchyOutgoingCallsParams -> Doc ann #

prettyList :: [CallHierarchyOutgoingCallsParams] -> Doc ann #

Pretty CallHierarchyPrepareParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.CallHierarchyPrepareParams

Methods

pretty :: CallHierarchyPrepareParams -> Doc ann #

prettyList :: [CallHierarchyPrepareParams] -> Doc ann #

Pretty CallHierarchyRegistrationOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.CallHierarchyRegistrationOptions

Methods

pretty :: CallHierarchyRegistrationOptions -> Doc ann #

prettyList :: [CallHierarchyRegistrationOptions] -> Doc ann #

Pretty CancelParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.CancelParams

Methods

pretty :: CancelParams -> Doc ann #

prettyList :: [CancelParams] -> Doc ann #

Pretty ChangeAnnotation 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ChangeAnnotation

Methods

pretty :: ChangeAnnotation -> Doc ann #

prettyList :: [ChangeAnnotation] -> Doc ann #

Pretty ChangeAnnotationIdentifier 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ChangeAnnotationIdentifier

Methods

pretty :: ChangeAnnotationIdentifier -> Doc ann #

prettyList :: [ChangeAnnotationIdentifier] -> Doc ann #

Pretty ChangeAnnotationsSupportOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ChangeAnnotationsSupportOptions

Methods

pretty :: ChangeAnnotationsSupportOptions -> Doc ann #

prettyList :: [ChangeAnnotationsSupportOptions] -> Doc ann #

Pretty ClientCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ClientCapabilities

Methods

pretty :: ClientCapabilities -> Doc ann #

prettyList :: [ClientCapabilities] -> Doc ann #

Pretty ClientCodeActionKindOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ClientCodeActionKindOptions

Methods

pretty :: ClientCodeActionKindOptions -> Doc ann #

prettyList :: [ClientCodeActionKindOptions] -> Doc ann #

Pretty ClientCodeActionLiteralOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ClientCodeActionLiteralOptions

Methods

pretty :: ClientCodeActionLiteralOptions -> Doc ann #

prettyList :: [ClientCodeActionLiteralOptions] -> Doc ann #

Pretty ClientCodeActionResolveOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ClientCodeActionResolveOptions

Methods

pretty :: ClientCodeActionResolveOptions -> Doc ann #

prettyList :: [ClientCodeActionResolveOptions] -> Doc ann #

Pretty ClientCompletionItemInsertTextModeOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ClientCompletionItemInsertTextModeOptions

Methods

pretty :: ClientCompletionItemInsertTextModeOptions -> Doc ann #

prettyList :: [ClientCompletionItemInsertTextModeOptions] -> Doc ann #

Pretty ClientCompletionItemOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ClientCompletionItemOptions

Methods

pretty :: ClientCompletionItemOptions -> Doc ann #

prettyList :: [ClientCompletionItemOptions] -> Doc ann #

Pretty ClientCompletionItemOptionsKind 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ClientCompletionItemOptionsKind

Methods

pretty :: ClientCompletionItemOptionsKind -> Doc ann #

prettyList :: [ClientCompletionItemOptionsKind] -> Doc ann #

Pretty ClientCompletionItemResolveOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ClientCompletionItemResolveOptions

Methods

pretty :: ClientCompletionItemResolveOptions -> Doc ann #

prettyList :: [ClientCompletionItemResolveOptions] -> Doc ann #

Pretty ClientDiagnosticsTagOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ClientDiagnosticsTagOptions

Methods

pretty :: ClientDiagnosticsTagOptions -> Doc ann #

prettyList :: [ClientDiagnosticsTagOptions] -> Doc ann #

Pretty ClientFoldingRangeKindOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ClientFoldingRangeKindOptions

Methods

pretty :: ClientFoldingRangeKindOptions -> Doc ann #

prettyList :: [ClientFoldingRangeKindOptions] -> Doc ann #

Pretty ClientFoldingRangeOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ClientFoldingRangeOptions

Methods

pretty :: ClientFoldingRangeOptions -> Doc ann #

prettyList :: [ClientFoldingRangeOptions] -> Doc ann #

Pretty ClientInfo 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ClientInfo

Methods

pretty :: ClientInfo -> Doc ann #

prettyList :: [ClientInfo] -> Doc ann #

Pretty ClientInlayHintResolveOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ClientInlayHintResolveOptions

Methods

pretty :: ClientInlayHintResolveOptions -> Doc ann #

prettyList :: [ClientInlayHintResolveOptions] -> Doc ann #

Pretty ClientSemanticTokensRequestFullDelta 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ClientSemanticTokensRequestFullDelta

Methods

pretty :: ClientSemanticTokensRequestFullDelta -> Doc ann #

prettyList :: [ClientSemanticTokensRequestFullDelta] -> Doc ann #

Pretty ClientSemanticTokensRequestOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ClientSemanticTokensRequestOptions

Methods

pretty :: ClientSemanticTokensRequestOptions -> Doc ann #

prettyList :: [ClientSemanticTokensRequestOptions] -> Doc ann #

Pretty ClientShowMessageActionItemOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ClientShowMessageActionItemOptions

Methods

pretty :: ClientShowMessageActionItemOptions -> Doc ann #

prettyList :: [ClientShowMessageActionItemOptions] -> Doc ann #

Pretty ClientSignatureInformationOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ClientSignatureInformationOptions

Methods

pretty :: ClientSignatureInformationOptions -> Doc ann #

prettyList :: [ClientSignatureInformationOptions] -> Doc ann #

Pretty ClientSignatureParameterInformationOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ClientSignatureParameterInformationOptions

Methods

pretty :: ClientSignatureParameterInformationOptions -> Doc ann #

prettyList :: [ClientSignatureParameterInformationOptions] -> Doc ann #

Pretty ClientSymbolKindOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ClientSymbolKindOptions

Methods

pretty :: ClientSymbolKindOptions -> Doc ann #

prettyList :: [ClientSymbolKindOptions] -> Doc ann #

Pretty ClientSymbolResolveOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ClientSymbolResolveOptions

Methods

pretty :: ClientSymbolResolveOptions -> Doc ann #

prettyList :: [ClientSymbolResolveOptions] -> Doc ann #

Pretty ClientSymbolTagOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ClientSymbolTagOptions

Methods

pretty :: ClientSymbolTagOptions -> Doc ann #

prettyList :: [ClientSymbolTagOptions] -> Doc ann #

Pretty CodeAction 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.CodeAction

Methods

pretty :: CodeAction -> Doc ann #

prettyList :: [CodeAction] -> Doc ann #

Pretty CodeActionClientCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.CodeActionClientCapabilities

Methods

pretty :: CodeActionClientCapabilities -> Doc ann #

prettyList :: [CodeActionClientCapabilities] -> Doc ann #

Pretty CodeActionContext 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.CodeActionContext

Methods

pretty :: CodeActionContext -> Doc ann #

prettyList :: [CodeActionContext] -> Doc ann #

Pretty CodeActionDisabled 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.CodeActionDisabled

Methods

pretty :: CodeActionDisabled -> Doc ann #

prettyList :: [CodeActionDisabled] -> Doc ann #

Pretty CodeActionKind 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.CodeActionKind

Methods

pretty :: CodeActionKind -> Doc ann #

prettyList :: [CodeActionKind] -> Doc ann #

Pretty CodeActionOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.CodeActionOptions

Methods

pretty :: CodeActionOptions -> Doc ann #

prettyList :: [CodeActionOptions] -> Doc ann #

Pretty CodeActionParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.CodeActionParams

Methods

pretty :: CodeActionParams -> Doc ann #

prettyList :: [CodeActionParams] -> Doc ann #

Pretty CodeActionRegistrationOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.CodeActionRegistrationOptions

Methods

pretty :: CodeActionRegistrationOptions -> Doc ann #

prettyList :: [CodeActionRegistrationOptions] -> Doc ann #

Pretty CodeActionTriggerKind 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.CodeActionTriggerKind

Methods

pretty :: CodeActionTriggerKind -> Doc ann #

prettyList :: [CodeActionTriggerKind] -> Doc ann #

Pretty CodeDescription 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.CodeDescription

Methods

pretty :: CodeDescription -> Doc ann #

prettyList :: [CodeDescription] -> Doc ann #

Pretty CodeLens 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.CodeLens

Methods

pretty :: CodeLens -> Doc ann #

prettyList :: [CodeLens] -> Doc ann #

Pretty CodeLensClientCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.CodeLensClientCapabilities

Methods

pretty :: CodeLensClientCapabilities -> Doc ann #

prettyList :: [CodeLensClientCapabilities] -> Doc ann #

Pretty CodeLensOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.CodeLensOptions

Methods

pretty :: CodeLensOptions -> Doc ann #

prettyList :: [CodeLensOptions] -> Doc ann #

Pretty CodeLensParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.CodeLensParams

Methods

pretty :: CodeLensParams -> Doc ann #

prettyList :: [CodeLensParams] -> Doc ann #

Pretty CodeLensRegistrationOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.CodeLensRegistrationOptions

Methods

pretty :: CodeLensRegistrationOptions -> Doc ann #

prettyList :: [CodeLensRegistrationOptions] -> Doc ann #

Pretty CodeLensWorkspaceClientCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.CodeLensWorkspaceClientCapabilities

Methods

pretty :: CodeLensWorkspaceClientCapabilities -> Doc ann #

prettyList :: [CodeLensWorkspaceClientCapabilities] -> Doc ann #

Pretty Color 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.Color

Methods

pretty :: Color -> Doc ann #

prettyList :: [Color] -> Doc ann #

Pretty ColorInformation 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ColorInformation

Methods

pretty :: ColorInformation -> Doc ann #

prettyList :: [ColorInformation] -> Doc ann #

Pretty ColorPresentation 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ColorPresentation

Methods

pretty :: ColorPresentation -> Doc ann #

prettyList :: [ColorPresentation] -> Doc ann #

Pretty ColorPresentationParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ColorPresentationParams

Methods

pretty :: ColorPresentationParams -> Doc ann #

prettyList :: [ColorPresentationParams] -> Doc ann #

Pretty Command 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.Command

Methods

pretty :: Command -> Doc ann #

prettyList :: [Command] -> Doc ann #

Pretty CompletionClientCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.CompletionClientCapabilities

Methods

pretty :: CompletionClientCapabilities -> Doc ann #

prettyList :: [CompletionClientCapabilities] -> Doc ann #

Pretty CompletionContext 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.CompletionContext

Methods

pretty :: CompletionContext -> Doc ann #

prettyList :: [CompletionContext] -> Doc ann #

Pretty CompletionItem 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.CompletionItem

Methods

pretty :: CompletionItem -> Doc ann #

prettyList :: [CompletionItem] -> Doc ann #

Pretty CompletionItemDefaults 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.CompletionItemDefaults

Methods

pretty :: CompletionItemDefaults -> Doc ann #

prettyList :: [CompletionItemDefaults] -> Doc ann #

Pretty CompletionItemKind 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.CompletionItemKind

Methods

pretty :: CompletionItemKind -> Doc ann #

prettyList :: [CompletionItemKind] -> Doc ann #

Pretty CompletionItemLabelDetails 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.CompletionItemLabelDetails

Methods

pretty :: CompletionItemLabelDetails -> Doc ann #

prettyList :: [CompletionItemLabelDetails] -> Doc ann #

Pretty CompletionItemTag 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.CompletionItemTag

Methods

pretty :: CompletionItemTag -> Doc ann #

prettyList :: [CompletionItemTag] -> Doc ann #

Pretty CompletionItemTagOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.CompletionItemTagOptions

Methods

pretty :: CompletionItemTagOptions -> Doc ann #

prettyList :: [CompletionItemTagOptions] -> Doc ann #

Pretty CompletionList 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.CompletionList

Methods

pretty :: CompletionList -> Doc ann #

prettyList :: [CompletionList] -> Doc ann #

Pretty CompletionListCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.CompletionListCapabilities

Methods

pretty :: CompletionListCapabilities -> Doc ann #

prettyList :: [CompletionListCapabilities] -> Doc ann #

Pretty CompletionOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.CompletionOptions

Methods

pretty :: CompletionOptions -> Doc ann #

prettyList :: [CompletionOptions] -> Doc ann #

Pretty CompletionParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.CompletionParams

Methods

pretty :: CompletionParams -> Doc ann #

prettyList :: [CompletionParams] -> Doc ann #

Pretty CompletionRegistrationOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.CompletionRegistrationOptions

Methods

pretty :: CompletionRegistrationOptions -> Doc ann #

prettyList :: [CompletionRegistrationOptions] -> Doc ann #

Pretty CompletionTriggerKind 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.CompletionTriggerKind

Methods

pretty :: CompletionTriggerKind -> Doc ann #

prettyList :: [CompletionTriggerKind] -> Doc ann #

Pretty ConfigurationItem 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ConfigurationItem

Methods

pretty :: ConfigurationItem -> Doc ann #

prettyList :: [ConfigurationItem] -> Doc ann #

Pretty ConfigurationParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ConfigurationParams

Methods

pretty :: ConfigurationParams -> Doc ann #

prettyList :: [ConfigurationParams] -> Doc ann #

Pretty CreateFile 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.CreateFile

Methods

pretty :: CreateFile -> Doc ann #

prettyList :: [CreateFile] -> Doc ann #

Pretty CreateFileOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.CreateFileOptions

Methods

pretty :: CreateFileOptions -> Doc ann #

prettyList :: [CreateFileOptions] -> Doc ann #

Pretty CreateFilesParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.CreateFilesParams

Methods

pretty :: CreateFilesParams -> Doc ann #

prettyList :: [CreateFilesParams] -> Doc ann #

Pretty Declaration 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.Declaration

Methods

pretty :: Declaration -> Doc ann #

prettyList :: [Declaration] -> Doc ann #

Pretty DeclarationClientCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DeclarationClientCapabilities

Methods

pretty :: DeclarationClientCapabilities -> Doc ann #

prettyList :: [DeclarationClientCapabilities] -> Doc ann #

Pretty DeclarationLink 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DeclarationLink

Methods

pretty :: DeclarationLink -> Doc ann #

prettyList :: [DeclarationLink] -> Doc ann #

Pretty DeclarationOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DeclarationOptions

Methods

pretty :: DeclarationOptions -> Doc ann #

prettyList :: [DeclarationOptions] -> Doc ann #

Pretty DeclarationParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DeclarationParams

Methods

pretty :: DeclarationParams -> Doc ann #

prettyList :: [DeclarationParams] -> Doc ann #

Pretty DeclarationRegistrationOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DeclarationRegistrationOptions

Methods

pretty :: DeclarationRegistrationOptions -> Doc ann #

prettyList :: [DeclarationRegistrationOptions] -> Doc ann #

Pretty Definition 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.Definition

Methods

pretty :: Definition -> Doc ann #

prettyList :: [Definition] -> Doc ann #

Pretty DefinitionClientCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DefinitionClientCapabilities

Methods

pretty :: DefinitionClientCapabilities -> Doc ann #

prettyList :: [DefinitionClientCapabilities] -> Doc ann #

Pretty DefinitionLink 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DefinitionLink

Methods

pretty :: DefinitionLink -> Doc ann #

prettyList :: [DefinitionLink] -> Doc ann #

Pretty DefinitionOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DefinitionOptions

Methods

pretty :: DefinitionOptions -> Doc ann #

prettyList :: [DefinitionOptions] -> Doc ann #

Pretty DefinitionParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DefinitionParams

Methods

pretty :: DefinitionParams -> Doc ann #

prettyList :: [DefinitionParams] -> Doc ann #

Pretty DefinitionRegistrationOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DefinitionRegistrationOptions

Methods

pretty :: DefinitionRegistrationOptions -> Doc ann #

prettyList :: [DefinitionRegistrationOptions] -> Doc ann #

Pretty DeleteFile 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DeleteFile

Methods

pretty :: DeleteFile -> Doc ann #

prettyList :: [DeleteFile] -> Doc ann #

Pretty DeleteFileOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DeleteFileOptions

Methods

pretty :: DeleteFileOptions -> Doc ann #

prettyList :: [DeleteFileOptions] -> Doc ann #

Pretty DeleteFilesParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DeleteFilesParams

Methods

pretty :: DeleteFilesParams -> Doc ann #

prettyList :: [DeleteFilesParams] -> Doc ann #

Pretty Diagnostic 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.Diagnostic

Methods

pretty :: Diagnostic -> Doc ann #

prettyList :: [Diagnostic] -> Doc ann #

Pretty DiagnosticClientCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DiagnosticClientCapabilities

Methods

pretty :: DiagnosticClientCapabilities -> Doc ann #

prettyList :: [DiagnosticClientCapabilities] -> Doc ann #

Pretty DiagnosticOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DiagnosticOptions

Methods

pretty :: DiagnosticOptions -> Doc ann #

prettyList :: [DiagnosticOptions] -> Doc ann #

Pretty DiagnosticRegistrationOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DiagnosticRegistrationOptions

Methods

pretty :: DiagnosticRegistrationOptions -> Doc ann #

prettyList :: [DiagnosticRegistrationOptions] -> Doc ann #

Pretty DiagnosticRelatedInformation 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DiagnosticRelatedInformation

Methods

pretty :: DiagnosticRelatedInformation -> Doc ann #

prettyList :: [DiagnosticRelatedInformation] -> Doc ann #

Pretty DiagnosticServerCancellationData 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DiagnosticServerCancellationData

Methods

pretty :: DiagnosticServerCancellationData -> Doc ann #

prettyList :: [DiagnosticServerCancellationData] -> Doc ann #

Pretty DiagnosticSeverity 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DiagnosticSeverity

Pretty DiagnosticTag 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DiagnosticTag

Methods

pretty :: DiagnosticTag -> Doc ann #

prettyList :: [DiagnosticTag] -> Doc ann #

Pretty DiagnosticWorkspaceClientCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DiagnosticWorkspaceClientCapabilities

Methods

pretty :: DiagnosticWorkspaceClientCapabilities -> Doc ann #

prettyList :: [DiagnosticWorkspaceClientCapabilities] -> Doc ann #

Pretty DidChangeConfigurationClientCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DidChangeConfigurationClientCapabilities

Methods

pretty :: DidChangeConfigurationClientCapabilities -> Doc ann #

prettyList :: [DidChangeConfigurationClientCapabilities] -> Doc ann #

Pretty DidChangeConfigurationParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DidChangeConfigurationParams

Methods

pretty :: DidChangeConfigurationParams -> Doc ann #

prettyList :: [DidChangeConfigurationParams] -> Doc ann #

Pretty DidChangeConfigurationRegistrationOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DidChangeConfigurationRegistrationOptions

Methods

pretty :: DidChangeConfigurationRegistrationOptions -> Doc ann #

prettyList :: [DidChangeConfigurationRegistrationOptions] -> Doc ann #

Pretty DidChangeNotebookDocumentParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DidChangeNotebookDocumentParams

Methods

pretty :: DidChangeNotebookDocumentParams -> Doc ann #

prettyList :: [DidChangeNotebookDocumentParams] -> Doc ann #

Pretty DidChangeTextDocumentParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DidChangeTextDocumentParams

Methods

pretty :: DidChangeTextDocumentParams -> Doc ann #

prettyList :: [DidChangeTextDocumentParams] -> Doc ann #

Pretty DidChangeWatchedFilesClientCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DidChangeWatchedFilesClientCapabilities

Methods

pretty :: DidChangeWatchedFilesClientCapabilities -> Doc ann #

prettyList :: [DidChangeWatchedFilesClientCapabilities] -> Doc ann #

Pretty DidChangeWatchedFilesParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DidChangeWatchedFilesParams

Methods

pretty :: DidChangeWatchedFilesParams -> Doc ann #

prettyList :: [DidChangeWatchedFilesParams] -> Doc ann #

Pretty DidChangeWatchedFilesRegistrationOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DidChangeWatchedFilesRegistrationOptions

Methods

pretty :: DidChangeWatchedFilesRegistrationOptions -> Doc ann #

prettyList :: [DidChangeWatchedFilesRegistrationOptions] -> Doc ann #

Pretty DidChangeWorkspaceFoldersParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DidChangeWorkspaceFoldersParams

Methods

pretty :: DidChangeWorkspaceFoldersParams -> Doc ann #

prettyList :: [DidChangeWorkspaceFoldersParams] -> Doc ann #

Pretty DidCloseNotebookDocumentParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DidCloseNotebookDocumentParams

Methods

pretty :: DidCloseNotebookDocumentParams -> Doc ann #

prettyList :: [DidCloseNotebookDocumentParams] -> Doc ann #

Pretty DidCloseTextDocumentParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DidCloseTextDocumentParams

Methods

pretty :: DidCloseTextDocumentParams -> Doc ann #

prettyList :: [DidCloseTextDocumentParams] -> Doc ann #

Pretty DidOpenNotebookDocumentParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DidOpenNotebookDocumentParams

Methods

pretty :: DidOpenNotebookDocumentParams -> Doc ann #

prettyList :: [DidOpenNotebookDocumentParams] -> Doc ann #

Pretty DidOpenTextDocumentParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DidOpenTextDocumentParams

Methods

pretty :: DidOpenTextDocumentParams -> Doc ann #

prettyList :: [DidOpenTextDocumentParams] -> Doc ann #

Pretty DidSaveNotebookDocumentParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DidSaveNotebookDocumentParams

Methods

pretty :: DidSaveNotebookDocumentParams -> Doc ann #

prettyList :: [DidSaveNotebookDocumentParams] -> Doc ann #

Pretty DidSaveTextDocumentParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DidSaveTextDocumentParams

Methods

pretty :: DidSaveTextDocumentParams -> Doc ann #

prettyList :: [DidSaveTextDocumentParams] -> Doc ann #

Pretty DocumentColorClientCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DocumentColorClientCapabilities

Methods

pretty :: DocumentColorClientCapabilities -> Doc ann #

prettyList :: [DocumentColorClientCapabilities] -> Doc ann #

Pretty DocumentColorOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DocumentColorOptions

Methods

pretty :: DocumentColorOptions -> Doc ann #

prettyList :: [DocumentColorOptions] -> Doc ann #

Pretty DocumentColorParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DocumentColorParams

Methods

pretty :: DocumentColorParams -> Doc ann #

prettyList :: [DocumentColorParams] -> Doc ann #

Pretty DocumentColorRegistrationOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DocumentColorRegistrationOptions

Methods

pretty :: DocumentColorRegistrationOptions -> Doc ann #

prettyList :: [DocumentColorRegistrationOptions] -> Doc ann #

Pretty DocumentDiagnosticParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DocumentDiagnosticParams

Methods

pretty :: DocumentDiagnosticParams -> Doc ann #

prettyList :: [DocumentDiagnosticParams] -> Doc ann #

Pretty DocumentDiagnosticReport 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DocumentDiagnosticReport

Methods

pretty :: DocumentDiagnosticReport -> Doc ann #

prettyList :: [DocumentDiagnosticReport] -> Doc ann #

Pretty DocumentDiagnosticReportKind 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DocumentDiagnosticReportKind

Methods

pretty :: DocumentDiagnosticReportKind -> Doc ann #

prettyList :: [DocumentDiagnosticReportKind] -> Doc ann #

Pretty DocumentDiagnosticReportPartialResult 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DocumentDiagnosticReportPartialResult

Methods

pretty :: DocumentDiagnosticReportPartialResult -> Doc ann #

prettyList :: [DocumentDiagnosticReportPartialResult] -> Doc ann #

Pretty DocumentFilter 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DocumentFilter

Methods

pretty :: DocumentFilter -> Doc ann #

prettyList :: [DocumentFilter] -> Doc ann #

Pretty DocumentFormattingClientCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DocumentFormattingClientCapabilities

Methods

pretty :: DocumentFormattingClientCapabilities -> Doc ann #

prettyList :: [DocumentFormattingClientCapabilities] -> Doc ann #

Pretty DocumentFormattingOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DocumentFormattingOptions

Methods

pretty :: DocumentFormattingOptions -> Doc ann #

prettyList :: [DocumentFormattingOptions] -> Doc ann #

Pretty DocumentFormattingParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DocumentFormattingParams

Methods

pretty :: DocumentFormattingParams -> Doc ann #

prettyList :: [DocumentFormattingParams] -> Doc ann #

Pretty DocumentFormattingRegistrationOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DocumentFormattingRegistrationOptions

Methods

pretty :: DocumentFormattingRegistrationOptions -> Doc ann #

prettyList :: [DocumentFormattingRegistrationOptions] -> Doc ann #

Pretty DocumentHighlight 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DocumentHighlight

Methods

pretty :: DocumentHighlight -> Doc ann #

prettyList :: [DocumentHighlight] -> Doc ann #

Pretty DocumentHighlightClientCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DocumentHighlightClientCapabilities

Methods

pretty :: DocumentHighlightClientCapabilities -> Doc ann #

prettyList :: [DocumentHighlightClientCapabilities] -> Doc ann #

Pretty DocumentHighlightKind 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DocumentHighlightKind

Methods

pretty :: DocumentHighlightKind -> Doc ann #

prettyList :: [DocumentHighlightKind] -> Doc ann #

Pretty DocumentHighlightOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DocumentHighlightOptions

Methods

pretty :: DocumentHighlightOptions -> Doc ann #

prettyList :: [DocumentHighlightOptions] -> Doc ann #

Pretty DocumentHighlightParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DocumentHighlightParams

Methods

pretty :: DocumentHighlightParams -> Doc ann #

prettyList :: [DocumentHighlightParams] -> Doc ann #

Pretty DocumentHighlightRegistrationOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DocumentHighlightRegistrationOptions

Methods

pretty :: DocumentHighlightRegistrationOptions -> Doc ann #

prettyList :: [DocumentHighlightRegistrationOptions] -> Doc ann #

Pretty DocumentLink 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DocumentLink

Methods

pretty :: DocumentLink -> Doc ann #

prettyList :: [DocumentLink] -> Doc ann #

Pretty DocumentLinkClientCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DocumentLinkClientCapabilities

Methods

pretty :: DocumentLinkClientCapabilities -> Doc ann #

prettyList :: [DocumentLinkClientCapabilities] -> Doc ann #

Pretty DocumentLinkOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DocumentLinkOptions

Methods

pretty :: DocumentLinkOptions -> Doc ann #

prettyList :: [DocumentLinkOptions] -> Doc ann #

Pretty DocumentLinkParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DocumentLinkParams

Methods

pretty :: DocumentLinkParams -> Doc ann #

prettyList :: [DocumentLinkParams] -> Doc ann #

Pretty DocumentLinkRegistrationOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DocumentLinkRegistrationOptions

Methods

pretty :: DocumentLinkRegistrationOptions -> Doc ann #

prettyList :: [DocumentLinkRegistrationOptions] -> Doc ann #

Pretty DocumentOnTypeFormattingClientCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DocumentOnTypeFormattingClientCapabilities

Methods

pretty :: DocumentOnTypeFormattingClientCapabilities -> Doc ann #

prettyList :: [DocumentOnTypeFormattingClientCapabilities] -> Doc ann #

Pretty DocumentOnTypeFormattingOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DocumentOnTypeFormattingOptions

Methods

pretty :: DocumentOnTypeFormattingOptions -> Doc ann #

prettyList :: [DocumentOnTypeFormattingOptions] -> Doc ann #

Pretty DocumentOnTypeFormattingParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DocumentOnTypeFormattingParams

Methods

pretty :: DocumentOnTypeFormattingParams -> Doc ann #

prettyList :: [DocumentOnTypeFormattingParams] -> Doc ann #

Pretty DocumentOnTypeFormattingRegistrationOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DocumentOnTypeFormattingRegistrationOptions

Methods

pretty :: DocumentOnTypeFormattingRegistrationOptions -> Doc ann #

prettyList :: [DocumentOnTypeFormattingRegistrationOptions] -> Doc ann #

Pretty DocumentRangeFormattingClientCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DocumentRangeFormattingClientCapabilities

Methods

pretty :: DocumentRangeFormattingClientCapabilities -> Doc ann #

prettyList :: [DocumentRangeFormattingClientCapabilities] -> Doc ann #

Pretty DocumentRangeFormattingOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DocumentRangeFormattingOptions

Methods

pretty :: DocumentRangeFormattingOptions -> Doc ann #

prettyList :: [DocumentRangeFormattingOptions] -> Doc ann #

Pretty DocumentRangeFormattingParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DocumentRangeFormattingParams

Methods

pretty :: DocumentRangeFormattingParams -> Doc ann #

prettyList :: [DocumentRangeFormattingParams] -> Doc ann #

Pretty DocumentRangeFormattingRegistrationOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DocumentRangeFormattingRegistrationOptions

Methods

pretty :: DocumentRangeFormattingRegistrationOptions -> Doc ann #

prettyList :: [DocumentRangeFormattingRegistrationOptions] -> Doc ann #

Pretty DocumentSelector 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DocumentSelector

Methods

pretty :: DocumentSelector -> Doc ann #

prettyList :: [DocumentSelector] -> Doc ann #

Pretty DocumentSymbol 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DocumentSymbol

Methods

pretty :: DocumentSymbol -> Doc ann #

prettyList :: [DocumentSymbol] -> Doc ann #

Pretty DocumentSymbolClientCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DocumentSymbolClientCapabilities

Methods

pretty :: DocumentSymbolClientCapabilities -> Doc ann #

prettyList :: [DocumentSymbolClientCapabilities] -> Doc ann #

Pretty DocumentSymbolOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DocumentSymbolOptions

Methods

pretty :: DocumentSymbolOptions -> Doc ann #

prettyList :: [DocumentSymbolOptions] -> Doc ann #

Pretty DocumentSymbolParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DocumentSymbolParams

Methods

pretty :: DocumentSymbolParams -> Doc ann #

prettyList :: [DocumentSymbolParams] -> Doc ann #

Pretty DocumentSymbolRegistrationOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DocumentSymbolRegistrationOptions

Methods

pretty :: DocumentSymbolRegistrationOptions -> Doc ann #

prettyList :: [DocumentSymbolRegistrationOptions] -> Doc ann #

Pretty EditRangeWithInsertReplace 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.EditRangeWithInsertReplace

Methods

pretty :: EditRangeWithInsertReplace -> Doc ann #

prettyList :: [EditRangeWithInsertReplace] -> Doc ann #

Pretty ErrorCodes 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ErrorCodes

Methods

pretty :: ErrorCodes -> Doc ann #

prettyList :: [ErrorCodes] -> Doc ann #

Pretty ExecuteCommandClientCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ExecuteCommandClientCapabilities

Methods

pretty :: ExecuteCommandClientCapabilities -> Doc ann #

prettyList :: [ExecuteCommandClientCapabilities] -> Doc ann #

Pretty ExecuteCommandOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ExecuteCommandOptions

Methods

pretty :: ExecuteCommandOptions -> Doc ann #

prettyList :: [ExecuteCommandOptions] -> Doc ann #

Pretty ExecuteCommandParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ExecuteCommandParams

Methods

pretty :: ExecuteCommandParams -> Doc ann #

prettyList :: [ExecuteCommandParams] -> Doc ann #

Pretty ExecuteCommandRegistrationOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ExecuteCommandRegistrationOptions

Methods

pretty :: ExecuteCommandRegistrationOptions -> Doc ann #

prettyList :: [ExecuteCommandRegistrationOptions] -> Doc ann #

Pretty ExecutionSummary 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ExecutionSummary

Methods

pretty :: ExecutionSummary -> Doc ann #

prettyList :: [ExecutionSummary] -> Doc ann #

Pretty FailureHandlingKind 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.FailureHandlingKind

Methods

pretty :: FailureHandlingKind -> Doc ann #

prettyList :: [FailureHandlingKind] -> Doc ann #

Pretty FileChangeType 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.FileChangeType

Methods

pretty :: FileChangeType -> Doc ann #

prettyList :: [FileChangeType] -> Doc ann #

Pretty FileCreate 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.FileCreate

Methods

pretty :: FileCreate -> Doc ann #

prettyList :: [FileCreate] -> Doc ann #

Pretty FileDelete 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.FileDelete

Methods

pretty :: FileDelete -> Doc ann #

prettyList :: [FileDelete] -> Doc ann #

Pretty FileEvent 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.FileEvent

Methods

pretty :: FileEvent -> Doc ann #

prettyList :: [FileEvent] -> Doc ann #

Pretty FileOperationClientCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.FileOperationClientCapabilities

Methods

pretty :: FileOperationClientCapabilities -> Doc ann #

prettyList :: [FileOperationClientCapabilities] -> Doc ann #

Pretty FileOperationFilter 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.FileOperationFilter

Methods

pretty :: FileOperationFilter -> Doc ann #

prettyList :: [FileOperationFilter] -> Doc ann #

Pretty FileOperationOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.FileOperationOptions

Methods

pretty :: FileOperationOptions -> Doc ann #

prettyList :: [FileOperationOptions] -> Doc ann #

Pretty FileOperationPattern 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.FileOperationPattern

Methods

pretty :: FileOperationPattern -> Doc ann #

prettyList :: [FileOperationPattern] -> Doc ann #

Pretty FileOperationPatternKind 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.FileOperationPatternKind

Methods

pretty :: FileOperationPatternKind -> Doc ann #

prettyList :: [FileOperationPatternKind] -> Doc ann #

Pretty FileOperationPatternOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.FileOperationPatternOptions

Methods

pretty :: FileOperationPatternOptions -> Doc ann #

prettyList :: [FileOperationPatternOptions] -> Doc ann #

Pretty FileOperationRegistrationOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.FileOperationRegistrationOptions

Methods

pretty :: FileOperationRegistrationOptions -> Doc ann #

prettyList :: [FileOperationRegistrationOptions] -> Doc ann #

Pretty FileRename 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.FileRename

Methods

pretty :: FileRename -> Doc ann #

prettyList :: [FileRename] -> Doc ann #

Pretty FileSystemWatcher 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.FileSystemWatcher

Methods

pretty :: FileSystemWatcher -> Doc ann #

prettyList :: [FileSystemWatcher] -> Doc ann #

Pretty FoldingRange 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.FoldingRange

Methods

pretty :: FoldingRange -> Doc ann #

prettyList :: [FoldingRange] -> Doc ann #

Pretty FoldingRangeClientCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.FoldingRangeClientCapabilities

Methods

pretty :: FoldingRangeClientCapabilities -> Doc ann #

prettyList :: [FoldingRangeClientCapabilities] -> Doc ann #

Pretty FoldingRangeKind 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.FoldingRangeKind

Methods

pretty :: FoldingRangeKind -> Doc ann #

prettyList :: [FoldingRangeKind] -> Doc ann #

Pretty FoldingRangeOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.FoldingRangeOptions

Methods

pretty :: FoldingRangeOptions -> Doc ann #

prettyList :: [FoldingRangeOptions] -> Doc ann #

Pretty FoldingRangeParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.FoldingRangeParams

Methods

pretty :: FoldingRangeParams -> Doc ann #

prettyList :: [FoldingRangeParams] -> Doc ann #

Pretty FoldingRangeRegistrationOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.FoldingRangeRegistrationOptions

Methods

pretty :: FoldingRangeRegistrationOptions -> Doc ann #

prettyList :: [FoldingRangeRegistrationOptions] -> Doc ann #

Pretty FormattingOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.FormattingOptions

Methods

pretty :: FormattingOptions -> Doc ann #

prettyList :: [FormattingOptions] -> Doc ann #

Pretty FullDocumentDiagnosticReport 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.FullDocumentDiagnosticReport

Methods

pretty :: FullDocumentDiagnosticReport -> Doc ann #

prettyList :: [FullDocumentDiagnosticReport] -> Doc ann #

Pretty GeneralClientCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.GeneralClientCapabilities

Methods

pretty :: GeneralClientCapabilities -> Doc ann #

prettyList :: [GeneralClientCapabilities] -> Doc ann #

Pretty GlobPattern 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.GlobPattern

Methods

pretty :: GlobPattern -> Doc ann #

prettyList :: [GlobPattern] -> Doc ann #

Pretty Hover 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.Hover

Methods

pretty :: Hover -> Doc ann #

prettyList :: [Hover] -> Doc ann #

Pretty HoverClientCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.HoverClientCapabilities

Methods

pretty :: HoverClientCapabilities -> Doc ann #

prettyList :: [HoverClientCapabilities] -> Doc ann #

Pretty HoverOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.HoverOptions

Methods

pretty :: HoverOptions -> Doc ann #

prettyList :: [HoverOptions] -> Doc ann #

Pretty HoverParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.HoverParams

Methods

pretty :: HoverParams -> Doc ann #

prettyList :: [HoverParams] -> Doc ann #

Pretty HoverRegistrationOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.HoverRegistrationOptions

Methods

pretty :: HoverRegistrationOptions -> Doc ann #

prettyList :: [HoverRegistrationOptions] -> Doc ann #

Pretty ImplementationClientCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ImplementationClientCapabilities

Methods

pretty :: ImplementationClientCapabilities -> Doc ann #

prettyList :: [ImplementationClientCapabilities] -> Doc ann #

Pretty ImplementationOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ImplementationOptions

Methods

pretty :: ImplementationOptions -> Doc ann #

prettyList :: [ImplementationOptions] -> Doc ann #

Pretty ImplementationParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ImplementationParams

Methods

pretty :: ImplementationParams -> Doc ann #

prettyList :: [ImplementationParams] -> Doc ann #

Pretty ImplementationRegistrationOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ImplementationRegistrationOptions

Methods

pretty :: ImplementationRegistrationOptions -> Doc ann #

prettyList :: [ImplementationRegistrationOptions] -> Doc ann #

Pretty InitializeError 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.InitializeError

Methods

pretty :: InitializeError -> Doc ann #

prettyList :: [InitializeError] -> Doc ann #

Pretty InitializeParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.InitializeParams

Methods

pretty :: InitializeParams -> Doc ann #

prettyList :: [InitializeParams] -> Doc ann #

Pretty InitializeResult 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.InitializeResult

Methods

pretty :: InitializeResult -> Doc ann #

prettyList :: [InitializeResult] -> Doc ann #

Pretty InitializedParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.InitializedParams

Methods

pretty :: InitializedParams -> Doc ann #

prettyList :: [InitializedParams] -> Doc ann #

Pretty InlayHint 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.InlayHint

Methods

pretty :: InlayHint -> Doc ann #

prettyList :: [InlayHint] -> Doc ann #

Pretty InlayHintClientCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.InlayHintClientCapabilities

Methods

pretty :: InlayHintClientCapabilities -> Doc ann #

prettyList :: [InlayHintClientCapabilities] -> Doc ann #

Pretty InlayHintKind 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.InlayHintKind

Methods

pretty :: InlayHintKind -> Doc ann #

prettyList :: [InlayHintKind] -> Doc ann #

Pretty InlayHintLabelPart 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.InlayHintLabelPart

Methods

pretty :: InlayHintLabelPart -> Doc ann #

prettyList :: [InlayHintLabelPart] -> Doc ann #

Pretty InlayHintOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.InlayHintOptions

Methods

pretty :: InlayHintOptions -> Doc ann #

prettyList :: [InlayHintOptions] -> Doc ann #

Pretty InlayHintParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.InlayHintParams

Methods

pretty :: InlayHintParams -> Doc ann #

prettyList :: [InlayHintParams] -> Doc ann #

Pretty InlayHintRegistrationOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.InlayHintRegistrationOptions

Methods

pretty :: InlayHintRegistrationOptions -> Doc ann #

prettyList :: [InlayHintRegistrationOptions] -> Doc ann #

Pretty InlayHintWorkspaceClientCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.InlayHintWorkspaceClientCapabilities

Methods

pretty :: InlayHintWorkspaceClientCapabilities -> Doc ann #

prettyList :: [InlayHintWorkspaceClientCapabilities] -> Doc ann #

Pretty InlineValue 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.InlineValue

Methods

pretty :: InlineValue -> Doc ann #

prettyList :: [InlineValue] -> Doc ann #

Pretty InlineValueClientCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.InlineValueClientCapabilities

Methods

pretty :: InlineValueClientCapabilities -> Doc ann #

prettyList :: [InlineValueClientCapabilities] -> Doc ann #

Pretty InlineValueContext 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.InlineValueContext

Methods

pretty :: InlineValueContext -> Doc ann #

prettyList :: [InlineValueContext] -> Doc ann #

Pretty InlineValueEvaluatableExpression 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.InlineValueEvaluatableExpression

Methods

pretty :: InlineValueEvaluatableExpression -> Doc ann #

prettyList :: [InlineValueEvaluatableExpression] -> Doc ann #

Pretty InlineValueOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.InlineValueOptions

Methods

pretty :: InlineValueOptions -> Doc ann #

prettyList :: [InlineValueOptions] -> Doc ann #

Pretty InlineValueParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.InlineValueParams

Methods

pretty :: InlineValueParams -> Doc ann #

prettyList :: [InlineValueParams] -> Doc ann #

Pretty InlineValueRegistrationOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.InlineValueRegistrationOptions

Methods

pretty :: InlineValueRegistrationOptions -> Doc ann #

prettyList :: [InlineValueRegistrationOptions] -> Doc ann #

Pretty InlineValueText 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.InlineValueText

Methods

pretty :: InlineValueText -> Doc ann #

prettyList :: [InlineValueText] -> Doc ann #

Pretty InlineValueVariableLookup 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.InlineValueVariableLookup

Methods

pretty :: InlineValueVariableLookup -> Doc ann #

prettyList :: [InlineValueVariableLookup] -> Doc ann #

Pretty InlineValueWorkspaceClientCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.InlineValueWorkspaceClientCapabilities

Methods

pretty :: InlineValueWorkspaceClientCapabilities -> Doc ann #

prettyList :: [InlineValueWorkspaceClientCapabilities] -> Doc ann #

Pretty InsertReplaceEdit 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.InsertReplaceEdit

Methods

pretty :: InsertReplaceEdit -> Doc ann #

prettyList :: [InsertReplaceEdit] -> Doc ann #

Pretty InsertTextFormat 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.InsertTextFormat

Methods

pretty :: InsertTextFormat -> Doc ann #

prettyList :: [InsertTextFormat] -> Doc ann #

Pretty InsertTextMode 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.InsertTextMode

Methods

pretty :: InsertTextMode -> Doc ann #

prettyList :: [InsertTextMode] -> Doc ann #

Pretty LSPErrorCodes 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.LSPErrorCodes

Methods

pretty :: LSPErrorCodes -> Doc ann #

prettyList :: [LSPErrorCodes] -> Doc ann #

Pretty LanguageKind 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.LanguageKind

Methods

pretty :: LanguageKind -> Doc ann #

prettyList :: [LanguageKind] -> Doc ann #

Pretty LinkedEditingRangeClientCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.LinkedEditingRangeClientCapabilities

Methods

pretty :: LinkedEditingRangeClientCapabilities -> Doc ann #

prettyList :: [LinkedEditingRangeClientCapabilities] -> Doc ann #

Pretty LinkedEditingRangeOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.LinkedEditingRangeOptions

Methods

pretty :: LinkedEditingRangeOptions -> Doc ann #

prettyList :: [LinkedEditingRangeOptions] -> Doc ann #

Pretty LinkedEditingRangeParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.LinkedEditingRangeParams

Methods

pretty :: LinkedEditingRangeParams -> Doc ann #

prettyList :: [LinkedEditingRangeParams] -> Doc ann #

Pretty LinkedEditingRangeRegistrationOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.LinkedEditingRangeRegistrationOptions

Methods

pretty :: LinkedEditingRangeRegistrationOptions -> Doc ann #

prettyList :: [LinkedEditingRangeRegistrationOptions] -> Doc ann #

Pretty LinkedEditingRanges 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.LinkedEditingRanges

Methods

pretty :: LinkedEditingRanges -> Doc ann #

prettyList :: [LinkedEditingRanges] -> Doc ann #

Pretty Location 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.Location

Methods

pretty :: Location -> Doc ann #

prettyList :: [Location] -> Doc ann #

Pretty LocationLink 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.LocationLink

Methods

pretty :: LocationLink -> Doc ann #

prettyList :: [LocationLink] -> Doc ann #

Pretty LocationUriOnly 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.LocationUriOnly

Methods

pretty :: LocationUriOnly -> Doc ann #

prettyList :: [LocationUriOnly] -> Doc ann #

Pretty LogMessageParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.LogMessageParams

Methods

pretty :: LogMessageParams -> Doc ann #

prettyList :: [LogMessageParams] -> Doc ann #

Pretty LogTraceParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.LogTraceParams

Methods

pretty :: LogTraceParams -> Doc ann #

prettyList :: [LogTraceParams] -> Doc ann #

Pretty MarkdownClientCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.MarkdownClientCapabilities

Methods

pretty :: MarkdownClientCapabilities -> Doc ann #

prettyList :: [MarkdownClientCapabilities] -> Doc ann #

Pretty MarkedString 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.MarkedString

Methods

pretty :: MarkedString -> Doc ann #

prettyList :: [MarkedString] -> Doc ann #

Pretty MarkedStringWithLanguage 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.MarkedStringWithLanguage

Methods

pretty :: MarkedStringWithLanguage -> Doc ann #

prettyList :: [MarkedStringWithLanguage] -> Doc ann #

Pretty MarkupContent 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.MarkupContent

Methods

pretty :: MarkupContent -> Doc ann #

prettyList :: [MarkupContent] -> Doc ann #

Pretty MarkupKind 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.MarkupKind

Methods

pretty :: MarkupKind -> Doc ann #

prettyList :: [MarkupKind] -> Doc ann #

Pretty MessageActionItem 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.MessageActionItem

Methods

pretty :: MessageActionItem -> Doc ann #

prettyList :: [MessageActionItem] -> Doc ann #

Pretty MessageType 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.MessageType

Methods

pretty :: MessageType -> Doc ann #

prettyList :: [MessageType] -> Doc ann #

Pretty Moniker 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.Moniker

Methods

pretty :: Moniker -> Doc ann #

prettyList :: [Moniker] -> Doc ann #

Pretty MonikerClientCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.MonikerClientCapabilities

Methods

pretty :: MonikerClientCapabilities -> Doc ann #

prettyList :: [MonikerClientCapabilities] -> Doc ann #

Pretty MonikerKind 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.MonikerKind

Methods

pretty :: MonikerKind -> Doc ann #

prettyList :: [MonikerKind] -> Doc ann #

Pretty MonikerOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.MonikerOptions

Methods

pretty :: MonikerOptions -> Doc ann #

prettyList :: [MonikerOptions] -> Doc ann #

Pretty MonikerParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.MonikerParams

Methods

pretty :: MonikerParams -> Doc ann #

prettyList :: [MonikerParams] -> Doc ann #

Pretty MonikerRegistrationOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.MonikerRegistrationOptions

Methods

pretty :: MonikerRegistrationOptions -> Doc ann #

prettyList :: [MonikerRegistrationOptions] -> Doc ann #

Pretty NotebookCell 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.NotebookCell

Methods

pretty :: NotebookCell -> Doc ann #

prettyList :: [NotebookCell] -> Doc ann #

Pretty NotebookCellArrayChange 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.NotebookCellArrayChange

Methods

pretty :: NotebookCellArrayChange -> Doc ann #

prettyList :: [NotebookCellArrayChange] -> Doc ann #

Pretty NotebookCellKind 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.NotebookCellKind

Methods

pretty :: NotebookCellKind -> Doc ann #

prettyList :: [NotebookCellKind] -> Doc ann #

Pretty NotebookCellLanguage 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.NotebookCellLanguage

Methods

pretty :: NotebookCellLanguage -> Doc ann #

prettyList :: [NotebookCellLanguage] -> Doc ann #

Pretty NotebookCellTextDocumentFilter 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.NotebookCellTextDocumentFilter

Methods

pretty :: NotebookCellTextDocumentFilter -> Doc ann #

prettyList :: [NotebookCellTextDocumentFilter] -> Doc ann #

Pretty NotebookDocument 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.NotebookDocument

Methods

pretty :: NotebookDocument -> Doc ann #

prettyList :: [NotebookDocument] -> Doc ann #

Pretty NotebookDocumentCellChangeStructure 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.NotebookDocumentCellChangeStructure

Methods

pretty :: NotebookDocumentCellChangeStructure -> Doc ann #

prettyList :: [NotebookDocumentCellChangeStructure] -> Doc ann #

Pretty NotebookDocumentCellChanges 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.NotebookDocumentCellChanges

Methods

pretty :: NotebookDocumentCellChanges -> Doc ann #

prettyList :: [NotebookDocumentCellChanges] -> Doc ann #

Pretty NotebookDocumentCellContentChanges 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.NotebookDocumentCellContentChanges

Methods

pretty :: NotebookDocumentCellContentChanges -> Doc ann #

prettyList :: [NotebookDocumentCellContentChanges] -> Doc ann #

Pretty NotebookDocumentChangeEvent 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.NotebookDocumentChangeEvent

Methods

pretty :: NotebookDocumentChangeEvent -> Doc ann #

prettyList :: [NotebookDocumentChangeEvent] -> Doc ann #

Pretty NotebookDocumentClientCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.NotebookDocumentClientCapabilities

Methods

pretty :: NotebookDocumentClientCapabilities -> Doc ann #

prettyList :: [NotebookDocumentClientCapabilities] -> Doc ann #

Pretty NotebookDocumentFilter 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.NotebookDocumentFilter

Methods

pretty :: NotebookDocumentFilter -> Doc ann #

prettyList :: [NotebookDocumentFilter] -> Doc ann #

Pretty NotebookDocumentFilterNotebookType 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.NotebookDocumentFilterNotebookType

Methods

pretty :: NotebookDocumentFilterNotebookType -> Doc ann #

prettyList :: [NotebookDocumentFilterNotebookType] -> Doc ann #

Pretty NotebookDocumentFilterPattern 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.NotebookDocumentFilterPattern

Methods

pretty :: NotebookDocumentFilterPattern -> Doc ann #

prettyList :: [NotebookDocumentFilterPattern] -> Doc ann #

Pretty NotebookDocumentFilterScheme 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.NotebookDocumentFilterScheme

Methods

pretty :: NotebookDocumentFilterScheme -> Doc ann #

prettyList :: [NotebookDocumentFilterScheme] -> Doc ann #

Pretty NotebookDocumentFilterWithCells 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.NotebookDocumentFilterWithCells

Methods

pretty :: NotebookDocumentFilterWithCells -> Doc ann #

prettyList :: [NotebookDocumentFilterWithCells] -> Doc ann #

Pretty NotebookDocumentFilterWithNotebook 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.NotebookDocumentFilterWithNotebook

Methods

pretty :: NotebookDocumentFilterWithNotebook -> Doc ann #

prettyList :: [NotebookDocumentFilterWithNotebook] -> Doc ann #

Pretty NotebookDocumentIdentifier 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.NotebookDocumentIdentifier

Methods

pretty :: NotebookDocumentIdentifier -> Doc ann #

prettyList :: [NotebookDocumentIdentifier] -> Doc ann #

Pretty NotebookDocumentSyncClientCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.NotebookDocumentSyncClientCapabilities

Methods

pretty :: NotebookDocumentSyncClientCapabilities -> Doc ann #

prettyList :: [NotebookDocumentSyncClientCapabilities] -> Doc ann #

Pretty NotebookDocumentSyncOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.NotebookDocumentSyncOptions

Methods

pretty :: NotebookDocumentSyncOptions -> Doc ann #

prettyList :: [NotebookDocumentSyncOptions] -> Doc ann #

Pretty NotebookDocumentSyncRegistrationOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.NotebookDocumentSyncRegistrationOptions

Methods

pretty :: NotebookDocumentSyncRegistrationOptions -> Doc ann #

prettyList :: [NotebookDocumentSyncRegistrationOptions] -> Doc ann #

Pretty OptionalVersionedTextDocumentIdentifier 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.OptionalVersionedTextDocumentIdentifier

Methods

pretty :: OptionalVersionedTextDocumentIdentifier -> Doc ann #

prettyList :: [OptionalVersionedTextDocumentIdentifier] -> Doc ann #

Pretty ParameterInformation 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ParameterInformation

Methods

pretty :: ParameterInformation -> Doc ann #

prettyList :: [ParameterInformation] -> Doc ann #

Pretty PartialResultParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.PartialResultParams

Methods

pretty :: PartialResultParams -> Doc ann #

prettyList :: [PartialResultParams] -> Doc ann #

Pretty Pattern 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.Pattern

Methods

pretty :: Pattern -> Doc ann #

prettyList :: [Pattern] -> Doc ann #

Pretty Position 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.Position

Methods

pretty :: Position -> Doc ann #

prettyList :: [Position] -> Doc ann #

Pretty PositionEncodingKind 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.PositionEncodingKind

Methods

pretty :: PositionEncodingKind -> Doc ann #

prettyList :: [PositionEncodingKind] -> Doc ann #

Pretty PrepareRenameDefaultBehavior 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.PrepareRenameDefaultBehavior

Methods

pretty :: PrepareRenameDefaultBehavior -> Doc ann #

prettyList :: [PrepareRenameDefaultBehavior] -> Doc ann #

Pretty PrepareRenameParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.PrepareRenameParams

Methods

pretty :: PrepareRenameParams -> Doc ann #

prettyList :: [PrepareRenameParams] -> Doc ann #

Pretty PrepareRenamePlaceholder 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.PrepareRenamePlaceholder

Methods

pretty :: PrepareRenamePlaceholder -> Doc ann #

prettyList :: [PrepareRenamePlaceholder] -> Doc ann #

Pretty PrepareRenameResult 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.PrepareRenameResult

Methods

pretty :: PrepareRenameResult -> Doc ann #

prettyList :: [PrepareRenameResult] -> Doc ann #

Pretty PrepareSupportDefaultBehavior 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.PrepareSupportDefaultBehavior

Methods

pretty :: PrepareSupportDefaultBehavior -> Doc ann #

prettyList :: [PrepareSupportDefaultBehavior] -> Doc ann #

Pretty PreviousResultId 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.PreviousResultId

Methods

pretty :: PreviousResultId -> Doc ann #

prettyList :: [PreviousResultId] -> Doc ann #

Pretty ProgressParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ProgressParams

Methods

pretty :: ProgressParams -> Doc ann #

prettyList :: [ProgressParams] -> Doc ann #

Pretty ProgressToken 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ProgressToken

Methods

pretty :: ProgressToken -> Doc ann #

prettyList :: [ProgressToken] -> Doc ann #

Pretty PublishDiagnosticsClientCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.PublishDiagnosticsClientCapabilities

Methods

pretty :: PublishDiagnosticsClientCapabilities -> Doc ann #

prettyList :: [PublishDiagnosticsClientCapabilities] -> Doc ann #

Pretty PublishDiagnosticsParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.PublishDiagnosticsParams

Methods

pretty :: PublishDiagnosticsParams -> Doc ann #

prettyList :: [PublishDiagnosticsParams] -> Doc ann #

Pretty Range 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.Range

Methods

pretty :: Range -> Doc ann #

prettyList :: [Range] -> Doc ann #

Pretty ReferenceClientCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ReferenceClientCapabilities

Methods

pretty :: ReferenceClientCapabilities -> Doc ann #

prettyList :: [ReferenceClientCapabilities] -> Doc ann #

Pretty ReferenceContext 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ReferenceContext

Methods

pretty :: ReferenceContext -> Doc ann #

prettyList :: [ReferenceContext] -> Doc ann #

Pretty ReferenceOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ReferenceOptions

Methods

pretty :: ReferenceOptions -> Doc ann #

prettyList :: [ReferenceOptions] -> Doc ann #

Pretty ReferenceParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ReferenceParams

Methods

pretty :: ReferenceParams -> Doc ann #

prettyList :: [ReferenceParams] -> Doc ann #

Pretty ReferenceRegistrationOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ReferenceRegistrationOptions

Methods

pretty :: ReferenceRegistrationOptions -> Doc ann #

prettyList :: [ReferenceRegistrationOptions] -> Doc ann #

Pretty Registration 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.Registration

Methods

pretty :: Registration -> Doc ann #

prettyList :: [Registration] -> Doc ann #

Pretty RegistrationParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.RegistrationParams

Methods

pretty :: RegistrationParams -> Doc ann #

prettyList :: [RegistrationParams] -> Doc ann #

Pretty RegularExpressionEngineKind 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.RegularExpressionEngineKind

Methods

pretty :: RegularExpressionEngineKind -> Doc ann #

prettyList :: [RegularExpressionEngineKind] -> Doc ann #

Pretty RegularExpressionsClientCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.RegularExpressionsClientCapabilities

Methods

pretty :: RegularExpressionsClientCapabilities -> Doc ann #

prettyList :: [RegularExpressionsClientCapabilities] -> Doc ann #

Pretty RelatedFullDocumentDiagnosticReport 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.RelatedFullDocumentDiagnosticReport

Methods

pretty :: RelatedFullDocumentDiagnosticReport -> Doc ann #

prettyList :: [RelatedFullDocumentDiagnosticReport] -> Doc ann #

Pretty RelatedUnchangedDocumentDiagnosticReport 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.RelatedUnchangedDocumentDiagnosticReport

Methods

pretty :: RelatedUnchangedDocumentDiagnosticReport -> Doc ann #

prettyList :: [RelatedUnchangedDocumentDiagnosticReport] -> Doc ann #

Pretty RelativePattern 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.RelativePattern

Methods

pretty :: RelativePattern -> Doc ann #

prettyList :: [RelativePattern] -> Doc ann #

Pretty RenameClientCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.RenameClientCapabilities

Methods

pretty :: RenameClientCapabilities -> Doc ann #

prettyList :: [RenameClientCapabilities] -> Doc ann #

Pretty RenameFile 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.RenameFile

Methods

pretty :: RenameFile -> Doc ann #

prettyList :: [RenameFile] -> Doc ann #

Pretty RenameFileOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.RenameFileOptions

Methods

pretty :: RenameFileOptions -> Doc ann #

prettyList :: [RenameFileOptions] -> Doc ann #

Pretty RenameFilesParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.RenameFilesParams

Methods

pretty :: RenameFilesParams -> Doc ann #

prettyList :: [RenameFilesParams] -> Doc ann #

Pretty RenameOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.RenameOptions

Methods

pretty :: RenameOptions -> Doc ann #

prettyList :: [RenameOptions] -> Doc ann #

Pretty RenameParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.RenameParams

Methods

pretty :: RenameParams -> Doc ann #

prettyList :: [RenameParams] -> Doc ann #

Pretty RenameRegistrationOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.RenameRegistrationOptions

Methods

pretty :: RenameRegistrationOptions -> Doc ann #

prettyList :: [RenameRegistrationOptions] -> Doc ann #

Pretty ResourceOperation 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ResourceOperation

Methods

pretty :: ResourceOperation -> Doc ann #

prettyList :: [ResourceOperation] -> Doc ann #

Pretty ResourceOperationKind 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ResourceOperationKind

Methods

pretty :: ResourceOperationKind -> Doc ann #

prettyList :: [ResourceOperationKind] -> Doc ann #

Pretty SaveOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.SaveOptions

Methods

pretty :: SaveOptions -> Doc ann #

prettyList :: [SaveOptions] -> Doc ann #

Pretty SelectionRange 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.SelectionRange

Methods

pretty :: SelectionRange -> Doc ann #

prettyList :: [SelectionRange] -> Doc ann #

Pretty SelectionRangeClientCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.SelectionRangeClientCapabilities

Methods

pretty :: SelectionRangeClientCapabilities -> Doc ann #

prettyList :: [SelectionRangeClientCapabilities] -> Doc ann #

Pretty SelectionRangeOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.SelectionRangeOptions

Methods

pretty :: SelectionRangeOptions -> Doc ann #

prettyList :: [SelectionRangeOptions] -> Doc ann #

Pretty SelectionRangeParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.SelectionRangeParams

Methods

pretty :: SelectionRangeParams -> Doc ann #

prettyList :: [SelectionRangeParams] -> Doc ann #

Pretty SelectionRangeRegistrationOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.SelectionRangeRegistrationOptions

Methods

pretty :: SelectionRangeRegistrationOptions -> Doc ann #

prettyList :: [SelectionRangeRegistrationOptions] -> Doc ann #

Pretty SemanticTokenModifiers 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.SemanticTokenModifiers

Methods

pretty :: SemanticTokenModifiers -> Doc ann #

prettyList :: [SemanticTokenModifiers] -> Doc ann #

Pretty SemanticTokenTypes 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.SemanticTokenTypes

Methods

pretty :: SemanticTokenTypes -> Doc ann #

prettyList :: [SemanticTokenTypes] -> Doc ann #

Pretty SemanticTokens 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.SemanticTokens

Methods

pretty :: SemanticTokens -> Doc ann #

prettyList :: [SemanticTokens] -> Doc ann #

Pretty SemanticTokensClientCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.SemanticTokensClientCapabilities

Methods

pretty :: SemanticTokensClientCapabilities -> Doc ann #

prettyList :: [SemanticTokensClientCapabilities] -> Doc ann #

Pretty SemanticTokensDelta 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.SemanticTokensDelta

Methods

pretty :: SemanticTokensDelta -> Doc ann #

prettyList :: [SemanticTokensDelta] -> Doc ann #

Pretty SemanticTokensDeltaParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.SemanticTokensDeltaParams

Methods

pretty :: SemanticTokensDeltaParams -> Doc ann #

prettyList :: [SemanticTokensDeltaParams] -> Doc ann #

Pretty SemanticTokensDeltaPartialResult 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.SemanticTokensDeltaPartialResult

Methods

pretty :: SemanticTokensDeltaPartialResult -> Doc ann #

prettyList :: [SemanticTokensDeltaPartialResult] -> Doc ann #

Pretty SemanticTokensEdit 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.SemanticTokensEdit

Methods

pretty :: SemanticTokensEdit -> Doc ann #

prettyList :: [SemanticTokensEdit] -> Doc ann #

Pretty SemanticTokensFullDelta 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.SemanticTokensFullDelta

Methods

pretty :: SemanticTokensFullDelta -> Doc ann #

prettyList :: [SemanticTokensFullDelta] -> Doc ann #

Pretty SemanticTokensLegend 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.SemanticTokensLegend

Methods

pretty :: SemanticTokensLegend -> Doc ann #

prettyList :: [SemanticTokensLegend] -> Doc ann #

Pretty SemanticTokensOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.SemanticTokensOptions

Methods

pretty :: SemanticTokensOptions -> Doc ann #

prettyList :: [SemanticTokensOptions] -> Doc ann #

Pretty SemanticTokensParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.SemanticTokensParams

Methods

pretty :: SemanticTokensParams -> Doc ann #

prettyList :: [SemanticTokensParams] -> Doc ann #

Pretty SemanticTokensPartialResult 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.SemanticTokensPartialResult

Methods

pretty :: SemanticTokensPartialResult -> Doc ann #

prettyList :: [SemanticTokensPartialResult] -> Doc ann #

Pretty SemanticTokensRangeParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.SemanticTokensRangeParams

Methods

pretty :: SemanticTokensRangeParams -> Doc ann #

prettyList :: [SemanticTokensRangeParams] -> Doc ann #

Pretty SemanticTokensRegistrationOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.SemanticTokensRegistrationOptions

Methods

pretty :: SemanticTokensRegistrationOptions -> Doc ann #

prettyList :: [SemanticTokensRegistrationOptions] -> Doc ann #

Pretty SemanticTokensWorkspaceClientCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.SemanticTokensWorkspaceClientCapabilities

Methods

pretty :: SemanticTokensWorkspaceClientCapabilities -> Doc ann #

prettyList :: [SemanticTokensWorkspaceClientCapabilities] -> Doc ann #

Pretty ServerCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ServerCapabilities

Methods

pretty :: ServerCapabilities -> Doc ann #

prettyList :: [ServerCapabilities] -> Doc ann #

Pretty ServerCompletionItemOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ServerCompletionItemOptions

Methods

pretty :: ServerCompletionItemOptions -> Doc ann #

prettyList :: [ServerCompletionItemOptions] -> Doc ann #

Pretty ServerInfo 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ServerInfo

Methods

pretty :: ServerInfo -> Doc ann #

prettyList :: [ServerInfo] -> Doc ann #

Pretty SetTraceParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.SetTraceParams

Methods

pretty :: SetTraceParams -> Doc ann #

prettyList :: [SetTraceParams] -> Doc ann #

Pretty ShowDocumentClientCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ShowDocumentClientCapabilities

Methods

pretty :: ShowDocumentClientCapabilities -> Doc ann #

prettyList :: [ShowDocumentClientCapabilities] -> Doc ann #

Pretty ShowDocumentParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ShowDocumentParams

Methods

pretty :: ShowDocumentParams -> Doc ann #

prettyList :: [ShowDocumentParams] -> Doc ann #

Pretty ShowDocumentResult 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ShowDocumentResult

Methods

pretty :: ShowDocumentResult -> Doc ann #

prettyList :: [ShowDocumentResult] -> Doc ann #

Pretty ShowMessageParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ShowMessageParams

Methods

pretty :: ShowMessageParams -> Doc ann #

prettyList :: [ShowMessageParams] -> Doc ann #

Pretty ShowMessageRequestClientCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ShowMessageRequestClientCapabilities

Methods

pretty :: ShowMessageRequestClientCapabilities -> Doc ann #

prettyList :: [ShowMessageRequestClientCapabilities] -> Doc ann #

Pretty ShowMessageRequestParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.ShowMessageRequestParams

Methods

pretty :: ShowMessageRequestParams -> Doc ann #

prettyList :: [ShowMessageRequestParams] -> Doc ann #

Pretty SignatureHelp 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.SignatureHelp

Methods

pretty :: SignatureHelp -> Doc ann #

prettyList :: [SignatureHelp] -> Doc ann #

Pretty SignatureHelpClientCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.SignatureHelpClientCapabilities

Methods

pretty :: SignatureHelpClientCapabilities -> Doc ann #

prettyList :: [SignatureHelpClientCapabilities] -> Doc ann #

Pretty SignatureHelpContext 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.SignatureHelpContext

Methods

pretty :: SignatureHelpContext -> Doc ann #

prettyList :: [SignatureHelpContext] -> Doc ann #

Pretty SignatureHelpOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.SignatureHelpOptions

Methods

pretty :: SignatureHelpOptions -> Doc ann #

prettyList :: [SignatureHelpOptions] -> Doc ann #

Pretty SignatureHelpParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.SignatureHelpParams

Methods

pretty :: SignatureHelpParams -> Doc ann #

prettyList :: [SignatureHelpParams] -> Doc ann #

Pretty SignatureHelpRegistrationOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.SignatureHelpRegistrationOptions

Methods

pretty :: SignatureHelpRegistrationOptions -> Doc ann #

prettyList :: [SignatureHelpRegistrationOptions] -> Doc ann #

Pretty SignatureHelpTriggerKind 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.SignatureHelpTriggerKind

Methods

pretty :: SignatureHelpTriggerKind -> Doc ann #

prettyList :: [SignatureHelpTriggerKind] -> Doc ann #

Pretty SignatureInformation 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.SignatureInformation

Methods

pretty :: SignatureInformation -> Doc ann #

prettyList :: [SignatureInformation] -> Doc ann #

Pretty StaleRequestSupportOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.StaleRequestSupportOptions

Methods

pretty :: StaleRequestSupportOptions -> Doc ann #

prettyList :: [StaleRequestSupportOptions] -> Doc ann #

Pretty StaticRegistrationOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.StaticRegistrationOptions

Methods

pretty :: StaticRegistrationOptions -> Doc ann #

prettyList :: [StaticRegistrationOptions] -> Doc ann #

Pretty SymbolInformation 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.SymbolInformation

Methods

pretty :: SymbolInformation -> Doc ann #

prettyList :: [SymbolInformation] -> Doc ann #

Pretty SymbolKind 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.SymbolKind

Methods

pretty :: SymbolKind -> Doc ann #

prettyList :: [SymbolKind] -> Doc ann #

Pretty SymbolTag 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.SymbolTag

Methods

pretty :: SymbolTag -> Doc ann #

prettyList :: [SymbolTag] -> Doc ann #

Pretty TextDocumentChangeRegistrationOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.TextDocumentChangeRegistrationOptions

Methods

pretty :: TextDocumentChangeRegistrationOptions -> Doc ann #

prettyList :: [TextDocumentChangeRegistrationOptions] -> Doc ann #

Pretty TextDocumentClientCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.TextDocumentClientCapabilities

Methods

pretty :: TextDocumentClientCapabilities -> Doc ann #

prettyList :: [TextDocumentClientCapabilities] -> Doc ann #

Pretty TextDocumentContentChangeEvent 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.TextDocumentContentChangeEvent

Methods

pretty :: TextDocumentContentChangeEvent -> Doc ann #

prettyList :: [TextDocumentContentChangeEvent] -> Doc ann #

Pretty TextDocumentContentChangePartial 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.TextDocumentContentChangePartial

Methods

pretty :: TextDocumentContentChangePartial -> Doc ann #

prettyList :: [TextDocumentContentChangePartial] -> Doc ann #

Pretty TextDocumentContentChangeWholeDocument 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.TextDocumentContentChangeWholeDocument

Methods

pretty :: TextDocumentContentChangeWholeDocument -> Doc ann #

prettyList :: [TextDocumentContentChangeWholeDocument] -> Doc ann #

Pretty TextDocumentEdit 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.TextDocumentEdit

Methods

pretty :: TextDocumentEdit -> Doc ann #

prettyList :: [TextDocumentEdit] -> Doc ann #

Pretty TextDocumentFilter 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.TextDocumentFilter

Methods

pretty :: TextDocumentFilter -> Doc ann #

prettyList :: [TextDocumentFilter] -> Doc ann #

Pretty TextDocumentFilterLanguage 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.TextDocumentFilterLanguage

Methods

pretty :: TextDocumentFilterLanguage -> Doc ann #

prettyList :: [TextDocumentFilterLanguage] -> Doc ann #

Pretty TextDocumentFilterPattern 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.TextDocumentFilterPattern

Methods

pretty :: TextDocumentFilterPattern -> Doc ann #

prettyList :: [TextDocumentFilterPattern] -> Doc ann #

Pretty TextDocumentFilterScheme 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.TextDocumentFilterScheme

Methods

pretty :: TextDocumentFilterScheme -> Doc ann #

prettyList :: [TextDocumentFilterScheme] -> Doc ann #

Pretty TextDocumentIdentifier 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.TextDocumentIdentifier

Methods

pretty :: TextDocumentIdentifier -> Doc ann #

prettyList :: [TextDocumentIdentifier] -> Doc ann #

Pretty TextDocumentItem 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.TextDocumentItem

Methods

pretty :: TextDocumentItem -> Doc ann #

prettyList :: [TextDocumentItem] -> Doc ann #

Pretty TextDocumentPositionParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.TextDocumentPositionParams

Methods

pretty :: TextDocumentPositionParams -> Doc ann #

prettyList :: [TextDocumentPositionParams] -> Doc ann #

Pretty TextDocumentRegistrationOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.TextDocumentRegistrationOptions

Methods

pretty :: TextDocumentRegistrationOptions -> Doc ann #

prettyList :: [TextDocumentRegistrationOptions] -> Doc ann #

Pretty TextDocumentSaveReason 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.TextDocumentSaveReason

Methods

pretty :: TextDocumentSaveReason -> Doc ann #

prettyList :: [TextDocumentSaveReason] -> Doc ann #

Pretty TextDocumentSaveRegistrationOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.TextDocumentSaveRegistrationOptions

Methods

pretty :: TextDocumentSaveRegistrationOptions -> Doc ann #

prettyList :: [TextDocumentSaveRegistrationOptions] -> Doc ann #

Pretty TextDocumentSyncClientCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.TextDocumentSyncClientCapabilities

Methods

pretty :: TextDocumentSyncClientCapabilities -> Doc ann #

prettyList :: [TextDocumentSyncClientCapabilities] -> Doc ann #

Pretty TextDocumentSyncKind 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.TextDocumentSyncKind

Methods

pretty :: TextDocumentSyncKind -> Doc ann #

prettyList :: [TextDocumentSyncKind] -> Doc ann #

Pretty TextDocumentSyncOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.TextDocumentSyncOptions

Methods

pretty :: TextDocumentSyncOptions -> Doc ann #

prettyList :: [TextDocumentSyncOptions] -> Doc ann #

Pretty TextEdit 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.TextEdit

Methods

pretty :: TextEdit -> Doc ann #

prettyList :: [TextEdit] -> Doc ann #

Pretty TokenFormat 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.TokenFormat

Methods

pretty :: TokenFormat -> Doc ann #

prettyList :: [TokenFormat] -> Doc ann #

Pretty TraceValue 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.TraceValue

Methods

pretty :: TraceValue -> Doc ann #

prettyList :: [TraceValue] -> Doc ann #

Pretty TypeDefinitionClientCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.TypeDefinitionClientCapabilities

Methods

pretty :: TypeDefinitionClientCapabilities -> Doc ann #

prettyList :: [TypeDefinitionClientCapabilities] -> Doc ann #

Pretty TypeDefinitionOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.TypeDefinitionOptions

Methods

pretty :: TypeDefinitionOptions -> Doc ann #

prettyList :: [TypeDefinitionOptions] -> Doc ann #

Pretty TypeDefinitionParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.TypeDefinitionParams

Methods

pretty :: TypeDefinitionParams -> Doc ann #

prettyList :: [TypeDefinitionParams] -> Doc ann #

Pretty TypeDefinitionRegistrationOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.TypeDefinitionRegistrationOptions

Methods

pretty :: TypeDefinitionRegistrationOptions -> Doc ann #

prettyList :: [TypeDefinitionRegistrationOptions] -> Doc ann #

Pretty TypeHierarchyClientCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.TypeHierarchyClientCapabilities

Methods

pretty :: TypeHierarchyClientCapabilities -> Doc ann #

prettyList :: [TypeHierarchyClientCapabilities] -> Doc ann #

Pretty TypeHierarchyItem 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.TypeHierarchyItem

Methods

pretty :: TypeHierarchyItem -> Doc ann #

prettyList :: [TypeHierarchyItem] -> Doc ann #

Pretty TypeHierarchyOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.TypeHierarchyOptions

Methods

pretty :: TypeHierarchyOptions -> Doc ann #

prettyList :: [TypeHierarchyOptions] -> Doc ann #

Pretty TypeHierarchyPrepareParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.TypeHierarchyPrepareParams

Methods

pretty :: TypeHierarchyPrepareParams -> Doc ann #

prettyList :: [TypeHierarchyPrepareParams] -> Doc ann #

Pretty TypeHierarchyRegistrationOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.TypeHierarchyRegistrationOptions

Methods

pretty :: TypeHierarchyRegistrationOptions -> Doc ann #

prettyList :: [TypeHierarchyRegistrationOptions] -> Doc ann #

Pretty TypeHierarchySubtypesParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.TypeHierarchySubtypesParams

Methods

pretty :: TypeHierarchySubtypesParams -> Doc ann #

prettyList :: [TypeHierarchySubtypesParams] -> Doc ann #

Pretty TypeHierarchySupertypesParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.TypeHierarchySupertypesParams

Methods

pretty :: TypeHierarchySupertypesParams -> Doc ann #

prettyList :: [TypeHierarchySupertypesParams] -> Doc ann #

Pretty UInitializeParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.UInitializeParams

Methods

pretty :: UInitializeParams -> Doc ann #

prettyList :: [UInitializeParams] -> Doc ann #

Pretty UnchangedDocumentDiagnosticReport 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.UnchangedDocumentDiagnosticReport

Methods

pretty :: UnchangedDocumentDiagnosticReport -> Doc ann #

prettyList :: [UnchangedDocumentDiagnosticReport] -> Doc ann #

Pretty UniquenessLevel 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.UniquenessLevel

Methods

pretty :: UniquenessLevel -> Doc ann #

prettyList :: [UniquenessLevel] -> Doc ann #

Pretty Unregistration 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.Unregistration

Methods

pretty :: Unregistration -> Doc ann #

prettyList :: [Unregistration] -> Doc ann #

Pretty UnregistrationParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.UnregistrationParams

Methods

pretty :: UnregistrationParams -> Doc ann #

prettyList :: [UnregistrationParams] -> Doc ann #

Pretty VersionedNotebookDocumentIdentifier 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.VersionedNotebookDocumentIdentifier

Methods

pretty :: VersionedNotebookDocumentIdentifier -> Doc ann #

prettyList :: [VersionedNotebookDocumentIdentifier] -> Doc ann #

Pretty VersionedTextDocumentIdentifier 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.VersionedTextDocumentIdentifier

Methods

pretty :: VersionedTextDocumentIdentifier -> Doc ann #

prettyList :: [VersionedTextDocumentIdentifier] -> Doc ann #

Pretty WatchKind 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.WatchKind

Methods

pretty :: WatchKind -> Doc ann #

prettyList :: [WatchKind] -> Doc ann #

Pretty WillSaveTextDocumentParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.WillSaveTextDocumentParams

Methods

pretty :: WillSaveTextDocumentParams -> Doc ann #

prettyList :: [WillSaveTextDocumentParams] -> Doc ann #

Pretty WindowClientCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.WindowClientCapabilities

Methods

pretty :: WindowClientCapabilities -> Doc ann #

prettyList :: [WindowClientCapabilities] -> Doc ann #

Pretty WorkDoneProgressBegin 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.WorkDoneProgressBegin

Methods

pretty :: WorkDoneProgressBegin -> Doc ann #

prettyList :: [WorkDoneProgressBegin] -> Doc ann #

Pretty WorkDoneProgressCancelParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.WorkDoneProgressCancelParams

Methods

pretty :: WorkDoneProgressCancelParams -> Doc ann #

prettyList :: [WorkDoneProgressCancelParams] -> Doc ann #

Pretty WorkDoneProgressCreateParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.WorkDoneProgressCreateParams

Methods

pretty :: WorkDoneProgressCreateParams -> Doc ann #

prettyList :: [WorkDoneProgressCreateParams] -> Doc ann #

Pretty WorkDoneProgressEnd 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.WorkDoneProgressEnd

Methods

pretty :: WorkDoneProgressEnd -> Doc ann #

prettyList :: [WorkDoneProgressEnd] -> Doc ann #

Pretty WorkDoneProgressOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.WorkDoneProgressOptions

Methods

pretty :: WorkDoneProgressOptions -> Doc ann #

prettyList :: [WorkDoneProgressOptions] -> Doc ann #

Pretty WorkDoneProgressParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.WorkDoneProgressParams

Methods

pretty :: WorkDoneProgressParams -> Doc ann #

prettyList :: [WorkDoneProgressParams] -> Doc ann #

Pretty WorkDoneProgressReport 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.WorkDoneProgressReport

Methods

pretty :: WorkDoneProgressReport -> Doc ann #

prettyList :: [WorkDoneProgressReport] -> Doc ann #

Pretty WorkspaceClientCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.WorkspaceClientCapabilities

Methods

pretty :: WorkspaceClientCapabilities -> Doc ann #

prettyList :: [WorkspaceClientCapabilities] -> Doc ann #

Pretty WorkspaceDiagnosticParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.WorkspaceDiagnosticParams

Methods

pretty :: WorkspaceDiagnosticParams -> Doc ann #

prettyList :: [WorkspaceDiagnosticParams] -> Doc ann #

Pretty WorkspaceDiagnosticReport 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.WorkspaceDiagnosticReport

Methods

pretty :: WorkspaceDiagnosticReport -> Doc ann #

prettyList :: [WorkspaceDiagnosticReport] -> Doc ann #

Pretty WorkspaceDiagnosticReportPartialResult 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.WorkspaceDiagnosticReportPartialResult

Methods

pretty :: WorkspaceDiagnosticReportPartialResult -> Doc ann #

prettyList :: [WorkspaceDiagnosticReportPartialResult] -> Doc ann #

Pretty WorkspaceDocumentDiagnosticReport 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.WorkspaceDocumentDiagnosticReport

Methods

pretty :: WorkspaceDocumentDiagnosticReport -> Doc ann #

prettyList :: [WorkspaceDocumentDiagnosticReport] -> Doc ann #

Pretty WorkspaceEdit 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.WorkspaceEdit

Methods

pretty :: WorkspaceEdit -> Doc ann #

prettyList :: [WorkspaceEdit] -> Doc ann #

Pretty WorkspaceEditClientCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.WorkspaceEditClientCapabilities

Methods

pretty :: WorkspaceEditClientCapabilities -> Doc ann #

prettyList :: [WorkspaceEditClientCapabilities] -> Doc ann #

Pretty WorkspaceFolder 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.WorkspaceFolder

Methods

pretty :: WorkspaceFolder -> Doc ann #

prettyList :: [WorkspaceFolder] -> Doc ann #

Pretty WorkspaceFoldersChangeEvent 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.WorkspaceFoldersChangeEvent

Methods

pretty :: WorkspaceFoldersChangeEvent -> Doc ann #

prettyList :: [WorkspaceFoldersChangeEvent] -> Doc ann #

Pretty WorkspaceFoldersInitializeParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.WorkspaceFoldersInitializeParams

Methods

pretty :: WorkspaceFoldersInitializeParams -> Doc ann #

prettyList :: [WorkspaceFoldersInitializeParams] -> Doc ann #

Pretty WorkspaceFoldersServerCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.WorkspaceFoldersServerCapabilities

Methods

pretty :: WorkspaceFoldersServerCapabilities -> Doc ann #

prettyList :: [WorkspaceFoldersServerCapabilities] -> Doc ann #

Pretty WorkspaceFullDocumentDiagnosticReport 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.WorkspaceFullDocumentDiagnosticReport

Methods

pretty :: WorkspaceFullDocumentDiagnosticReport -> Doc ann #

prettyList :: [WorkspaceFullDocumentDiagnosticReport] -> Doc ann #

Pretty WorkspaceOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.WorkspaceOptions

Methods

pretty :: WorkspaceOptions -> Doc ann #

prettyList :: [WorkspaceOptions] -> Doc ann #

Pretty WorkspaceSymbol 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.WorkspaceSymbol

Methods

pretty :: WorkspaceSymbol -> Doc ann #

prettyList :: [WorkspaceSymbol] -> Doc ann #

Pretty WorkspaceSymbolClientCapabilities 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.WorkspaceSymbolClientCapabilities

Methods

pretty :: WorkspaceSymbolClientCapabilities -> Doc ann #

prettyList :: [WorkspaceSymbolClientCapabilities] -> Doc ann #

Pretty WorkspaceSymbolOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.WorkspaceSymbolOptions

Methods

pretty :: WorkspaceSymbolOptions -> Doc ann #

prettyList :: [WorkspaceSymbolOptions] -> Doc ann #

Pretty WorkspaceSymbolParams 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.WorkspaceSymbolParams

Methods

pretty :: WorkspaceSymbolParams -> Doc ann #

prettyList :: [WorkspaceSymbolParams] -> Doc ann #

Pretty WorkspaceSymbolRegistrationOptions 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.WorkspaceSymbolRegistrationOptions

Methods

pretty :: WorkspaceSymbolRegistrationOptions -> Doc ann #

prettyList :: [WorkspaceSymbolRegistrationOptions] -> Doc ann #

Pretty WorkspaceUnchangedDocumentDiagnosticReport 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.WorkspaceUnchangedDocumentDiagnosticReport

Methods

pretty :: WorkspaceUnchangedDocumentDiagnosticReport -> Doc ann #

prettyList :: [WorkspaceUnchangedDocumentDiagnosticReport] -> Doc ann #

Pretty SomeClientMethod 
Instance details

Defined in Language.LSP.Protocol.Message.Method

Methods

pretty :: SomeClientMethod -> Doc ann #

prettyList :: [SomeClientMethod] -> Doc ann #

Pretty SomeServerMethod 
Instance details

Defined in Language.LSP.Protocol.Message.Method

Methods

pretty :: SomeServerMethod -> Doc ann #

prettyList :: [SomeServerMethod] -> Doc ann #

Pretty SomeRegistration 
Instance details

Defined in Language.LSP.Protocol.Message.Registration

Methods

pretty :: SomeRegistration -> Doc ann #

prettyList :: [SomeRegistration] -> Doc ann #

Pretty SomeUnregistration 
Instance details

Defined in Language.LSP.Protocol.Message.Registration

Methods

pretty :: SomeUnregistration -> Doc ann #

prettyList :: [SomeUnregistration] -> Doc ann #

Pretty NotificationMessage 
Instance details

Defined in Language.LSP.Protocol.Message.Types

Methods

pretty :: NotificationMessage -> Doc ann #

prettyList :: [NotificationMessage] -> Doc ann #

Pretty RequestMessage 
Instance details

Defined in Language.LSP.Protocol.Message.Types

Methods

pretty :: RequestMessage -> Doc ann #

prettyList :: [RequestMessage] -> Doc ann #

Pretty ResponseError 
Instance details

Defined in Language.LSP.Protocol.Message.Types

Methods

pretty :: ResponseError -> Doc ann #

prettyList :: [ResponseError] -> Doc ann #

Pretty ResponseMessage 
Instance details

Defined in Language.LSP.Protocol.Message.Types

Methods

pretty :: ResponseMessage -> Doc ann #

prettyList :: [ResponseMessage] -> Doc ann #

Pretty Null 
Instance details

Defined in Language.LSP.Protocol.Types.Common

Methods

pretty :: Null -> Doc ann #

prettyList :: [Null] -> Doc ann #

Pretty UInt 
Instance details

Defined in Language.LSP.Protocol.Types.Common

Methods

pretty :: UInt -> Doc ann #

prettyList :: [UInt] -> Doc ann #

Pretty NormalizedUri 
Instance details

Defined in Language.LSP.Protocol.Types.Uri

Methods

pretty :: NormalizedUri -> Doc ann #

prettyList :: [NormalizedUri] -> Doc ann #

Pretty Uri 
Instance details

Defined in Language.LSP.Protocol.Types.Uri

Methods

pretty :: Uri -> Doc ann #

prettyList :: [Uri] -> Doc ann #

Pretty Text

Automatically converts all newlines to line.

>>> pretty ("hello\nworld" :: Text)
hello
world

Note that line can be undone by group:

>>> group (pretty ("hello\nworld" :: Text))
hello world

Manually use hardline if you definitely want newlines.

Instance details

Defined in Prettyprinter.Internal

Methods

pretty :: Text -> Doc ann #

prettyList :: [Text] -> Doc ann #

Pretty Text

(lazy Doc instance, identical to the strict version)

Instance details

Defined in Prettyprinter.Internal

Methods

pretty :: Text -> Doc ann #

prettyList :: [Text] -> Doc ann #

Pretty Integer
>>> pretty (2^123 :: Integer)
10633823966279326983230456482242756608
Instance details

Defined in Prettyprinter.Internal

Methods

pretty :: Integer -> Doc ann #

prettyList :: [Integer] -> Doc ann #

Pretty Natural 
Instance details

Defined in Prettyprinter.Internal

Methods

pretty :: Natural -> Doc ann #

prettyList :: [Natural] -> Doc ann #

Pretty ()
>>> pretty ()
()

The argument is not used:

>>> pretty (error "Strict?" :: ())
()
Instance details

Defined in Prettyprinter.Internal

Methods

pretty :: () -> Doc ann #

prettyList :: [()] -> Doc ann #

Pretty Bool
>>> pretty True
True
Instance details

Defined in Prettyprinter.Internal

Methods

pretty :: Bool -> Doc ann #

prettyList :: [Bool] -> Doc ann #

Pretty Char

Instead of (pretty 'n'), consider using line as a more readable alternative.

>>> pretty 'f' <> pretty 'o' <> pretty 'o'
foo
>>> pretty ("string" :: String)
string
Instance details

Defined in Prettyprinter.Internal

Methods

pretty :: Char -> Doc ann #

prettyList :: [Char] -> Doc ann #

Pretty Double
>>> pretty (exp 1 :: Double)
2.71828182845904...
Instance details

Defined in Prettyprinter.Internal

Methods

pretty :: Double -> Doc ann #

prettyList :: [Double] -> Doc ann #

Pretty Float
>>> pretty (pi :: Float)
3.1415927
Instance details

Defined in Prettyprinter.Internal

Methods

pretty :: Float -> Doc ann #

prettyList :: [Float] -> Doc ann #

Pretty Int
>>> pretty (123 :: Int)
123
Instance details

Defined in Prettyprinter.Internal

Methods

pretty :: Int -> Doc ann #

prettyList :: [Int] -> Doc ann #

Pretty Word 
Instance details

Defined in Prettyprinter.Internal

Methods

pretty :: Word -> Doc ann #

prettyList :: [Word] -> Doc ann #

Pretty a => Pretty (Identity a)
>>> pretty (Identity 1)
1
Instance details

Defined in Prettyprinter.Internal

Methods

pretty :: Identity a -> Doc ann #

prettyList :: [Identity a] -> Doc ann #

Pretty a => Pretty (NonEmpty a) 
Instance details

Defined in Prettyprinter.Internal

Methods

pretty :: NonEmpty a -> Doc ann #

prettyList :: [NonEmpty a] -> Doc ann #

Pretty (AString s) 
Instance details

Defined in Language.LSP.Protocol.Types.Singletons

Methods

pretty :: AString s -> Doc ann #

prettyList :: [AString s] -> Doc ann #

Pretty (AnInteger n) 
Instance details

Defined in Language.LSP.Protocol.Types.Singletons

Methods

pretty :: AnInteger n -> Doc ann #

prettyList :: [AnInteger n] -> Doc ann #

Pretty a => Pretty (Maybe a)

Ignore Nothings, print Just contents.

>>> pretty (Just True)
True
>>> braces (pretty (Nothing :: Maybe Bool))
{}
>>> pretty [Just 1, Nothing, Just 3, Nothing]
[1, 3]
Instance details

Defined in Prettyprinter.Internal

Methods

pretty :: Maybe a -> Doc ann #

prettyList :: [Maybe a] -> Doc ann #

Pretty a => Pretty [a]
>>> pretty [1,2,3]
[1, 2, 3]
Instance details

Defined in Prettyprinter.Internal

Methods

pretty :: [a] -> Doc ann #

prettyList :: [[a]] -> Doc ann #

Pretty (LspId m) 
Instance details

Defined in Language.LSP.Protocol.Message.LspId

Methods

pretty :: LspId m -> Doc ann #

prettyList :: [LspId m] -> Doc ann #

Pretty (TRegistration m) 
Instance details

Defined in Language.LSP.Protocol.Message.Registration

Methods

pretty :: TRegistration m -> Doc ann #

prettyList :: [TRegistration m] -> Doc ann #

Pretty (TUnregistration m) 
Instance details

Defined in Language.LSP.Protocol.Message.Registration

Methods

pretty :: TUnregistration m -> Doc ann #

prettyList :: [TUnregistration m] -> Doc ann #

ToJSON (MessageParams m) => Pretty (TNotificationMessage m) 
Instance details

Defined in Language.LSP.Protocol.Message.Types

Methods

pretty :: TNotificationMessage m -> Doc ann #

prettyList :: [TNotificationMessage m] -> Doc ann #

ToJSON (MessageParams m) => Pretty (TRequestMessage m) 
Instance details

Defined in Language.LSP.Protocol.Message.Types

Methods

pretty :: TRequestMessage m -> Doc ann #

prettyList :: [TRequestMessage m] -> Doc ann #

ToJSON (ErrorData m) => Pretty (TResponseError m) 
Instance details

Defined in Language.LSP.Protocol.Message.Types

Methods

pretty :: TResponseError m -> Doc ann #

prettyList :: [TResponseError m] -> Doc ann #

(ToJSON (MessageResult m), ToJSON (ErrorData m)) => Pretty (TResponseMessage m) 
Instance details

Defined in Language.LSP.Protocol.Message.Types

Methods

pretty :: TResponseMessage m -> Doc ann #

prettyList :: [TResponseMessage m] -> Doc ann #

(ToJSON a, ToJSON b) => Pretty (a |? b) 
Instance details

Defined in Language.LSP.Protocol.Types.Common

Methods

pretty :: (a |? b) -> Doc ann #

prettyList :: [a |? b] -> Doc ann #

(Pretty a1, Pretty a2) => Pretty (a1, a2)
>>> pretty (123, "hello")
(123, hello)
Instance details

Defined in Prettyprinter.Internal

Methods

pretty :: (a1, a2) -> Doc ann #

prettyList :: [(a1, a2)] -> Doc ann #

Pretty a => Pretty (Const a b) 
Instance details

Defined in Prettyprinter.Internal

Methods

pretty :: Const a b -> Doc ann #

prettyList :: [Const a b] -> Doc ann #

KnownSymbol s => Pretty (TCustomMessage s f t) 
Instance details

Defined in Language.LSP.Protocol.Message.Types

Methods

pretty :: TCustomMessage s f t -> Doc ann #

prettyList :: [TCustomMessage s f t] -> Doc ann #

(Pretty a1, Pretty a2, Pretty a3) => Pretty (a1, a2, a3)
>>> pretty (123, "hello", False)
(123, hello, False)
Instance details

Defined in Prettyprinter.Internal

Methods

pretty :: (a1, a2, a3) -> Doc ann #

prettyList :: [(a1, a2, a3)] -> Doc ann #

data Range #

Constructors

Range 

Fields

Instances

Instances details
FromJSON Range 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.Range

ToJSON Range 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.Range

Generic Range 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.Range

Associated Types

type Rep Range :: Type -> Type #

Methods

from :: Range -> Rep Range x #

to :: Rep Range x -> Range #

Show Range 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.Range

Methods

showsPrec :: Int -> Range -> ShowS #

show :: Range -> String #

showList :: [Range] -> ShowS #

NFData Range 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.Range

Methods

rnf :: Range -> () #

Eq Range 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.Range

Methods

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

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

Ord Range 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.Range

Methods

compare :: Range -> Range -> Ordering #

(<) :: Range -> Range -> Bool #

(<=) :: Range -> Range -> Bool #

(>) :: Range -> Range -> Bool #

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

max :: Range -> Range -> Range #

min :: Range -> Range -> Range #

MapAge Range Source # 
Instance details

Defined in Development.IDE.Core.UseStale

Methods

mapAgeFrom :: forall (from :: Age) (to :: Age). PositionMap from to -> Tracked to Range -> Maybe (Tracked from Range) Source #

mapAgeTo :: forall (from :: Age) (to :: Age). PositionMap from to -> Tracked from Range -> Maybe (Tracked to Range) Source #

Hashable Range 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.Range

Methods

hashWithSalt :: Int -> Range -> Int #

hash :: Range -> Int #

Pretty Range 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.Range

Methods

pretty :: Range -> Doc ann #

prettyList :: [Range] -> Doc ann #

HasEnd Range Position 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

HasInsert EditRangeWithInsertReplace Range 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

insert :: Lens' EditRangeWithInsertReplace Range

HasInsert InsertReplaceEdit Range 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

insert :: Lens' InsertReplaceEdit Range

HasRange AnnotatedTextEdit Range 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

range :: Lens' AnnotatedTextEdit Range

HasRange CallHierarchyItem Range 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

range :: Lens' CallHierarchyItem Range

HasRange CodeActionParams Range 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

range :: Lens' CodeActionParams Range

HasRange CodeLens Range 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

range :: Lens' CodeLens Range

HasRange ColorInformation Range 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

range :: Lens' ColorInformation Range

HasRange ColorPresentationParams Range 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

range :: Lens' ColorPresentationParams Range

HasRange Diagnostic Range 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

HasRange DocumentHighlight Range 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

range :: Lens' DocumentHighlight Range

HasRange DocumentLink Range 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

range :: Lens' DocumentLink Range

HasRange DocumentRangeFormattingParams Range 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

range :: Lens' DocumentRangeFormattingParams Range

HasRange DocumentSymbol Range 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

range :: Lens' DocumentSymbol Range

HasRange InlayHintParams Range 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

range :: Lens' InlayHintParams Range

HasRange InlineValueEvaluatableExpression Range 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

range :: Lens' InlineValueEvaluatableExpression Range

HasRange InlineValueParams Range 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

range :: Lens' InlineValueParams Range

HasRange InlineValueText Range 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

range :: Lens' InlineValueText Range

HasRange InlineValueVariableLookup Range 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

range :: Lens' InlineValueVariableLookup Range

HasRange Location Range 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

HasRange PrepareRenamePlaceholder Range 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

range :: Lens' PrepareRenamePlaceholder Range

HasRange SelectionRange Range 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

range :: Lens' SelectionRange Range

HasRange SemanticTokensRangeParams Range 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

range :: Lens' SemanticTokensRangeParams Range

HasRange TextDocumentContentChangePartial Range 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

range :: Lens' TextDocumentContentChangePartial Range

HasRange TextEdit Range 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

range :: Lens' TextEdit Range

HasRange TypeHierarchyItem Range 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

range :: Lens' TypeHierarchyItem Range

HasReplace EditRangeWithInsertReplace Range 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

replace :: Lens' EditRangeWithInsertReplace Range

HasReplace InsertReplaceEdit Range 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

replace :: Lens' InsertReplaceEdit Range

HasSelectionRange CallHierarchyItem Range 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

selectionRange :: Lens' CallHierarchyItem Range

HasSelectionRange DocumentSymbol Range 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

selectionRange :: Lens' DocumentSymbol Range

HasSelectionRange TypeHierarchyItem Range 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

selectionRange :: Lens' TypeHierarchyItem Range

HasStart Range Position 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

HasStoppedLocation InlineValueContext Range 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

stoppedLocation :: Lens' InlineValueContext Range

HasTargetRange LocationLink Range 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

targetRange :: Lens' LocationLink Range

HasTargetSelectionRange LocationLink Range 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

targetSelectionRange :: Lens' LocationLink Range

HasEditRange CompletionItemDefaults (Maybe (Range |? EditRangeWithInsertReplace)) 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

editRange :: Lens' CompletionItemDefaults (Maybe (Range |? EditRangeWithInsertReplace))

HasFromRanges CallHierarchyIncomingCall [Range] 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

fromRanges :: Lens' CallHierarchyIncomingCall [Range]

HasFromRanges CallHierarchyOutgoingCall [Range] 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

fromRanges :: Lens' CallHierarchyOutgoingCall [Range]

HasOriginSelectionRange LocationLink (Maybe Range) 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

originSelectionRange :: Lens' LocationLink (Maybe Range)

HasRange Hover (Maybe Range) 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

range :: Lens' Hover (Maybe Range)

HasRanges LinkedEditingRanges [Range] 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

ranges :: Lens' LinkedEditingRanges [Range]

HasSelection ShowDocumentParams (Maybe Range) 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

selection :: Lens' ShowDocumentParams (Maybe Range)

type Rep Range 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.Range

type Rep Range = D1 ('MetaData "Range" "Language.LSP.Protocol.Internal.Types.Range" "lsp-types-2.3.0.0-6bqFZs2MzRL81rzZYRuAwB" 'False) (C1 ('MetaCons "Range" 'PrefixI 'True) (S1 ('MetaSel ('Just "_start") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Position) :*: S1 ('MetaSel ('Just "_end") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Position)))

data NormalizedUri #

Instances

Instances details
Generic NormalizedUri 
Instance details

Defined in Language.LSP.Protocol.Types.Uri

Associated Types

type Rep NormalizedUri :: Type -> Type #

Read NormalizedUri 
Instance details

Defined in Language.LSP.Protocol.Types.Uri

Show NormalizedUri 
Instance details

Defined in Language.LSP.Protocol.Types.Uri

NFData NormalizedUri 
Instance details

Defined in Language.LSP.Protocol.Types.Uri

Methods

rnf :: NormalizedUri -> () #

Eq NormalizedUri 
Instance details

Defined in Language.LSP.Protocol.Types.Uri

Ord NormalizedUri 
Instance details

Defined in Language.LSP.Protocol.Types.Uri

Hashable NormalizedUri 
Instance details

Defined in Language.LSP.Protocol.Types.Uri

Pretty NormalizedUri 
Instance details

Defined in Language.LSP.Protocol.Types.Uri

Methods

pretty :: NormalizedUri -> Doc ann #

prettyList :: [NormalizedUri] -> Doc ann #

HasVfsMap VFS (Map NormalizedUri VirtualFile) 
Instance details

Defined in Language.LSP.VFS

type Rep NormalizedUri 
Instance details

Defined in Language.LSP.Protocol.Types.Uri

type Rep NormalizedUri = D1 ('MetaData "NormalizedUri" "Language.LSP.Protocol.Types.Uri" "lsp-types-2.3.0.0-6bqFZs2MzRL81rzZYRuAwB" 'False) (C1 ('MetaCons "NormalizedUri" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Int) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Text)))

data IdeConfiguration Source #

Lsp client relevant configuration details

data FastResult a Source #

A (maybe) stale result now, and an up to date one later

Constructors

FastResult 

Fields

newtype IdeAction a Source #

IdeActions are used when we want to return a result immediately, even if it is stale Useful for UI actions like hover, completion where we don't want to block.

Run via runIdeAction.

Constructors

IdeAction 

Instances

Instances details
MonadIO IdeAction Source # 
Instance details

Defined in Development.IDE.Core.Shake

Methods

liftIO :: IO a -> IdeAction a #

Applicative IdeAction Source # 
Instance details

Defined in Development.IDE.Core.Shake

Methods

pure :: a -> IdeAction a #

(<*>) :: IdeAction (a -> b) -> IdeAction a -> IdeAction b #

liftA2 :: (a -> b -> c) -> IdeAction a -> IdeAction b -> IdeAction c #

(*>) :: IdeAction a -> IdeAction b -> IdeAction b #

(<*) :: IdeAction a -> IdeAction b -> IdeAction a #

Functor IdeAction Source # 
Instance details

Defined in Development.IDE.Core.Shake

Methods

fmap :: (a -> b) -> IdeAction a -> IdeAction b #

(<$) :: a -> IdeAction b -> IdeAction a #

Monad IdeAction Source # 
Instance details

Defined in Development.IDE.Core.Shake

Methods

(>>=) :: IdeAction a -> (a -> IdeAction b) -> IdeAction b #

(>>) :: IdeAction a -> IdeAction b -> IdeAction b #

return :: a -> IdeAction a #

MonadReader ShakeExtras IdeAction Source # 
Instance details

Defined in Development.IDE.Core.Shake

Semigroup a => Semigroup (IdeAction a) Source # 
Instance details

Defined in Development.IDE.Core.Shake

Methods

(<>) :: IdeAction a -> IdeAction a -> IdeAction a #

sconcat :: NonEmpty (IdeAction a) -> IdeAction a #

stimes :: Integral b => b -> IdeAction a -> IdeAction a #

type IdeRule k v = (RuleResult k ~ v, ShakeValue k, Show v, Typeable v, NFData v) Source #

data IdeState Source #

A Shake database plus persistent store. Can be thought of as storing mappings from (FilePath, k) to RuleResult k.

Instances

Instances details
MonadReader (ReactorChan, IdeState) (ServerM c) Source # 
Instance details

Defined in Development.IDE.LSP.Server

data ShakeExtras Source #

Instances

Instances details
MonadReader ShakeExtras IdeAction Source # 
Instance details

Defined in Development.IDE.Core.Shake

data HscEnvEq Source #

An HscEnv with equality. Two values are considered equal if they are created with the same call to newHscEnvEq or updateHscEnvEq.

Instances

Instances details
Show HscEnvEq Source # 
Instance details

Defined in Development.IDE.Types.HscEnvEq

NFData HscEnvEq Source # 
Instance details

Defined in Development.IDE.Types.HscEnvEq

Methods

rnf :: HscEnvEq -> () #

Eq HscEnvEq Source # 
Instance details

Defined in Development.IDE.Types.HscEnvEq

Hashable HscEnvEq Source # 
Instance details

Defined in Development.IDE.Types.HscEnvEq

Methods

hashWithSalt :: Int -> HscEnvEq -> Int #

hash :: HscEnvEq -> Int #

data TcModuleResult Source #

Contains the typechecked module and the OrigNameCache entry for that module.

Constructors

TcModuleResult 

Fields

Instances

Instances details
Show TcModuleResult Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

NFData TcModuleResult Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Methods

rnf :: TcModuleResult -> () #

data FileOfInterestStatus Source #

Constructors

OnDisk 
Modified 

Fields

Instances

Instances details
Generic FileOfInterestStatus Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Associated Types

type Rep FileOfInterestStatus :: Type -> Type #

Show FileOfInterestStatus Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

NFData FileOfInterestStatus Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Methods

rnf :: FileOfInterestStatus -> () #

Eq FileOfInterestStatus Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Hashable FileOfInterestStatus Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Pretty FileOfInterestStatus Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep FileOfInterestStatus Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep FileOfInterestStatus = D1 ('MetaData "FileOfInterestStatus" "Development.IDE.Core.RuleTypes" "ghcide-2.9.0.0-5fVLSF6BuTDBEO5GZ0xNyi" 'False) (C1 ('MetaCons "OnDisk" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Modified" 'PrefixI 'True) (S1 ('MetaSel ('Just "firstOpen") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Bool)))

data NormalizedFilePath #

Instances

Instances details
IsString NormalizedFilePath 
Instance details

Defined in Language.LSP.Protocol.Types.Uri

Generic NormalizedFilePath 
Instance details

Defined in Language.LSP.Protocol.Types.Uri

Associated Types

type Rep NormalizedFilePath :: Type -> Type #

Show NormalizedFilePath 
Instance details

Defined in Language.LSP.Protocol.Types.Uri

Binary NormalizedFilePath 
Instance details

Defined in Language.LSP.Protocol.Types.Uri

NFData NormalizedFilePath 
Instance details

Defined in Language.LSP.Protocol.Types.Uri

Methods

rnf :: NormalizedFilePath -> () #

Eq NormalizedFilePath 
Instance details

Defined in Language.LSP.Protocol.Types.Uri

Ord NormalizedFilePath 
Instance details

Defined in Language.LSP.Protocol.Types.Uri

Hashable NormalizedFilePath 
Instance details

Defined in Language.LSP.Protocol.Types.Uri

type Rep NormalizedFilePath 
Instance details

Defined in Language.LSP.Protocol.Types.Uri

type Rep NormalizedFilePath = D1 ('MetaData "NormalizedFilePath" "Language.LSP.Protocol.Types.Uri" "lsp-types-2.3.0.0-6bqFZs2MzRL81rzZYRuAwB" 'False) (C1 ('MetaCons "NormalizedFilePath" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 NormalizedUri) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'SourceUnpack 'SourceStrict 'DecidedStrict) (Rec0 Text)))

data GetParsedModule Source #

Constructors

GetParsedModule 

Instances

Instances details
Generic GetParsedModule Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Associated Types

type Rep GetParsedModule :: Type -> Type #

Show GetParsedModule Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

NFData GetParsedModule Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Methods

rnf :: GetParsedModule -> () #

Eq GetParsedModule Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Hashable GetParsedModule Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep GetParsedModule Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep GetParsedModule = D1 ('MetaData "GetParsedModule" "Development.IDE.Core.RuleTypes" "ghcide-2.9.0.0-5fVLSF6BuTDBEO5GZ0xNyi" 'False) (C1 ('MetaCons "GetParsedModule" 'PrefixI 'False) (U1 :: Type -> Type))
type RuleResult GetParsedModule Source #

The parse tree for the file using GetFileContents

Instance details

Defined in Development.IDE.Core.RuleTypes

data GhcSessionIO Source #

Constructors

GhcSessionIO 

Instances

Instances details
Generic GhcSessionIO Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Associated Types

type Rep GhcSessionIO :: Type -> Type #

Show GhcSessionIO Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

NFData GhcSessionIO Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Methods

rnf :: GhcSessionIO -> () #

Eq GhcSessionIO Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Hashable GhcSessionIO Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep GhcSessionIO Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep GhcSessionIO = D1 ('MetaData "GhcSessionIO" "Development.IDE.Core.RuleTypes" "ghcide-2.9.0.0-5fVLSF6BuTDBEO5GZ0xNyi" 'False) (C1 ('MetaCons "GhcSessionIO" 'PrefixI 'False) (U1 :: Type -> Type))
type RuleResult GhcSessionIO Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

data GetClientSettings Source #

Get the client config stored in the ide state

Constructors

GetClientSettings 

Instances

Instances details
Generic GetClientSettings Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Associated Types

type Rep GetClientSettings :: Type -> Type #

Show GetClientSettings Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

NFData GetClientSettings Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Methods

rnf :: GetClientSettings -> () #

Eq GetClientSettings Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Hashable GetClientSettings Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep GetClientSettings Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep GetClientSettings = D1 ('MetaData "GetClientSettings" "Development.IDE.Core.RuleTypes" "ghcide-2.9.0.0-5fVLSF6BuTDBEO5GZ0xNyi" 'False) (C1 ('MetaCons "GetClientSettings" 'PrefixI 'False) (U1 :: Type -> Type))
type RuleResult GetClientSettings Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

newtype GhcSessionDeps Source #

Constructors

GhcSessionDeps_ 

Fields

  • fullModSummary :: Bool

    Load full ModSummary values in the GHC session. Required for interactive evaluation, but leads to more cache invalidations

Bundled Patterns

pattern GhcSessionDeps :: GhcSessionDeps 

Instances

Instances details
Show GhcSessionDeps Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

NFData GhcSessionDeps Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Methods

rnf :: GhcSessionDeps -> () #

Eq GhcSessionDeps Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Hashable GhcSessionDeps Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type RuleResult GhcSessionDeps Source #

A GHC session preloaded with all the dependencies This rule is also responsible for calling ReportImportCycles for the direct dependencies

Instance details

Defined in Development.IDE.Core.RuleTypes

type IdeResult v = ([FileDiagnostic], Maybe v) Source #

The result of an IDE operation. Warnings and errors are in the Diagnostic, and a value is in the Maybe. For operations that throw an error you expect a non-empty list of diagnostics, at least one of which is an error, and a Nothing. For operations that succeed you expect perhaps some warnings and a Just. For operations that depend on other failing operations you may get empty diagnostics and a Nothing, to indicate this phase throws no fresh errors but still failed.

A rule on a file should only return diagnostics for that given file. It should not propagate diagnostic errors through multiple phases.

newtype GetModificationTime Source #

Constructors

GetModificationTime_ 

Fields

Instances

Instances details
Generic GetModificationTime Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Associated Types

type Rep GetModificationTime :: Type -> Type #

Show GetModificationTime Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

NFData GetModificationTime Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Methods

rnf :: GetModificationTime -> () #

Eq GetModificationTime Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Hashable GetModificationTime Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep GetModificationTime Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep GetModificationTime = D1 ('MetaData "GetModificationTime" "Development.IDE.Core.RuleTypes" "ghcide-2.9.0.0-5fVLSF6BuTDBEO5GZ0xNyi" 'True) (C1 ('MetaCons "GetModificationTime_" 'PrefixI 'True) (S1 ('MetaSel ('Just "missingFileDiagnostics") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool)))
type RuleResult GetModificationTime Source #

Get the modification time of a file.

Instance details

Defined in Development.IDE.Core.RuleTypes

data FileVersion Source #

Either the mtime from disk or an LSP version LSP versions always compare as greater than on disk versions

Instances

Instances details
Generic FileVersion Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Associated Types

type Rep FileVersion :: Type -> Type #

Show FileVersion Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

NFData FileVersion Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Methods

rnf :: FileVersion -> () #

Eq FileVersion Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Ord FileVersion Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep FileVersion Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep FileVersion = D1 ('MetaData "FileVersion" "Development.IDE.Core.RuleTypes" "ghcide-2.9.0.0-5fVLSF6BuTDBEO5GZ0xNyi" 'False) (C1 ('MetaCons "ModificationTime" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 POSIXTime)) :+: C1 ('MetaCons "VFSVersion" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Int32)))

type FileDiagnostic = (NormalizedFilePath, ShowDiagnostic, Diagnostic) Source #

Human readable diagnostics for a specific file.

This type packages a pretty printed, human readable error message along with the related source location so that we can display the error on either the console or in the IDE at the right source location.

newtype Uri #

Constructors

Uri 

Fields

Instances

Instances details
FromJSON Uri 
Instance details

Defined in Language.LSP.Protocol.Types.Uri

FromJSONKey Uri 
Instance details

Defined in Language.LSP.Protocol.Types.Uri

ToJSON Uri 
Instance details

Defined in Language.LSP.Protocol.Types.Uri

ToJSONKey Uri 
Instance details

Defined in Language.LSP.Protocol.Types.Uri

Generic Uri 
Instance details

Defined in Language.LSP.Protocol.Types.Uri

Associated Types

type Rep Uri :: Type -> Type #

Methods

from :: Uri -> Rep Uri x #

to :: Rep Uri x -> Uri #

Read Uri 
Instance details

Defined in Language.LSP.Protocol.Types.Uri

Show Uri 
Instance details

Defined in Language.LSP.Protocol.Types.Uri

Methods

showsPrec :: Int -> Uri -> ShowS #

show :: Uri -> String #

showList :: [Uri] -> ShowS #

NFData Uri 
Instance details

Defined in Language.LSP.Protocol.Types.Uri

Methods

rnf :: Uri -> () #

Eq Uri 
Instance details

Defined in Language.LSP.Protocol.Types.Uri

Methods

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

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

Ord Uri 
Instance details

Defined in Language.LSP.Protocol.Types.Uri

Methods

compare :: Uri -> Uri -> Ordering #

(<) :: Uri -> Uri -> Bool #

(<=) :: Uri -> Uri -> Bool #

(>) :: Uri -> Uri -> Bool #

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

max :: Uri -> Uri -> Uri #

min :: Uri -> Uri -> Uri #

Hashable Uri 
Instance details

Defined in Language.LSP.Protocol.Types.Uri

Methods

hashWithSalt :: Int -> Uri -> Int #

hash :: Uri -> Int #

Pretty Uri 
Instance details

Defined in Language.LSP.Protocol.Types.Uri

Methods

pretty :: Uri -> Doc ann #

prettyList :: [Uri] -> Doc ann #

HasDocument NotebookCell Uri 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

document :: Lens' NotebookCell Uri

HasHref CodeDescription Uri 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

href :: Lens' CodeDescription Uri

HasNewUri RenameFile Uri 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

newUri :: Lens' RenameFile Uri

HasOldUri RenameFile Uri 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

oldUri :: Lens' RenameFile Uri

HasTargetUri LocationLink Uri 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

targetUri :: Lens' LocationLink Uri

HasUri CallHierarchyItem Uri 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

uri :: Lens' CallHierarchyItem Uri

HasUri CreateFile Uri 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

uri :: Lens' CreateFile Uri

HasUri DeleteFile Uri 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

uri :: Lens' DeleteFile Uri

HasUri FileEvent Uri 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

uri :: Lens' FileEvent Uri

HasUri Location Uri 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

uri :: Lens' Location Uri

HasUri LocationUriOnly Uri 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

uri :: Lens' LocationUriOnly Uri

HasUri NotebookDocument Uri 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

uri :: Lens' NotebookDocument Uri

HasUri NotebookDocumentIdentifier Uri 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

uri :: Lens' NotebookDocumentIdentifier Uri

HasUri OptionalVersionedTextDocumentIdentifier Uri 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

uri :: Lens' OptionalVersionedTextDocumentIdentifier Uri

HasUri PreviousResultId Uri 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

uri :: Lens' PreviousResultId Uri

HasUri PublishDiagnosticsParams Uri 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

uri :: Lens' PublishDiagnosticsParams Uri

HasUri ShowDocumentParams Uri 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

uri :: Lens' ShowDocumentParams Uri

HasUri TextDocumentIdentifier Uri 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

uri :: Lens' TextDocumentIdentifier Uri

HasUri TextDocumentItem Uri 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

uri :: Lens' TextDocumentItem Uri

HasUri TypeHierarchyItem Uri 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

uri :: Lens' TypeHierarchyItem Uri

HasUri VersionedNotebookDocumentIdentifier Uri 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

uri :: Lens' VersionedNotebookDocumentIdentifier Uri

HasUri VersionedTextDocumentIdentifier Uri 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

uri :: Lens' VersionedTextDocumentIdentifier Uri

HasUri WorkspaceFolder Uri 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

uri :: Lens' WorkspaceFolder Uri

HasUri WorkspaceFullDocumentDiagnosticReport Uri 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

uri :: Lens' WorkspaceFullDocumentDiagnosticReport Uri

HasUri WorkspaceUnchangedDocumentDiagnosticReport Uri 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

uri :: Lens' WorkspaceUnchangedDocumentDiagnosticReport Uri

HasChanges WorkspaceEdit (Maybe (Map Uri [TextEdit])) 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

changes :: Lens' WorkspaceEdit (Maybe (Map Uri [TextEdit]))

HasRelatedDocuments RelatedFullDocumentDiagnosticReport (Maybe (Map Uri (FullDocumentDiagnosticReport |? UnchangedDocumentDiagnosticReport))) 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

relatedDocuments :: Lens' RelatedFullDocumentDiagnosticReport (Maybe (Map Uri (FullDocumentDiagnosticReport |? UnchangedDocumentDiagnosticReport)))

HasRelatedDocuments RelatedUnchangedDocumentDiagnosticReport (Maybe (Map Uri (FullDocumentDiagnosticReport |? UnchangedDocumentDiagnosticReport))) 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

relatedDocuments :: Lens' RelatedUnchangedDocumentDiagnosticReport (Maybe (Map Uri (FullDocumentDiagnosticReport |? UnchangedDocumentDiagnosticReport)))

HasScopeUri ConfigurationItem (Maybe Uri) 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

scopeUri :: Lens' ConfigurationItem (Maybe Uri)

HasTarget DocumentLink (Maybe Uri) 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

target :: Lens' DocumentLink (Maybe Uri)

HasBaseUri RelativePattern (WorkspaceFolder |? Uri) 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

baseUri :: Lens' RelativePattern (WorkspaceFolder |? Uri)

HasRelatedDocuments DocumentDiagnosticReportPartialResult (Map Uri (FullDocumentDiagnosticReport |? UnchangedDocumentDiagnosticReport)) 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

relatedDocuments :: Lens' DocumentDiagnosticReportPartialResult (Map Uri (FullDocumentDiagnosticReport |? UnchangedDocumentDiagnosticReport))

HasRootUri InitializeParams (Uri |? Null) 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

rootUri :: Lens' InitializeParams (Uri |? Null)

HasRootUri UInitializeParams (Uri |? Null) 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

Methods

rootUri :: Lens' UInitializeParams (Uri |? Null)

type Rep Uri 
Instance details

Defined in Language.LSP.Protocol.Types.Uri

type Rep Uri = D1 ('MetaData "Uri" "Language.LSP.Protocol.Types.Uri" "lsp-types-2.3.0.0-6bqFZs2MzRL81rzZYRuAwB" 'True) (C1 ('MetaCons "Uri" 'PrefixI 'True) (S1 ('MetaSel ('Just "getUri") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text)))

data GenerateCore Source #

Constructors

GenerateCore 

Instances

Instances details
Generic GenerateCore Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Associated Types

type Rep GenerateCore :: Type -> Type #

Show GenerateCore Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

NFData GenerateCore Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Methods

rnf :: GenerateCore -> () #

Eq GenerateCore Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Hashable GenerateCore Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep GenerateCore Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep GenerateCore = D1 ('MetaData "GenerateCore" "Development.IDE.Core.RuleTypes" "ghcide-2.9.0.0-5fVLSF6BuTDBEO5GZ0xNyi" 'False) (C1 ('MetaCons "GenerateCore" 'PrefixI 'False) (U1 :: Type -> Type))
type RuleResult GenerateCore Source #

Convert to Core, requires TypeCheck*

Instance details

Defined in Development.IDE.Core.RuleTypes

data GetHieAst Source #

Constructors

GetHieAst 

Instances

Instances details
Generic GetHieAst Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Associated Types

type Rep GetHieAst :: Type -> Type #

Show GetHieAst Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

NFData GetHieAst Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Methods

rnf :: GetHieAst -> () #

Eq GetHieAst Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Hashable GetHieAst Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep GetHieAst Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep GetHieAst = D1 ('MetaData "GetHieAst" "Development.IDE.Core.RuleTypes" "ghcide-2.9.0.0-5fVLSF6BuTDBEO5GZ0xNyi" 'False) (C1 ('MetaCons "GetHieAst" 'PrefixI 'False) (U1 :: Type -> Type))
type RuleResult GetHieAst Source #

The uncompressed HieAST

Instance details

Defined in Development.IDE.Core.RuleTypes

data TypeCheck Source #

Constructors

TypeCheck 

Instances

Instances details
Generic TypeCheck Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Associated Types

type Rep TypeCheck :: Type -> Type #

Show TypeCheck Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

NFData TypeCheck Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Methods

rnf :: TypeCheck -> () #

Eq TypeCheck Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Hashable TypeCheck Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep TypeCheck Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep TypeCheck = D1 ('MetaData "TypeCheck" "Development.IDE.Core.RuleTypes" "ghcide-2.9.0.0-5fVLSF6BuTDBEO5GZ0xNyi" 'False) (C1 ('MetaCons "TypeCheck" 'PrefixI 'False) (U1 :: Type -> Type))
type RuleResult TypeCheck Source #

The type checked version of this file, requires TypeCheck+

Instance details

Defined in Development.IDE.Core.RuleTypes

data IdeGhcSession Source #

Constructors

IdeGhcSession 

Fields

Instances

Instances details
Show IdeGhcSession Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

NFData IdeGhcSession Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Methods

rnf :: IdeGhcSession -> () #

data GhcSession Source #

Constructors

GhcSession 

Instances

Instances details
Generic GhcSession Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Associated Types

type Rep GhcSession :: Type -> Type #

Show GhcSession Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

NFData GhcSession Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Methods

rnf :: GhcSession -> () #

Eq GhcSession Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Hashable GhcSession Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep GhcSession Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep GhcSession = D1 ('MetaData "GhcSession" "Development.IDE.Core.RuleTypes" "ghcide-2.9.0.0-5fVLSF6BuTDBEO5GZ0xNyi" 'False) (C1 ('MetaCons "GhcSession" 'PrefixI 'False) (U1 :: Type -> Type))
type RuleResult GhcSession Source #

A GHC session that we reuse.

Instance details

Defined in Development.IDE.Core.RuleTypes

data ShowDiagnostic Source #

Defines whether a particular diagnostic should be reported back to the user.

One important use case is "missing signature" code lenses, for which we need to enable the corresponding warning during type checking. However, we do not want to show the warning unless the programmer asks for it (#261).

Constructors

ShowDiag

Report back to the user

HideDiag

Hide from user

data DiagnosticSeverity #

Instances

Instances details
FromJSON DiagnosticSeverity 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DiagnosticSeverity

ToJSON DiagnosticSeverity 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DiagnosticSeverity

Generic DiagnosticSeverity 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DiagnosticSeverity

Associated Types

type Rep DiagnosticSeverity :: Type -> Type #

Show DiagnosticSeverity 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DiagnosticSeverity

NFData DiagnosticSeverity 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DiagnosticSeverity

Methods

rnf :: DiagnosticSeverity -> () #

Eq DiagnosticSeverity 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DiagnosticSeverity

Ord DiagnosticSeverity 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DiagnosticSeverity

Hashable DiagnosticSeverity 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DiagnosticSeverity

LspEnum DiagnosticSeverity 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DiagnosticSeverity

Associated Types

type EnumBaseType DiagnosticSeverity

Pretty DiagnosticSeverity 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DiagnosticSeverity

HasSeverity Diagnostic (Maybe DiagnosticSeverity) 
Instance details

Defined in Language.LSP.Protocol.Types.Lens

type Rep DiagnosticSeverity 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DiagnosticSeverity

type Rep DiagnosticSeverity = D1 ('MetaData "DiagnosticSeverity" "Language.LSP.Protocol.Internal.Types.DiagnosticSeverity" "lsp-types-2.3.0.0-6bqFZs2MzRL81rzZYRuAwB" 'False) ((C1 ('MetaCons "DiagnosticSeverity_Error" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "DiagnosticSeverity_Warning" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "DiagnosticSeverity_Information" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "DiagnosticSeverity_Hint" 'PrefixI 'False) (U1 :: Type -> Type)))
type EnumBaseType DiagnosticSeverity 
Instance details

Defined in Language.LSP.Protocol.Internal.Types.DiagnosticSeverity

type EnumBaseType DiagnosticSeverity = UInt

type IdeResultNoDiagnosticsEarlyCutoff v = (Maybe ByteString, Maybe v) Source #

an IdeResult with a fingerprint

data GetFileExists Source #

Constructors

GetFileExists 

Instances

Instances details
Generic GetFileExists Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Associated Types

type Rep GetFileExists :: Type -> Type #

Show GetFileExists Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

NFData GetFileExists Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Methods

rnf :: GetFileExists -> () #

Eq GetFileExists Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Hashable GetFileExists Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep GetFileExists Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep GetFileExists = D1 ('MetaData "GetFileExists" "Development.IDE.Core.RuleTypes" "ghcide-2.9.0.0-5fVLSF6BuTDBEO5GZ0xNyi" 'False) (C1 ('MetaCons "GetFileExists" 'PrefixI 'False) (U1 :: Type -> Type))
type RuleResult GetFileExists Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

newtype ImportMap Source #

Constructors

ImportMap 

Fields

Instances

Instances details
Show ImportMap Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

NFData ImportMap Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Methods

rnf :: ImportMap -> () #

data GetLocatedImports Source #

Constructors

GetLocatedImports 

Instances

Instances details
Generic GetLocatedImports Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Associated Types

type Rep GetLocatedImports :: Type -> Type #

Show GetLocatedImports Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

NFData GetLocatedImports Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Methods

rnf :: GetLocatedImports -> () #

Eq GetLocatedImports Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Hashable GetLocatedImports Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep GetLocatedImports Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep GetLocatedImports = D1 ('MetaData "GetLocatedImports" "Development.IDE.Core.RuleTypes" "ghcide-2.9.0.0-5fVLSF6BuTDBEO5GZ0xNyi" 'False) (C1 ('MetaCons "GetLocatedImports" 'PrefixI 'False) (U1 :: Type -> Type))
type RuleResult GetLocatedImports Source #

Resolve the imports in a module to the file path of a module in the same package

Instance details

Defined in Development.IDE.Core.RuleTypes

data GetKnownTargets Source #

Constructors

GetKnownTargets 

Instances

Instances details
Generic GetKnownTargets Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Associated Types

type Rep GetKnownTargets :: Type -> Type #

Show GetKnownTargets Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

NFData GetKnownTargets Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Methods

rnf :: GetKnownTargets -> () #

Eq GetKnownTargets Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Ord GetKnownTargets Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Hashable GetKnownTargets Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep GetKnownTargets Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep GetKnownTargets = D1 ('MetaData "GetKnownTargets" "Development.IDE.Core.RuleTypes" "ghcide-2.9.0.0-5fVLSF6BuTDBEO5GZ0xNyi" 'False) (C1 ('MetaCons "GetKnownTargets" 'PrefixI 'False) (U1 :: Type -> Type))
type RuleResult GetKnownTargets Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

data LinkableType Source #

Instances

Instances details
Generic LinkableType Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Associated Types

type Rep LinkableType :: Type -> Type #

Show LinkableType Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

NFData LinkableType Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Methods

rnf :: LinkableType -> () #

Eq LinkableType Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Ord LinkableType Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Hashable LinkableType Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep LinkableType Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep LinkableType = D1 ('MetaData "LinkableType" "Development.IDE.Core.RuleTypes" "ghcide-2.9.0.0-5fVLSF6BuTDBEO5GZ0xNyi" 'False) (C1 ('MetaCons "ObjectLinkable" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BCOLinkable" 'PrefixI 'False) (U1 :: Type -> Type))

data GetParsedModuleWithComments Source #

Instances

Instances details
Generic GetParsedModuleWithComments Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Associated Types

type Rep GetParsedModuleWithComments :: Type -> Type #

Show GetParsedModuleWithComments Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

NFData GetParsedModuleWithComments Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Eq GetParsedModuleWithComments Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Hashable GetParsedModuleWithComments Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep GetParsedModuleWithComments Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep GetParsedModuleWithComments = D1 ('MetaData "GetParsedModuleWithComments" "Development.IDE.Core.RuleTypes" "ghcide-2.9.0.0-5fVLSF6BuTDBEO5GZ0xNyi" 'False) (C1 ('MetaCons "GetParsedModuleWithComments" 'PrefixI 'False) (U1 :: Type -> Type))
type RuleResult GetParsedModuleWithComments Source #

The parse tree for the file using GetFileContents, all comments included using Opt_KeepRawTokenStream

Instance details

Defined in Development.IDE.Core.RuleTypes

data GetModuleGraph Source #

Constructors

GetModuleGraph 

Instances

Instances details
Generic GetModuleGraph Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Associated Types

type Rep GetModuleGraph :: Type -> Type #

Show GetModuleGraph Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

NFData GetModuleGraph Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Methods

rnf :: GetModuleGraph -> () #

Eq GetModuleGraph Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Hashable GetModuleGraph Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep GetModuleGraph Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep GetModuleGraph = D1 ('MetaData "GetModuleGraph" "Development.IDE.Core.RuleTypes" "ghcide-2.9.0.0-5fVLSF6BuTDBEO5GZ0xNyi" 'False) (C1 ('MetaCons "GetModuleGraph" 'PrefixI 'False) (U1 :: Type -> Type))
type RuleResult GetModuleGraph Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

data GetLinkable Source #

Constructors

GetLinkable 

Instances

Instances details
Generic GetLinkable Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Associated Types

type Rep GetLinkable :: Type -> Type #

Show GetLinkable Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

NFData GetLinkable Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Methods

rnf :: GetLinkable -> () #

Eq GetLinkable Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Hashable GetLinkable Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep GetLinkable Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep GetLinkable = D1 ('MetaData "GetLinkable" "Development.IDE.Core.RuleTypes" "ghcide-2.9.0.0-5fVLSF6BuTDBEO5GZ0xNyi" 'False) (C1 ('MetaCons "GetLinkable" 'PrefixI 'False) (U1 :: Type -> Type))
type RuleResult GetLinkable Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

data LinkableResult Source #

Constructors

LinkableResult 

Fields

Instances

Instances details
Show LinkableResult Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

NFData LinkableResult Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Methods

rnf :: LinkableResult -> () #

data GetImportMap Source #

Constructors

GetImportMap 

Instances

Instances details
Generic GetImportMap Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Associated Types

type Rep GetImportMap :: Type -> Type #

Show GetImportMap Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

NFData GetImportMap Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Methods

rnf :: GetImportMap -> () #

Eq GetImportMap Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Hashable GetImportMap Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep GetImportMap Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep GetImportMap = D1 ('MetaData "GetImportMap" "Development.IDE.Core.RuleTypes" "ghcide-2.9.0.0-5fVLSF6BuTDBEO5GZ0xNyi" 'False) (C1 ('MetaCons "GetImportMap" 'PrefixI 'False) (U1 :: Type -> Type))
type RuleResult GetImportMap Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

data HiFileResult Source #

Constructors

HiFileResult 

Fields

Instances

Instances details
Show HiFileResult Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

NFData HiFileResult Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Methods

rnf :: HiFileResult -> () #

data HieAstResult Source #

Save the uncompressed AST here, we compress it just before writing to disk

Constructors

forall a.Typeable a => HAR 

Fields

Instances

Instances details
Show HieAstResult Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

NFData HieAstResult Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Methods

rnf :: HieAstResult -> () #

data HieKind a where Source #

Instances

Instances details
NFData (HieKind a) Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Methods

rnf :: HieKind a -> () #

data GetBindings Source #

Constructors

GetBindings 

Instances

Instances details
Generic GetBindings Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Associated Types

type Rep GetBindings :: Type -> Type #

Show GetBindings Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

NFData GetBindings Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Methods

rnf :: GetBindings -> () #

Eq GetBindings Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Hashable GetBindings Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep GetBindings Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep GetBindings = D1 ('MetaData "GetBindings" "Development.IDE.Core.RuleTypes" "ghcide-2.9.0.0-5fVLSF6BuTDBEO5GZ0xNyi" 'False) (C1 ('MetaCons "GetBindings" 'PrefixI 'False) (U1 :: Type -> Type))
type RuleResult GetBindings Source #

A IntervalMap telling us what is in scope at each point

Instance details

Defined in Development.IDE.Core.RuleTypes

data GetDocMap Source #

Constructors

GetDocMap 

Instances

Instances details
Generic GetDocMap Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Associated Types

type Rep GetDocMap :: Type -> Type #

Show GetDocMap Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

NFData GetDocMap Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Methods

rnf :: GetDocMap -> () #

Eq GetDocMap Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Hashable GetDocMap Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep GetDocMap Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep GetDocMap = D1 ('MetaData "GetDocMap" "Development.IDE.Core.RuleTypes" "ghcide-2.9.0.0-5fVLSF6BuTDBEO5GZ0xNyi" 'False) (C1 ('MetaCons "GetDocMap" 'PrefixI 'False) (U1 :: Type -> Type))
type RuleResult GetDocMap Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

data ReportImportCycles Source #

Constructors

ReportImportCycles 

Instances

Instances details
Generic ReportImportCycles Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Associated Types

type Rep ReportImportCycles :: Type -> Type #

Show ReportImportCycles Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

NFData ReportImportCycles Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Methods

rnf :: ReportImportCycles -> () #

Eq ReportImportCycles Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Hashable ReportImportCycles Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep ReportImportCycles Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep ReportImportCycles = D1 ('MetaData "ReportImportCycles" "Development.IDE.Core.RuleTypes" "ghcide-2.9.0.0-5fVLSF6BuTDBEO5GZ0xNyi" 'False) (C1 ('MetaCons "ReportImportCycles" 'PrefixI 'False) (U1 :: Type -> Type))
type RuleResult ReportImportCycles Source #

This rule is used to report import cycles. It depends on GetModuleGraph. We cannot report the cycles directly from GetModuleGraph since we can only report diagnostics for the current file.

Instance details

Defined in Development.IDE.Core.RuleTypes

data GetModIfaceFromDisk Source #

Constructors

GetModIfaceFromDisk 

Instances

Instances details
Generic GetModIfaceFromDisk Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Associated Types

type Rep GetModIfaceFromDisk :: Type -> Type #

Show GetModIfaceFromDisk Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

NFData GetModIfaceFromDisk Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Methods

rnf :: GetModIfaceFromDisk -> () #

Eq GetModIfaceFromDisk Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Hashable GetModIfaceFromDisk Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep GetModIfaceFromDisk Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep GetModIfaceFromDisk = D1 ('MetaData "GetModIfaceFromDisk" "Development.IDE.Core.RuleTypes" "ghcide-2.9.0.0-5fVLSF6BuTDBEO5GZ0xNyi" 'False) (C1 ('MetaCons "GetModIfaceFromDisk" 'PrefixI 'False) (U1 :: Type -> Type))
type RuleResult GetModIfaceFromDisk Source #

Read the module interface file from disk. Throws an error for VFS files. This is an internal rule, use GetModIface instead.

Instance details

Defined in Development.IDE.Core.RuleTypes

data GetModIfaceFromDiskAndIndex Source #

Instances

Instances details
Generic GetModIfaceFromDiskAndIndex Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Associated Types

type Rep GetModIfaceFromDiskAndIndex :: Type -> Type #

Show GetModIfaceFromDiskAndIndex Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

NFData GetModIfaceFromDiskAndIndex Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Eq GetModIfaceFromDiskAndIndex Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Hashable GetModIfaceFromDiskAndIndex Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep GetModIfaceFromDiskAndIndex Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep GetModIfaceFromDiskAndIndex = D1 ('MetaData "GetModIfaceFromDiskAndIndex" "Development.IDE.Core.RuleTypes" "ghcide-2.9.0.0-5fVLSF6BuTDBEO5GZ0xNyi" 'False) (C1 ('MetaCons "GetModIfaceFromDiskAndIndex" 'PrefixI 'False) (U1 :: Type -> Type))
type RuleResult GetModIfaceFromDiskAndIndex Source #

GetModIfaceFromDisk and index the `.hie` file into the database. This is an internal rule, use GetModIface instead.

Instance details

Defined in Development.IDE.Core.RuleTypes

data GetModIface Source #

Constructors

GetModIface 

Instances

Instances details
Generic GetModIface Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Associated Types

type Rep GetModIface :: Type -> Type #

Show GetModIface Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

NFData GetModIface Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Methods

rnf :: GetModIface -> () #

Eq GetModIface Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Hashable GetModIface Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep GetModIface Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep GetModIface = D1 ('MetaData "GetModIface" "Development.IDE.Core.RuleTypes" "ghcide-2.9.0.0-5fVLSF6BuTDBEO5GZ0xNyi" 'False) (C1 ('MetaCons "GetModIface" 'PrefixI 'False) (U1 :: Type -> Type))
type RuleResult GetModIface Source #

Get a module interface details, either from an interface file or a typechecked module

Instance details

Defined in Development.IDE.Core.RuleTypes

data GetFileContents Source #

Constructors

GetFileContents 

Instances

Instances details
Generic GetFileContents Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Associated Types

type Rep GetFileContents :: Type -> Type #

Show GetFileContents Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

NFData GetFileContents Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Methods

rnf :: GetFileContents -> () #

Eq GetFileContents Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Hashable GetFileContents Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep GetFileContents Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep GetFileContents = D1 ('MetaData "GetFileContents" "Development.IDE.Core.RuleTypes" "ghcide-2.9.0.0-5fVLSF6BuTDBEO5GZ0xNyi" 'False) (C1 ('MetaCons "GetFileContents" 'PrefixI 'False) (U1 :: Type -> Type))
type RuleResult GetFileContents Source #

Get the contents of a file, either dirty (if the buffer is modified) or Nothing to mean use from disk.

Instance details

Defined in Development.IDE.Core.RuleTypes

data AddWatchedFile Source #

Constructors

AddWatchedFile 

Instances

Instances details
Generic AddWatchedFile Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Associated Types

type Rep AddWatchedFile :: Type -> Type #

Show AddWatchedFile Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

NFData AddWatchedFile Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Methods

rnf :: AddWatchedFile -> () #

Eq AddWatchedFile Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Hashable AddWatchedFile Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep AddWatchedFile Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep AddWatchedFile = D1 ('MetaData "AddWatchedFile" "Development.IDE.Core.RuleTypes" "ghcide-2.9.0.0-5fVLSF6BuTDBEO5GZ0xNyi" 'False) (C1 ('MetaCons "AddWatchedFile" 'PrefixI 'False) (U1 :: Type -> Type))
type RuleResult AddWatchedFile Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

data IsFileOfInterestResult Source #

Instances

Instances details
Generic IsFileOfInterestResult Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Associated Types

type Rep IsFileOfInterestResult :: Type -> Type #

Show IsFileOfInterestResult Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

NFData IsFileOfInterestResult Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Methods

rnf :: IsFileOfInterestResult -> () #

Eq IsFileOfInterestResult Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Hashable IsFileOfInterestResult Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep IsFileOfInterestResult Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep IsFileOfInterestResult = D1 ('MetaData "IsFileOfInterestResult" "Development.IDE.Core.RuleTypes" "ghcide-2.9.0.0-5fVLSF6BuTDBEO5GZ0xNyi" 'False) (C1 ('MetaCons "NotFOI" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "IsFOI" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 FileOfInterestStatus)))

data IsFileOfInterest Source #

Constructors

IsFileOfInterest 

Instances

Instances details
Generic IsFileOfInterest Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Associated Types

type Rep IsFileOfInterest :: Type -> Type #

Show IsFileOfInterest Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

NFData IsFileOfInterest Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Methods

rnf :: IsFileOfInterest -> () #

Eq IsFileOfInterest Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Hashable IsFileOfInterest Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep IsFileOfInterest Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep IsFileOfInterest = D1 ('MetaData "IsFileOfInterest" "Development.IDE.Core.RuleTypes" "ghcide-2.9.0.0-5fVLSF6BuTDBEO5GZ0xNyi" 'False) (C1 ('MetaCons "IsFileOfInterest" 'PrefixI 'False) (U1 :: Type -> Type))
type RuleResult IsFileOfInterest Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

data ModSummaryResult Source #

Constructors

ModSummaryResult 

Fields

Instances

Instances details
Show ModSummaryResult Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

NFData ModSummaryResult Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Methods

rnf :: ModSummaryResult -> () #

data GetModSummary Source #

Constructors

GetModSummary 

Instances

Instances details
Generic GetModSummary Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Associated Types

type Rep GetModSummary :: Type -> Type #

Show GetModSummary Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

NFData GetModSummary Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Methods

rnf :: GetModSummary -> () #

Eq GetModSummary Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Hashable GetModSummary Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep GetModSummary Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep GetModSummary = D1 ('MetaData "GetModSummary" "Development.IDE.Core.RuleTypes" "ghcide-2.9.0.0-5fVLSF6BuTDBEO5GZ0xNyi" 'False) (C1 ('MetaCons "GetModSummary" 'PrefixI 'False) (U1 :: Type -> Type))
type RuleResult GetModSummary Source #

Generate a ModSummary that has enough information to be used to get .hi and .hie files. without needing to parse the entire source

Instance details

Defined in Development.IDE.Core.RuleTypes

data GetModSummaryWithoutTimestamps Source #

Instances

Instances details
Generic GetModSummaryWithoutTimestamps Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Associated Types

type Rep GetModSummaryWithoutTimestamps :: Type -> Type #

Show GetModSummaryWithoutTimestamps Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

NFData GetModSummaryWithoutTimestamps Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Eq GetModSummaryWithoutTimestamps Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Hashable GetModSummaryWithoutTimestamps Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep GetModSummaryWithoutTimestamps Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep GetModSummaryWithoutTimestamps = D1 ('MetaData "GetModSummaryWithoutTimestamps" "Development.IDE.Core.RuleTypes" "ghcide-2.9.0.0-5fVLSF6BuTDBEO5GZ0xNyi" 'False) (C1 ('MetaCons "GetModSummaryWithoutTimestamps" 'PrefixI 'False) (U1 :: Type -> Type))
type RuleResult GetModSummaryWithoutTimestamps Source #

Generate a ModSummary with the timestamps and preprocessed content elided, for more successful early cutoff

Instance details

Defined in Development.IDE.Core.RuleTypes

data NeedsCompilation Source #

Constructors

NeedsCompilation 

Instances

Instances details
Generic NeedsCompilation Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Associated Types

type Rep NeedsCompilation :: Type -> Type #

Show NeedsCompilation Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

NFData NeedsCompilation Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Methods

rnf :: NeedsCompilation -> () #

Eq NeedsCompilation Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

Hashable NeedsCompilation Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep NeedsCompilation Source # 
Instance details

Defined in Development.IDE.Core.RuleTypes

type Rep NeedsCompilation = D1 ('MetaData "NeedsCompilation" "Development.IDE.Core.RuleTypes" "ghcide-2.9.0.0-5fVLSF6BuTDBEO5GZ0xNyi" 'False) (C1 ('MetaCons "NeedsCompilation" 'PrefixI 'False) (U1 :: Type -> Type))
type RuleResult NeedsCompilation Source #

Does this module need to be compiled?

Instance details

Defined in Development.IDE.Core.RuleTypes

(<>) :: Semigroup a => a -> a -> a infixr 6 #

An associative operation.

>>> [1,2,3] <> [4,5,6]
[1,2,3,4,5,6]

list :: [Doc ann] -> Doc ann #

Haskell-inspired variant of encloseSep with braces and comma as separator.

>>> let doc = list (map pretty [1,20,300,4000])
>>> putDocW 80 doc
[1, 20, 300, 4000]
>>> putDocW 10 doc
[ 1
, 20
, 300
, 4000 ]

comma :: Doc ann #

>>> comma
,

colon :: Doc ann #

>>> colon
:

(<+>) :: Doc ann -> Doc ann -> Doc ann infixr 6 #

(x <+> y) concatenates document x and y with a space in between.

>>> "hello" <+> "world"
hello world
x <+> y = x <> space <> y

brackets :: Doc ann -> Doc ann #

>>> brackets "·"
[·]

indent #

Arguments

:: Int

Number of spaces to increase indentation by

-> Doc ann 
-> Doc ann 

(indent i x) indents document x by i columns, starting from the current cursor position.

>>> let doc = reflow "The indent function indents these words!"
>>> putDocW 24 ("prefix" <> indent 4 doc)
prefix    The indent
          function
          indents these
          words!
indent i d = hang i ({i spaces} <> d)

space :: Doc ann #

>>> "a" <> space <> "b"
a b

This is mostly used via <+>,

>>> "a" <+> "b"
a b

group :: Doc ann -> Doc ann #

(group x) tries laying out x into a single line by removing the contained line breaks; if this does not fit the page, or when a hardline within x prevents it from being flattened, x is laid out without any changes.

The group function is key to layouts that adapt to available space nicely.

See vcat, line, or flatAlt for examples that are related, or make good use of it.

fill #

Arguments

:: Int

Append spaces until the document is at least this wide

-> Doc ann 
-> Doc ann 

(fill i x) lays out the document x. It then appends spaces until the width is equal to i. If the width of x is already larger, nothing is appended.

This function is quite useful in practice to output a list of bindings:

>>> let types = [("empty","Doc"), ("nest","Int -> Doc -> Doc"), ("fillSep","[Doc] -> Doc")]
>>> let ptype (name, tp) = fill 5 (pretty name) <+> "::" <+> pretty tp
>>> "let" <+> align (vcat (map ptype types))
let empty :: Doc
    nest  :: Int -> Doc -> Doc
    fillSep :: [Doc] -> Doc

parens :: Doc ann -> Doc ann #

>>> parens "·"
(·)

cfilter :: (a -> Bool) -> Recorder a -> Recorder a #

cmap :: (a -> b) -> Recorder b -> Recorder a #

pipe :: Doc ann #

>>> pipe
|

fuse :: FusionDepth -> Doc ann -> Doc ann #

(fuse depth doc) combines text nodes so they can be rendered more efficiently. A fused document is always laid out identical to its unfused version.

When laying a Document out to a SimpleDocStream, every component of the input is translated directly to the simpler output format. This sometimes yields undesirable chunking when many pieces have been concatenated together.

For example

>>> "a" <> "b" <> pretty 'c' <> "d"
abcd

results in a chain of four entries in a SimpleDocStream, although this is fully equivalent to the tightly packed

>>> "abcd" :: Doc ann
abcd

which is only a single SimpleDocStream entry, and can be processed faster.

It is therefore a good idea to run fuse on concatenations of lots of small strings that are used many times:

>>> let oftenUsed = fuse Shallow ("a" <> "b" <> pretty 'c' <> "d")
>>> hsep (replicate 5 oftenUsed)
abcd abcd abcd abcd abcd

line :: Doc ann #

The line document advances to the next line and indents to the current nesting level.

>>> let doc = "lorem ipsum" <> line <> "dolor sit amet"
>>> doc
lorem ipsum
dolor sit amet

line behaves like space if the line break is undone by group:

>>> group doc
lorem ipsum dolor sit amet

column :: (Int -> Doc ann) -> Doc ann #

Layout a document depending on which column it starts at. align is implemented in terms of column.

>>> column (\l -> "Columns are" <+> pretty l <> "-based.")
Columns are 0-based.
>>> let doc = "prefix" <+> column (\l -> "| <- column" <+> pretty l)
>>> vsep [indent n doc | n <- [0,4,8]]
prefix | <- column 7
    prefix | <- column 11
        prefix | <- column 15

equals :: Doc ann #

>>> equals
=

nest #

Arguments

:: Int

Change of nesting level

-> Doc ann 
-> Doc ann 

(nest i x) lays out the document x with the current nesting level (indentation of the following lines) increased by i. Negative values are allowed, and decrease the nesting level accordingly.

>>> vsep [nest 4 (vsep ["lorem", "ipsum", "dolor"]), "sit", "amet"]
lorem
    ipsum
    dolor
sit
amet

See also

  • hang (nest relative to current cursor position instead of current nesting level)
  • align (set nesting level to current cursor position)
  • indent (increase indentation on the spot, padding with spaces).

tupled :: [Doc ann] -> Doc ann #

Haskell-inspired variant of encloseSep with parentheses and comma as separator.

>>> let doc = tupled (map pretty [1,20,300,4000])
>>> putDocW 80 doc
(1, 20, 300, 4000)
>>> putDocW 10 doc
( 1
, 20
, 300
, 4000 )

semi :: Doc ann #

>>> semi
;

lparen :: Doc ann #

>>> lparen
(

rparen :: Doc ann #

>>> rparen
)

lbrace :: Doc ann #

>>> lbrace
{

rbrace :: Doc ann #

>>> rbrace
}

squotes :: Doc ann -> Doc ann #

>>> squotes "·"
'·'

braces :: Doc ann -> Doc ann #

>>> braces "·"
{·}

hcat :: [Doc ann] -> Doc ann #

(hcat xs) concatenates all documents xs horizontally with <> (i.e. without any spacing).

It is provided only for consistency, since it is identical to mconcat.

>>> let docs = Util.words "lorem ipsum dolor"
>>> hcat docs
loremipsumdolor

hsep :: [Doc ann] -> Doc ann #

(hsep xs) concatenates all documents xs horizontally with <+>, i.e. it puts a space between all entries.

>>> let docs = Util.words "lorem ipsum dolor sit amet"
>>> hsep docs
lorem ipsum dolor sit amet

hsep does not introduce line breaks on its own, even when the page is too narrow:

>>> putDocW 5 (hsep docs)
lorem ipsum dolor sit amet

For automatic line breaks, consider using fillSep instead.

vcat :: [Doc ann] -> Doc ann #

(vcat xs) vertically concatenates the documents xs. If it is grouped, the line breaks are removed.

In other words vcat is like vsep, with newlines removed instead of replaced by spaces.

>>> let docs = Util.words "lorem ipsum dolor"
>>> vcat docs
lorem
ipsum
dolor
>>> group (vcat docs)
loremipsumdolor

Since grouping a vcat is rather common, cat is a built-in shortcut for it.

hang #

Arguments

:: Int

Change of nesting level, relative to the start of the first line

-> Doc ann 
-> Doc ann 

(hang i x) lays out the document x with a nesting level set to the current column plus i. Negative values are allowed, and decrease the nesting level accordingly.

>>> let doc = reflow "Indenting these words with hang"
>>> putDocW 24 ("prefix" <+> hang 4 doc)
prefix Indenting these
           words with
           hang

This differs from nest, which is based on the current nesting level plus i. When you're not sure, try the more efficient nest first. In our example, this would yield

>>> let doc = reflow "Indenting these words with nest"
>>> putDocW 24 ("prefix" <+> nest 4 doc)
prefix Indenting these
    words with nest
hang i doc = align (nest i doc)

punctuate #

Arguments

:: Doc ann

Punctuation, e.g. comma

-> [Doc ann] 
-> [Doc ann] 

(punctuate p xs) appends p to all but the last document in xs.

>>> let docs = punctuate comma (Util.words "lorem ipsum dolor sit amet")
>>> putDocW 80 (hsep docs)
lorem, ipsum, dolor, sit, amet

The separators are put at the end of the entries, which we can see if we position the result vertically:

>>> putDocW 20 (vsep docs)
lorem,
ipsum,
dolor,
sit,
amet

If you want put the commas in front of their elements instead of at the end, you should use tupled or, in general, encloseSep.

sep :: [Doc ann] -> Doc ann #

(sep xs) tries laying out the documents xs separated with spaces, and if this does not fit the page, separates them with newlines. This is what differentiates it from vsep, which always lays out its contents beneath each other.

>>> let doc = "prefix" <+> sep ["text", "to", "lay", "out"]
>>> putDocW 80 doc
prefix text to lay out

With a narrower layout, the entries are separated by newlines:

>>> putDocW 20 doc
prefix text
to
lay
out
sep = group . vsep

cat :: [Doc ann] -> Doc ann #

(cat xs) tries laying out the documents xs separated with nothing, and if this does not fit the page, separates them with newlines. This is what differentiates it from vcat, which always lays out its contents beneath each other.

>>> let docs = Util.words "lorem ipsum dolor"
>>> putDocW 80 ("Docs:" <+> cat docs)
Docs: loremipsumdolor

When there is enough space, the documents are put above one another:

>>> putDocW 10 ("Docs:" <+> cat docs)
Docs: lorem
ipsum
dolor
cat = group . vcat

dot :: Doc ann #

>>> dot
.

plural #

Arguments

:: (Num amount, Eq amount) 
=> doc

1 case

-> doc

other cases

-> amount 
-> doc 

(plural n one many) is one if n is 1, and many otherwise. A typical use case is adding a plural "s".

>>> let things = [True]
>>> let amount = length things
>>> pretty things <+> "has" <+> pretty amount <+> plural "entry" "entries" amount
[True] has 1 entry

printName :: Name -> String Source #

Pretty print a Name wrapping operators in parens

use :: IdeRule k v => k -> NormalizedFilePath -> Action (Maybe v) Source #

Request a Rule result if available

action :: Action a -> Rules () #

renderStrict :: SimpleDocStream ann -> Text #

(renderStrict sdoc) takes the output sdoc from a rendering function and transforms it to strict text.

logWith :: (HasCallStack, MonadIO m) => Recorder (WithPriority msg) -> Priority -> msg -> m () #

cmapIO :: (a -> IO b) -> Recorder b -> Recorder a #

withFileRecorder #

Arguments

:: MonadUnliftIO m 
=> FilePath

Log file path.

-> Maybe [LoggingColumn]

logging columns to display. Nothing uses defaultLoggingColumns

-> (Either IOException (Recorder (WithPriority (Doc d))) -> m a)

action given a recorder, or the exception if we failed to open the file

-> m a 

makeDefaultHandleRecorder #

Arguments

:: MonadIO m 
=> Maybe [LoggingColumn]

built-in logging columns to display. Nothing uses the default

-> Lock

lock to take when outputting to handle

-> Handle

handle to output to

-> m (Recorder (WithPriority (Doc a))) 

withBacklog :: (v -> Recorder a) -> IO (Recorder a, v -> IO ()) #

Given a Recorder that requires an argument, produces a Recorder that queues up messages until the argument is provided using the callback, at which point it sends the backlog and begins functioning normally.

lspClientMessageRecorder :: LanguageContextEnv config -> Recorder (WithPriority Text) #

Creates a recorder that sends logs to the LSP client via window/showMessage notifications.

lspClientLogRecorder :: LanguageContextEnv config -> Recorder (WithPriority Text) #

Creates a recorder that sends logs to the LSP client via window/logMessage notifications.

getClientConfig :: MonadLsp Config m => m Config #

Returns the current client configuration. It is not wise to permanently cache the returned value of this function, as clients can at runtime change their configuration.

viaShow :: Show a => a -> Doc ann #

Convenience function to convert a Showable value to a Doc. If the String does not contain newlines, consider using the more performant unsafeViaShow.

unsafeViaShow :: Show a => a -> Doc ann #

Convenience function to convert a Showable value /that must not contain newlines/ to a Doc. If there may be newlines, use viaShow instead.

emptyDoc :: Doc ann #

The empty document behaves like (pretty ""), so it has a height of 1. This may lead to surprising behaviour if we expect it to bear no weight inside e.g. vcat, where we get an empty line of output from it (parens for visibility only):

>>> vsep ["hello", parens emptyDoc, "world"]
hello
()
world

Together with <>, emptyDoc forms the Monoid Doc.

line' :: Doc ann #

line' is like line, but behaves like mempty if the line break is undone by group (instead of space).

>>> let doc = "lorem ipsum" <> line' <> "dolor sit amet"
>>> doc
lorem ipsum
dolor sit amet
>>> group doc
lorem ipsumdolor sit amet

softline :: Doc ann #

softline behaves like space if the resulting output fits the page, otherwise like line.

Here, we have enough space to put everything in one line:

>>> let doc = "lorem ipsum" <> softline <> "dolor sit amet"
>>> putDocW 80 doc
lorem ipsum dolor sit amet

If we narrow the page to width 10, the layouter produces a line break:

>>> putDocW 10 doc
lorem ipsum
dolor sit amet
softline = group line

softline' :: Doc ann #

softline' is like softline, but behaves like mempty if the resulting output does not fit on the page (instead of space). In other words, line is to line' how softline is to softline'.

With enough space, we get direct concatenation:

>>> let doc = "ThisWord" <> softline' <> "IsWayTooLong"
>>> putDocW 80 doc
ThisWordIsWayTooLong

If we narrow the page to width 10, the layouter produces a line break:

>>> putDocW 10 doc
ThisWord
IsWayTooLong
softline' = group line'

hardline :: Doc ann #

A hardline is always laid out as a line break, even when grouped or when there is plenty of space. Note that it might still be simply discarded if it is part of a flatAlt inside a group.

>>> let doc = "lorem ipsum" <> hardline <> "dolor sit amet"
>>> putDocW 1000 doc
lorem ipsum
dolor sit amet
>>> group doc
lorem ipsum
dolor sit amet

flatAlt #

Arguments

:: Doc ann

Default

-> Doc ann

Preferred when grouped

-> Doc ann 

By default, (flatAlt x y) renders as x. However when grouped, y will be preferred, with x as the fallback for the case when y doesn't fit.

>>> let doc = flatAlt "a" "b"
>>> putDoc doc
a
>>> putDoc (group doc)
b
>>> putDocW 0 (group doc)
a

flatAlt is particularly useful for defining conditional separators such as

softline = group (flatAlt hardline " ")
>>> let hello = "Hello" <> softline <> "world!"
>>> putDocW 12 hello
Hello world!
>>> putDocW 11 hello
Hello
world!

Example: Haskell's do-notation

Expand

We can use this to render Haskell's do-notation nicely:

>>> let open        = flatAlt "" "{ "
>>> let close       = flatAlt "" " }"
>>> let separator   = flatAlt "" "; "
>>> let prettyDo xs = group ("do" <+> align (encloseSep open close separator xs))
>>> let statements  = ["name:_ <- getArgs", "let greet = \"Hello, \" <> name", "putStrLn greet"]

This is put into a single line with {;} style if it fits:

>>> putDocW 80 (prettyDo statements)
do { name:_ <- getArgs; let greet = "Hello, " <> name; putStrLn greet }

When there is not enough space the statements are broken up into lines nicely:

>>> putDocW 10 (prettyDo statements)
do name:_ <- getArgs
   let greet = "Hello, " <> name
   putStrLn greet

Notes

Users should be careful to choose x to be less wide than y. Otherwise, if y turns out not to fit the page, we fall back on an even wider layout:

>>> let ugly = group (flatAlt "even wider" "too wide")
>>> putDocW 7 ugly
even wider

Also note that group will flatten y:

>>> putDoc (group (flatAlt "x" ("y" <> line <> "y")))
y y

This also means that an "unflattenable" y which contains a hard linebreak will never be rendered:

>>> putDoc (group (flatAlt "x" ("y" <> hardline <> "y")))
x

align :: Doc ann -> Doc ann #

(align x) lays out the document x with the nesting level set to the current column. It is used for example to implement hang.

As an example, we will put a document right above another one, regardless of the current nesting level. Without alignment, the second line is put simply below everything we've had so far:

>>> "lorem" <+> vsep ["ipsum", "dolor"]
lorem ipsum
dolor

If we add an align to the mix, the vsep's contents all start in the same column:

>>> "lorem" <+> align (vsep ["ipsum", "dolor"])
lorem ipsum
      dolor

encloseSep #

Arguments

:: Doc ann

left delimiter

-> Doc ann

right delimiter

-> Doc ann

separator

-> [Doc ann]

input documents

-> Doc ann 

(encloseSep l r sep xs) concatenates the documents xs separated by sep, and encloses the resulting document by l and r.

The documents are laid out horizontally if that fits the page:

>>> let doc = "list" <+> align (encloseSep lbracket rbracket comma (map pretty [1,20,300,4000]))
>>> putDocW 80 doc
list [1,20,300,4000]

If there is not enough space, then the input is split into lines entry-wise therwise they are laid out vertically, with separators put in the front:

>>> putDocW 10 doc
list [1
     ,20
     ,300
     ,4000]

Note that doc contains an explicit call to align so that the list items are aligned vertically.

For putting separators at the end of entries instead, have a look at punctuate.

concatWith :: Foldable t => (Doc ann -> Doc ann -> Doc ann) -> t (Doc ann) -> Doc ann #

Concatenate all documents element-wise with a binary function.

concatWith _ [] = mempty
concatWith (**) [x,y,z] = x ** y ** z

Multiple convenience definitions based on concatWith are already predefined, for example:

hsep    = concatWith (<+>)
fillSep = concatWith (\x y -> x <> softline <> y)

This is also useful to define customized joiners:

>>> concatWith (surround dot) ["Prettyprinter", "Render", "Text"]
Prettyprinter.Render.Text

vsep :: [Doc ann] -> Doc ann #

(vsep xs) concatenates all documents xs above each other. If a group undoes the line breaks inserted by vsep, the documents are separated with a space instead.

Using vsep alone yields

>>> "prefix" <+> vsep ["text", "to", "lay", "out"]
prefix text
to
lay
out

grouping a vsep separates the documents with a space if it fits the page (and does nothing otherwise). See the sep convenience function for this use case.

The align function can be used to align the documents under their first element:

>>> "prefix" <+> align (vsep ["text", "to", "lay", "out"])
prefix text
       to
       lay
       out

Since grouping a vsep is rather common, sep is a built-in for doing that.

fillSep :: [Doc ann] -> Doc ann #

(fillSep xs) concatenates the documents xs horizontally with <+> as long as it fits the page, then inserts a line and continues doing that for all documents in xs. (line means that if grouped, the documents are separated with a space instead of newlines. Use fillCat if you do not want a space.)

Let's print some words to fill the line:

>>> let docs = take 20 (cycle ["lorem", "ipsum", "dolor", "sit", "amet"])
>>> putDocW 80 ("Docs:" <+> fillSep docs)
Docs: lorem ipsum dolor sit amet lorem ipsum dolor sit amet lorem ipsum dolor
sit amet lorem ipsum dolor sit amet

The same document, printed at a width of only 40, yields

>>> putDocW 40 ("Docs:" <+> fillSep docs)
Docs: lorem ipsum dolor sit amet lorem
ipsum dolor sit amet lorem ipsum dolor
sit amet lorem ipsum dolor sit amet

fillCat :: [Doc ann] -> Doc ann #

(fillCat xs) concatenates documents xs horizontally with <> as long as it fits the page, then inserts a line' and continues doing that for all documents in xs. This is similar to how an ordinary word processor lays out the text if you just keep typing after you hit the maximum line length.

(line' means that if grouped, the documents are separated with nothing instead of newlines. See fillSep if you want a space instead.)

Observe the difference between fillSep and fillCat. fillSep concatenates the entries spaced when grouped:

>>> let docs = take 20 (cycle (["lorem", "ipsum", "dolor", "sit", "amet"]))
>>> putDocW 40 ("Grouped:" <+> group (fillSep docs))
Grouped: lorem ipsum dolor sit amet
lorem ipsum dolor sit amet lorem ipsum
dolor sit amet lorem ipsum dolor sit
amet

On the other hand, fillCat concatenates the entries directly when grouped:

>>> putDocW 40 ("Grouped:" <+> group (fillCat docs))
Grouped: loremipsumdolorsitametlorem
ipsumdolorsitametloremipsumdolorsitamet
loremipsumdolorsitamet

nesting :: (Int -> Doc ann) -> Doc ann #

Layout a document depending on the current nesting level. align is implemented in terms of nesting.

>>> let doc = "prefix" <+> nesting (\l -> brackets ("Nested:" <+> pretty l))
>>> vsep [indent n doc | n <- [0,4,8]]
prefix [Nested: 0]
    prefix [Nested: 4]
        prefix [Nested: 8]

width :: Doc ann -> (Int -> Doc ann) -> Doc ann #

(width doc f) lays out the document doc, and makes the column width of it available to a function.

>>> let annotate doc = width (brackets doc) (\w -> " <- width:" <+> pretty w)
>>> align (vsep (map annotate ["---", "------", indent 3 "---", vsep ["---", indent 4 "---"]]))
[---] <- width: 5
[------] <- width: 8
[   ---] <- width: 8
[---
    ---] <- width: 8

pageWidth :: (PageWidth -> Doc ann) -> Doc ann #

Layout a document depending on the page width, if one has been specified.

>>> let prettyPageWidth (AvailablePerLine l r) = "Width:" <+> pretty l <> ", ribbon fraction:" <+> pretty r
>>> let doc = "prefix" <+> pageWidth (brackets . prettyPageWidth)
>>> putDocW 32 (vsep [indent n doc | n <- [0,4,8]])
prefix [Width: 32, ribbon fraction: 1.0]
    prefix [Width: 32, ribbon fraction: 1.0]
        prefix [Width: 32, ribbon fraction: 1.0]

fillBreak #

Arguments

:: Int

Append spaces until the document is at least this wide

-> Doc ann 
-> Doc ann 

(fillBreak i x) first lays out the document x. It then appends spaces until the width is equal to i. If the width of x is already larger than i, the nesting level is increased by i and a line is appended. When we redefine ptype in the example given in fill to use fillBreak, we get a useful variation of the output:

>>> let types = [("empty","Doc"), ("nest","Int -> Doc -> Doc"), ("fillSep","[Doc] -> Doc")]
>>> let ptype (name, tp) = fillBreak 5 (pretty name) <+> "::" <+> pretty tp
>>> "let" <+> align (vcat (map ptype types))
let empty :: Doc
    nest  :: Int -> Doc -> Doc
    fillSep
          :: [Doc] -> Doc

enclose #

Arguments

:: Doc ann

L

-> Doc ann

R

-> Doc ann

x

-> Doc ann

LxR

(enclose l r x) encloses document x between documents l and r using <>.

>>> enclose "A" "Z" "·"
A·Z
enclose l r x = l <> x <> r

surround :: Doc ann -> Doc ann -> Doc ann -> Doc ann #

(surround x l r) surrounds document x with l and r.

>>> surround "·" "A" "Z"
A·Z

This is merely an argument reordering of enclose, but allows for definitions like

>>> concatWith (surround dot) ["Prettyprinter", "Render", "Text"]
Prettyprinter.Render.Text

annotate :: ann -> Doc ann -> Doc ann #

Add an annotation to a Doc. This annotation can then be used by the renderer to e.g. add color to certain parts of the output. For a full tutorial example on how to use it, see the Prettyprinter.Render.Tutorials.StackMachineTutorial or Prettyprinter.Render.Tutorials.TreeRenderingTutorial modules.

This function is only relevant for custom formats with their own annotations, and not relevant for basic prettyprinting. The predefined renderers, e.g. Prettyprinter.Render.Text, should be enough for the most common needs.

unAnnotate :: Doc ann -> Doc xxx #

Remove all annotations.

Although unAnnotate is idempotent with respect to rendering,

unAnnotate . unAnnotate = unAnnotate

it should not be used without caution, for each invocation traverses the entire contained document. If possible, it is preferrable to unannotate after producing the layout by using unAnnotateS.

reAnnotate :: (ann -> ann') -> Doc ann -> Doc ann' #

Change the annotation of a Document.

Useful in particular to embed documents with one form of annotation in a more generally annotated document.

Since this traverses the entire Doc tree, including parts that are not rendered due to other layouts fitting better, it is preferrable to reannotate after producing the layout by using reAnnotateS.

Since reAnnotate has the right type and satisfies 'reAnnotate id = id', it is used to define the Functor instance of Doc.

alterAnnotations :: (ann -> [ann']) -> Doc ann -> Doc ann' #

Change the annotations of a Document. Individual annotations can be removed, changed, or replaced by multiple ones.

This is a general function that combines unAnnotate and reAnnotate, and it is useful for mapping semantic annotations (such as »this is a keyword«) to display annotations (such as »this is red and underlined«), because some backends may not care about certain annotations, while others may.

Annotations earlier in the new list will be applied earlier, i.e. returning [Bold, Green] will result in a bold document that contains green text, and not vice-versa.

Since this traverses the entire Doc tree, including parts that are not rendered due to other layouts fitting better, it is preferrable to reannotate after producing the layout by using alterAnnotationsS.

unAnnotateS :: SimpleDocStream ann -> SimpleDocStream xxx #

Remove all annotations. unAnnotate for SimpleDocStream.

reAnnotateS :: (ann -> ann') -> SimpleDocStream ann -> SimpleDocStream ann' #

Change the annotation of a document. reAnnotate for SimpleDocStream.

alterAnnotationsS :: (ann -> Maybe ann') -> SimpleDocStream ann -> SimpleDocStream ann' #

Change the annotation of a document to a different annotation, or none at all. alterAnnotations for SimpleDocStream.

Note that the Doc version is more flexible, since it allows changing a single annotation to multiple ones. (SimpleDocTree restores this flexibility again.)

removeTrailingWhitespace :: SimpleDocStream ann -> SimpleDocStream ann #

Remove all trailing space characters.

This has some performance impact, because it does an entire additional pass over the SimpleDocStream.

No trimming will be done inside annotations, which are considered to contain no (trimmable) whitespace, since the annotation might actually be about the whitespace, for example a renderer that colors the background of trailing whitespace, as e.g. git diff can be configured to do.

Historical note: Since v1.7.0, layoutPretty and layoutSmart avoid producing the trailing whitespace that was the original motivation for creating removeTrailingWhitespace. See https://github.com/quchen/prettyprinter/pull/139 for some background info.

defaultLayoutOptions :: LayoutOptions #

The default layout options, suitable when you just want some output, and don’t particularly care about the details. Used by the Show instance, for example.

>>> defaultLayoutOptions
LayoutOptions {layoutPageWidth = AvailablePerLine 80 1.0}

layoutPretty :: LayoutOptions -> Doc ann -> SimpleDocStream ann #

This is the default layout algorithm, and it is used by show, putDoc and hPutDoc.

layoutPretty commits to rendering something in a certain way if the next element fits the layout constraints; in other words, it has one SimpleDocStream element lookahead when rendering. Consider using the smarter, but a bit less performant, layoutSmart algorithm if the results seem to run off to the right before having lots of line breaks.

layoutSmart :: LayoutOptions -> Doc ann -> SimpleDocStream ann #

A layout algorithm with more lookahead than layoutPretty, that introduces line breaks earlier if the content does not (or will not, rather) fit into one line.

Consider the following python-ish document,

>>> let fun x = hang 2 ("fun(" <> softline' <> x) <> ")"
>>> let doc = (fun . fun . fun . fun . fun) (align (list ["abcdef", "ghijklm"]))

which we’ll be rendering using the following pipeline (where the layout algorithm has been left open):

>>> import Data.Text.IO as T
>>> import Prettyprinter.Render.Text
>>> let hr = pipe <> pretty (replicate (26-2) '-') <> pipe
>>> let go layouter x = (T.putStrLn . renderStrict . layouter (LayoutOptions (AvailablePerLine 26 1))) (vsep [hr, x, hr])

If we render this using layoutPretty with a page width of 26 characters per line, all the fun calls fit into the first line so they will be put there:

>>> go layoutPretty doc
|------------------------|
fun(fun(fun(fun(fun(
                  [ abcdef
                  , ghijklm ])))))
|------------------------|

Note that this exceeds the desired 26 character page width. The same document, rendered with layoutSmart, fits the layout contstraints:

>>> go layoutSmart doc
|------------------------|
fun(
  fun(
    fun(
      fun(
        fun(
          [ abcdef
          , ghijklm ])))))
|------------------------|

The key difference between layoutPretty and layoutSmart is that the latter will check the potential document until it encounters a line with the same indentation or less than the start of the document. Any line encountered earlier is assumed to belong to the same syntactic structure. layoutPretty checks only the first line.

Consider for example the question of whether the As fit into the document below:

1 A
2   A
3  A
4 B
5   B

layoutPretty will check only line 1, ignoring whether e.g. line 2 might already be too wide. By contrast, layoutSmart stops only once it reaches line 4, where the B has the same indentation as the first A.

layoutCompact :: Doc ann1 -> SimpleDocStream ann2 #

(layoutCompact x) lays out the document x without adding any indentation and without preserving annotations. Since no 'pretty' printing is involved, this layouter is very fast. The resulting output contains fewer characters than a prettyprinted version and can be used for output that is read by other programs.

>>> let doc = hang 4 (vsep ["lorem", "ipsum", hang 4 (vsep ["dolor", "sit"])])
>>> doc
lorem
    ipsum
    dolor
        sit
>>> let putDocCompact = renderIO System.IO.stdout . layoutCompact
>>> putDocCompact doc
lorem
ipsum
dolor
sit

dquotes :: Doc ann -> Doc ann #

>>> dquotes "·"
"·"

angles :: Doc ann -> Doc ann #

>>> angles "·"
<·>

squote :: Doc ann #

>>> squote
'

dquote :: Doc ann #

>>> dquote
"

langle :: Doc ann #

>>> langle
<

rangle :: Doc ann #

>>> rangle
>

lbracket :: Doc ann #

>>> lbracket
[

rbracket :: Doc ann #

>>> rbracket
]

slash :: Doc ann #

>>> slash
/

backslash :: Doc ann #

>>> backslash
\

readFileUtf8 :: FilePath -> IO Text Source #

Read a UTF8 file, with lenient decoding, so it will never raise a decoding error.

uses :: (Traversable f, IdeRule k v) => k -> f NormalizedFilePath -> Action (f (Maybe v)) Source #

Plural version of use

getAtPoint :: NormalizedFilePath -> Position -> IdeAction (Maybe (Maybe Range, [Text])) Source #

Try to get hover text for the name under point.

getFileExists :: NormalizedFilePath -> Action Bool Source #

Returns True if the file exists

getFileContents :: NormalizedFilePath -> Action (UTCTime, Maybe Text) Source #

Returns the modification time and the contents. For VFS paths, the modification time is the current time.

getClientConfigAction :: Action Config Source #

Returns the client configuration, creating a build dependency. You should always use this function when accessing client configuration from build rules.

getParsedModule :: NormalizedFilePath -> Action (Maybe ParsedModule) Source #

Parse the contents of a haskell file.

define :: IdeRule k v => Recorder (WithPriority Log) -> (k -> NormalizedFilePath -> Action (IdeResult v)) -> Rules () Source #

Define a new Rule without early cutoff

defineEarlyCutoff :: IdeRule k v => Recorder (WithPriority Log) -> RuleBody k v -> Rules () Source #

Define a new Rule with early cutoff

useNoFile :: IdeRule k v => k -> Action (Maybe v) Source #

useNoFile_ :: IdeRule k v => k -> Action v Source #

useWithStale :: IdeRule k v => k -> NormalizedFilePath -> Action (Maybe (v, PositionMapping)) Source #

Request a Rule result, it not available return the last computed result, if any, which may be stale

useWithStaleFast :: IdeRule k v => k -> NormalizedFilePath -> IdeAction (Maybe (v, PositionMapping)) Source #

Lookup value in the database and return with the stale value immediately Will queue an action to refresh the value. Might block the first time the rule runs, but never blocks after that.

useWithStaleFast' :: IdeRule k v => k -> NormalizedFilePath -> IdeAction (FastResult v) Source #

Same as useWithStaleFast but lets you wait for an up to date result

useWithStale_ :: IdeRule k v => k -> NormalizedFilePath -> Action (v, PositionMapping) Source #

Request a Rule result, it not available return the last computed result which may be stale.

Throws an BadDependency exception which is caught by the rule system if none available.

WARNING: Not suitable for PluginHandlers. Use useWithStaleE instead.

uses_ :: (Traversable f, IdeRule k v) => k -> f NormalizedFilePath -> Action (f v) Source #

Plural version of use_

Throws an BadDependency exception which is caught by the rule system if none available.

WARNING: Not suitable for PluginHandlers. Use usesE instead.

hscEnvWithImportPaths :: HscEnvEq -> HscEnv Source #

Unwrap the HscEnv with the original import paths. Used only for locating imports

modifyDynFlags :: GhcMonad m => (DynFlags -> DynFlags) -> m () Source #

Used to modify dyn flags in preference to calling setSessionDynFlags, since that function also reloads packages (which is very slow).

diagFromErrMsg :: Text -> DynFlags -> MsgEnvelope DecoratedSDoc -> [FileDiagnostic] Source #

Produce a GHC-style error from a source span and a message.

diagFromString :: Text -> DiagnosticSeverity -> SrcSpan -> String -> [FileDiagnostic] Source #

Produce a GHC-style error from a source span and a message.

diagFromStrings :: Text -> DiagnosticSeverity -> [(SrcSpan, String)] -> [FileDiagnostic] Source #

Produce a bag of GHC-style errors (ErrorMessages) from the given (optional) locations and message strings.

catchSrcErrors :: DynFlags -> Text -> IO a -> IO (Either [FileDiagnostic] a) Source #

Catch the errors thrown by GHC (SourceErrors and compiler-internal exceptions like Panic or InstallationError), and turn them into diagnostics

srcSpanToRange :: SrcSpan -> Maybe Range Source #

Convert a GHC SrcSpan to a DAML compiler Range

realSrcSpanToCodePointRange :: RealSrcSpan -> CodePointRange Source #

Convert a GHC SrcSpan to CodePointRange see Note [Unicode support]

realSrcLocToCodePointPosition :: RealSrcLoc -> CodePointPosition Source #

Convert a GHC RealSrcLoc to CodePointPosition see Note [Unicode support]

srcSpanToFilename :: SrcSpan -> Maybe FilePath Source #

Extract a file name from a GHC SrcSpan (use message for unhelpful ones) FIXME This may not be an _absolute_ file name, needs fixing.

zeroSpan Source #

Arguments

:: FastString

file path of span

-> RealSrcSpan 

creates a span with zero length in the filename of the argument passed

noSpan :: String -> SrcSpan Source #

Produces an "unhelpful" source span with the given string.

toDSeverity :: Severity -> Maybe DiagnosticSeverity Source #

Convert a GHC severity to a DAML compiler Severity. Severities below Warning level are dropped (returning Nothing).

evalGhcEnv :: HscEnv -> Ghc b -> IO b Source #

Run a Ghc monad value using an existing HscEnv. Sets up and tears down all the required pieces, but designed to be more efficient than a standard runGhc.

printRdrName :: RdrName -> String Source #

Pretty print a RdrName wrapping operators in parens

lookupPackageConfig :: Unit -> HscEnv -> Maybe UnitInfo Source #

Given a Unit try and find the associated PackageConfig in the environment.

textToStringBuffer :: Text -> StringBuffer Source #

Convert from the text package to the GHC StringBuffer. Currently implemented somewhat inefficiently (if it ever comes up in a profile).

moduleImportPath :: NormalizedFilePath -> ModuleName -> Maybe FilePath Source #

Given a module location, and its parse tree, figure out what is the include directory implied by it. For example, given the file /usr/Test/Foo/Bar.hs with the module name Foo.Bar the directory /usr/Test should be on the include path to find sibling modules.

fingerprintToBS :: Fingerprint -> ByteString Source #

Convert a Fingerprint to a ByteString by copying the byte across. Will produce an 8 byte unreadable ByteString.

hDuplicateTo' :: Handle -> Handle -> IO () Source #

A slightly modified version of hDuplicateTo from GHC. Importantly, it avoids the bug listed in https://gitlab.haskell.org/ghc/ghc/merge_requests/2318.

printOutputable :: Outputable a => a -> Text Source #

Print a GHC value in defaultUserStyle without unique symbols. It uses showSDocUnsafe with unsafeGlobalDynFlags internally.

This is the most common print utility. It will do something additionally compared to what the Outputable instance does.

  1. print with a user-friendly style: a_a4ME as a.
  2. unescape escape sequences of printable unicode characters within a pair of double quotes

uriToFilePath' :: Uri -> Maybe FilePath Source #

We use an empty string as a filepath when we don’t have a file. However, haskell-lsp doesn’t support that in uriToFilePath and given that it is not a valid filepath it does not make sense to upstream a fix. So we have our own wrapper here that supports empty filepaths.

readSrcSpan :: ReadS RealSrcSpan Source #

Parser for the GHC output format

encodeLinkableType :: Maybe LinkableType -> ByteString Source #

Encode the linkable into an ordered bytestring. This is used to drive an ordered "newness" predicate in the NeedsCompilation build rule.