@@ -12,9 +12,8 @@ import Idris.CmdOptions
12import Idris.Imports
12import Idris.Imports
13import Idris.Package.Common
13import Idris.Package.Common
14import Idris.Parser.Helpers (IdrisInnerParser, MonadicParsing, eol, iName,
14import Idris.Parser.Helpers (IdrisInnerParser, MonadicParsing, eol, iName,
15− identifier, isEol, lchar, multiLineComment,
15+ identifier, isEol, lchar, packageName,
16− packageName, parseErrorDoc, reserved, runparser,
16+ parseErrorDoc, reserved, runparser, someSpace')
17− simpleWhiteSpace, singleLineComment)
19import Control.Applicative
18import Control.Applicative
20import Control.Monad.State.Strict
19import Control.Monad.State.Strict
@@ -43,7 +42,7 @@ instance {-# OVERLAPPING #-} P.DeltaParsing PParser where
45instance {-# OVERLAPPING #-} P.TokenParsing PParser where
44instance {-# OVERLAPPING #-} P.TokenParsing PParser where
46− someSpace = many (simpleWhiteSpace <|> singleLineComment <|> multiLineComment) *> pure ()
45+ someSpace = someSpace'
49parseDesc :: FilePath -> IO PkgDesc
48parseDesc :: FilePath -> IO PkgDesc
@@ -66,7 +65,7 @@ pPkg :: PParser PkgDesc
67 reserved "package"
66 reserved "package"
68 p <- pPkgName
67 p <- pPkgName
69− P.someSpace
68+ someSpace'
70 modify $ \st -> st { pkgname = p }
69 modify $ \st -> st { pkgname = p }
71 some pClause
70 some pClause
@@ -119,10 +118,10 @@ filename = (do
119 "filename must contain no directory component"
118 "filename must contain no directory component"
121textUntilEol :: MonadicParsing m => m String
120textUntilEol :: MonadicParsing m => m String
122−textUntilEol = many (P.satisfy (not . isEol)) <* eol <* P.someSpace
121+textUntilEol = many (P.satisfy (not . isEol)) <* eol <* someSpace'
124clause :: String -> PParser a -> (PkgDesc -> a -> PkgDesc) -> PParser ()
123clause :: String -> PParser a -> (PkgDesc -> a -> PkgDesc) -> PParser ()
125−clause name p f = do value <- reserved name *> lchar '=' *> p <* P.someSpace
124+clause name p f = do value <- reserved name *> lchar '=' *> p <* someSpace'
126 modify $ \st -> f st value
125 modify $ \st -> f st value
128commaSep :: MonadicParsing m => m a -> m [a]
127commaSep :: MonadicParsing m => m a -> m [a]
@@ -133,7 +132,7 @@ pClause = clause "executable" filename (\st v -> st { execout = Just v })
133 <|> clause "main" (fst <$> iName []) (\st v -> st { idris_main = Just v })
132 <|> clause "main" (fst <$> iName []) (\st v -> st { idris_main = Just v })
134 <|> clause "sourcedir" (fst <$> identifier) (\st v -> st { sourcedir = v })
133 <|> clause "sourcedir" (fst <$> identifier) (\st v -> st { sourcedir = v })
135 <|> clause "opts" (pureArgParser . words <$> P.stringLiteral) (\st v -> st { idris_opts = v ++ idris_opts st })
134 <|> clause "opts" (pureArgParser . words <$> P.stringLiteral) (\st v -> st { idris_opts = v ++ idris_opts st })
136− <|> clause "pkgs" (commaSep (pPkgName <* P.someSpace)) (\st ps ->
135+ <|> clause "pkgs" (commaSep (pPkgName <* someSpace')) (\st ps ->
137 let pkgs = pureArgParser $ concatMap (\x -> ["-p", show x]) ps
136 let pkgs = pureArgParser $ concatMap (\x -> ["-p", show x]) ps
138 in st { pkgdeps = ps `union` pkgdeps st
137 in st { pkgdeps = ps `union` pkgdeps st
139 , idris_opts = pkgs ++ idris_opts st })
138 , idris_opts = pkgs ++ idris_opts st })