File tree 1 file changed +4
-3
lines changed
1 file changed +4
-3
lines changed Original file line number Diff line number Diff line change @@ -23,6 +23,7 @@ data Dart : Type where
23
23
record DartT where
24
24
constructor MkDartT
25
25
imports : StringMap Doc
26
+ nextImportId : Int
26
27
includes : SortedSet String
27
28
foreignTypeNames : StringMap Doc
28
29
usesDelay : Bool
@@ -52,8 +53,8 @@ addImport lib = do
52
53
s <- get Dart
53
54
case lookup lib (imports s) of
54
55
Nothing => do
55
- let alias = text (dartIdent lib )
56
- put Dart (record { imports $= insert lib alias } s)
56
+ let alias = text (" $ " ++ show (nextImportId s) )
57
+ put Dart (record { imports $= insert lib alias, nextImportId $= ( + 1 ) } s)
57
58
pure alias
58
59
Just alias =>
59
60
pure alias
@@ -1020,7 +1021,7 @@ nubSort = SortedSet.toList . SortedSet.fromList
1020
1021
compileToDart : Ref Ctxt Defs -> ClosedTerm -> Core Doc
1021
1022
compileToDart defs term = do
1022
1023
(impDefs, impMain) <- compileToImperative defs term
1023
- ctx <- newRef Dart (MkDartT (fromList [(" dart:core" , " $" )]) empty empty False )
1024
+ ctx <- newRef Dart (MkDartT (fromList [(" dart:core" , " $" )]) 1 empty empty False )
1024
1025
dartDefs <- dartStatement impDefs
1025
1026
dartMain <- dartStatement impMain
1026
1027
finalState <- get Dart
You can’t perform that action at this time.
0 commit comments