git.iko.soy/rowtype-yoga/purescript-native
on golang help sign in
Move comments module out
bf48358Phil Freeman
purescript.cabal+1
@@ -66,6 +66,7 @@ library
66 Language.PureScript.CoreFn.Meta
66 Language.PureScript.CoreFn.Meta
67 Language.PureScript.CoreFn.Module
67 Language.PureScript.CoreFn.Module
68 Language.PureScript.CoreFn.Traversals
68 Language.PureScript.CoreFn.Traversals
69+ Language.PureScript.Comments
69 Language.PureScript.DeadCodeElimination
70 Language.PureScript.DeadCodeElimination
70 Language.PureScript.Environment
71 Language.PureScript.Environment
71 Language.PureScript.Errors
72 Language.PureScript.Errors
src/Language/PureScript.hs+1
@@ -33,6 +33,7 @@ import Control.Monad.Error
33import System.FilePath ((</>))
33import System.FilePath ((</>))
34
34
35import Language.PureScript.AST as P
35import Language.PureScript.AST as P
36+import Language.PureScript.Comments as P
36import Language.PureScript.CodeGen as P
37import Language.PureScript.CodeGen as P
37import Language.PureScript.DeadCodeElimination as P
38import Language.PureScript.DeadCodeElimination as P
38import Language.PureScript.Environment as P
39import Language.PureScript.Environment as P
src/Language/PureScript/AST/Binders.hs+1−1
@@ -20,7 +20,7 @@ import qualified Data.Data as D
20
20
21import Language.PureScript.AST.SourcePos
21import Language.PureScript.AST.SourcePos
22import Language.PureScript.Names
22import Language.PureScript.Names
23−import Language.PureScript.Parser.Lexer
23+import Language.PureScript.Comments
24
24
25-- |
25-- |
26-- Data type for binders
26-- Data type for binders
src/Language/PureScript/AST/Declarations.hs+1−1
@@ -25,7 +25,7 @@ import Language.PureScript.Types
25import Language.PureScript.Names
25import Language.PureScript.Names
26import Language.PureScript.Kinds
26import Language.PureScript.Kinds
27import Language.PureScript.TypeClassDictionaries
27import Language.PureScript.TypeClassDictionaries
28−import Language.PureScript.Parser.Lexer
28+import Language.PureScript.Comments
29import Language.PureScript.CodeGen.JS.AST
29import Language.PureScript.CodeGen.JS.AST
30import Language.PureScript.Environment
30import Language.PureScript.Environment
31
31
src/Language/PureScript/CodeGen/Externs.hs+1−1
@@ -30,7 +30,7 @@ import Language.PureScript.Names
30import Language.PureScript.Pretty
30import Language.PureScript.Pretty
31import Language.PureScript.TypeClassDictionaries
31import Language.PureScript.TypeClassDictionaries
32import Language.PureScript.Types
32import Language.PureScript.Types
33−import Language.PureScript.Parser.Lexer
33+import Language.PureScript.Comments
34
34
35-- |
35-- |
36-- Generate foreign imports for all declarations in a module
36-- Generate foreign imports for all declarations in a module
src/Language/PureScript/CodeGen/JS/AST.hs+1−1
@@ -19,7 +19,7 @@ module Language.PureScript.CodeGen.JS.AST where
19
19
20import Data.Data
20import Data.Data
21
21
22−import Language.PureScript.Parser.Lexer
22+import Language.PureScript.Comments
23
23
24-- |
24-- |
25-- Built-in unary operators
25-- Built-in unary operators
src/Language/PureScript/Comments.hsnew file+25
@@ -0,0 +1,25 @@
1+-----------------------------------------------------------------------------
2+--
3+-- Module : Language.PureScript.Parser.Comments
4+-- Copyright : (c) Phil Freeman 2015
5+-- License : MIT
6+--
7+-- Maintainer : Phil Freeman <paf31@cantab.net>
8+-- Stability : experimental
9+-- Portability :
10+--
11+-- |
12+-- Defines the types of source code comments
13+--
14+-----------------------------------------------------------------------------
15+
16+{-# LANGUAGE DeriveDataTypeable #-}
17+
18+module Language.PureScript.Comments where
19+
20+import qualified Data.Data as D
21+
22+data Comment
23+ = LineComment String
24+ | BlockComment String
25+ deriving (Show, Eq, Ord, D.Data, D.Typeable)
src/Language/PureScript/CoreFn/Ann.hs+1−1
@@ -17,7 +17,7 @@ module Language.PureScript.CoreFn.Ann where
17import Language.PureScript.AST.SourcePos
17import Language.PureScript.AST.SourcePos
18import Language.PureScript.CoreFn.Meta
18import Language.PureScript.CoreFn.Meta
19import Language.PureScript.Types
19import Language.PureScript.Types
20−import Language.PureScript.Parser.Lexer
20+import Language.PureScript.Comments
21
21
22-- |
22-- |
23-- Type alias for basic annotations
23-- Type alias for basic annotations
src/Language/PureScript/CoreFn/Desugar.hs+1−1
@@ -33,7 +33,7 @@ import Language.PureScript.Environment
33import Language.PureScript.Names
33import Language.PureScript.Names
34import Language.PureScript.Sugar.TypeClasses (typeClassMemberName, superClassDictionaryNames)
34import Language.PureScript.Sugar.TypeClasses (typeClassMemberName, superClassDictionaryNames)
35import Language.PureScript.Types
35import Language.PureScript.Types
36−import Language.PureScript.Parser.Lexer
36+import Language.PureScript.Comments
37import qualified Language.PureScript.AST as A
37import qualified Language.PureScript.AST as A
38
38
39-- |
39-- |
src/Language/PureScript/Parser/Common.hs+1
@@ -20,6 +20,7 @@ module Language.PureScript.Parser.Common where
20import Control.Applicative
20import Control.Applicative
21import Control.Monad (guard)
21import Control.Monad (guard)
22
22
23+import Language.PureScript.Comments
23import Language.PureScript.Parser.Lexer
24import Language.PureScript.Parser.Lexer
24import Language.PureScript.Parser.State
25import Language.PureScript.Parser.State
25import Language.PureScript.Names
26import Language.PureScript.Names
src/Language/PureScript/Parser/Declarations.hs+2−1
@@ -35,8 +35,9 @@ import Control.Applicative
35import Control.Arrow ((+++))
35import Control.Arrow ((+++))
36
36
37import Language.PureScript.Kinds
37import Language.PureScript.Kinds
38−import Language.PureScript.Parser.Common
39import Language.PureScript.AST
38import Language.PureScript.AST
39+import Language.PureScript.Comments
40+import Language.PureScript.Parser.Common
40import Language.PureScript.Parser.Types
41import Language.PureScript.Parser.Types
41import Language.PureScript.Parser.Kinds
42import Language.PureScript.Parser.Kinds
42import Language.PureScript.Parser.Lexer
43import Language.PureScript.Parser.Lexer
src/Language/PureScript/Parser/Lexer.hs+2−9
@@ -13,11 +13,10 @@
13--
13--
14-----------------------------------------------------------------------------
14-----------------------------------------------------------------------------
15
15
16−{-# LANGUAGE TupleSections, DeriveDataTypeable #-}
16+{-# LANGUAGE TupleSections #-}
17
17
18module Language.PureScript.Parser.Lexer
18module Language.PureScript.Parser.Lexer
19 ( PositionedToken(..)
19 ( PositionedToken(..)
20− , Comment(..)
21 , Token()
20 , Token()
22 , TokenParser()
21 , TokenParser()
23 , lex
22 , lex
@@ -75,19 +74,13 @@ import Prelude hiding (lex)
75import Control.Monad (void, guard)
74import Control.Monad (void, guard)
76import Data.Functor.Identity
75import Data.Functor.Identity
77
76
78−import qualified Data.Data as D
79−
80import Control.Applicative
77import Control.Applicative
81
78
82import Language.PureScript.Parser.State
79import Language.PureScript.Parser.State
80+import Language.PureScript.Comments
83
81
84import qualified Text.Parsec as P
82import qualified Text.Parsec as P
85import qualified Text.Parsec.Token as PT
83import qualified Text.Parsec.Token as PT
86−
87−data Comment
88− = LineComment String
89− | BlockComment String
90− deriving (Show, Eq, Ord, D.Data, D.Typeable)
91
84
92data Token
85data Token
93 = LParen
86 = LParen
src/Language/PureScript/Pretty/JS.hs+1−1
@@ -29,7 +29,7 @@ import qualified Control.Arrow as A
29import Language.PureScript.CodeGen.JS.AST
29import Language.PureScript.CodeGen.JS.AST
30import Language.PureScript.CodeGen.JS.Common
30import Language.PureScript.CodeGen.JS.Common
31import Language.PureScript.Pretty.Common
31import Language.PureScript.Pretty.Common
32−import Language.PureScript.Parser.Lexer (Comment(..))
32+import Language.PureScript.Comments
33
33
34import Numeric
34import Numeric
35
35