on master help sign in
Update for most recent Json API
commit0a27d89fa9785ee44955a52f015495f102dea730 authorEvan Czaplicki <info@elm-lang.org> dateMon 10 Nov 2014, 17:04 (12 years ago) parent914e047
3 files changed+20−12
src/AST/Variable.hs+18−7 src/Generate/JavaScript/Ports.hs+1−4 src/Type/ExtraChecks.hs+1−1
src/AST/Variable.hs+18−7
@@ -32,45 +32,56 @@ is :: [String] -> String -> Canonical -> Bool
3232is home name var =
3333 var == Canonical (Module home) name
3434
35−isJavaScript :: Canonical -> Bool
36−isJavaScript = is ["JavaScript"] "Value"
3735
3836isJson :: Canonical -> Bool
39−isJson = is ["Json"] "Value"
37+isJson =
38+ is ["Json", "Encode"] "Json"
39+
4040
4141isMaybe :: Canonical -> Bool
42−isMaybe = is ["Maybe"] "Maybe"
42+isMaybe =
43+ is ["Maybe"] "Maybe"
4344
4445isArray :: Canonical -> Bool
45−isArray = is ["Array"] "Array"
46+isArray =
47+ is ["Array"] "Array"
48+
4649
4750isSignal :: Canonical -> Bool
48−isSignal = is ["Signal"] "Signal"
51+isSignal =
52+ is ["Signal"] "Signal"
53+
4954
5055isList :: Canonical -> Bool
5156isList v =
5257 v == Canonical BuiltIn "_List"
5358
59+
5460isTuple :: Canonical -> Bool
5561isTuple v =
5662 case v of
5763 Canonical BuiltIn name -> Help.isTuple name
5864 _ -> False
5965
66+
6067isPrimitive :: Canonical -> Bool
6168isPrimitive v =
6269 case v of
6370 Canonical BuiltIn name -> name `elem` ["Int","Float","String","Bool"]
6471 _ -> False
6572
73+
6674isPrim :: String -> Canonical -> Bool
6775isPrim prim v =
6876 case v of
6977 Canonical BuiltIn name -> name == prim
7078 _ -> False
7179
80+
7281isText :: Canonical -> Bool
73−isText = is ["Text"] "Text"
82+isText =
83+ is ["Text"] "Text"
84+
7485
7586class ToString a where
7687 toString :: a -> String
src/Generate/JavaScript/Ports.hs+1−4
@@ -73,11 +73,8 @@ inc tipe x =
7373 from checks = check x checks x
7474
7575 Type name
76− | Var.isJavaScript name ->
77− x
78−
7976 | Var.isJson name ->
80− V.value ["Native","Json"] "fromJS" <| x
77+ x
8178
8279 | Var.isTuple name ->
8380 incomingTuple [] x
src/Type/ExtraChecks.hs+1−1
@@ -63,7 +63,7 @@ portTypes expr =
6363 ST.Aliased _ t -> valid t
6464
6565 ST.Type v ->
66− case any ($ v) [ V.isJson, V.isPrimitive, V.isTuple, V.isJavaScript ] of
66+ case any ($ v) [ V.isJson, V.isPrimitive, V.isTuple ] of
6767 True -> return ()
6868 False -> err "an unsupported type"
6969