on master help sign in
Only generate message types for now
7894dacEvan Czaplicki
src/Elm/Compiler/Type.hs+4−6
@@ -32,8 +32,7 @@ data Type
32
32
33data Program =
33data Program =
34 Program
34 Program
35− { _model :: Type
36− , _msg :: Type
35+ { _message :: Type
37 , _aliases :: [( String, [String], Type )]
36 , _aliases :: [( String, [String], Type )]
38 , _unions :: [( String, [String], [(String, [Type])] )]
37 , _unions :: [( String, [String], [(String, [Type])] )]
39 }
38 }
@@ -216,10 +215,9 @@ fromRawType (A.A _ astType) =
216
215
217
216
218instance Json.ToJSON Program where
217instance Json.ToJSON Program where
219− toJSON (Program model msg aliases unions) =
218+ toJSON (Program msg aliases unions) =
220 Json.object
219 Json.object
221− [ "model" .= model
222− , "message" .= msg
220+ [ "message" .= msg
223 , "aliases" .= Json.object (map toAliasField aliases)
221 , "aliases" .= Json.object (map toAliasField aliases)
224 , "unions" .= Json.object (map toUnionField unions)
222 , "unions" .= Json.object (map toUnionField unions)
225 ]
223 ]
@@ -237,7 +235,7 @@ toUnionField :: ( String, [String], [(String, [Type])] ) -> Json.Pair
237toUnionField ( name, args, constructors ) =
235toUnionField ( name, args, constructors ) =
238 Text.pack name .= Json.object
236 Text.pack name .= Json.object
239 [ "args" .= args
237 [ "args" .= args
240− , "type" .= Json.object (map toCtorObject constructors)
238+ , "tags" .= Json.object (map toCtorObject constructors)
241 ]
239 ]
242
240
243
241
src/Elm/Compiler/Type/Extract.hs+3−6
@@ -74,18 +74,15 @@ extractProgram interfaces name =
74 do iface <- Map.lookup name interfaces
74 do iface <- Map.lookup name interfaces
75 mainType <- Map.lookup "main" (Module.iTypes iface)
75 mainType <- Map.lookup "main" (Module.iTypes iface)
76 case mainType of
76 case mainType of
77− T.App _program [_flags, model, msg] ->
77+ T.App _program [_flags, _model, msg] ->
78 let
78 let
79− (modelType, modelDeps) =
80− Writer.runWriter (extractHelp model)
81−
82 (msgType, msgDeps) =
79 (msgType, msgDeps) =
83 Writer.runWriter (extractHelp msg)
80 Writer.runWriter (extractHelp msg)
84
81
85 (aliases, unions) =
82 (aliases, unions) =
86− extractTransitive interfaces mempty (mappend modelDeps msgDeps)
83+ extractTransitive interfaces mempty msgDeps
87 in
84 in
88− Just $ Program modelType msgType aliases unions
85+ Just $ Program msgType aliases unions
89
86
90 _ ->
87 _ ->
91 Nothing
88 Nothing