1{-# LANGUAGE OverloadedStrings #-}
5 , Compile.Artifacts(..)
15import qualified Data.ByteString as BS
16import qualified Data.Map as Map
17import qualified Data.Text as Text
19import qualified Compile
20import qualified Elm.Compiler.Version
21import qualified Elm.Interface as I
22import qualified Elm.ModuleName as ModuleName
23import qualified Elm.Package as Pkg
24import qualified Json.Encode as Encode
25import qualified Reporting.Doc as D
26import qualified Reporting.Error as Error
27import qualified Reporting.Render.Code as Code
28import qualified Reporting.Region as Region
29import qualified Reporting.Report as Report
30import qualified Reporting.Result as Result
31import qualified Reporting.Warning as Warning
40 Elm.Compiler.Version.version
50 -> Map.Map ModuleName.Raw ModuleName.Canonical
53 -> ( [Warning.Warning], Either [Error.Error] Compile.Artifacts )
54compile docsFlag pkg importDict interfaces source =
55 Result.run $ Compile.compile docsFlag pkg importDict interfaces source
62errorsToDoc :: FilePath -> Text.Text -> [Error.Error] -> D.Doc
63errorsToDoc filePath source errors =
66 concatMap (Error.toReports (Code.toSource source)) errors
68 D.vcat $ map (Report.toDoc filePath) reports
75errorsToJson :: ModuleName.Raw -> FilePath -> Text.Text -> [Error.Error] -> Encode.Value
76errorsToJson moduleName filePath source errors =
79 concatMap (Error.toReports (Code.toSource source)) errors
82 [ ("path", Encode.text (Text.pack filePath))
83 , ("name", Encode.name moduleName)
84 , ("problems", Encode.array (map reportToJson reports))
88reportToJson :: Report.Report -> Encode.Value
89reportToJson (Report.Report title region _sgstns message) =
91 [ ("title", Encode.text (Text.pack title))
92 , ("region", Region.encode region)
93 , ("message", D.encode message)
keysesc to close
- j k
- move down, up
- enter
- open
- esc
- back, or up a level
- 1 2 3 4
- readme, files, commits, refs
- /
- filter
- y
- copy the clone command
- c
- compare the chosen commit with another (or shift-click both)
- ?
- show or hide this list