@@ -1,5 +1,4 @@
11{-# OPTIONS_GHC -Wall #-}
2−{-# LANGUAGE OverloadedStrings #-}
32module AST.Source
43 ( Expr, Expr_(..), VarType(..)
54 , Def(..)
@@ -26,12 +25,13 @@ module AST.Source
2625
2726
2827import Data.Name (Name)
29−import qualified Data.Utf8 as Utf8
30−import Data.Word (Word8)
31−import Foreign.Ptr (Ptr)
28+import qualified Data.Name as Name
3229
3330import qualified AST.Utils.Binop as Binop
3431import qualified AST.Utils.Shader as Shader
32+import qualified Elm.Float as EF
33+import qualified Elm.String as ES
34+import qualified Parse.Primitives as P
3535import qualified Reporting.Annotation as A
3636
3737
@@ -43,10 +43,10 @@ type Expr = A.Located Expr_
4343
4444
4545data Expr_
46− = Chr Utf8.String
47− | Str Utf8.String
46+ = Chr ES.String
47+ | Str ES.String
4848 | Int Int
49− | Float (Utf8.Under256 Float)
49+ | Float EF.Float
5050 | Var VarType Name
5151 | VarQual VarType Name Name
5252 | List [Expr]
@@ -97,8 +97,8 @@ data Pattern_
9797 | PCtorQual A.Region Name Name [Pattern]
9898 | PList [Pattern]
9999 | PCons Pattern Pattern
100− | PChr Utf8.String
101− | PStr Utf8.String
100+ | PChr ES.String
101+ | PStr ES.String
102102 | PInt Int
103103
104104
@@ -128,7 +128,7 @@ data Module =
128128 Module
129129 { _name :: Maybe (A.Located Name)
130130 , _exports :: A.Located Exposing
131− , _docs :: Maybe Docs
131+ , _docs :: Docs
132132 , _imports :: [Import]
133133 , _values :: [A.Located Value]
134134 , _unions :: [A.Located Union]
@@ -145,13 +145,7 @@ getName (Module maybeName _ _ _ _ _ _ _ _) =
145145 name
146146
147147 Nothing ->
148− defaultModuleName
149−
150−
151−{-# NOINLINE defaultModuleName #-}
152−defaultModuleName :: Name
153−defaultModuleName =
154− "Main"
148+ Name._Main
155149
156150
157151getImportName :: Import -> Name
@@ -186,18 +180,13 @@ data Manager
186180 | Fx (A.Located Name) (A.Located Name)
187181
188182
189−data Docs =
190− Docs
191− { _overview :: Comment
192− , _comments :: [(Name, Comment)]
193− }
183+data Docs
184+ = NoDocs A.Region
185+ | YesDocs Comment [(Name, Comment)]
194186
195187
196−data Comment =
197− Comment
198− { _start :: Ptr Word8
199− , _end :: Ptr Word8
200− }
188+newtype Comment =
189+ Comment P.Snippet
201190
202191
203192