firefly-compiler 0.5.77 → 0.5.79

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (161) hide show
  1. package/bin/firefly.mjs +1 -1
  2. package/compiler/Builder.ff +1 -1
  3. package/compiler/Compiler.ff +7 -3
  4. package/compiler/JsEmitter.ff +1573 -623
  5. package/compiler/Main.ff +7 -2
  6. package/compiler/SourceMap.ff +149 -0
  7. package/core/Buffer.ff +2 -1
  8. package/core/BuildSystem.ff +3 -1
  9. package/core/Core.ff +4 -4
  10. package/core/Error.ff +7 -1
  11. package/core/Js.ff +17 -0
  12. package/firefly.sh +1 -1
  13. package/fireflysite/Html.ff +15 -2
  14. package/fireflysite/Main.ff +2 -1
  15. package/output/js/ff/compiler/Builder.mjs +5 -46
  16. package/output/js/ff/compiler/Builder.mjs.map +181 -0
  17. package/output/js/ff/compiler/Compiler.mjs +23 -16
  18. package/output/js/ff/compiler/Compiler.mjs.map +155 -0
  19. package/output/js/ff/compiler/Dependencies.mjs +12 -14
  20. package/output/js/ff/compiler/Dependencies.mjs.map +128 -0
  21. package/output/js/ff/compiler/DependencyLock.mjs +1 -4
  22. package/output/js/ff/compiler/DependencyLock.mjs.map +22 -0
  23. package/output/js/ff/compiler/Deriver.mjs +10 -11
  24. package/output/js/ff/compiler/Deriver.mjs.map +204 -0
  25. package/output/js/ff/compiler/Dictionaries.mjs +12 -13
  26. package/output/js/ff/compiler/Dictionaries.mjs.map +183 -0
  27. package/output/js/ff/compiler/Environment.mjs +24 -27
  28. package/output/js/ff/compiler/Environment.mjs.map +141 -0
  29. package/output/js/ff/compiler/Inference.mjs +85 -94
  30. package/output/js/ff/compiler/Inference.mjs.map +355 -0
  31. package/output/js/ff/compiler/JsEmitter.mjs +3730 -1682
  32. package/output/js/ff/compiler/JsEmitter.mjs.map +423 -0
  33. package/output/js/ff/compiler/JsImporter.mjs +9 -12
  34. package/output/js/ff/compiler/JsImporter.mjs.map +52 -0
  35. package/output/js/ff/compiler/LspHook.mjs +17 -18
  36. package/output/js/ff/compiler/LspHook.mjs.map +140 -0
  37. package/output/js/ff/compiler/Main.mjs +69 -69
  38. package/output/js/ff/compiler/Main.mjs.map +231 -0
  39. package/output/js/ff/compiler/ModuleCache.mjs +1 -4
  40. package/output/js/ff/compiler/ModuleCache.mjs.map +82 -0
  41. package/output/js/ff/compiler/Parser.mjs +58 -61
  42. package/output/js/ff/compiler/Parser.mjs.map +406 -0
  43. package/output/js/ff/compiler/Patterns.mjs +19 -22
  44. package/output/js/ff/compiler/Patterns.mjs.map +119 -0
  45. package/output/js/ff/compiler/Resolver.mjs +42 -41
  46. package/output/js/ff/compiler/Resolver.mjs.map +294 -0
  47. package/output/js/ff/compiler/SourceMap.mjs +402 -0
  48. package/output/js/ff/compiler/SourceMap.mjs.map +83 -0
  49. package/output/js/ff/compiler/Substitution.mjs +1 -4
  50. package/output/js/ff/compiler/Substitution.mjs.map +138 -0
  51. package/output/js/ff/compiler/Syntax.mjs +252 -251
  52. package/output/js/ff/compiler/Syntax.mjs.map +351 -0
  53. package/output/js/ff/compiler/Token.mjs +17 -22
  54. package/output/js/ff/compiler/Token.mjs.map +113 -0
  55. package/output/js/ff/compiler/Tokenizer.mjs +5 -12
  56. package/output/js/ff/compiler/Tokenizer.mjs.map +101 -0
  57. package/output/js/ff/compiler/Unification.mjs +32 -33
  58. package/output/js/ff/compiler/Unification.mjs.map +135 -0
  59. package/output/js/ff/compiler/Wildcards.mjs +1 -4
  60. package/output/js/ff/compiler/Wildcards.mjs.map +69 -0
  61. package/output/js/ff/compiler/Workspace.mjs +17 -16
  62. package/output/js/ff/compiler/Workspace.mjs.map +96 -0
  63. package/output/js/ff/core/Any.mjs +1 -4
  64. package/output/js/ff/core/Any.mjs.map +21 -0
  65. package/output/js/ff/core/Array.mjs +14 -15
  66. package/output/js/ff/core/Array.mjs.map +90 -0
  67. package/output/js/ff/core/AssetSystem.mjs +1 -4
  68. package/output/js/ff/core/AssetSystem.mjs.map +56 -0
  69. package/output/js/ff/core/Atomic.mjs +1 -4
  70. package/output/js/ff/core/Atomic.mjs.map +24 -0
  71. package/output/js/ff/core/Bool.mjs +4 -9
  72. package/output/js/ff/core/Bool.mjs.map +19 -0
  73. package/output/js/ff/core/BrowserSystem.mjs +1 -8
  74. package/output/js/ff/core/BrowserSystem.mjs.map +47 -0
  75. package/output/js/ff/core/Buffer.mjs +18 -17
  76. package/output/js/ff/core/Buffer.mjs.map +123 -0
  77. package/output/js/ff/core/BuildSystem.mjs +7 -10
  78. package/output/js/ff/core/BuildSystem.mjs.map +87 -0
  79. package/output/js/ff/core/Channel.mjs +1 -4
  80. package/output/js/ff/core/Channel.mjs.map +67 -0
  81. package/output/js/ff/core/Char.mjs +1 -8
  82. package/output/js/ff/core/Char.mjs.map +21 -0
  83. package/output/js/ff/core/Core.mjs +9 -16
  84. package/output/js/ff/core/Core.mjs.map +38 -0
  85. package/output/js/ff/core/Crypto.mjs +1 -4
  86. package/output/js/ff/core/Crypto.mjs.map +65 -0
  87. package/output/js/ff/core/Date.mjs +8 -7
  88. package/output/js/ff/core/Date.mjs.map +168 -0
  89. package/output/js/ff/core/Duration.mjs +4 -9
  90. package/output/js/ff/core/Duration.mjs.map +18 -0
  91. package/output/js/ff/core/Equal.mjs +9 -14
  92. package/output/js/ff/core/Equal.mjs.map +22 -0
  93. package/output/js/ff/core/Error.mjs +33 -10
  94. package/output/js/ff/core/Error.mjs.map +34 -0
  95. package/output/js/ff/core/FileHandle.mjs +1 -8
  96. package/output/js/ff/core/FileHandle.mjs.map +32 -0
  97. package/output/js/ff/core/Float.mjs +4 -5
  98. package/output/js/ff/core/Float.mjs.map +93 -0
  99. package/output/js/ff/core/HttpClient.mjs +1 -4
  100. package/output/js/ff/core/HttpClient.mjs.map +62 -0
  101. package/output/js/ff/core/Int.mjs +4 -9
  102. package/output/js/ff/core/Int.mjs.map +49 -0
  103. package/output/js/ff/core/IntMap.mjs +3 -6
  104. package/output/js/ff/core/IntMap.mjs.map +52 -0
  105. package/output/js/ff/core/Js.mjs +29 -8
  106. package/output/js/ff/core/Js.mjs.map +125 -0
  107. package/output/js/ff/core/JsSystem.mjs +1 -8
  108. package/output/js/ff/core/JsSystem.mjs.map +59 -0
  109. package/output/js/ff/core/JsValue.mjs +23 -42
  110. package/output/js/ff/core/JsValue.mjs.map +155 -0
  111. package/output/js/ff/core/Json.mjs +25 -26
  112. package/output/js/ff/core/Json.mjs.map +134 -0
  113. package/output/js/ff/core/List.mjs +11 -12
  114. package/output/js/ff/core/List.mjs.map +123 -0
  115. package/output/js/ff/core/Lock.mjs +7 -14
  116. package/output/js/ff/core/Lock.mjs.map +52 -0
  117. package/output/js/ff/core/Log.mjs +1 -8
  118. package/output/js/ff/core/Log.mjs.map +26 -0
  119. package/output/js/ff/core/Map.mjs +6 -7
  120. package/output/js/ff/core/Map.mjs.map +67 -0
  121. package/output/js/ff/core/NodeSystem.mjs +11 -14
  122. package/output/js/ff/core/NodeSystem.mjs.map +137 -0
  123. package/output/js/ff/core/Nothing.mjs +1 -10
  124. package/output/js/ff/core/Nothing.mjs.map +11 -0
  125. package/output/js/ff/core/Option.mjs +10 -15
  126. package/output/js/ff/core/Option.mjs.map +67 -0
  127. package/output/js/ff/core/Ordering.mjs +12 -13
  128. package/output/js/ff/core/Ordering.mjs.map +48 -0
  129. package/output/js/ff/core/Pair.mjs +8 -13
  130. package/output/js/ff/core/Pair.mjs.map +48 -0
  131. package/output/js/ff/core/Path.mjs +5 -14
  132. package/output/js/ff/core/Path.mjs.map +178 -0
  133. package/output/js/ff/core/Queue.mjs +1 -4
  134. package/output/js/ff/core/Queue.mjs.map +45 -0
  135. package/output/js/ff/core/Random.mjs +1 -4
  136. package/output/js/ff/core/Random.mjs.map +79 -0
  137. package/output/js/ff/core/RbMap.mjs +1 -16
  138. package/output/js/ff/core/RbMap.mjs.map +92 -0
  139. package/output/js/ff/core/Serializable.mjs +17 -22
  140. package/output/js/ff/core/Serializable.mjs.map +73 -0
  141. package/output/js/ff/core/Set.mjs +6 -7
  142. package/output/js/ff/core/Set.mjs.map +45 -0
  143. package/output/js/ff/core/Show.mjs +11 -20
  144. package/output/js/ff/core/Show.mjs.map +29 -0
  145. package/output/js/ff/core/SourceLocation.mjs +7 -8
  146. package/output/js/ff/core/SourceLocation.mjs.map +41 -0
  147. package/output/js/ff/core/Stream.mjs +1 -4
  148. package/output/js/ff/core/Stream.mjs.map +92 -0
  149. package/output/js/ff/core/String.mjs +14 -19
  150. package/output/js/ff/core/String.mjs.map +106 -0
  151. package/output/js/ff/core/StringMap.mjs +3 -6
  152. package/output/js/ff/core/StringMap.mjs.map +52 -0
  153. package/output/js/ff/core/Task.mjs +1 -8
  154. package/output/js/ff/core/Task.mjs.map +79 -0
  155. package/output/js/ff/core/Try.mjs +3 -6
  156. package/output/js/ff/core/Try.mjs.map +41 -0
  157. package/output/js/ff/core/Unit.mjs +5 -12
  158. package/output/js/ff/core/Unit.mjs.map +18 -0
  159. package/package.json +1 -2
  160. package/vscode/package.json +1 -1
  161. package/webserver/WebServer.ff +1 -1
