firefly-compiler 0.5.63 → 0.5.65
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.
- package/compiler/Builder.ff +47 -31
- package/compiler/Compiler.ff +42 -47
- package/compiler/Dependencies.ff +9 -3
- package/compiler/Deriver.ff +2 -2
- package/compiler/Dictionaries.ff +11 -12
- package/compiler/Environment.ff +5 -5
- package/compiler/Inference.ff +1 -2
- package/compiler/JsEmitter.ff +34 -33
- package/compiler/Main.ff +32 -31
- package/compiler/ModuleCache.ff +17 -25
- package/compiler/Parser.ff +7 -11
- package/compiler/Resolver.ff +8 -11
- package/compiler/Syntax.ff +53 -17
- package/compiler/Unification.ff +2 -5
- package/core/BuildSystem.ff +1 -1
- package/core/Path.ff +11 -1
- package/core/SourceLocation.ff +4 -0
- package/experimental/foldertest/.firefly/package.ff +1 -0
- package/experimental/foldertest/Root.ff +10 -0
- package/experimental/foldertest/a/A.ff +3 -0
- package/experimental/foldertest/a/MainA.ff +3 -0
- package/experimental/tests/TestCancel.ff +19 -0
- package/fireflysite/CommunityOverview.ff +0 -2
- package/fireflysite/FrontPage.ff +0 -2
- package/fireflysite/Main.ff +1 -1
- package/fireflysite/PackagesOverview.ff +0 -2
- package/fireflysite/Router.ff +3 -3
- package/fireflysite/{ExamplesOverview.ff → demos/ExamplesOverview.ff} +3 -3
- package/fireflysite/{RouteFront.ff → routes/RouteFront.ff} +2 -3
- package/fireflysite/{RouteNonMarkdown.ff → routes/RouteNonMarkdown.ff} +5 -5
- package/fireflysite/{RouteReference.ff → routes/RouteReference.ff} +2 -3
- package/lsp/CompletionHandler.ff +2 -2
- package/lsp/Handler.ff +14 -13
- package/lsp/LanguageServer.ff +5 -4
- package/output/js/ff/compiler/Builder.mjs +118 -80
- package/output/js/ff/compiler/Compiler.mjs +85 -89
- package/output/js/ff/compiler/Dependencies.mjs +16 -10
- package/output/js/ff/compiler/Deriver.mjs +6 -6
- package/output/js/ff/compiler/Dictionaries.mjs +6 -6
- package/output/js/ff/compiler/Environment.mjs +10 -6
- package/output/js/ff/compiler/Inference.mjs +4 -4
- package/output/js/ff/compiler/JsEmitter.mjs +60 -38
- package/output/js/ff/compiler/Main.mjs +66 -56
- package/output/js/ff/compiler/ModuleCache.mjs +34 -38
- package/output/js/ff/compiler/Parser.mjs +14 -14
- package/output/js/ff/compiler/Resolver.mjs +12 -22
- package/output/js/ff/compiler/Substitution.mjs +2 -2
- package/output/js/ff/compiler/Syntax.mjs +395 -183
- package/output/js/ff/compiler/Unification.mjs +18 -32
- package/output/js/ff/core/BuildSystem.mjs +2 -6
- package/output/js/ff/core/Path.mjs +32 -0
- package/output/js/ff/core/SourceLocation.mjs +12 -0
- package/package.json +1 -1
- package/vscode/package.json +1 -1
- package/vscode/syntaxes/firefly.tmLanguage.json +299 -299
- package/fireflysite/ReferenceIntroduction.ff +0 -11
- /package/fireflysite/{CountingButtonDemo.ff → demos/CountingButtonDemo.ff} +0 -0
- /package/fireflysite/{MatchingPasswordsDemo.ff → demos/MatchingPasswordsDemo.ff} +0 -0
- /package/fireflysite/{PostgresqlDemo.ff → demos/PostgresqlDemo.ff} +0 -0
|
@@ -121,12 +121,11 @@ result_ = ff_core_Map.Map_add(result_, k_, v_, ff_core_Ordering.ff_core_Ordering
|
|
|
121
121
|
return result_
|
|
122
122
|
}
|
|
123
123
|
|
|
124
|
-
export function modulePath_(packagePaths_,
|
|
125
|
-
const packagePath_ = ff_core_Option.Option_else(ff_core_Map.Map_get(packagePaths_, packagePair_, ff_compiler_Syntax.ff_core_Ordering_Order$ff_compiler_Syntax_PackagePair), (() => {
|
|
126
|
-
return ff_core_Core.panic_(("Internal error - package path missing: " + ff_compiler_Syntax.PackagePair_groupName(packagePair_, ":")))
|
|
124
|
+
export function modulePath_(packagePaths_, moduleKey_) {
|
|
125
|
+
const packagePath_ = ff_core_Option.Option_else(ff_core_Map.Map_get(packagePaths_, moduleKey_.packagePair_, ff_compiler_Syntax.ff_core_Ordering_Order$ff_compiler_Syntax_PackagePair), (() => {
|
|
126
|
+
return ff_core_Core.panic_(("Internal error - package path missing: " + ff_compiler_Syntax.PackagePair_groupName(moduleKey_.packagePair_, ":")))
|
|
127
127
|
}));
|
|
128
|
-
|
|
129
|
-
return ff_core_Path.Path_slash(packagePath_, file_)
|
|
128
|
+
return ff_compiler_Syntax.ModuleKey_path(moduleKey_, packagePath_)
|
|
130
129
|
}
|
|
131
130
|
|
|
132
131
|
export async function new_$(version_, $task) {
|
|
@@ -145,12 +144,11 @@ result_ = ff_core_Map.Map_add(result_, k_, v_, ff_core_Ordering.ff_core_Ordering
|
|
|
145
144
|
return result_
|
|
146
145
|
}
|
|
147
146
|
|
|
148
|
-
export async function modulePath_$(packagePaths_,
|
|
149
|
-
const packagePath_ = ff_core_Option.Option_else(ff_core_Map.Map_get(packagePaths_, packagePair_, ff_compiler_Syntax.ff_core_Ordering_Order$ff_compiler_Syntax_PackagePair), (() => {
|
|
150
|
-
return ff_core_Core.panic_(("Internal error - package path missing: " + ff_compiler_Syntax.PackagePair_groupName(packagePair_, ":")))
|
|
147
|
+
export async function modulePath_$(packagePaths_, moduleKey_, $task) {
|
|
148
|
+
const packagePath_ = ff_core_Option.Option_else(ff_core_Map.Map_get(packagePaths_, moduleKey_.packagePair_, ff_compiler_Syntax.ff_core_Ordering_Order$ff_compiler_Syntax_PackagePair), (() => {
|
|
149
|
+
return ff_core_Core.panic_(("Internal error - package path missing: " + ff_compiler_Syntax.PackagePair_groupName(moduleKey_.packagePair_, ":")))
|
|
151
150
|
}));
|
|
152
|
-
|
|
153
|
-
return (await ff_core_Path.Path_slash$(packagePath_, file_, $task))
|
|
151
|
+
return (await ff_compiler_Syntax.ModuleKey_path$(moduleKey_, packagePath_, $task))
|
|
154
152
|
}
|
|
155
153
|
|
|
156
154
|
export function ModuleCache_remove(self_, keys_) {
|
|
@@ -167,14 +165,13 @@ export function ModuleCache_invalidate(self_, key_) {
|
|
|
167
165
|
ff_core_Option.Option_each(ff_core_Map.Map_get(self_.parsedModules_, key_, ff_core_Ordering.ff_core_Ordering_Order$ff_core_String_String), ((_1) => {
|
|
168
166
|
{
|
|
169
167
|
const module_ = _1.first_;
|
|
170
|
-
const moduleName_ = ff_core_String.String_dropLast(module_.file_, 3);
|
|
171
168
|
ff_compiler_ModuleCache.ModuleCache_remove(self_, [key_]);
|
|
172
169
|
ff_core_Map.Map_each(self_.parsedModules_, ((_1, _2) => {
|
|
173
170
|
{
|
|
174
171
|
const k_ = _1;
|
|
175
172
|
const m_ = _2.first_;
|
|
176
173
|
if(ff_core_List.List_any(m_.imports_, ((i_) => {
|
|
177
|
-
return
|
|
174
|
+
return ff_compiler_Syntax.ff_core_Equal_Equal$ff_compiler_Syntax_ModuleKey.equals_(i_.moduleKey_, module_.moduleKey_)
|
|
178
175
|
}))) {
|
|
179
176
|
ff_compiler_ModuleCache.ModuleCache_remove(self_, [k_])
|
|
180
177
|
}
|
|
@@ -186,13 +183,13 @@ return
|
|
|
186
183
|
}))
|
|
187
184
|
}
|
|
188
185
|
|
|
189
|
-
export function ModuleCache_filesNotImporting(self_,
|
|
186
|
+
export function ModuleCache_filesNotImporting(self_, moduleKey_) {
|
|
190
187
|
return ff_core_List.List_collect(ff_core_Map.Map_toList(self_.parsedModules_, ff_core_Ordering.ff_core_Ordering_Order$ff_core_String_String), ((_1) => {
|
|
191
188
|
{
|
|
192
189
|
const k_ = _1.first_;
|
|
193
190
|
const m_ = _1.second_.first_;
|
|
194
191
|
if((!ff_core_List.List_any(m_.imports_, ((i_) => {
|
|
195
|
-
return
|
|
192
|
+
return ff_compiler_Syntax.ff_core_Equal_Equal$ff_compiler_Syntax_ModuleKey.equals_(i_.moduleKey_, moduleKey_)
|
|
196
193
|
})))) {
|
|
197
194
|
return ff_core_Option.Some(k_)
|
|
198
195
|
} else return ff_core_Option.None()
|
|
@@ -269,8 +266,8 @@ return _w1
|
|
|
269
266
|
}))
|
|
270
267
|
}
|
|
271
268
|
|
|
272
|
-
export function ModuleCache_cacheParsedModule(self_, packagePaths_,
|
|
273
|
-
const path_ = ff_compiler_ModuleCache.modulePath_(packagePaths_,
|
|
269
|
+
export function ModuleCache_cacheParsedModule(self_, packagePaths_, moduleKey_, body_) {
|
|
270
|
+
const path_ = ff_compiler_ModuleCache.modulePath_(packagePaths_, moduleKey_);
|
|
274
271
|
return ff_core_Option.Option_else(ff_core_Option.Option_map(ff_core_Map.Map_get(self_.parsedModules_, ff_core_Path.Path_absolute(path_), ff_core_Ordering.ff_core_Ordering_Order$ff_core_String_String), ((_w1) => {
|
|
275
272
|
return _w1.first_
|
|
276
273
|
})), (() => {
|
|
@@ -280,8 +277,8 @@ return result_
|
|
|
280
277
|
}))
|
|
281
278
|
}
|
|
282
279
|
|
|
283
|
-
export function ModuleCache_cacheResolvedModule(self_, packagePaths_,
|
|
284
|
-
const path_ = ff_compiler_ModuleCache.modulePath_(packagePaths_,
|
|
280
|
+
export function ModuleCache_cacheResolvedModule(self_, packagePaths_, moduleKey_, body_) {
|
|
281
|
+
const path_ = ff_compiler_ModuleCache.modulePath_(packagePaths_, moduleKey_);
|
|
285
282
|
return ff_core_Option.Option_else(ff_core_Option.Option_map(ff_core_Map.Map_get(self_.resolvedModules_, ff_core_Path.Path_absolute(path_), ff_core_Ordering.ff_core_Ordering_Order$ff_core_String_String), ((_w1) => {
|
|
286
283
|
return _w1.first_
|
|
287
284
|
})), (() => {
|
|
@@ -291,8 +288,8 @@ return result_
|
|
|
291
288
|
}))
|
|
292
289
|
}
|
|
293
290
|
|
|
294
|
-
export function ModuleCache_cacheDerivedModule(self_, packagePaths_,
|
|
295
|
-
const path_ = ff_compiler_ModuleCache.modulePath_(packagePaths_,
|
|
291
|
+
export function ModuleCache_cacheDerivedModule(self_, packagePaths_, moduleKey_, body_) {
|
|
292
|
+
const path_ = ff_compiler_ModuleCache.modulePath_(packagePaths_, moduleKey_);
|
|
296
293
|
return ff_core_Option.Option_else(ff_core_Option.Option_map(ff_core_Map.Map_get(self_.derivedModules_, ff_core_Path.Path_absolute(path_), ff_core_Ordering.ff_core_Ordering_Order$ff_core_String_String), ((_w1) => {
|
|
297
294
|
return _w1.first_
|
|
298
295
|
})), (() => {
|
|
@@ -302,8 +299,8 @@ return result_
|
|
|
302
299
|
}))
|
|
303
300
|
}
|
|
304
301
|
|
|
305
|
-
export function ModuleCache_cacheInferredModule(self_, packagePaths_,
|
|
306
|
-
const path_ = ff_compiler_ModuleCache.modulePath_(packagePaths_,
|
|
302
|
+
export function ModuleCache_cacheInferredModule(self_, packagePaths_, moduleKey_, body_) {
|
|
303
|
+
const path_ = ff_compiler_ModuleCache.modulePath_(packagePaths_, moduleKey_);
|
|
307
304
|
return ff_core_Option.Option_else(ff_core_Option.Option_map(ff_core_Map.Map_get(self_.inferredModules_, ff_core_Path.Path_absolute(path_), ff_core_Ordering.ff_core_Ordering_Order$ff_core_String_String), ((_w1) => {
|
|
308
305
|
return _w1.first_
|
|
309
306
|
})), (() => {
|
|
@@ -313,8 +310,8 @@ return result_
|
|
|
313
310
|
}))
|
|
314
311
|
}
|
|
315
312
|
|
|
316
|
-
export function ModuleCache_cacheEmittedModule(self_, packagePaths_,
|
|
317
|
-
const path_ = ff_compiler_ModuleCache.modulePath_(packagePaths_,
|
|
313
|
+
export function ModuleCache_cacheEmittedModule(self_, packagePaths_, moduleKey_, isMainModule_, body_) {
|
|
314
|
+
const path_ = ff_compiler_ModuleCache.modulePath_(packagePaths_, moduleKey_);
|
|
318
315
|
if((isMainModule_ || (!ff_core_Map.Map_contains(self_.emittedModules_, ff_core_Path.Path_absolute(path_), ff_core_Ordering.ff_core_Ordering_Order$ff_core_String_String)))) {
|
|
319
316
|
self_.emittedModules_ = ff_core_Map.Map_add(self_.emittedModules_, ff_core_Path.Path_absolute(path_), self_.version_, ff_core_Ordering.ff_core_Ordering_Order$ff_core_String_String);
|
|
320
317
|
try {
|
|
@@ -340,14 +337,13 @@ export async function ModuleCache_invalidate$(self_, key_, $task) {
|
|
|
340
337
|
ff_core_Option.Option_each(ff_core_Map.Map_get(self_.parsedModules_, key_, ff_core_Ordering.ff_core_Ordering_Order$ff_core_String_String), ((_1) => {
|
|
341
338
|
{
|
|
342
339
|
const module_ = _1.first_;
|
|
343
|
-
const moduleName_ = ff_core_String.String_dropLast(module_.file_, 3);
|
|
344
340
|
ff_compiler_ModuleCache.ModuleCache_remove(self_, [key_]);
|
|
345
341
|
ff_core_Map.Map_each(self_.parsedModules_, ((_1, _2) => {
|
|
346
342
|
{
|
|
347
343
|
const k_ = _1;
|
|
348
344
|
const m_ = _2.first_;
|
|
349
345
|
if(ff_core_List.List_any(m_.imports_, ((i_) => {
|
|
350
|
-
return
|
|
346
|
+
return ff_compiler_Syntax.ff_core_Equal_Equal$ff_compiler_Syntax_ModuleKey.equals_(i_.moduleKey_, module_.moduleKey_)
|
|
351
347
|
}))) {
|
|
352
348
|
ff_compiler_ModuleCache.ModuleCache_remove(self_, [k_])
|
|
353
349
|
}
|
|
@@ -359,13 +355,13 @@ return
|
|
|
359
355
|
}))
|
|
360
356
|
}
|
|
361
357
|
|
|
362
|
-
export async function ModuleCache_filesNotImporting$(self_,
|
|
358
|
+
export async function ModuleCache_filesNotImporting$(self_, moduleKey_, $task) {
|
|
363
359
|
return ff_core_List.List_collect(ff_core_Map.Map_toList(self_.parsedModules_, ff_core_Ordering.ff_core_Ordering_Order$ff_core_String_String), ((_1) => {
|
|
364
360
|
{
|
|
365
361
|
const k_ = _1.first_;
|
|
366
362
|
const m_ = _1.second_.first_;
|
|
367
363
|
if((!ff_core_List.List_any(m_.imports_, ((i_) => {
|
|
368
|
-
return
|
|
364
|
+
return ff_compiler_Syntax.ff_core_Equal_Equal$ff_compiler_Syntax_ModuleKey.equals_(i_.moduleKey_, moduleKey_)
|
|
369
365
|
})))) {
|
|
370
366
|
return ff_core_Option.Some(k_)
|
|
371
367
|
} else return ff_core_Option.None()
|
|
@@ -442,8 +438,8 @@ return _w1
|
|
|
442
438
|
}))
|
|
443
439
|
}
|
|
444
440
|
|
|
445
|
-
export async function ModuleCache_cacheParsedModule$(self_, packagePaths_,
|
|
446
|
-
const path_ = (await ff_compiler_ModuleCache.modulePath_$(packagePaths_,
|
|
441
|
+
export async function ModuleCache_cacheParsedModule$(self_, packagePaths_, moduleKey_, body_, $task) {
|
|
442
|
+
const path_ = (await ff_compiler_ModuleCache.modulePath_$(packagePaths_, moduleKey_, $task));
|
|
447
443
|
return (await ff_core_Option.Option_else$(ff_core_Option.Option_map(ff_core_Map.Map_get(self_.parsedModules_, (await ff_core_Path.Path_absolute$(path_, $task)), ff_core_Ordering.ff_core_Ordering_Order$ff_core_String_String), ((_w1) => {
|
|
448
444
|
return _w1.first_
|
|
449
445
|
})), (async ($task) => {
|
|
@@ -453,8 +449,8 @@ return result_
|
|
|
453
449
|
}), $task))
|
|
454
450
|
}
|
|
455
451
|
|
|
456
|
-
export async function ModuleCache_cacheResolvedModule$(self_, packagePaths_,
|
|
457
|
-
const path_ = (await ff_compiler_ModuleCache.modulePath_$(packagePaths_,
|
|
452
|
+
export async function ModuleCache_cacheResolvedModule$(self_, packagePaths_, moduleKey_, body_, $task) {
|
|
453
|
+
const path_ = (await ff_compiler_ModuleCache.modulePath_$(packagePaths_, moduleKey_, $task));
|
|
458
454
|
return (await ff_core_Option.Option_else$(ff_core_Option.Option_map(ff_core_Map.Map_get(self_.resolvedModules_, (await ff_core_Path.Path_absolute$(path_, $task)), ff_core_Ordering.ff_core_Ordering_Order$ff_core_String_String), ((_w1) => {
|
|
459
455
|
return _w1.first_
|
|
460
456
|
})), (async ($task) => {
|
|
@@ -464,8 +460,8 @@ return result_
|
|
|
464
460
|
}), $task))
|
|
465
461
|
}
|
|
466
462
|
|
|
467
|
-
export async function ModuleCache_cacheDerivedModule$(self_, packagePaths_,
|
|
468
|
-
const path_ = (await ff_compiler_ModuleCache.modulePath_$(packagePaths_,
|
|
463
|
+
export async function ModuleCache_cacheDerivedModule$(self_, packagePaths_, moduleKey_, body_, $task) {
|
|
464
|
+
const path_ = (await ff_compiler_ModuleCache.modulePath_$(packagePaths_, moduleKey_, $task));
|
|
469
465
|
return (await ff_core_Option.Option_else$(ff_core_Option.Option_map(ff_core_Map.Map_get(self_.derivedModules_, (await ff_core_Path.Path_absolute$(path_, $task)), ff_core_Ordering.ff_core_Ordering_Order$ff_core_String_String), ((_w1) => {
|
|
470
466
|
return _w1.first_
|
|
471
467
|
})), (async ($task) => {
|
|
@@ -475,8 +471,8 @@ return result_
|
|
|
475
471
|
}), $task))
|
|
476
472
|
}
|
|
477
473
|
|
|
478
|
-
export async function ModuleCache_cacheInferredModule$(self_, packagePaths_,
|
|
479
|
-
const path_ = (await ff_compiler_ModuleCache.modulePath_$(packagePaths_,
|
|
474
|
+
export async function ModuleCache_cacheInferredModule$(self_, packagePaths_, moduleKey_, body_, $task) {
|
|
475
|
+
const path_ = (await ff_compiler_ModuleCache.modulePath_$(packagePaths_, moduleKey_, $task));
|
|
480
476
|
return (await ff_core_Option.Option_else$(ff_core_Option.Option_map(ff_core_Map.Map_get(self_.inferredModules_, (await ff_core_Path.Path_absolute$(path_, $task)), ff_core_Ordering.ff_core_Ordering_Order$ff_core_String_String), ((_w1) => {
|
|
481
477
|
return _w1.first_
|
|
482
478
|
})), (async ($task) => {
|
|
@@ -486,8 +482,8 @@ return result_
|
|
|
486
482
|
}), $task))
|
|
487
483
|
}
|
|
488
484
|
|
|
489
|
-
export async function ModuleCache_cacheEmittedModule$(self_, packagePaths_,
|
|
490
|
-
const path_ = (await ff_compiler_ModuleCache.modulePath_$(packagePaths_,
|
|
485
|
+
export async function ModuleCache_cacheEmittedModule$(self_, packagePaths_, moduleKey_, isMainModule_, body_, $task) {
|
|
486
|
+
const path_ = (await ff_compiler_ModuleCache.modulePath_$(packagePaths_, moduleKey_, $task));
|
|
491
487
|
if((isMainModule_ || (!ff_core_Map.Map_contains(self_.emittedModules_, (await ff_core_Path.Path_absolute$(path_, $task)), ff_core_Ordering.ff_core_Ordering_Order$ff_core_String_String)))) {
|
|
492
488
|
self_.emittedModules_ = ff_core_Map.Map_add(self_.emittedModules_, (await ff_core_Path.Path_absolute$(path_, $task)), self_.version_, ff_core_Ordering.ff_core_Ordering_Order$ff_core_String_String);
|
|
493
489
|
try {
|
|
@@ -105,8 +105,8 @@ import * as ff_core_Try from "../../ff/core/Try.mjs"
|
|
|
105
105
|
import * as ff_core_Unit from "../../ff/core/Unit.mjs"
|
|
106
106
|
|
|
107
107
|
// type Parser
|
|
108
|
-
export function Parser(
|
|
109
|
-
return {
|
|
108
|
+
export function Parser(moduleKey_, tokens_, end_, targetIsNode_, lspHook_, lspEmittedArgumentHook_, offset_, nextUnificationVariableIndex_) {
|
|
109
|
+
return {moduleKey_, tokens_, end_, targetIsNode_, lspHook_, lspEmittedArgumentHook_, offset_, nextUnificationVariableIndex_};
|
|
110
110
|
}
|
|
111
111
|
|
|
112
112
|
// type Poly
|
|
@@ -116,12 +116,12 @@ return {generics_, constraints_};
|
|
|
116
116
|
|
|
117
117
|
export const binaryOperators_ = [["||"], ["&&"], ["!=", "==", "!==", "==="], ["<=", ">=", "<", ">"], ["+", "-"], ["*", "/", "%"], ["^"]];
|
|
118
118
|
|
|
119
|
-
export function new_(
|
|
120
|
-
return ff_compiler_Parser.Parser(
|
|
119
|
+
export function new_(moduleKey_, tokens_, targetIsNode_, lspHook_) {
|
|
120
|
+
return ff_compiler_Parser.Parser(moduleKey_, tokens_, ff_core_List.List_grabLast(tokens_), targetIsNode_, lspHook_, false, 0, 1)
|
|
121
121
|
}
|
|
122
122
|
|
|
123
|
-
export async function new_$(
|
|
124
|
-
return ff_compiler_Parser.Parser(
|
|
123
|
+
export async function new_$(moduleKey_, tokens_, targetIsNode_, lspHook_, $task) {
|
|
124
|
+
return ff_compiler_Parser.Parser(moduleKey_, tokens_, ff_core_List.List_grabLast(tokens_), targetIsNode_, lspHook_, false, 0, 1)
|
|
125
125
|
}
|
|
126
126
|
|
|
127
127
|
export function Parser_fail(self_, at_, message_) {
|
|
@@ -245,7 +245,7 @@ ff_compiler_Parser.Parser_skipSeparator(self_, ff_compiler_Token.LSemicolon())
|
|
|
245
245
|
};
|
|
246
246
|
return p_
|
|
247
247
|
})()
|
|
248
|
-
: ff_compiler_Syntax.DPackage(location_, self_.packagePair_, ff_compiler_Syntax.Version(location_, 0, 0, 0), ff_compiler_Syntax.TargetNames(self_.targetIsNode_, (!self_.targetIsNode_))));
|
|
248
|
+
: ff_compiler_Syntax.DPackage(location_, self_.moduleKey_.packagePair_, ff_compiler_Syntax.Version(location_, 0, 0, 0), ff_compiler_Syntax.TargetNames(self_.targetIsNode_, (!self_.targetIsNode_))));
|
|
249
249
|
if((ff_compiler_Token.Token_is(ff_compiler_Parser.Parser_current(self_), ff_compiler_Token.LKeyword()) && ff_compiler_Token.Token_rawIs(ff_compiler_Parser.Parser_current(self_), "package"))) {
|
|
250
250
|
throw Object.assign(new Error(), {ffException: ff_core_Any.toAny_(ff_compiler_Syntax.CompileError(ff_compiler_Token.Token_at(ff_compiler_Parser.Parser_current(self_)), "Duplicate package definition"), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError)})
|
|
251
251
|
};
|
|
@@ -288,7 +288,7 @@ instances_.array.push(ff_compiler_Parser.Parser_parseInstanceDefinition(self_))
|
|
|
288
288
|
} else if((ff_compiler_Token.Token_is(ff_compiler_Parser.Parser_current(self_), ff_compiler_Token.LKeyword()) && ff_compiler_Token.Token_rawIs4(ff_compiler_Parser.Parser_current(self_), "data", "class", "capability", "newtype"))) {
|
|
289
289
|
types_.array.push(ff_compiler_Parser.Parser_parseTypeDefinition(self_))
|
|
290
290
|
} else if((ff_compiler_Token.Token_is(ff_compiler_Parser.Parser_current(self_), ff_compiler_Token.LKeyword()) && ff_compiler_Token.Token_rawIs(ff_compiler_Parser.Parser_current(self_), "import"))) {
|
|
291
|
-
imports_.array.push(ff_compiler_Parser.Parser_parseImportDefinition(self_, self_.packagePair_))
|
|
291
|
+
imports_.array.push(ff_compiler_Parser.Parser_parseImportDefinition(self_, self_.moduleKey_.packagePair_))
|
|
292
292
|
} else if((ff_compiler_Token.Token_is(ff_compiler_Parser.Parser_current(self_), ff_compiler_Token.LKeyword()) && ff_compiler_Token.Token_rawIs(ff_compiler_Parser.Parser_current(self_), "include"))) {
|
|
293
293
|
throw Object.assign(new Error(), {ffException: ff_core_Any.toAny_(ff_compiler_Syntax.CompileError(ff_compiler_Token.Token_at(ff_compiler_Parser.Parser_current(self_)), "Includes must be at the top of the file or below 'package'"), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError)})
|
|
294
294
|
} else if((ff_compiler_Token.Token_is(ff_compiler_Parser.Parser_current(self_), ff_compiler_Token.LKeyword()) && ff_compiler_Token.Token_rawIs(ff_compiler_Parser.Parser_current(self_), "dependency"))) {
|
|
@@ -302,7 +302,7 @@ if((!ff_compiler_Token.Token_is(ff_compiler_Parser.Parser_current(self_), ff_com
|
|
|
302
302
|
ff_compiler_Parser.Parser_skipSeparator(self_, ff_compiler_Token.LSemicolon())
|
|
303
303
|
}
|
|
304
304
|
};
|
|
305
|
-
return ff_compiler_Syntax.Module(self_.
|
|
305
|
+
return ff_compiler_Syntax.Module(self_.moduleKey_, ff_core_Array.Array_toList(imports_, 0, 9007199254740991), ff_core_Array.Array_toList(types_, 0, 9007199254740991), ff_core_Array.Array_toList(traits_, 0, 9007199254740991), ff_core_Array.Array_toList(instances_, 0, 9007199254740991), ff_core_Array.Array_toList(extends_, 0, 9007199254740991), ff_core_Array.Array_toList(lets_, 0, 9007199254740991), ff_core_Array.Array_toList(functions_, 0, 9007199254740991))
|
|
306
306
|
}
|
|
307
307
|
|
|
308
308
|
export function Parser_parseLetDefinition(self_) {
|
|
@@ -592,7 +592,7 @@ const packageName_ = ff_compiler_Parser.Parser_parseDashedName(self_);
|
|
|
592
592
|
return ff_compiler_Syntax.PackagePair(userName_, packageName_)
|
|
593
593
|
})()
|
|
594
594
|
: currentPackagePair_);
|
|
595
|
-
return ff_compiler_Syntax.DImport(ff_compiler_Token.Token_at(fileToken_), alias_, packagePair_, ff_core_Array.Array_toList(path_, 0, 9007199254740991), ff_compiler_Token.Token_raw(fileToken_))
|
|
595
|
+
return ff_compiler_Syntax.DImport(ff_compiler_Token.Token_at(fileToken_), alias_, ff_compiler_Syntax.ModuleKey(packagePair_, ff_core_Array.Array_toList(path_, 0, 9007199254740991), ff_compiler_Token.Token_raw(fileToken_)))
|
|
596
596
|
}
|
|
597
597
|
|
|
598
598
|
export function Parser_parsePackageDefinition(self_) {
|
|
@@ -1749,7 +1749,7 @@ ff_compiler_Parser.Parser_skipSeparator(self_, ff_compiler_Token.LSemicolon())
|
|
|
1749
1749
|
};
|
|
1750
1750
|
return p_
|
|
1751
1751
|
})())
|
|
1752
|
-
: ff_compiler_Syntax.DPackage(location_, self_.packagePair_, ff_compiler_Syntax.Version(location_, 0, 0, 0), ff_compiler_Syntax.TargetNames(self_.targetIsNode_, (!self_.targetIsNode_))));
|
|
1752
|
+
: ff_compiler_Syntax.DPackage(location_, self_.moduleKey_.packagePair_, ff_compiler_Syntax.Version(location_, 0, 0, 0), ff_compiler_Syntax.TargetNames(self_.targetIsNode_, (!self_.targetIsNode_))));
|
|
1753
1753
|
if((ff_compiler_Token.Token_is(ff_compiler_Parser.Parser_current(self_), ff_compiler_Token.LKeyword()) && ff_compiler_Token.Token_rawIs(ff_compiler_Parser.Parser_current(self_), "package"))) {
|
|
1754
1754
|
throw Object.assign(new Error(), {ffException: ff_core_Any.toAny_(ff_compiler_Syntax.CompileError(ff_compiler_Token.Token_at(ff_compiler_Parser.Parser_current(self_)), "Duplicate package definition"), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError)})
|
|
1755
1755
|
};
|
|
@@ -1792,7 +1792,7 @@ instances_.array.push(ff_compiler_Parser.Parser_parseInstanceDefinition(self_))
|
|
|
1792
1792
|
} else if((ff_compiler_Token.Token_is(ff_compiler_Parser.Parser_current(self_), ff_compiler_Token.LKeyword()) && ff_compiler_Token.Token_rawIs4(ff_compiler_Parser.Parser_current(self_), "data", "class", "capability", "newtype"))) {
|
|
1793
1793
|
types_.array.push(ff_compiler_Parser.Parser_parseTypeDefinition(self_))
|
|
1794
1794
|
} else if((ff_compiler_Token.Token_is(ff_compiler_Parser.Parser_current(self_), ff_compiler_Token.LKeyword()) && ff_compiler_Token.Token_rawIs(ff_compiler_Parser.Parser_current(self_), "import"))) {
|
|
1795
|
-
imports_.array.push(ff_compiler_Parser.Parser_parseImportDefinition(self_, self_.packagePair_))
|
|
1795
|
+
imports_.array.push(ff_compiler_Parser.Parser_parseImportDefinition(self_, self_.moduleKey_.packagePair_))
|
|
1796
1796
|
} else if((ff_compiler_Token.Token_is(ff_compiler_Parser.Parser_current(self_), ff_compiler_Token.LKeyword()) && ff_compiler_Token.Token_rawIs(ff_compiler_Parser.Parser_current(self_), "include"))) {
|
|
1797
1797
|
throw Object.assign(new Error(), {ffException: ff_core_Any.toAny_(ff_compiler_Syntax.CompileError(ff_compiler_Token.Token_at(ff_compiler_Parser.Parser_current(self_)), "Includes must be at the top of the file or below 'package'"), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError)})
|
|
1798
1798
|
} else if((ff_compiler_Token.Token_is(ff_compiler_Parser.Parser_current(self_), ff_compiler_Token.LKeyword()) && ff_compiler_Token.Token_rawIs(ff_compiler_Parser.Parser_current(self_), "dependency"))) {
|
|
@@ -1806,7 +1806,7 @@ if((!ff_compiler_Token.Token_is(ff_compiler_Parser.Parser_current(self_), ff_com
|
|
|
1806
1806
|
ff_compiler_Parser.Parser_skipSeparator(self_, ff_compiler_Token.LSemicolon())
|
|
1807
1807
|
}
|
|
1808
1808
|
};
|
|
1809
|
-
return ff_compiler_Syntax.Module(self_.
|
|
1809
|
+
return ff_compiler_Syntax.Module(self_.moduleKey_, ff_core_Array.Array_toList(imports_, 0, 9007199254740991), ff_core_Array.Array_toList(types_, 0, 9007199254740991), ff_core_Array.Array_toList(traits_, 0, 9007199254740991), ff_core_Array.Array_toList(instances_, 0, 9007199254740991), ff_core_Array.Array_toList(extends_, 0, 9007199254740991), ff_core_Array.Array_toList(lets_, 0, 9007199254740991), ff_core_Array.Array_toList(functions_, 0, 9007199254740991))
|
|
1810
1810
|
}
|
|
1811
1811
|
|
|
1812
1812
|
export async function Parser_parseLetDefinition$(self_, $task) {
|
|
@@ -2096,7 +2096,7 @@ const packageName_ = ff_compiler_Parser.Parser_parseDashedName(self_);
|
|
|
2096
2096
|
return ff_compiler_Syntax.PackagePair(userName_, packageName_)
|
|
2097
2097
|
})())
|
|
2098
2098
|
: currentPackagePair_);
|
|
2099
|
-
return ff_compiler_Syntax.DImport(ff_compiler_Token.Token_at(fileToken_), alias_, packagePair_, ff_core_Array.Array_toList(path_, 0, 9007199254740991), ff_compiler_Token.Token_raw(fileToken_))
|
|
2099
|
+
return ff_compiler_Syntax.DImport(ff_compiler_Token.Token_at(fileToken_), alias_, ff_compiler_Syntax.ModuleKey(packagePair_, ff_core_Array.Array_toList(path_, 0, 9007199254740991), ff_compiler_Token.Token_raw(fileToken_)))
|
|
2100
2100
|
}
|
|
2101
2101
|
|
|
2102
2102
|
export async function Parser_parsePackageDefinition$(self_, $task) {
|
|
@@ -117,7 +117,7 @@ return {at_, name_, asBound_};
|
|
|
117
117
|
|
|
118
118
|
|
|
119
119
|
|
|
120
|
-
export function new_(
|
|
120
|
+
export function new_(lspHook_) {
|
|
121
121
|
return ff_compiler_Resolver.Resolver(ff_core_List.List_toMap([], ff_core_Ordering.ff_core_Ordering_Order$ff_core_String_String), ff_core_List.List_toMap([], ff_core_Ordering.ff_core_Ordering_Order$ff_core_String_String), ff_core_List.List_toMap([], ff_core_Ordering.ff_core_Ordering_Order$ff_core_String_String), ff_core_List.List_toMap([], ff_core_Ordering.ff_core_Ordering_Order$ff_core_String_String), ff_core_List.List_toMap([], ff_core_Ordering.ff_core_Ordering_Order$ff_core_String_String), ff_core_List.List_toMap([], ff_core_Ordering.ff_core_Ordering_Order$ff_core_String_String), ff_core_List.List_toSet([], ff_core_Ordering.ff_core_Ordering_Order$ff_core_String_String), ff_core_List.List_toSet([], ff_core_Ordering.ff_core_Ordering_Order$ff_core_String_String), ff_core_List.List_toMap([], ff_core_Ordering.ff_core_Ordering_Order$ff_core_String_String), ff_core_List.List_toMap([], ff_core_Ordering.ff_core_Ordering_Order$ff_core_String_String), ff_compiler_Resolver.ResolverState(2), lspHook_)
|
|
122
122
|
}
|
|
123
123
|
|
|
@@ -133,7 +133,7 @@ seen_ = ff_core_Map.Map_add(seen_, n_, item_, ff_core_Ordering.ff_core_Ordering_
|
|
|
133
133
|
return items_
|
|
134
134
|
}
|
|
135
135
|
|
|
136
|
-
export async function new_$(
|
|
136
|
+
export async function new_$(lspHook_, $task) {
|
|
137
137
|
return ff_compiler_Resolver.Resolver(ff_core_List.List_toMap([], ff_core_Ordering.ff_core_Ordering_Order$ff_core_String_String), ff_core_List.List_toMap([], ff_core_Ordering.ff_core_Ordering_Order$ff_core_String_String), ff_core_List.List_toMap([], ff_core_Ordering.ff_core_Ordering_Order$ff_core_String_String), ff_core_List.List_toMap([], ff_core_Ordering.ff_core_Ordering_Order$ff_core_String_String), ff_core_List.List_toMap([], ff_core_Ordering.ff_core_Ordering_Order$ff_core_String_String), ff_core_List.List_toMap([], ff_core_Ordering.ff_core_Ordering_Order$ff_core_String_String), ff_core_List.List_toSet([], ff_core_Ordering.ff_core_Ordering_Order$ff_core_String_String), ff_core_List.List_toSet([], ff_core_Ordering.ff_core_Ordering_Order$ff_core_String_String), ff_core_List.List_toMap([], ff_core_Ordering.ff_core_Ordering_Order$ff_core_String_String), ff_core_List.List_toMap([], ff_core_Ordering.ff_core_Ordering_Order$ff_core_String_String), ff_compiler_Resolver.ResolverState(2), lspHook_)
|
|
138
138
|
}
|
|
139
139
|
|
|
@@ -156,16 +156,11 @@ return result_
|
|
|
156
156
|
}
|
|
157
157
|
|
|
158
158
|
export function Resolver_resolveModule(self_, module_, otherModules_) {
|
|
159
|
-
const moduleNamespace_ = ff_core_String.String_takeWhile(ff_core_String.String_reverse(ff_core_String.String_takeWhile(ff_core_String.String_reverse(ff_core_String.String_replace(module_.file_, "\\", "/")), ((_w1) => {
|
|
160
|
-
return (_w1 !== 47)
|
|
161
|
-
}))), ((_w1) => {
|
|
162
|
-
return (_w1 !== 46)
|
|
163
|
-
}));
|
|
164
159
|
const self2_ = ff_compiler_Resolver.Resolver_processImports(self_, module_.imports_, otherModules_);
|
|
165
160
|
const self3_ = ff_compiler_Resolver.Resolver_processDefinitions(self2_, module_, ff_core_Option.None());
|
|
166
161
|
const errors_ = ff_core_Array.new_();
|
|
167
162
|
const module2_ = (((_c) => {
|
|
168
|
-
return ff_compiler_Syntax.Module(_c.
|
|
163
|
+
return ff_compiler_Syntax.Module(_c.moduleKey_, _c.imports_, ff_compiler_Syntax.catchManyInto_(errors_, module_.types_, ((_w1) => {
|
|
169
164
|
return ff_compiler_Resolver.Resolver_resolveTypeDefinition(self3_, _w1)
|
|
170
165
|
})), ff_compiler_Syntax.catchManyInto_(errors_, module_.traits_, ((_w1) => {
|
|
171
166
|
return ff_compiler_Resolver.Resolver_resolveTraitDefinition(self3_, _w1)
|
|
@@ -269,7 +264,7 @@ for(let for_a = imports_, for_i = 0, for_l = for_a.length; for_i < for_l; for_i+
|
|
|
269
264
|
const import_ = for_a[for_i];
|
|
270
265
|
do {
|
|
271
266
|
const _1 = ff_core_List.List_find(modules_, ((_w1) => {
|
|
272
|
-
return
|
|
267
|
+
return ff_compiler_Syntax.ff_core_Equal_Equal$ff_compiler_Syntax_ModuleKey.equals_(_w1.moduleKey_, import_.moduleKey_)
|
|
273
268
|
}));
|
|
274
269
|
if(_1.Some) {
|
|
275
270
|
const module_ = _1.value_;
|
|
@@ -277,7 +272,7 @@ resolver_ = ff_compiler_Resolver.Resolver_processDefinitions(resolver_, module_,
|
|
|
277
272
|
break
|
|
278
273
|
}
|
|
279
274
|
{
|
|
280
|
-
throw Object.assign(new Error(), {ffException: ff_core_Any.toAny_(ff_compiler_Syntax.CompileError(import_.at_, ("No such module: " + import_.
|
|
275
|
+
throw Object.assign(new Error(), {ffException: ff_core_Any.toAny_(ff_compiler_Syntax.CompileError(import_.at_, ("No such module: " + ff_compiler_Syntax.ModuleKey_importName(import_.moduleKey_))), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError)})
|
|
281
276
|
}
|
|
282
277
|
} while(false)
|
|
283
278
|
};
|
|
@@ -286,7 +281,7 @@ return resolver_
|
|
|
286
281
|
|
|
287
282
|
export function Resolver_processDefinitions(self_, module_, importAlias_) {
|
|
288
283
|
function entry_(name_, unqualified_) {
|
|
289
|
-
const full_ =
|
|
284
|
+
const full_ = ff_compiler_Syntax.ModuleKey_qualifiedSymbol(module_.moduleKey_, name_);
|
|
290
285
|
{
|
|
291
286
|
const _1 = importAlias_;
|
|
292
287
|
if(_1.None) {
|
|
@@ -304,7 +299,7 @@ return [ff_core_Pair.Pair(((alias_ + ".") + name_), full_), ff_core_Pair.Pair(fu
|
|
|
304
299
|
}
|
|
305
300
|
}
|
|
306
301
|
}
|
|
307
|
-
const isCore_ = (((module_.packagePair_.group_ === "ff") && (module_.packagePair_.name_ === "core")) && (module_.
|
|
302
|
+
const isCore_ = ((((module_.moduleKey_.packagePair_.group_ === "ff") && (module_.moduleKey_.packagePair_.name_ === "core")) && ff_core_List.ff_core_Equal_Equal$ff_core_List_List(ff_core_Equal.ff_core_Equal_Equal$ff_core_String_String).equals_(module_.moduleKey_.folders_, [])) && (module_.moduleKey_.name_ === "Core"));
|
|
308
303
|
const lets_ = ff_core_List.List_toMap(ff_core_List.List_flatMap(module_.lets_, ((_w1) => {
|
|
309
304
|
return entry_(_w1.name_, isCore_)
|
|
310
305
|
})), ff_core_Ordering.ff_core_Ordering_Order$ff_core_String_String);
|
|
@@ -1157,16 +1152,11 @@ return result_
|
|
|
1157
1152
|
}
|
|
1158
1153
|
|
|
1159
1154
|
export async function Resolver_resolveModule$(self_, module_, otherModules_, $task) {
|
|
1160
|
-
const moduleNamespace_ = ff_core_String.String_takeWhile(ff_core_String.String_reverse(ff_core_String.String_takeWhile(ff_core_String.String_reverse(ff_core_String.String_replace(module_.file_, "\\", "/")), ((_w1) => {
|
|
1161
|
-
return (_w1 !== 47)
|
|
1162
|
-
}))), ((_w1) => {
|
|
1163
|
-
return (_w1 !== 46)
|
|
1164
|
-
}));
|
|
1165
1155
|
const self2_ = ff_compiler_Resolver.Resolver_processImports(self_, module_.imports_, otherModules_);
|
|
1166
1156
|
const self3_ = ff_compiler_Resolver.Resolver_processDefinitions(self2_, module_, ff_core_Option.None());
|
|
1167
1157
|
const errors_ = ff_core_Array.new_();
|
|
1168
1158
|
const module2_ = (((_c) => {
|
|
1169
|
-
return ff_compiler_Syntax.Module(_c.
|
|
1159
|
+
return ff_compiler_Syntax.Module(_c.moduleKey_, _c.imports_, ff_compiler_Syntax.catchManyInto_(errors_, module_.types_, ((_w1) => {
|
|
1170
1160
|
return ff_compiler_Resolver.Resolver_resolveTypeDefinition(self3_, _w1)
|
|
1171
1161
|
})), ff_compiler_Syntax.catchManyInto_(errors_, module_.traits_, ((_w1) => {
|
|
1172
1162
|
return ff_compiler_Resolver.Resolver_resolveTraitDefinition(self3_, _w1)
|
|
@@ -1270,7 +1260,7 @@ for(let for_a = imports_, for_i = 0, for_l = for_a.length; for_i < for_l; for_i+
|
|
|
1270
1260
|
const import_ = for_a[for_i];
|
|
1271
1261
|
do {
|
|
1272
1262
|
const _1 = ff_core_List.List_find(modules_, ((_w1) => {
|
|
1273
|
-
return
|
|
1263
|
+
return ff_compiler_Syntax.ff_core_Equal_Equal$ff_compiler_Syntax_ModuleKey.equals_(_w1.moduleKey_, import_.moduleKey_)
|
|
1274
1264
|
}));
|
|
1275
1265
|
if(_1.Some) {
|
|
1276
1266
|
const module_ = _1.value_;
|
|
@@ -1278,7 +1268,7 @@ resolver_ = ff_compiler_Resolver.Resolver_processDefinitions(resolver_, module_,
|
|
|
1278
1268
|
break
|
|
1279
1269
|
}
|
|
1280
1270
|
{
|
|
1281
|
-
throw Object.assign(new Error(), {ffException: ff_core_Any.toAny_(ff_compiler_Syntax.CompileError(import_.at_, ("No such module: " + import_.
|
|
1271
|
+
throw Object.assign(new Error(), {ffException: ff_core_Any.toAny_(ff_compiler_Syntax.CompileError(import_.at_, ("No such module: " + ff_compiler_Syntax.ModuleKey_importName(import_.moduleKey_))), ff_compiler_Syntax.ff_core_Any_HasAnyTag$ff_compiler_Syntax_CompileError)})
|
|
1282
1272
|
}
|
|
1283
1273
|
} while(false)
|
|
1284
1274
|
};
|
|
@@ -1287,7 +1277,7 @@ return resolver_
|
|
|
1287
1277
|
|
|
1288
1278
|
export async function Resolver_processDefinitions$(self_, module_, importAlias_, $task) {
|
|
1289
1279
|
function entry_(name_, unqualified_) {
|
|
1290
|
-
const full_ =
|
|
1280
|
+
const full_ = ff_compiler_Syntax.ModuleKey_qualifiedSymbol(module_.moduleKey_, name_);
|
|
1291
1281
|
{
|
|
1292
1282
|
const _1 = importAlias_;
|
|
1293
1283
|
if(_1.None) {
|
|
@@ -1305,7 +1295,7 @@ return [ff_core_Pair.Pair(((alias_ + ".") + name_), full_), ff_core_Pair.Pair(fu
|
|
|
1305
1295
|
}
|
|
1306
1296
|
}
|
|
1307
1297
|
}
|
|
1308
|
-
const isCore_ = (((module_.packagePair_.group_ === "ff") && (module_.packagePair_.name_ === "core")) && (module_.
|
|
1298
|
+
const isCore_ = ((((module_.moduleKey_.packagePair_.group_ === "ff") && (module_.moduleKey_.packagePair_.name_ === "core")) && ff_core_List.ff_core_Equal_Equal$ff_core_List_List(ff_core_Equal.ff_core_Equal_Equal$ff_core_String_String).equals_(module_.moduleKey_.folders_, [])) && (module_.moduleKey_.name_ === "Core"));
|
|
1309
1299
|
const lets_ = ff_core_List.List_toMap(ff_core_List.List_flatMap(module_.lets_, ((_w1) => {
|
|
1310
1300
|
return entry_(_w1.name_, isCore_)
|
|
1311
1301
|
})), ff_core_Ordering.ff_core_Ordering_Order$ff_core_String_String);
|
|
@@ -130,7 +130,7 @@ return ff_compiler_Substitution.Substitution_substituteInstanceDefinition(self_,
|
|
|
130
130
|
const _1 = module_;
|
|
131
131
|
{
|
|
132
132
|
const _c = _1;
|
|
133
|
-
return ff_compiler_Syntax.Module(_c.
|
|
133
|
+
return ff_compiler_Syntax.Module(_c.moduleKey_, _c.imports_, _c.types_, _c.traits_, instances_, extends_, lets_, functions_)
|
|
134
134
|
}
|
|
135
135
|
}
|
|
136
136
|
}
|
|
@@ -567,7 +567,7 @@ return ff_compiler_Substitution.Substitution_substituteInstanceDefinition(self_,
|
|
|
567
567
|
const _1 = module_;
|
|
568
568
|
{
|
|
569
569
|
const _c = _1;
|
|
570
|
-
return ff_compiler_Syntax.Module(_c.
|
|
570
|
+
return ff_compiler_Syntax.Module(_c.moduleKey_, _c.imports_, _c.types_, _c.traits_, instances_, extends_, lets_, functions_)
|
|
571
571
|
}
|
|
572
572
|
}
|
|
573
573
|
}
|