-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/
-- | Eval plugin for Haskell Language Server
--
-- Please see the README on GitHub at
-- https://github.com/haskell/haskell-language-server#readme
@package hls-eval-plugin
@version 1.2.2.0
module Ide.Plugin.Eval.Types
locate :: Loc [a] -> [Loc a]
locate0 :: [a] -> [Loc a]
data Test
Example :: NonEmpty Txt -> [Txt] -> Range -> Test
[testLines] :: Test -> NonEmpty Txt
[testOutput] :: Test -> [Txt]
[testRange] :: Test -> Range
Property :: Txt -> [Txt] -> Range -> Test
[testline] :: Test -> Txt
[testOutput] :: Test -> [Txt]
[testRange] :: Test -> Range
isProperty :: Test -> Bool
data Format
SingleLine :: Format
-- | Range is that of surrounding entire block comment, not
-- section. Used for detecting no-newline test commands.
MultiLine :: Range -> Format
data Language
Plain :: Language
Haddock :: Language
data Section
Section :: Txt -> [Test] -> Language -> Format -> Section
[sectionName] :: Section -> Txt
[sectionTests] :: Section -> [Test]
[sectionLanguage] :: Section -> Language
[sectionFormat] :: Section -> Format
data Sections
Sections :: [Section] -> [Section] -> Sections
[nonSetupSections] :: Sections -> [Section]
[setupSections] :: Sections -> [Section]
hasTests :: Section -> Bool
hasPropertyTest :: Section -> Bool
-- | Split setup and normal sections
splitSections :: [Section] -> ([Section], [Section])
type Loc = Located Line
-- | A thing with a location attached.
data Located l a
Located :: l -> a -> Located l a
[location] :: Located l a -> l
[located] :: Located l a -> a
data Comments
Comments :: Map Range RawLineComment -> Map Range RawBlockComment -> Comments
[lineComments] :: Comments -> Map Range RawLineComment
[blockComments] :: Comments -> Map Range RawBlockComment
newtype RawBlockComment
RawBlockComment :: String -> RawBlockComment
[getRawBlockComment] :: RawBlockComment -> String
newtype RawLineComment
RawLineComment :: String -> RawLineComment
[getRawLineComment] :: RawLineComment -> String
-- | Discard location information.
unLoc :: Located l a -> a
type Txt = String
-- | Specify the test section to execute
data EvalParams
EvalParams :: [Section] -> !TextDocumentIdentifier -> !EvalId -> EvalParams
[sections] :: EvalParams -> [Section]
[module_] :: EvalParams -> !TextDocumentIdentifier
-- | unique group id; for test uses
[evalId] :: EvalParams -> !EvalId
data GetEvalComments
GetEvalComments :: GetEvalComments
nullComments :: Comments -> Bool
instance (Data.Aeson.Types.ToJSON.ToJSON a, Data.Aeson.Types.ToJSON.ToJSON l) => Data.Aeson.Types.ToJSON.ToJSON (Ide.Plugin.Eval.Types.Located l a)
instance (Data.Aeson.Types.FromJSON.FromJSON l, Data.Aeson.Types.FromJSON.FromJSON a) => Data.Aeson.Types.FromJSON.FromJSON (Ide.Plugin.Eval.Types.Located l a)
instance GHC.Generics.Generic (Ide.Plugin.Eval.Types.Located l a)
instance GHC.Base.Functor (Ide.Plugin.Eval.Types.Located l)
instance (GHC.Classes.Ord l, GHC.Classes.Ord a) => GHC.Classes.Ord (Ide.Plugin.Eval.Types.Located l a)
instance (GHC.Show.Show l, GHC.Show.Show a) => GHC.Show.Show (Ide.Plugin.Eval.Types.Located l a)
instance (GHC.Classes.Eq l, GHC.Classes.Eq a) => GHC.Classes.Eq (Ide.Plugin.Eval.Types.Located l a)
instance Control.DeepSeq.NFData Ide.Plugin.Eval.Types.Test
instance Data.Aeson.Types.ToJSON.ToJSON Ide.Plugin.Eval.Types.Test
instance Data.Aeson.Types.FromJSON.FromJSON Ide.Plugin.Eval.Types.Test
instance GHC.Generics.Generic Ide.Plugin.Eval.Types.Test
instance GHC.Show.Show Ide.Plugin.Eval.Types.Test
instance GHC.Classes.Eq Ide.Plugin.Eval.Types.Test
instance GHC.Generics.Generic Ide.Plugin.Eval.Types.GetEvalComments
instance GHC.Show.Show Ide.Plugin.Eval.Types.GetEvalComments
instance GHC.Classes.Eq Ide.Plugin.Eval.Types.GetEvalComments
instance Control.DeepSeq.NFData Ide.Plugin.Eval.Types.RawBlockComment
instance GHC.Base.Monoid Ide.Plugin.Eval.Types.RawBlockComment
instance GHC.Base.Semigroup Ide.Plugin.Eval.Types.RawBlockComment
instance Text.Megaparsec.Stream.VisualStream Ide.Plugin.Eval.Types.RawBlockComment
instance Text.Megaparsec.Stream.TraversableStream Ide.Plugin.Eval.Types.RawBlockComment
instance Text.Megaparsec.Stream.Stream Ide.Plugin.Eval.Types.RawBlockComment
instance Data.String.IsString Ide.Plugin.Eval.Types.RawBlockComment
instance GHC.Classes.Ord Ide.Plugin.Eval.Types.RawBlockComment
instance GHC.Classes.Eq Ide.Plugin.Eval.Types.RawBlockComment
instance GHC.Show.Show Ide.Plugin.Eval.Types.RawBlockComment
instance Control.DeepSeq.NFData Ide.Plugin.Eval.Types.RawLineComment
instance GHC.Base.Monoid Ide.Plugin.Eval.Types.RawLineComment
instance GHC.Base.Semigroup Ide.Plugin.Eval.Types.RawLineComment
instance Text.Megaparsec.Stream.VisualStream Ide.Plugin.Eval.Types.RawLineComment
instance Text.Megaparsec.Stream.TraversableStream Ide.Plugin.Eval.Types.RawLineComment
instance Text.Megaparsec.Stream.Stream Ide.Plugin.Eval.Types.RawLineComment
instance Data.String.IsString Ide.Plugin.Eval.Types.RawLineComment
instance GHC.Classes.Ord Ide.Plugin.Eval.Types.RawLineComment
instance GHC.Classes.Eq Ide.Plugin.Eval.Types.RawLineComment
instance GHC.Show.Show Ide.Plugin.Eval.Types.RawLineComment
instance GHC.Generics.Generic Ide.Plugin.Eval.Types.Comments
instance GHC.Classes.Ord Ide.Plugin.Eval.Types.Comments
instance GHC.Classes.Eq Ide.Plugin.Eval.Types.Comments
instance GHC.Show.Show Ide.Plugin.Eval.Types.Comments
instance Control.DeepSeq.NFData Ide.Plugin.Eval.Types.Format
instance Data.Aeson.Types.ToJSON.ToJSON Ide.Plugin.Eval.Types.Format
instance Data.Aeson.Types.FromJSON.FromJSON Ide.Plugin.Eval.Types.Format
instance GHC.Generics.Generic Ide.Plugin.Eval.Types.Format
instance GHC.Classes.Ord Ide.Plugin.Eval.Types.Format
instance GHC.Show.Show Ide.Plugin.Eval.Types.Format
instance GHC.Classes.Eq Ide.Plugin.Eval.Types.Format
instance Control.DeepSeq.NFData Ide.Plugin.Eval.Types.Language
instance Data.Aeson.Types.ToJSON.ToJSON Ide.Plugin.Eval.Types.Language
instance Data.Aeson.Types.FromJSON.FromJSON Ide.Plugin.Eval.Types.Language
instance GHC.Classes.Ord Ide.Plugin.Eval.Types.Language
instance GHC.Generics.Generic Ide.Plugin.Eval.Types.Language
instance GHC.Show.Show Ide.Plugin.Eval.Types.Language
instance GHC.Classes.Eq Ide.Plugin.Eval.Types.Language
instance Control.DeepSeq.NFData Ide.Plugin.Eval.Types.Section
instance Data.Aeson.Types.ToJSON.ToJSON Ide.Plugin.Eval.Types.Section
instance Data.Aeson.Types.FromJSON.FromJSON Ide.Plugin.Eval.Types.Section
instance GHC.Generics.Generic Ide.Plugin.Eval.Types.Section
instance GHC.Show.Show Ide.Plugin.Eval.Types.Section
instance GHC.Classes.Eq Ide.Plugin.Eval.Types.Section
instance GHC.Generics.Generic Ide.Plugin.Eval.Types.Sections
instance GHC.Classes.Eq Ide.Plugin.Eval.Types.Sections
instance GHC.Show.Show Ide.Plugin.Eval.Types.Sections
instance Control.DeepSeq.NFData Ide.Plugin.Eval.Types.LineChunk
instance Data.Aeson.Types.ToJSON.ToJSON Ide.Plugin.Eval.Types.LineChunk
instance Data.Aeson.Types.FromJSON.FromJSON Ide.Plugin.Eval.Types.LineChunk
instance GHC.Generics.Generic Ide.Plugin.Eval.Types.LineChunk
instance GHC.Show.Show Ide.Plugin.Eval.Types.LineChunk
instance GHC.Classes.Eq Ide.Plugin.Eval.Types.LineChunk
instance Control.DeepSeq.NFData Ide.Plugin.Eval.Types.ExpectedLine
instance Data.Aeson.Types.ToJSON.ToJSON Ide.Plugin.Eval.Types.ExpectedLine
instance Data.Aeson.Types.FromJSON.FromJSON Ide.Plugin.Eval.Types.ExpectedLine
instance GHC.Generics.Generic Ide.Plugin.Eval.Types.ExpectedLine
instance GHC.Show.Show Ide.Plugin.Eval.Types.ExpectedLine
instance GHC.Classes.Eq Ide.Plugin.Eval.Types.ExpectedLine
instance Data.Aeson.Types.ToJSON.ToJSON Ide.Plugin.Eval.Types.EvalParams
instance Data.Aeson.Types.FromJSON.FromJSON Ide.Plugin.Eval.Types.EvalParams
instance GHC.Generics.Generic Ide.Plugin.Eval.Types.EvalParams
instance GHC.Show.Show Ide.Plugin.Eval.Types.EvalParams
instance GHC.Classes.Eq Ide.Plugin.Eval.Types.EvalParams
instance Data.String.IsString Ide.Plugin.Eval.Types.ExpectedLine
instance Data.String.IsString Ide.Plugin.Eval.Types.LineChunk
instance Control.DeepSeq.NFData Ide.Plugin.Eval.Types.Comments
instance GHC.Base.Semigroup Ide.Plugin.Eval.Types.Comments
instance GHC.Base.Monoid Ide.Plugin.Eval.Types.Comments
instance Data.Hashable.Class.Hashable Ide.Plugin.Eval.Types.GetEvalComments
instance Control.DeepSeq.NFData Ide.Plugin.Eval.Types.GetEvalComments
instance (Control.DeepSeq.NFData l, Control.DeepSeq.NFData a) => Control.DeepSeq.NFData (Ide.Plugin.Eval.Types.Located l a)
-- | Eval Plugin entry point.
module Ide.Plugin.Eval
-- | Plugin descriptor
descriptor :: Recorder (WithPriority Log) -> PluginId -> PluginDescriptor IdeState
newtype Log
LogEvalRules :: Log -> Log
instance GHC.Show.Show Ide.Plugin.Eval.Log
instance Prettyprinter.Internal.Pretty Ide.Plugin.Eval.Log