on master help sign in
Switch to Data.Utf8 for String and Char across all AST phases
2e24402Evan Czaplicki
compiler/src/AST/Canonical.hs+5−4
@@ -58,6 +58,7 @@ import qualified Data.ByteString as B
58import qualified Data.List as List
58import qualified Data.List as List
59import qualified Data.Map as Map
59import qualified Data.Map as Map
60import Data.Text (Text)
60import Data.Text (Text)
61+import Data.Utf8 (Utf8)
61
62
62import qualified AST.Utils.Binop as Binop
63import qualified AST.Utils.Binop as Binop
63import qualified AST.Module.Name as ModuleName
64import qualified AST.Module.Name as ModuleName
@@ -85,8 +86,8 @@ data Expr_
85 | VarCtor CtorOpts ModuleName.Canonical N.Name Index.ZeroBased Annotation
86 | VarCtor CtorOpts ModuleName.Canonical N.Name Index.ZeroBased Annotation
86 | VarDebug ModuleName.Canonical N.Name Annotation
87 | VarDebug ModuleName.Canonical N.Name Annotation
87 | VarOperator N.Name ModuleName.Canonical N.Name Annotation -- CACHE real name for optimization
88 | VarOperator N.Name ModuleName.Canonical N.Name Annotation -- CACHE real name for optimization
88− | Chr Text
89+ | Chr Utf8
89− | Str Text
90+ | Str Utf8
90 | Int Int
91 | Int Int
91 | Float Double
92 | Float Double
92 | List [Expr]
93 | List [Expr]
@@ -153,8 +154,8 @@ data Pattern_
153 | PList [Pattern]
154 | PList [Pattern]
154 | PCons Pattern Pattern
155 | PCons Pattern Pattern
155 | PBool Union Bool
156 | PBool Union Bool
156− | PChr Text
157+ | PChr Utf8
157− | PStr Text
158+ | PStr Utf8
158 | PInt Int
159 | PInt Int
159 | PCtor
160 | PCtor
160 { _p_home :: ModuleName.Canonical
161 { _p_home :: ModuleName.Canonical
compiler/src/AST/Optimized.hs+3−2
@@ -24,6 +24,7 @@ import qualified Data.ByteString as BS
24import qualified Data.Map as Map
24import qualified Data.Map as Map
25import qualified Data.Set as Set
25import qualified Data.Set as Set
26import Data.Text (Text)
26import Data.Text (Text)
27+import Data.Utf8 (Utf8)
27
28
28import qualified AST.Canonical as Can
29import qualified AST.Canonical as Can
29import qualified AST.Module.Name as ModuleName
30import qualified AST.Module.Name as ModuleName
@@ -40,8 +41,8 @@ import qualified Reporting.Region as R
40
41
41data Expr
42data Expr
42 = Bool Bool
43 = Bool Bool
43− | Chr Text
44+ | Chr Utf8
44− | Str Text
45+ | Str Utf8
45 | Int Int
46 | Int Int
46 | Float Double
47 | Float Double
47 | VarLocal N.Name
48 | VarLocal N.Name
compiler/src/AST/Valid.hs+3−2
@@ -18,6 +18,7 @@ module AST.Valid
18
18
19import qualified Data.Map as Map
19import qualified Data.Map as Map
20import Data.Text (Text)
20import Data.Text (Text)
21+import Data.Utf8 (Utf8)
21
22
22import qualified AST.Utils.Binop as Binop
23import qualified AST.Utils.Binop as Binop
23import qualified AST.Source as Src
24import qualified AST.Source as Src
@@ -35,8 +36,8 @@ type Expr = A.Located Expr_
35
36
36
37
37data Expr_
38data Expr_
38− = Chr Text
39+ = Chr Utf8
39− | Str Text
40+ | Str Utf8
40 | Int Int
41 | Int Int
41 | Float Double
42 | Float Double
42 | Var Src.VarType N.Name
43 | Var Src.VarType N.Name