on master help sign in
Move default imports to Elm.Compiler.Imports
commit4f7d7b2e78a4130a5e369ba7c9bb44b7a0e98c64 authorEvan Czaplicki <info@elm-lang.org> dateMon 4 May 2015, 09:52 (12 years ago) parenta8377fc
4 files changed+8−24
elm-compiler.cabal−1 src/Transform/AddDefaultImports.hs → src/Elm/Compiler/Imports.hs+4−19 src/Elm/Compiler/Module.hs+2−2 src/Parse/Parse.hs+2−2
elm-compiler.cabal−1
@@ -73,7 +73,6 @@ Library
7373 Generate.JavaScript.Variable,
7474 Generate.Cases,
7575 Generate.Substitute,
76− Transform.AddDefaultImports,
7776 Parse.Binop,
7877 Parse.Declaration,
7978 Parse.Expression,
src/Transform/AddDefaultImports.hs → src/Elm/Compiler/Imports.hsrenamed+4−19
@@ -1,17 +1,17 @@
1−module Transform.AddDefaultImports (add, defaultImports) where
1+module Elm.Compiler.Imports (defaults) where
22
33import qualified AST.Module as Module
44import qualified AST.Variable as Var
55
66
7−-- DESCRIPTION OF DEFAULT IMPORTS
7+-- DEFAULT IMPORTS
88
99(==>) :: a -> b -> (a,b)
1010(==>) = (,)
1111
1212
13−defaultImports :: [Module.DefaultImport]
14−defaultImports =
13+defaults :: [Module.DefaultImport]
14+defaults =
1515 [ ["Basics"] ==> Module.ImportMethod Nothing Var.openListing
1616 , ["List"] ==> exposing [Var.Value "::"]
1717 , ["Maybe"] ==> exposing [Var.Union "Maybe" Var.openListing]
@@ -23,18 +23,3 @@ defaultImports =
2323exposing :: [Var.Value] -> Module.ImportMethod
2424exposing vars =
2525 Module.ImportMethod Nothing (Var.listing vars)
26−
27−
28−-- ADDING DEFAULT IMPORTS TO A MODULE
29−
30−add
31− :: Bool
32− -> [Module.UserImport]
33− -> ([Module.DefaultImport], [Module.UserImport])
34−add needsDefaults imports =
35− (defaults, imports)
36− where
37− defaults =
38− if needsDefaults
39− then defaultImports
40− else []
src/Elm/Compiler/Module.hs+2−2
@@ -18,7 +18,7 @@ import qualified Data.Text as Text
1818import System.FilePath ((</>))
1919
2020import qualified AST.Module as Module
21−import qualified Transform.AddDefaultImports as Defaults
21+import qualified Elm.Compiler.Imports as Imports
2222import qualified Elm.Compiler.Type as Type
2323import qualified Elm.Compiler.Type.Extract as Extract
2424
@@ -34,7 +34,7 @@ newtype Name = Name [String]
3434
3535defaultImports :: [Name]
3636defaultImports =
37− map (Name . fst) Defaults.defaultImports
37+ map (Name . fst) Imports.defaults
3838
3939
4040-- POKING AROUND INTERFACES
src/Parse/Parse.hs+2−2
@@ -9,13 +9,13 @@ import qualified Text.Parsec.Error as Parsec
99
1010import qualified AST.Declaration as D
1111import qualified AST.Module as M
12+import qualified Elm.Compiler.Imports as Imports
1213import Parse.Helpers
1314import qualified Parse.Module as Module
1415import qualified Parse.Declaration as Decl
1516import qualified Reporting.Region as R
1617import qualified Reporting.Error.Syntax as Error
1718import qualified Reporting.Result as Result
18−import qualified Transform.AddDefaultImports as DefaultImports
1919import qualified Validate
2020
2121
@@ -31,7 +31,7 @@ program needsDefaults table src =
3131 validDecls <- Validate.declarations sourceDecls
3232
3333 let ammendedImports =
34− DefaultImports.add needsDefaults imports
34+ (if needsDefaults then Imports.defaults else [], imports)
3535
3636 return (M.Module names filePath exports ammendedImports validDecls)
3737