@@ -1,5 +1,3 @@
1
-
2
-
3
1
  import * as ff_compiler_DependencyLock from "../../ff/compiler/DependencyLock.mjs"
4
2
 
5
3
  import * as ff_core_Any from "../../ff/core/Any.mjs"
@@ -101,8 +99,6 @@ export function DependencyLock(doneLocks_, task_) {
101
99
  return {doneLocks_, task_};
102
100
  }
103
101
 
104
-
105
-
106
102
  export function new_(task_) {
107
103
  return ff_compiler_DependencyLock.DependencyLock(ff_core_StringMap.new_(), task_)
108
104
  }
@@ -130,3 +126,4 @@ return (await body_($task))
130
126
  }
131
127
 
132
128
 
129
+ //# sourceMappingURL=DependencyLock.mjs.map
@@ -0,0 +1,22 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [
4
+ "../../../../../compiler/DependencyLock.ff"
5
+ ],
6
+ "sourcesContent": [
7
+ "capability DependencyLock(\r\n doneLocks: StringMap[Lock]\r\n task: Task\r\n)\r\n\r\nnew(task: Task): DependencyLock {\r\n DependencyLock(StringMap.new(), task)\r\n}\r\n\r\nextend self: DependencyLock {\r\n do[T](doneFile: String, body: () => T): T {\r\n let lock = self.doneLocks.getOrSet(doneFile) {self.task.lock()}\r\n lock.do {\r\n body()\r\n }\r\n }\r\n}\r\n"
8
+ ],
9
+ "names": [
10
+ "DependencyLock",
11
+ "doneLocks",
12
+ "task",
13
+ "new",
14
+ "do",
15
+ "self",
16
+ "doneFile",
17
+ "body",
18
+ "lock",
19
+ "getOrSet"
20
+ ],
21
+ "mappings": "A;;A;;A;;A;;A;;A;;A;;A;;A;;A;;A;;A;;A;;A;;A;;A;;A;;A;;A;;A;;A;;A;;A;;A;;A;;A;;A;;A;;A;;A;;A;;A;;A;;A;;A;;A;;A;;A;;A;;A;;A;;A;;A;;A;;A;;A;;A;;A;;AAAW;AAAA,gBAAAA,cAAA,CACPC,U,EACAC,KAFO;AAAA,QACPD,U,EACAC,KAFO;AAAA;;A,OAKX,SAAAC,IAAA,CAAID,KAAJ,CAAA;AACI,OAAAF,yCAAA,CAAyBG,sBAAA,CAAA,C,EAAOD,KAAhC;AADJ;;A,OAAA,eAAAC,KAAA,CAAID,K,EAAJ,KAAA,CAAA;AACI,OAAAF,yCAAA,CAAyBG,sBAAA,CAAA,C,EAAOD,KAAhC;AADJ;;AAIO,OACH,SAAAE,iBAAA,CADGC,K,EACGC,S,EAAkBC,KAAxB,CAAA;AACQ,MAAAC,KAAA,GAAsBC,oCAAA,CAAfJ,KAAK,CAAAJ,U,EAAmBK,S,EAAU,CAAA,CAAA;AAAW,OAAAE,sBAAA,CAAVH,KAAK,CAAAH,KAAK;AAAX,EAAnB,CAAtB;AACC,OAAAE,oBAAA,CAALI,K,EAAQ,CAAA,CAAA;AACJ,OAAAD,KAAA,CAAA;AADI,EAAH;AAFT;;AADG,OACH,eAAAH,kBAAA,CADGC,K,EACGC,S,EAAkBC,K,EAAxB,KAAA,CAAA;AACQ,MAAAC,KAAA,GAAsB,OAAAC,qCAAA,CAAfJ,KAAK,CAAAJ,U,EAAmBK,S,EAAU,CAAA,MAAA,CAAA,KAAA;AAAW,OAAA,OAAAE,uBAAA,CAAVH,KAAK,CAAAH,K,EAAK,KAAA,CAAA;AAAX,E,EAAnB,KAAA,CAAA,CAAtB;AACC,OAAA,OAAAE,qBAAA,CAALI,K,EAAQ,CAAA,MAAA,CAAA,KAAA;AACJ,OAAA,OAAAD,KAAA,CAAA,KAAA,CAAA;AADI,E,EAAH,KAAA,CAAA;AAFT"
22
+ }
@@ -1,5 +1,3 @@
1
-
2
-
3
1
  import * as ff_compiler_Deriver from "../../ff/compiler/Deriver.mjs"
4
2
 
5
3
  import * as ff_compiler_Syntax from "../../ff/compiler/Syntax.mjs"
@@ -104,8 +102,6 @@ export function Deriver() {
104
102
  return Deriver$;
105
103
  }
