packages feed

haskelm 0.0.2 → 0.0.3

raw patch · 2 files changed

+280/−1 lines, 2 files

Files

haskelm.cabal view
@@ -1,5 +1,5 @@ Name:                haskelm-Version:             0.0.2+Version:             0.0.3 Synopsis:            Elm to Haskell translation Description:         Library and binary to translate Haskell code into Elm code Homepage:            http://github.com/JoeyEremondi/haskelm@@ -35,6 +35,7 @@                        Language.Elm.TH.HToE                        Language.Elm.TH.Json                        Language.Elm.TH.Util+                       Language.Elm.TH.BaseDecs    Build-depends:       aeson,                        base >=4.2 && <5,
+ src/Language/Elm/TH/BaseDecs.hs view
@@ -0,0 +1,278 @@+module Language.Elm.TH.BaseDecs where++import SourceSyntax.Location+import SourceSyntax.Expression+import SourceSyntax.Declaration+import SourceSyntax.Literal+import SourceSyntax.Pattern+import SourceSyntax.Location+++baseDecs = [SourceSyntax.Declaration.Definition+          (SourceSyntax.Expression.Definition+             (SourceSyntax.Pattern.PVar "getType")+             (SourceSyntax.Location.L+                (SourceSyntax.Location.Span+                   (SourceSyntax.Location.Pos (1) (1))+                   (SourceSyntax.Location.Pos (1) (1)) (""))+                (SourceSyntax.Expression.Lambda+                   (SourceSyntax.Pattern.PData+                      "Object" [SourceSyntax.Pattern.PVar "d"])+                   (SourceSyntax.Location.L+                      (SourceSyntax.Location.Span+                         (SourceSyntax.Location.Pos (1) (1))+                         (SourceSyntax.Location.Pos (1) (1)) (""))+                      (SourceSyntax.Expression.Case+                         (SourceSyntax.Location.L+                            (SourceSyntax.Location.NoSpan "")+                            (SourceSyntax.Expression.App+                               (SourceSyntax.Location.L+                                  (SourceSyntax.Location.NoSpan "")+                                  (SourceSyntax.Expression.App+                                     (SourceSyntax.Location.L+                                        (SourceSyntax.Location.Span+                                           (SourceSyntax.Location.Pos (1) (1))+                                           (SourceSyntax.Location.Pos (1) (1))+                                           (""))+                                        (SourceSyntax.Expression.Var "Dict.lookup"))+                                     (SourceSyntax.Location.L+                                        (SourceSyntax.Location.Span+                                           (SourceSyntax.Location.Pos (1) (1))+                                           (SourceSyntax.Location.Pos (1) (1))+                                           (""))+                                        (SourceSyntax.Expression.Literal+                                           (SourceSyntax.Literal.Str "__type")))))+                               (SourceSyntax.Location.L+                                  (SourceSyntax.Location.Span+                                     (SourceSyntax.Location.Pos (1) (1))+                                     (SourceSyntax.Location.Pos (1) (1))+                                     (""))+                                  (SourceSyntax.Expression.Var "d"))))+                         [(SourceSyntax.Pattern.PData+                             "Just"+                             [SourceSyntax.Pattern.PData+                                "Json.String"+                                [SourceSyntax.Pattern.PVar "t"]],SourceSyntax.Location.L+                                                                   (SourceSyntax.Location.Span+                                                                      (SourceSyntax.Location.Pos+                                                                         (1) (1))+                                                                      (SourceSyntax.Location.Pos+                                                                         (1) (1))+                                                                      (""))+                                                                   (SourceSyntax.Expression.Var+                                                                      "t"))]))))+             Nothing),+        SourceSyntax.Declaration.Definition+          (SourceSyntax.Expression.Definition+             (SourceSyntax.Pattern.PVar "getCtor")+             (SourceSyntax.Location.L+                (SourceSyntax.Location.Span+                   (SourceSyntax.Location.Pos (1) (1))+                   (SourceSyntax.Location.Pos (1) (1)) (""))+                (SourceSyntax.Expression.Lambda+                   (SourceSyntax.Pattern.PData+                      "Object" [SourceSyntax.Pattern.PVar "d"])+                   (SourceSyntax.Location.L+                      (SourceSyntax.Location.Span+                         (SourceSyntax.Location.Pos (1) (1))+                         (SourceSyntax.Location.Pos (1) (1)) (""))+                      (SourceSyntax.Expression.Case+                         (SourceSyntax.Location.L+                            (SourceSyntax.Location.NoSpan "")+                            (SourceSyntax.Expression.App+                               (SourceSyntax.Location.L+                                  (SourceSyntax.Location.NoSpan "")+                                  (SourceSyntax.Expression.App+                                     (SourceSyntax.Location.L+                                        (SourceSyntax.Location.Span+                                           (SourceSyntax.Location.Pos (1) (1))+                                           (SourceSyntax.Location.Pos (1) (1))+                                           (""))+                                        (SourceSyntax.Expression.Var "Dict.lookup"))+                                     (SourceSyntax.Location.L+                                        (SourceSyntax.Location.Span+                                           (SourceSyntax.Location.Pos (1) (1))+                                           (SourceSyntax.Location.Pos (1) (1))+                                           (""))+                                        (SourceSyntax.Expression.Literal+                                           (SourceSyntax.Literal.Str "__ctor")))))+                               (SourceSyntax.Location.L+                                  (SourceSyntax.Location.Span+                                     (SourceSyntax.Location.Pos (1) (1))+                                     (SourceSyntax.Location.Pos (1) (1))+                                     (""))+                                  (SourceSyntax.Expression.Var "d"))))+                         [(SourceSyntax.Pattern.PData+                             "Just"+                             [SourceSyntax.Pattern.PData+                                "Json.String"+                                [SourceSyntax.Pattern.PVar "c"]],SourceSyntax.Location.L+                                                                   (SourceSyntax.Location.Span+                                                                      (SourceSyntax.Location.Pos+                                                                         (1) (1))+                                                                      (SourceSyntax.Location.Pos+                                                                         (1) (1))+                                                                      (""))+                                                                   (SourceSyntax.Expression.Var+                                                                      "c"))]))))+             Nothing),+        SourceSyntax.Declaration.Definition+          (SourceSyntax.Expression.Definition+             (SourceSyntax.Pattern.PVar "varNamed")+             (SourceSyntax.Location.L+                (SourceSyntax.Location.Span+                   (SourceSyntax.Location.Pos (1) (1))+                   (SourceSyntax.Location.Pos (1) (1)) (""))+                (SourceSyntax.Expression.Lambda+                   (SourceSyntax.Pattern.PData+                      "Object" [SourceSyntax.Pattern.PVar "d"])+                   (SourceSyntax.Location.L+                      (SourceSyntax.Location.Span+                         (SourceSyntax.Location.Pos (1) (1))+                         (SourceSyntax.Location.Pos (1) (1)) (""))+                      (SourceSyntax.Expression.Lambda+                         (SourceSyntax.Pattern.PVar "n")+                         (SourceSyntax.Location.L+                            (SourceSyntax.Location.Span+                               (SourceSyntax.Location.Pos (1) (1))+                               (SourceSyntax.Location.Pos (1) (1)) (""))+                            (SourceSyntax.Expression.Case+                               (SourceSyntax.Location.L+                                  (SourceSyntax.Location.NoSpan "")+                                  (SourceSyntax.Expression.App+                                     (SourceSyntax.Location.L+                                        (SourceSyntax.Location.NoSpan "")+                                        (SourceSyntax.Expression.App+                                           (SourceSyntax.Location.L+                                              (SourceSyntax.Location.Span+                                                 (SourceSyntax.Location.Pos (1) (1))+                                                 (SourceSyntax.Location.Pos (1) (1))+                                                 (""))+                                              (SourceSyntax.Expression.Var "Dict.lookup"))+                                           (SourceSyntax.Location.L+                                              (SourceSyntax.Location.NoSpan "")+                                              (SourceSyntax.Expression.App+                                                 (SourceSyntax.Location.L+                                                    (SourceSyntax.Location.Span+                                                       (SourceSyntax.Location.Pos+                                                          (1) (1))+                                                       (SourceSyntax.Location.Pos+                                                          (1) (1))+                                                       (""))+                                                    (SourceSyntax.Expression.Var "show"))+                                                 (SourceSyntax.Location.L+                                                    (SourceSyntax.Location.Span+                                                       (SourceSyntax.Location.Pos+                                                          (1) (1))+                                                       (SourceSyntax.Location.Pos+                                                          (1) (1))+                                                       (""))+                                                    (SourceSyntax.Expression.Var "n"))))))+                                     (SourceSyntax.Location.L+                                        (SourceSyntax.Location.Span+                                           (SourceSyntax.Location.Pos (1) (1))+                                           (SourceSyntax.Location.Pos (1) (1))+                                           (""))+                                        (SourceSyntax.Expression.Var "d"))))+                               [(SourceSyntax.Pattern.PData+                                   "Just" [SourceSyntax.Pattern.PVar "val"],SourceSyntax.Location.L+                                                                              (SourceSyntax.Location.Span+                                                                                 (SourceSyntax.Location.Pos+                                                                                    (1)+                                                                                    (1))+                                                                                 (SourceSyntax.Location.Pos+                                                                                    (1)+                                                                                    (1))+                                                                                 (""))+                                                                              (SourceSyntax.Expression.Var+                                                                                 "val"))]))))))+             Nothing),+        SourceSyntax.Declaration.Definition+          (SourceSyntax.Expression.Definition+             (SourceSyntax.Pattern.PVar "mapJson")+             (SourceSyntax.Location.L+                (SourceSyntax.Location.NoSpan "")+                (SourceSyntax.Expression.Lambda+                   (SourceSyntax.Pattern.PVar "f")+                   (SourceSyntax.Location.L+                      (SourceSyntax.Location.NoSpan "")+                      (SourceSyntax.Expression.Lambda+                         (SourceSyntax.Pattern.PData+                            "Array" [SourceSyntax.Pattern.PVar "l"])+                         (SourceSyntax.Location.L+                            (SourceSyntax.Location.NoSpan "")+                            (SourceSyntax.Expression.App+                               (SourceSyntax.Location.L+                                  (SourceSyntax.Location.NoSpan "")+                                  (SourceSyntax.Expression.App+                                     (SourceSyntax.Location.L+                                        (SourceSyntax.Location.Span+                                           (SourceSyntax.Location.Pos (1) (1))+                                           (SourceSyntax.Location.Pos (1) (1))+                                           (""))+                                        (SourceSyntax.Expression.Var "map"))+                                     (SourceSyntax.Location.L+                                        (SourceSyntax.Location.Span+                                           (SourceSyntax.Location.Pos (1) (1))+                                           (SourceSyntax.Location.Pos (1) (1))+                                           (""))+                                        (SourceSyntax.Expression.Var "f"))))+                               (SourceSyntax.Location.L+                                  (SourceSyntax.Location.Span+                                     (SourceSyntax.Location.Pos (1) (1))+                                     (SourceSyntax.Location.Pos (1) (1))+                                     (""))+                                  (SourceSyntax.Expression.Var "l"))))))))+             Nothing),+        SourceSyntax.Declaration.Definition+          (SourceSyntax.Expression.Definition+             (SourceSyntax.Pattern.PVar "makeList")+             (SourceSyntax.Location.L+                (SourceSyntax.Location.Span+                   (SourceSyntax.Location.Pos (1) (1))+                   (SourceSyntax.Location.Pos (1) (1))+                   (""))+                (SourceSyntax.Expression.Lambda+                   (SourceSyntax.Pattern.PData+                      "Array" [SourceSyntax.Pattern.PVar "l"])+                   (SourceSyntax.Location.L+                      (SourceSyntax.Location.Span+                         (SourceSyntax.Location.Pos (1) (1))+                         (SourceSyntax.Location.Pos (1) (1))+                         (""))+                      (SourceSyntax.Expression.Var "l"))))+             Nothing),+        SourceSyntax.Declaration.Definition+          (SourceSyntax.Expression.Definition+             (SourceSyntax.Pattern.PVar "error")+             (SourceSyntax.Location.L+                (SourceSyntax.Location.Span+                   (SourceSyntax.Location.Pos (1) (1))+                   (SourceSyntax.Location.Pos (1) (1))+                   (""))+                (SourceSyntax.Expression.Lambda+                   (SourceSyntax.Pattern.PVar "s")+                   (SourceSyntax.Location.L+                      (SourceSyntax.Location.Span+                         (SourceSyntax.Location.Pos (1) (1))+                         (SourceSyntax.Location.Pos (1) (1))+                         (""))+                      (SourceSyntax.Expression.Case+                         (SourceSyntax.Location.L+                            (SourceSyntax.Location.Span+                               (SourceSyntax.Location.Pos (1) (1))+                               (SourceSyntax.Location.Pos (1) (1))+                               (""))+                            (SourceSyntax.Expression.Literal+                               (SourceSyntax.Literal.Boolean True)))+                         [(SourceSyntax.Pattern.PLiteral+                             (SourceSyntax.Literal.Boolean False),SourceSyntax.Location.L+                                                                    (SourceSyntax.Location.Span+                                                                       (SourceSyntax.Location.Pos+                                                                          (1) (1))+                                                                       (SourceSyntax.Location.Pos+                                                                          (1) (1))+                                                                       (""))+                                                                    (SourceSyntax.Expression.Var+                                                                       "s"))]))))+             Nothing)]