1{-# OPTIONS_GHC -Wall #-}
2{-# LANGUAGE OverloadedStrings #-}
5 , getRootWithReplFallback
13import qualified Data.ByteString as BS
14import System.FilePath ((</>))
16import qualified Elm.Docs as Docs
17import qualified Elm.Name as N
18import qualified Elm.Project.Root as Root
19import qualified Elm.Project.Summary as Summary
20import Elm.Project.Summary (Summary)
21import qualified File.Args as Args
22import qualified File.Artifacts as Artifacts
23import qualified File.Compile as Compile
24import qualified File.Crawl as Crawl
25import qualified File.Plan as Plan
26import qualified Generate.Output as Output
27import qualified Reporting.Task as Task
28import qualified Stuff.Paths as Path
35getRoot :: Task.Task Summary
40getRootWithReplFallback :: IO FilePath
41getRootWithReplFallback =
42 Root.getWithReplFallback
49compile :: Output.Options -> Maybe FilePath -> Summary -> [FilePath] -> Task.Task ()
50compile options docs summary@(Summary.Summary root project _ _ _) paths =
51 do args <- Args.fromPaths summary paths
52 graph <- Crawl.crawl summary args
53 (dirty, ifaces) <- Plan.plan docs summary graph
54 answers <- Compile.compile project docs ifaces dirty
55 results <- Artifacts.write root answers
56 _ <- traverse (Artifacts.writeDocs results) docs
57 Output.generate options summary graph
64compileForRepl :: BS.ByteString -> Maybe N.Name -> Task.Task (Maybe FilePath)
65compileForRepl source maybeName =
66 do summary@(Summary.Summary root project _ _ _) <- getRoot
67 graph <- Crawl.crawlFromSource summary source
68 (dirty, ifaces) <- Plan.plan Nothing summary graph
69 answers <- Compile.compile project Nothing ifaces dirty
70 _results <- Artifacts.write root answers
71 traverse (Output.generateReplFile summary graph) maybeName
78generateDocs :: Summary.Summary -> Task.Task Docs.Documentation
79generateDocs summary@(Summary.Summary root project _ _ _) =
80 do let docsPath = root </> Path.docs
81 args <- Args.fromSummary summary
82 graph <- Crawl.crawl summary args
83 (dirty, ifaces) <- Plan.plan (Just docsPath) summary graph
84 answers <- Compile.compile project (Just docsPath) ifaces dirty
85 results <- Artifacts.ignore answers
86 Artifacts.writeDocs results docsPath
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