106
104
 
107
-
108
-
109
105
  export function new_() {
110
106
  return ff_compiler_Deriver.Deriver()
111
107
  }
@@ -932,7 +928,7 @@ return ff_core_Any.internalAnyTag_((("ff:compiler/Deriver.Deriver" + "[") + "]")
932
928
  },
933
929
  async anyTag_$($task) {
934
930
  return ff_core_Any.internalAnyTag_((("ff:compiler/Deriver.Deriver" + "[") + "]"))
935
- }
931
+ },
936
932
  };
937
933
 
938
934
  export const ff_core_Show_Show$ff_compiler_Deriver_Deriver = {
@@ -949,7 +945,7 @@ const value_a = value_;
949
945
  const z_ = value_a;
950
946
  return "Deriver"
951
947
  }
952
- }
948
+ },
953
949
  };
954
950
 
955
951
  export const ff_core_Equal_Equal$ff_compiler_Deriver_Deriver = {
@@ -972,7 +968,7 @@ return true
972
968
  {
973
969
  return true
974
970
  }
975
- }
971
+ },
976
972
  };
977
973
 
978
974
  export const ff_core_Ordering_Order$ff_compiler_Deriver_Deriver = {
@@ -995,7 +991,7 @@ return ff_core_Ordering.OrderingSame()
995
991
  {
996
992
  return ff_core_Ordering.OrderingSame()
997
993
  }
998
- }
994
+ },
999
995
  };
1000
996
 
1001
997
  export const ff_core_Serializable_Serializable$ff_compiler_Deriver_Deriver = {
@@ -1021,7 +1017,7 @@ serialization_.checksum_ = ff_core_Int.Int_bitOr(((31 * serialization_.checksum_
1021
1017
  return ff_compiler_Deriver.Deriver()
1022
1018
  }
1023
1019
  {
1024
- return ff_core_Core.throw_(ff_core_Serializable.DeserializationChecksumException(), ff_core_Serializable.ff_core_Any_HasAnyTag$ff_core_Serializable_DeserializationChecksumException, ff_core_Serializable.ff_core_Show_Show$ff_core_Serializable_DeserializationChecksumException)
1020
+ throw ff_core_Js.initializeError_(ff_core_Serializable.DeserializationChecksumException(), new Error(), ff_core_Serializable.ff_core_Any_HasAnyTag$ff_core_Serializable_DeserializationChecksumException, ff_core_Serializable.ff_core_Show_Show$ff_core_Serializable_DeserializationChecksumException)
1025
1021
  }
1026
1022
  }
1027
1023
  },
@@ -1047,8 +1043,11 @@ serialization_.checksum_ = ff_core_Int.Int_bitOr(((31 * serialization_.checksum_
1047
1043
  return ff_compiler_Deriver.Deriver()
1048
1044
  }
1049
1045
  {
1050
- return ff_core_Core.throw_(ff_core_Serializable.DeserializationChecksumException(), ff_core_Serializable.ff_core_Any_HasAnyTag$ff_core_Serializable_DeserializationChecksumException, ff_core_Serializable.ff_core_Show_Show$ff_core_Serializable_DeserializationChecksumException)
1051
- }
1046
+ throw ff_core_Js.initializeError_(ff_core_Serializable.DeserializationChecksumException(), new Error(), ff_core_Serializable.ff_core_Any_HasAnyTag$ff_core_Serializable_DeserializationChecksumException, ff_core_Serializable.ff_core_Show_Show$ff_core_Serializable_DeserializationChecksumException)
1052
1047
  }
1053
1048
  }
1049
+ },
1054
1050
  };
