on master help sign in
Special type for vars that are only top-level
8a43c40JoeyEremondi
src/AST/Expression/Canonical.hs+1−1
@@ -30,7 +30,7 @@ data Def
30
30
31data Facts =
31data Facts =
32 Facts
32 Facts
33− { freeVariables :: [Var.Canonical]
33+ { freeVariables :: [Var.TopLevelVar]
34 } deriving (Eq, Ord, Show)
34 } deriving (Eq, Ord, Show)
35
35
36
36
src/AST/Expression/Optimized.hs+1−1
@@ -27,7 +27,7 @@ data Def
27
27
28data Facts = Facts
28data Facts = Facts
29 { tailRecursionDetails :: Maybe String
29 { tailRecursionDetails :: Maybe String
30− , freeVariables :: [Var.Canonical]
30+ , freeVariables :: [Var.TopLevelVar]
31 }
31 }
32 deriving (Show)
32 deriving (Show)
33
33
src/AST/Variable.hs+7
@@ -17,6 +17,13 @@ newtype Raw = Raw String
17 deriving (Eq, Ord, Show)
17 deriving (Eq, Ord, Show)
18
18
19
19
20+data TopLevelVar =
21+ TopLevelVar
22+ { topVarModule :: [String]
23+ , topVarName :: String
24+ } deriving (Eq, Ord, Show)
25+
26+
20data Home
27data Home
21 = BuiltIn
28 = BuiltIn
22 | Module [String]
29 | Module [String]