Skip to content

Commit c40928a

Browse files
committed
Dart: do not render conversion imports for typedef files
The file, which contains only a global typedef does not need to include conversion imports. They cause unused imports warning. Signed-off-by: Patryk Wrobel <183546751+pwrobeldev@users.noreply.github.com>
1 parent 9e09f8c commit c40928a

4 files changed

Lines changed: 9 additions & 2 deletions

File tree

gluecodium/src/main/java/com/here/gluecodium/generator/dart/DartGenerator.kt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -258,11 +258,13 @@ internal class DartGenerator : Generator {
258258
val optimizedLists = OptimizedListsCollector().getAllOptimizedLists(rootElement)
259259

260260
val imports = importCollectors.flatMap { it.collectImports(rootElement) }
261+
val nonConversionImports = imports.filterNot { it.filePath.endsWith("__conversion") }
261262
val content =
262263
TemplateEngine.render(
263264
"dart/DartFile",
264265
mapOf(
265266
"imports" to imports.distinct().sorted().filterNot { it.filePath.endsWith(filePath) },
267+
"nonConversionImports" to nonConversionImports.distinct().sorted().filterNot { it.filePath.endsWith(filePath) },
266268
"model" to rootElement,
267269
"contentTemplate" to contentTemplateName,
268270
"libraryName" to libraryName,

gluecodium/src/main/resources/templates/dart/DartFile.mustache

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,9 +20,16 @@
2020
!}}
2121
{{#if copyrightHeader}}{{prefix copyrightHeader "// "}}{{/if}}
2222

23+
{{#instanceOf model "LimeTypeAlias"}}
24+
{{#nonConversionImports}}
25+
{{>dart/DartImport}}
26+
{{/nonConversionImports}}
27+
{{/instanceOf}}
28+
{{#notInstanceOf model "LimeTypeAlias"}}
2329
{{#imports}}
2430
{{>dart/DartImport}}
2531
{{/imports}}
32+
{{/notInstanceOf}}
2633

2734
{{#model}}
2835
{{include contentTemplate}}

gluecodium/src/test/resources/smoke/typedefs/output/dart/lib/src/smoke/global_list_type_def.dart

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11

22

3-
import 'package:library/src/generic_types__conversion.dart';
43

54
/// This is some standalone list typedef.
65
typedef GlobalListTypeDef = List<double>;

gluecodium/src/test/resources/smoke/typedefs/output/dart/lib/src/smoke/global_map_type_def.dart

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11

22

3-
import 'package:library/src/generic_types__conversion.dart';
43

54
/// This is some standalone map typedef.
65
typedef GlobalMapTypeDef = Map<int, String>;

0 commit comments

Comments
 (0)