1051
+
1052
+
1053
+ //# sourceMappingURL=Deriver.mjs.map
@@ -0,0 +1,204 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [
4
+ "../../../../../compiler/Deriver.ff"
5
+ ],
6
+ "sourcesContent": [
7
+ "import Syntax\r\n\r\ndata Deriver()\r\n\r\nnew(): Deriver {\r\n Deriver()\r\n}\r\n\r\nfail[T](at: Location, message: String): T {\r\n panic(message + \" \" + at.show())\r\n}\r\n\r\nextend self: Deriver {\r\n\r\n deriveModule(module: Module): Module {\r\n\r\n let modulePrefix = module.moduleKey.qualifiedName()\r\n\r\n module.Module(\r\n instances = [\r\n ...module.instances\r\n ...self.makeHasAnyTagInstances(modulePrefix, module)\r\n ...self.makeShowInstances(modulePrefix, module)\r\n ...self.makeEqualInstances(modulePrefix, module)\r\n ...self.makeOrderingInstances(modulePrefix, module)\r\n ...self.makeSerializableInstances(modulePrefix, module)\r\n ]\r\n )\r\n }\r\n\r\n // HasAnyTag\r\n makeHasAnyTagInstances(modulePrefix: String, module: Module): List[DInstance] {\r\n let coreWhitelist = [\r\n \"ff:core/Serializable.DeserializationChecksumException\"\r\n \"ff:core/Core.GrabException\"\r\n \"ff:core/NodeSystem.ProcessException\"\r\n \"ff:core/Unit.Unit\"\r\n \"ff:core/Pair.Pair\"\r\n \"ff:core/Option.Option\"\r\n \"ff:core/Int.Int\"\r\n \"ff:core/Float.Float\"\r\n \"ff:core/String.String\"\r\n \"ff:core/Char.Char\"\r\n \"ff:core/Bool.Bool\"\r\n \"ff:core/List.List\"\r\n ].toSet() // Maybe whitelist all?\r\n let missingInstance =\r\n self.findTypesThatNeedInstances(\"ff:core/Any.HasAnyTag\", modulePrefix, coreWhitelist, True, module)\r\n missingInstance.map {self.makeHasAnyTagInstance(modulePrefix, _)}\r\n }\r\n\r\n makeHasAnyTagInstance(modulePrefix: String, declaration: DType): DInstance {\r\n let at = declaration.at.Location(file = declaration.at.file + \"/<derived>\")\r\n let constraints = declaration.generics.map {t =>\r\n Constraint(at, \"ff:core/Any.HasAnyTag\", [TConstructor(at, t, [])])\r\n }\r\n let typeArguments = declaration.generics.map {t =>\r\n TConstructor(at, t, [])\r\n }\r\n let selfTypeName = modulePrefix + \".\" + declaration.name\r\n let selfType = TConstructor(at, selfTypeName, typeArguments)\r\n let noEffect = TConstructor(at, \"ff:core/Nothing.Nothing\", [])\r\n let signature = Signature(\r\n at = at\r\n name = \"anyTag\"\r\n member = False\r\n generics = []\r\n constraints = []\r\n parameters = []\r\n returnType = TConstructor(at, \"ff:core/Any.AnyTag\", [selfType])\r\n effect = noEffect\r\n )\r\n let typeArgumentStrings = typeArguments.map {\r\n self.makeMethodCall(at, self.makeSimpleCall(at, \"ff:core/Any.anyTag\", [], [_]), \"show\", [])\r\n }\r\n let strings =\r\n [EString(at, \"\\\"[\\\"\"), ...typeArgumentStrings.separate([EString(at, \"\\\",\\\"\")]), EString(at, \"\\\"]\\\"\")]\r\n let body = Lambda(at, noEffect, [MatchCase(\r\n at = at\r\n patterns = []\r\n guards = []\r\n body = self.makeSimpleCall(at, \"ff:core/Any.internalAnyTag\", [\r\n strings.foldLeft(EString(at, \"\\\"\" + selfTypeName + \"\\\"\")) {a, b =>\r\n self.makeSimpleCall(at, \"+\", [a, b])\r\n }\r\n ])\r\n )])\r\n let method = DFunction(at, signature, body)\r\n DInstance(\r\n at = at\r\n generics = declaration.generics\r\n constraints = constraints\r\n traitName = \"ff:core/Any.HasAnyTag\"\r\n typeArguments = [selfType]\r\n generatorArguments = []\r\n methods = [method]\r\n derived = True\r\n )\r\n }\r\n\r\n // Show\r\n makeShowInstances(modulePrefix: String, module: Module): List[DInstance] {\r\n let coreWhitelist = [\r\n \"ff:core/Option.Option\"\r\n \"ff:core/Serializable.DeserializationChecksumException\"\r\n \"ff:core/Core.GrabException\"\r\n \"ff:core/NodeSystem.ProcessException\"\r\n ].toSet()\r\n let missingInstance =\r\n self.findTypesThatNeedInstances(\"ff:core/Show.Show\", modulePrefix, coreWhitelist, True, module)\r\n missingInstance.map {self.makeShowInstance(modulePrefix, _)}\r\n }\r\n\r\n makeShowInstance(modulePrefix: String, declaration: DType): DInstance {\r\n let at = declaration.at.Location(file = declaration.at.file + \"/<derived>\")\r\n let constraints = declaration.generics.map {t =>\r\n Constraint(at, \"ff:core/Show.Show\", [TConstructor(at, t, [])])\r\n }\r\n let typeArguments = declaration.generics.map {t =>\r\n TConstructor(at, t, [])\r\n }\r\n let selfType = TConstructor(at, modulePrefix + \".\" + declaration.name, typeArguments)\r\n let noEffect = TConstructor(at, \"ff:core/Nothing.Nothing\", [])\r\n let signature = Signature(\r\n at = at\r\n name = \"show\"\r\n member = False\r\n generics = []\r\n constraints = []\r\n parameters = [Parameter(at, False, \"value\", selfType, None)]\r\n returnType = TConstructor(at, \"ff:core/String.String\", [])\r\n effect = noEffect\r\n )\r\n let body = \r\n Lambda(at, noEffect, self.makeShowCases(modulePrefix, declaration, selfType))\r\n let showMethod = DFunction(at, signature, body)\r\n DInstance(\r\n at = at\r\n generics = declaration.generics\r\n constraints = constraints\r\n traitName = \"ff:core/Show.Show\"\r\n typeArguments = [selfType]\r\n generatorArguments = []\r\n methods = [showMethod]\r\n derived = True\r\n )\r\n }\r\n\r\n makeShowCases(modulePrefix: String, declaration: DType, selfType: Type): List[MatchCase] {\r\n let at = declaration.at.Location(file = declaration.at.file + \"/<derived>\")\r\n let noEffect = TConstructor(at, \"ff:core/Nothing.Nothing\", [])\r\n let wildcardPattern = PVariable(at, None)\r\n declaration.variants.{\r\n | variants =>\r\n variants.map {variant =>\r\n let variantName = modulePrefix + \".\" + variant.name\r\n let fields = [...declaration.commonFields, ...variant.fields]\r\n let strings = if(fields.size() == 0) {[]} else {[\r\n EString(at, \"\\\"(\\\"\")\r\n ...fields.map {field =>\r\n self.makeSimpleCall(at, \"ff:core/Show.show\", [\r\n EField(at, False, EVariable(at, \"z\"), field.name)\r\n ])\r\n }.separate([EString(at, \"\\\", \\\"\")])\r\n EString(at, \"\\\")\\\"\")\r\n ]}\r\n MatchCase(\r\n at = at\r\n patterns = [PVariantAs(at, variantName, at, Some(\"z\"))]\r\n guards = []\r\n body = strings.foldLeft(EString(at, \"\\\"\" + variant.name + \"\\\"\")) {a, b =>\r\n self.makeSimpleCall(at, \"+\", [a, b])\r\n }\r\n )\r\n }\r\n }\r\n }\r\n\r\n // Ordering\r\n makeOrderingInstances(modulePrefix: String, module: Module): List[DInstance] {\r\n let coreWhitelist = [\r\n \"ff:core/Option.Option\"\r\n ].toSet()\r\n let missingInstance =\r\n self.findTypesThatNeedInstances(\"ff:core/Ordering.Order\", modulePrefix, coreWhitelist, True, module)\r\n missingInstance.map {self.makeOrderingInstance(modulePrefix, _)}\r\n }\r\n\r\n makeOrderingInstance(modulePrefix: String, declaration: DType): DInstance {\r\n let at = declaration.at.Location(file = declaration.at.file + \"/<derived>\")\r\n let constraints = declaration.generics.map {t =>\r\n Constraint(at, \"ff:core/Ordering.Order\", [TConstructor(at, t, [])])\r\n }\r\n let typeArguments = declaration.generics.map {t =>\r\n TConstructor(at, t, [])\r\n }\r\n let selfType = TConstructor(at, modulePrefix + \".\" + declaration.name, typeArguments)\r\n let noEffect = TConstructor(at, \"ff:core/Nothing.Nothing\", [])\r\n let signature = Signature(\r\n at = at\r\n name = \"compare\"\r\n member = False\r\n generics = []\r\n constraints = []\r\n parameters = [\r\n Parameter(at, False, \"x\", selfType, None)\r\n Parameter(at, False, \"y\", selfType, None)\r\n ]\r\n returnType = TConstructor(at, \"ff:core/Ordering.Ordering\", [])\r\n effect = noEffect\r\n )\r\n let body =\r\n Lambda(at, noEffect, self.makeOrderingCases(modulePrefix, declaration, selfType))\r\n let compareMethod = DFunction(at, signature, body)\r\n DInstance(\r\n at = at\r\n generics = declaration.generics\r\n constraints = constraints\r\n traitName = \"ff:core/Ordering.Order\"\r\n typeArguments = [selfType]\r\n generatorArguments = []\r\n methods = [compareMethod]\r\n derived = True\r\n )\r\n }\r\n\r\n makeOrderingCases(modulePrefix: String, declaration: DType, selfType: Type): List[MatchCase] {\r\n let at = declaration.at.Location(file = declaration.at.file + \"/<derived>\")\r\n let noEffect = TConstructor(at, \"ff:core/Nothing.Nothing\", [])\r\n let wildcardPattern = PVariable(at, None)\r\n let sameCase = MatchCase(\r\n at = at,\r\n patterns = [wildcardPattern, wildcardPattern]\r\n guards = [MatchGuard(\r\n at,\r\n self.makeSimpleCall(at, \"===\", [EVariable(at, \"x\"), EVariable(at, \"y\")]),\r\n PVariant(at, \"ff:core/Bool.True\", [])\r\n )]\r\n body = EVariant(at, \"ff:core/Ordering.OrderingSame\", [], None)\r\n )\r\n declaration.variants.{\r\n | [variant] =>\r\n let fields = [...declaration.commonFields, ...variant.fields]\r\n [sameCase, MatchCase(\r\n at = at\r\n patterns = [wildcardPattern, wildcardPattern]\r\n guards = []\r\n body = self.makeOrderingFields(modulePrefix, declaration, fields)\r\n )]\r\n | variants =>\r\n let variantsWithFields = variants.filter {variant =>\r\n !declaration.commonFields.isEmpty() || !variant.fields.isEmpty()\r\n } // We can skip no-arg constructors assuming there are never more than one instance of them\r\n let sameVariantCases = variantsWithFields.map { variant =>\r\n let variantName = modulePrefix + \".\" + variant.name\r\n let fields = [...declaration.commonFields, ...variant.fields]\r\n MatchCase(\r\n at = at,\r\n patterns = [PVariantAs(at, variantName, at, Some(\"x\")), PVariantAs(at, variantName, at, Some(\"y\"))]\r\n guards = []\r\n body = self.makeOrderingFields(modulePrefix, declaration, fields)\r\n )\r\n }\r\n let intType = TConstructor(at, \"ff:core/Int.Int\", [])\r\n let numberSignature =\r\n Signature(at, \"number\", False, [], [], [Parameter(at, False, \"z\", selfType, None)], intType, noEffect)\r\n let numberCases = declaration.variants.pairs().map {| Pair(index, variant) =>\r\n let variantName = modulePrefix + \".\" + variant.name\r\n MatchCase(\r\n at = at\r\n patterns = [PVariantAs(at, variantName, at, None)]\r\n guards = []\r\n body = EInt(at, \"\" + index)\r\n )\r\n }\r\n let differentVariant = MatchCase(\r\n at = at\r\n patterns = [wildcardPattern, wildcardPattern]\r\n guards = []\r\n body =\r\n EFunctions(at\r\n [DFunction(at, numberSignature, Lambda(at, noEffect, numberCases))]\r\n self.makeSimpleCall(at, \"ff:core/Ordering.compare\", [\r\n self.makeSimpleCall(at, \"number\", [EVariable(at, \"x\")])\r\n self.makeSimpleCall(at, \"number\", [EVariable(at, \"y\")])\r\n ])\r\n )\r\n )\r\n [sameCase, ...sameVariantCases, differentVariant]\r\n }\r\n }\r\n\r\n makeOrderingFields(modulePrefix: String, declaration: DType, fields: List[Parameter]): Term {\r\n let at = declaration.at.Location(file = declaration.at.file + \"/<derived>\")\r\n let orderingType = TConstructor(at, \"ff:core/Ordering.Ordering\", [])\r\n let orderingSame = EVariant(at, \"ff:core/Ordering.OrderingSame\", [], None)\r\n function go(fields: List[Parameter]): Term {\r\n | [] =>\r\n orderingSame\r\n | [head, ...tail] =>\r\n let variableName = head.name + \"Ordering\"\r\n let compareTerm = self.makeSimpleCall(at, \"ff:core/Ordering.compare\", [\r\n EField(at, False, EVariable(at, \"x\"), head.name)\r\n EField(at, False, EVariable(at, \"y\"), head.name)\r\n ])\r\n let notEqualTerm = self.makeSimpleCall(at, \"!==\", [\r\n EVariable(at, variableName)\r\n orderingSame\r\n ])\r\n let ifTerm = self.makeIf(at, notEqualTerm, EVariable(at, variableName), go(tail))\r\n ELet(at, False, variableName, orderingType, compareTerm, ifTerm)\r\n }\r\n go(fields)\r\n }\r\n\r\n // Equal\r\n makeEqualInstances(modulePrefix: String, module: Module): List[DInstance] {\r\n let coreWhitelist = [\r\n \"ff:core/Option.Option\"\r\n \"ff:core/List.List\"\r\n \"ff:core/Pair.Pair\"\r\n \"ff:core/Unit.Unit\"\r\n ].toSet()\r\n let missingInstance =\r\n self.findTypesThatNeedInstances(\"ff:core/Equal.Equal\", modulePrefix, coreWhitelist, True, module)\r\n missingInstance.map {self.makeEqualInstance(modulePrefix, _)}\r\n }\r\n\r\n makeEqualInstance(modulePrefix: String, declaration: DType): DInstance {\r\n let at = declaration.at.Location(file = declaration.at.file + \"/<derived>\")\r\n let constraints = declaration.generics.map {t =>\r\n Constraint(at, \"ff:core/Equal.Equal\", [TConstructor(at, t, [])])\r\n }\r\n let typeArguments = declaration.generics.map {t =>\r\n TConstructor(at, t, [])\r\n }\r\n let selfType = TConstructor(at, modulePrefix + \".\" + declaration.name, typeArguments)\r\n let noEffect = TConstructor(at, \"ff:core/Nothing.Nothing\", [])\r\n let signature = Signature(\r\n at = at\r\n name = \"equals\"\r\n member = False\r\n generics = []\r\n constraints = []\r\n parameters = [\r\n Parameter(at, False, \"x\", selfType, None)\r\n Parameter(at, False, \"y\", selfType, None)\r\n ]\r\n returnType = TConstructor(at, \"ff:core/Bool.Bool\", [])\r\n effect = noEffect\r\n )\r\n let body =\r\n Lambda(at, noEffect, self.makeEqualsCases(modulePrefix, declaration, selfType))\r\n let equalsMethod = DFunction(at, signature, body)\r\n DInstance(\r\n at = at\r\n generics = declaration.generics\r\n constraints = constraints\r\n traitName = \"ff:core/Equal.Equal\"\r\n typeArguments = [selfType]\r\n generatorArguments = []\r\n methods = [equalsMethod]\r\n derived = True\r\n )\r\n }\r\n\r\n makeEqualsCases(modulePrefix: String, declaration: DType, selfType: Type): List[MatchCase] {\r\n let at = declaration.at.Location(file = declaration.at.file + \"/<derived>\")\r\n let noEffect = TConstructor(at, \"ff:core/Nothing.Nothing\", [])\r\n let wildcardPattern = PVariable(at, None)\r\n let sameCase = MatchCase(\r\n at = at\r\n patterns = [wildcardPattern, wildcardPattern]\r\n guards = [MatchGuard(\r\n at\r\n self.makeSimpleCall(at, \"===\", [EVariable(at, \"x\"), EVariable(at, \"y\")])\r\n PVariant(at, \"ff:core/Bool.True\", [])\r\n )]\r\n body = EVariant(at, \"ff:core/Bool.True\", [], None)\r\n )\r\n declaration.variants.{\r\n | [variant] =>\r\n let fields = [...declaration.commonFields, ...variant.fields]\r\n [sameCase, MatchCase(\r\n at = at\r\n patterns = [wildcardPattern, wildcardPattern]\r\n guards = []\r\n body = self.makeEqualFields(modulePrefix, declaration, fields)\r\n )]\r\n | variants =>\r\n let variantsWithFields = variants.filter {variant =>\r\n !declaration.commonFields.isEmpty() || !variant.fields.isEmpty()\r\n } // We can skip no-arg constructors assuming there are never more than one instance of them\r\n let sameVariantCases = variantsWithFields.map { variant =>\r\n let variantName = modulePrefix + \".\" + variant.name\r\n let fields = [...declaration.commonFields, ...variant.fields]\r\n MatchCase(\r\n at = at\r\n patterns = [PVariantAs(at, variantName, at, Some(\"x\")), PVariantAs(at, variantName, at, Some(\"y\"))]\r\n guards = []\r\n body = self.makeEqualFields(modulePrefix, declaration, fields)\r\n )\r\n }\r\n let differentVariant = MatchCase(\r\n at = at\r\n patterns = [wildcardPattern, wildcardPattern]\r\n guards = []\r\n body = EVariant(at, \"ff:core/Bool.False\", [], None)\r\n )\r\n [sameCase, ...sameVariantCases, differentVariant]\r\n }\r\n }\r\n\r\n makeEqualFields(modulePrefix: String, declaration: DType, fields: List[Parameter]): Term {\r\n let at = declaration.at.Location(file = declaration.at.file + \"/<derived>\")\r\n function go(fields: List[Parameter]): Term {\r\n | [] =>\r\n EVariant(at, \"ff:core/Bool.True\", [], None)\r\n | [head] =>\r\n self.makeSimpleCall(at, \"ff:core/Equal.equals\", [\r\n EField(at, False, EVariable(at, \"x\"), head.name)\r\n EField(at, False, EVariable(at, \"y\"), head.name)\r\n ])\r\n | [head, ...tail] =>\r\n let equalsTerm = self.makeSimpleCall(at, \"ff:core/Equal.equals\", [\r\n EField(at, False, EVariable(at, \"x\"), head.name)\r\n EField(at, False, EVariable(at, \"y\"), head.name)\r\n ])\r\n self.makeSimpleCall(at, \"&&\", [\r\n equalsTerm\r\n go(tail)\r\n ])\r\n }\r\n go(fields)\r\n }\r\n\r\n // Serializable\r\n makeSerializableInstances(modulePrefix: String, module: Module): List[DInstance] {\r\n let coreWhitelist = [\r\n \"ff:core/Option.Option\"\r\n \"ff:core/Pair.Pair\"\r\n ].toSet()\r\n let missingInstance =\r\n self.findTypesThatNeedInstances(\"ff:core/Serializable.Serializable\", modulePrefix, coreWhitelist, True, module)\r\n missingInstance.map {self.makeSerializableInstance(modulePrefix, _)}\r\n }\r\n\r\n makeSerializableInstance(modulePrefix: String, declaration: DType): DInstance {\r\n let at = declaration.at.Location(file = declaration.at.file + \"/<derived>\")\r\n let constraints = declaration.generics.map { t =>\r\n Constraint(at, \"ff:core/Serializable.Serializable\", [TConstructor(at, t, [])])\r\n }\r\n let typeArguments = declaration.generics.map { t =>\r\n TConstructor(at, t, [])\r\n }\r\n let selfType = TConstructor(at, modulePrefix + \".\" + declaration.name, typeArguments)\r\n let noEffect = TConstructor(at, \"ff:core/Nothing.Nothing\", [])\r\n let serializationType = TConstructor(at, \"ff:core/Serializable.Serialization\", [])\r\n let serializeSignature = Signature(\r\n at = at\r\n name = \"serializeUsing\"\r\n member = False\r\n generics = []\r\n constraints = []\r\n parameters = [\r\n Parameter(at, False, \"serialization\", serializationType, None)\r\n Parameter(at, False, \"value\", selfType, None)\r\n ]\r\n returnType = TConstructor(at, \"ff:core/Unit.Unit\", [])\r\n effect = noEffect\r\n )\r\n let deserializeSignature = Signature(\r\n at = at\r\n name = \"deserializeUsing\"\r\n member = False\r\n generics = []\r\n constraints = []\r\n parameters = [\r\n Parameter(at, False, \"serialization\", serializationType, None)\r\n ]\r\n returnType = selfType\r\n effect = noEffect\r\n )\r\n let wildcardPattern = PVariable(at, None)\r\n let serializeBody = \r\n Lambda(at, noEffect, self.makeSerializeBody(modulePrefix, declaration, selfType))\r\n let deserializeBody = Lambda(at, noEffect, [MatchCase(\r\n at = at\r\n patterns = [wildcardPattern]\r\n guards = []\r\n body = self.makeDeserializeBody(modulePrefix, declaration, selfType)\r\n )])\r\n DInstance(\r\n at = at\r\n generics = declaration.generics\r\n constraints = constraints\r\n traitName = \"ff:core/Serializable.Serializable\"\r\n typeArguments = [selfType]\r\n generatorArguments = []\r\n methods = [\r\n DFunction(at, serializeSignature, serializeBody)\r\n DFunction(at, deserializeSignature, deserializeBody)\r\n ]\r\n derived = True\r\n )\r\n }\r\n\r\n makeSerializeBody(modulePrefix: String, declaration: DType, selfType: Type): List[MatchCase] {\r\n let at = declaration.at.Location(file = declaration.at.file + \"/<derived>\")\r\n let wildcardPattern = PVariable(at, None)\r\n declaration.variants.pairs().map {| Pair(index, variant) =>\r\n let variantName = modulePrefix + \".\" + variant.name\r\n let fields = [...declaration.commonFields, ...variant.fields]\r\n let updateChecksum = self.makeUpdateChecksum(at, variantName, declaration, variant)\r\n let autoResize = self.makeMethodCall(\r\n at = at\r\n target = EVariable(at, \"serialization\")\r\n methodName = \"autoResize\"\r\n arguments = [EInt(at, \"1\")]\r\n )\r\n let setVariantIndex = self.makeMethodCall(\r\n at = at\r\n target = EField(at, False, EVariable(at, \"serialization\"), \"buffer\")\r\n methodName = \"setUint8\"\r\n arguments = [EField(at, False, EVariable(at, \"serialization\"), \"offset\"), EInt(at, \"\" + index)]\r\n )\r\n let fieldSerializations = fields.map {field =>\r\n self.makeSimpleCall(at, \"ff:core/Serializable.serializeUsing\", [\r\n EVariable(at, \"serialization\")\r\n EField(at, False, EVariable(at, \"v\"), field.name)\r\n ])\r\n }\r\n MatchCase(\r\n at = at,\r\n patterns = [wildcardPattern, PVariantAs(at, variantName, at, Some(\"v\"))]\r\n guards = []\r\n body = [\r\n autoResize\r\n setVariantIndex\r\n EAssignField(at, \"+\", EVariable(at, \"serialization\"), \"offset\", EInt(at, \"1\"))\r\n ...fieldSerializations\r\n ].foldLeft(updateChecksum) {ESequential(at, _, _)}\r\n )\r\n }\r\n }\r\n\r\n makeDeserializeBody(modulePrefix: String, declaration: DType, selfType: Type): Term {\r\n let at = declaration.at.Location(file = declaration.at.file + \"/<derived>\")\r\n let noEffect = TConstructor(at, \"ff:core/Nothing.Nothing\", [])\r\n let wildcardPattern = PVariable(at, None)\r\n let grabVariantIndex = self.makeMethodCall(\r\n at = at\r\n target = EField(at, False, EVariable(at, \"serialization\"), \"buffer\")\r\n methodName = \"grabUint8\"\r\n arguments = [EField(at, False, EVariable(at, \"serialization\"), \"offset\")]\r\n )\r\n let intType = TConstructor(at, \"ff:core/Int.Int\", [])\r\n let incrementOffset = EAssignField(at, \"+\", EVariable(at, \"serialization\"), \"offset\", EInt(at, \"1\"))\r\n let cases = declaration.variants.pairs().map {| Pair(index, variant) =>\r\n let variantName = modulePrefix + \".\" + variant.name\r\n let fields = [...declaration.commonFields, ...variant.fields]\r\n let fieldValues = fields.map {field =>\r\n Argument(\r\n at\r\n None\r\n self.makeSimpleCall(at, \"ff:core/Serializable.deserializeUsing\", [EVariable(at, \"serialization\")])\r\n )\r\n }\r\n let updateChecksum = self.makeUpdateChecksum(at, variantName, declaration, variant)\r\n let makeVariant = EVariant(at, variantName, [], Some(fieldValues))\r\n MatchCase(\r\n at = at,\r\n patterns = [PInt(at, \"\" + index)]\r\n guards = []\r\n body = ESequential(at, updateChecksum, makeVariant)\r\n )\r\n }\r\n let otherwiseCase = MatchCase(\r\n at = at,\r\n patterns = [wildcardPattern]\r\n guards = []\r\n body = self.makeSimpleCall(at, \"ff:core/Core.throw\", [\r\n EVariant(at, \"ff:core/Serializable.DeserializationChecksumException\", [], None)\r\n ])\r\n )\r\n let matchLambda = ELambda(at, Lambda(at, noEffect, [...cases, otherwiseCase]))\r\n let match = EPipe(at, EVariable(at, \"variantIndex\"), noEffect, matchLambda)\r\n ELet(at, False, \"variantIndex\", intType, grabVariantIndex, ESequential(at, incrementOffset, match))\r\n }\r\n\r\n makeUpdateChecksum(at: Location, variantName: String, declaration: DType, variant: Variant): Term {\r\n let fields = [...declaration.commonFields, ...variant.fields]\r\n let variantChecksum = variantName.size() // TODO: Hash variantName + fields with type terms + type parameters (+ type arguments?)\r\n EAssignField(at, \"\", EVariable(at, \"serialization\"), \"checksum\"\r\n self.makeMethodCall(\r\n at = at\r\n target = self.makeSimpleCall(at, \"+\", [\r\n self.makeSimpleCall(at, \"*\", [\r\n EInt(at, \"31\")\r\n EField(at, False, EVariable(at, \"serialization\"), \"checksum\")\r\n ])\r\n EInt(at, \"\" + variantChecksum)\r\n ])\r\n methodName = \"bitOr\"\r\n arguments = [EInt(at, \"0\")]\r\n )\r\n )\r\n }\r\n\r\n // Common\r\n\r\n findTypesThatNeedInstances(\r\n traitName: String\r\n modulePrefix: String\r\n coreWhitelist: Set[String]\r\n allowGenerics: Bool\r\n module: Module\r\n ): List[DType] {\r\n let typesWithInstance = module.instances.collect {\r\n | instance {instance.typeArguments.first() | Some(TConstructor(_, name, _))} =>\r\n if(instance.traitName == traitName) {name}\r\n | _ => None\r\n }.toSet()\r\n\r\n module.types.filter {t =>\r\n (!module.moduleKey.packagePair.isCore() || coreWhitelist.contains(modulePrefix + \".\" + t.name)) &&\r\n !t.generics.first().any {_ == \"Q$\"} &&\r\n (allowGenerics || t.generics.isEmpty()) &&\r\n t.data && !t.newtype &&\r\n !typesWithInstance.contains(modulePrefix + \".\" + t.name)\r\n }\r\n }\r\n\r\n makeSimpleCall(at: Location, name: String, arguments: List[Term], typeArguments: List[Type] = []): Term {\r\n let noEffect = TConstructor(at, \"ff:core/Nothing.Nothing\", [])\r\n let callTarget = DynamicCall(EVariable(at, name), tailCall = False)\r\n ECall(at, callTarget, noEffect, typeArguments, arguments.map { e =>\r\n Argument(at, None, e)\r\n }, [])\r\n }\r\n\r\n makeMethodCall(at: Location, target: Term, methodName: String, arguments: List[Term]): Term {\r\n let noEffect = TConstructor(at, \"ff:core/Nothing.Nothing\", [])\r\n let method = EField(at, False, target, methodName)\r\n ECall(at, DynamicCall(method, False), noEffect, [], arguments.map {Argument(at, None, _)}, [])\r\n }\r\n\r\n makeIf(at: Location, condition: Term, then: Term, else: Term): Term {\r\n let noEffect = TConstructor(at, \"ff:core/Nothing.Nothing\", [])\r\n let target = DynamicCall(EVariable(at, \"ff:core/Core.if\"), tailCall = False)\r\n let option = ECall(at, target, noEffect, [], [\r\n Argument(at, None, condition)\r\n Argument(at, None, ELambda(at, Lambda(at, noEffect, [MatchCase(at, [], [], then)])))\r\n ], [])\r\n ECall(at, DynamicCall(EField(at, False, option, \"else\"), tailCall = False), noEffect, [], [\r\n Argument(at, None, ELambda(at, Lambda(at, noEffect, [MatchCase(at, [], [], else)])))\r\n ], [])\r\n }\r\n\r\n}\r\n"
8
+ ],
9
+ "names": [
10
+ "Deriver",
11
+ "new",
12
+ "fail",
13
+ "at",
14
+ "message",
15
+ "panic",
16
+ "show",
17
+ "deriveModule",
18
+ "self",
19
+ "module",
20
+ "modulePrefix",
21
+ "qualifiedName",
22
+ "moduleKey",
23
+ "c",
24
+ "Module",
25
+ "imports",
26
+ "types",
27
+ "traits",
28
+ "instances",
29
+ "makeHasAnyTagInstances",
30
+ "makeShowInstances",
31
+ "makeEqualInstances",
32
+ "makeOrderingInstances",
33
+ "makeSerializableInstances",
34
+ "extends",
35
+ "lets",
36
+ "functions",
37
+ "coreWhitelist",
38
+ "toSet",
39
+ "missingInstance",
40
+ "findTypesThatNeedInstances",
41
+ "map",
42
+ "w1",
43
+ "makeHasAnyTagInstance",
44
+ "declaration",
45
+ "Location",
46
+ "file",
47
+ "line",
48
+ "column",
49
+ "constraints",
50
+ "generics",
51
+ "t",
52
+ "Constraint",
53
+ "TConstructor",
54
+ "typeArguments",
55
+ "selfTypeName",
56
+ "name",
57
+ "selfType",
58
+ "noEffect",
59
+ "signature",
60
+ "Signature",
61
+ "typeArgumentStrings",
62
+ "makeMethodCall",
63
+ "makeSimpleCall",
64
+ "strings",
65
+ "EString",
66
+ "separate",
67
+ "body",
68
+ "Lambda",
69
+ "MatchCase",
70
+ "foldLeft",
71
+ "a",
72
+ "b",
73
+ "method",
74
+ "DFunction",
75
+ "DInstance",
76
+ "makeShowInstance",
77
+ "Parameter",
78
+ "None",
79
+ "makeShowCases",
80
+ "showMethod",
81
+ "wildcardPattern",
82
+ "PVariable",
83
+ "variants",
84
+ "variant",
85
+ "variantName",
86
+ "fields",
87
+ "commonFields",
88
+ "field",
89
+ "EField",
90
+ "EVariable",
91
+ "PVariantAs",
92
+ "Some",
93
+ "makeOrderingInstance",
94
+ "makeOrderingCases",
95
+ "compareMethod",
96
+ "sameCase",
97
+ "MatchGuard",
98
+ "PVariant",
99
+ "EVariant",
100
+ "makeOrderingFields",
101
+ "variantsWithFields",
102
+ "filter",
103
+ "isEmpty",
104
+ "sameVariantCases",
105
+ "intType",
106
+ "numberSignature",
107
+ "numberCases",
108
+ "pairs",
109
+ "index",
110
+ "EInt",
111
+ "differentVariant",
112
+ "EFunctions",
113
+ "orderingType",
114
+ "orderingSame",
115
+ "go",
116
+ "head",
117
+ "tail",
118
+ "variableName",
119
+ "compareTerm",
120
+ "notEqualTerm",
121
+ "ifTerm",
122
+ "makeIf",
123
+ "ELet",
124
+ "makeEqualInstance",
125
+ "makeEqualsCases",
126
+ "equalsMethod",
127
+ "makeEqualFields",
128
+ "equalsTerm",
129
+ "makeSerializableInstance",
130
+ "serializationType",
131
+ "serializeSignature",
132
+ "deserializeSignature",
133
+ "serializeBody",
134
+ "makeSerializeBody",
135
+ "deserializeBody",
136
+ "makeDeserializeBody",
137
+ "updateChecksum",
138
+ "makeUpdateChecksum",
139
+ "autoResize",
140
+ "setVariantIndex",
141
+ "fieldSerializations",
142
+ "EAssignField",
143
+ "w2",
144
+ "ESequential",
145
+ "grabVariantIndex",
146
+ "incrementOffset",
147
+ "cases",
148
+ "fieldValues",
149
+ "Argument",
150
+ "makeVariant",
151
+ "PInt",
152
+ "otherwiseCase",
153
+ "matchLambda",
154
+ "ELambda",
155
+ "match",
156
+ "EPipe",
157
+ "variantChecksum",
158
+ "traitName",
159
+ "allowGenerics",
160
+ "typesWithInstance",
161
+ "collect",
162
+ "instance",
163
+ "first",
164
+ "isCore",
165
+ "packagePair",
166
+ "contains",
167
+ "any",
168
+ "data",
169
+ "newtype",
170
+ "arguments",
171
+ "callTarget",
172
+ "DynamicCall",
173
+ "ECall",
174
+ "e",
175
+ "target",
176
+ "methodName",
177
+ "condition",
178
+ "then",
179
+ "else",
180
+ "option",
181
+ "anyTag",
182
+ "internalAnyTag",
183
+ "value",
184
+ "z",
185
+ "equals",
186
+ "x",
187
+ "y",
188
+ "compare",
189
+ "OrderingSame",
190
+ "serializeUsing",
191
+ "serialization",
192
+ "v",
193
+ "checksum",
194
+ "bitOr",
195
+ "setUint8",
196
+ "buffer",
197
+ "offset",
198
+ "deserializeUsing",
199
+ "variantIndex",
200
+ "grabUint8",
201
+ "DeserializationChecksumException"
202
+ ],
203
+ "mappings": "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"
204
+ }
@@ -1,5 +1,3 @@
1
-
2
-
3
1
  import * as ff_compiler_Dictionaries from "../../ff/compiler/Dictionaries.mjs"
4
2
 
5
3
  import * as ff_compiler_Environment from "../../ff/compiler/Environment.mjs"
@@ -107,8 +105,6 @@ export function Dictionaries(instances_) {
107
105
  return {instances_};
108
106
  }
109
107
 
110
-
111
-
112
108
  export function new_(modules_) {
113
109
  return ff_compiler_Dictionaries.Dictionaries(ff_compiler_Unification.new_(modules_, false).instances_)
114
110
  }
@@ -541,7 +537,7 @@ const _1 = ff_core_List.List_grabFirst(newGenerics_);
541
537
  if(_1.TConstructor) {
542
538
  const firstType_ = _1;
543
539
  const instance_ = ff_core_Option.Option_else(ff_core_Map.Map_get(self_.instances_, ff_compiler_Unification.InstanceKey(constraint_.name_, firstType_.name_), ff_compiler_Unification.ff_core_Ordering_Order$ff_compiler_Unification_InstanceKey), (() => {
544
- return ff_core_Core.throw_(ff_compiler_Syntax.CompileError(at_, ((("Missing instance " + firstType_.name_) + ": ") + constraint_.name_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
540
+ throw ff_core_Js.initializeError_(ff_compiler_Syntax.CompileError(at_, ((("Missing instance " + firstType_.name_) + ": ") + constraint_.name_)), new Error(), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
545
541
  }));
546
542
  const dictionaries_ = ff_core_List.List_map(instance_.constraints_, ((c_) => {
547
543
  return ff_compiler_Dictionaries.Dictionaries_makeDictionary(self_, at_, instance_.generics_, firstType_.generics_, c_)
@@ -939,7 +935,7 @@ const _1 = ff_core_List.List_grabFirst(newGenerics_);
939
935
  if(_1.TConstructor) {
940
936
  const firstType_ = _1;
941
937
  const instance_ = ff_core_Option.Option_else(ff_core_Map.Map_get(self_.instances_, ff_compiler_Unification.InstanceKey(constraint_.name_, firstType_.name_), ff_compiler_Unification.ff_core_Ordering_Order$ff_compiler_Unification_InstanceKey), (() => {
942
- return ff_core_Core.throw_(ff_compiler_Syntax.CompileError(at_, ((("Missing instance " + firstType_.name_) + ": ") + constraint_.name_)), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
938
+ throw ff_core_Js.initializeError_(ff_compiler_Syntax.CompileError(at_, ((("Missing instance " + firstType_.name_) + ": ") + constraint_.name_)), new Error(), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError, ff_compiler_Syntax.ff_core_Show_Show$ff_compiler_Syntax_CompileError)
943
939
  }));
944
940
  const dictionaries_ = ff_core_List.List_map(instance_.constraints_, ((c_) => {
945
941
  return ff_compiler_Dictionaries.Dictionaries_makeDictionary(self_, at_, instance_.generics_, firstType_.generics_, c_)
@@ -959,7 +955,7 @@ return ff_core_Any.internalAnyTag_((("ff:compiler/Dictionaries.Dictionaries" + "
959
955
  },
960
956
  async anyTag_$($task) {
961
957
  return ff_core_Any.internalAnyTag_((("ff:compiler/Dictionaries.Dictionaries" + "[") + "]"))
962
- }
958
+ },
963
959
  };
964
960
 
965
961
  export const ff_core_Show_Show$ff_compiler_Dictionaries_Dictionaries = {
@@ -976,7 +972,7 @@ const value_a = value_;
976
972
  const z_ = value_a;
977
973
  return ((("Dictionaries" + "(") + ff_core_Map.ff_core_Show_Show$ff_core_Map_Map(ff_compiler_Unification.ff_core_Show_Show$ff_compiler_Unification_InstanceKey, ff_compiler_Unification.ff_core_Ordering_Order$ff_compiler_Unification_InstanceKey, ff_compiler_Unification.ff_core_Show_Show$ff_compiler_Unification_InstanceValue).show_(z_.instances_)) + ")")
978
974
  }
979
- }
975
+ },
980
976
  };
981
977
 
982
978
  export const ff_core_Equal_Equal$ff_compiler_Dictionaries_Dictionaries = {
@@ -999,7 +995,7 @@ return true
999
995
  {
1000
996
  return ff_core_Map.ff_core_Equal_Equal$ff_core_Map_Map(ff_compiler_Unification.ff_core_Equal_Equal$ff_compiler_Unification_InstanceKey, ff_compiler_Unification.ff_core_Ordering_Order$ff_compiler_Unification_InstanceKey, ff_compiler_Unification.ff_core_Equal_Equal$ff_compiler_Unification_InstanceValue).equals_(x_.instances_, y_.instances_)
1001
997
  }
1002
- }
998
+ },
1003
999
  };
1004
1000
 
1005
1001
  export const ff_core_Ordering_Order$ff_compiler_Dictionaries_Dictionaries = {
@@ -1034,7 +1030,7 @@ return ff_core_Ordering.OrderingSame()
1034
1030
  }
1035
1031
  return
1036
1032
  }
1037
- }
1033
+ },
1038
1034
  };
1039
1035
 
1040
1036
  export const ff_core_Serializable_Serializable$ff_compiler_Dictionaries_Dictionaries = {
@@ -1061,7 +1057,7 @@ serialization_.checksum_ = ff_core_Int.Int_bitOr(((31 * serialization_.checksum_
1061
1057
  return ff_compiler_Dictionaries.Dictionaries(ff_core_Serializable.ff_core_Serializable_Serializable$ff_core_Map_Map(ff_compiler_Unification.ff_core_Serializable_Serializable$ff_compiler_Unification_InstanceKey, ff_compiler_Unification.ff_core_Ordering_Order$ff_compiler_Unification_InstanceKey, ff_compiler_Unification.ff_core_Serializable_Serializable$ff_compiler_Unification_InstanceValue).deserializeUsing_(serialization_))
1062
1058
  }
1063
1059
  {
1064
- return ff_core_Core.throw_(ff_core_Serializable.DeserializationChecksumException(), ff_core_Serializable.ff_core_Any_HasAnyTag$ff_core_Serializable_DeserializationChecksumException, ff_core_Serializable.ff_core_Show_Show$ff_core_Serializable_DeserializationChecksumException)
1060
+ throw ff_core_Js.initializeError_(ff_core_Serializable.DeserializationChecksumException(), new Error(), ff_core_Serializable.ff_core_Any_HasAnyTag$ff_core_Serializable_DeserializationChecksumException, ff_core_Serializable.ff_core_Show_Show$ff_core_Serializable_DeserializationChecksumException)
1065
1061
  }
1066
1062
  }
1067
1063
  },
@@ -1088,8 +1084,11 @@ serialization_.checksum_ = ff_core_Int.Int_bitOr(((31 * serialization_.checksum_
1088
1084
  return ff_compiler_Dictionaries.Dictionaries(ff_core_Serializable.ff_core_Serializable_Serializable$ff_core_Map_Map(ff_compiler_Unification.ff_core_Serializable_Serializable$ff_compiler_Unification_InstanceKey, ff_compiler_Unification.ff_core_Ordering_Order$ff_compiler_Unification_InstanceKey, ff_compiler_Unification.ff_core_Serializable_Serializable$ff_compiler_Unification_InstanceValue).deserializeUsing_(serialization_))
1089
1085
  }
1090
1086
  {
1091
- return ff_core_Core.throw_(ff_core_Serializable.DeserializationChecksumException(), ff_core_Serializable.ff_core_Any_HasAnyTag$ff_core_Serializable_DeserializationChecksumException, ff_core_Serializable.ff_core_Show_Show$ff_core_Serializable_DeserializationChecksumException)
1092
- }
1087
+ throw ff_core_Js.initializeError_(ff_core_Serializable.DeserializationChecksumException(), new Error(), ff_core_Serializable.ff_core_Any_HasAnyTag$ff_core_Serializable_DeserializationChecksumException, ff_core_Serializable.ff_core_Show_Show$ff_core_Serializable_DeserializationChecksumException)
1093
1088
  }
1094
1089
  }
1090
+ },
1095
1091
  };
1092
+
1093
+
1094
+ //# sourceMappingURL=Dictionaries.mjs.map