Skip to content

Commit 99f3910

Browse files
author
cgiuliani
committed
feat: type misc fields, shrink size
1 parent f38eb50 commit 99f3910

14 files changed

+62
-185
lines changed

configurator/lib/src/configuration.dart

+1-2
Original file line numberDiff line numberDiff line change
@@ -90,8 +90,7 @@ class Configuration {
9090
bool flag(String id) {
9191
return _scopesSorted.reversed.firstWhereOrNull((s) {
9292
return s.flags.containsKey(id);
93-
})?.flags[id] ??
94-
false;
93+
})?.flags[id] == true;
9594
}
9695

9796
String color(String id) {

configurator/lib/src/writers/color_writer.dart

+4-19
Original file line numberDiff line numberDiff line change
@@ -17,17 +17,6 @@ class ColorWriter extends Writer {
1717
Spec write() {
1818
LibraryBuilder lb = LibraryBuilder();
1919

20-
Class scope = Class( ( builder ) {
21-
builder
22-
..constructors.add( Constructor( ( b ) => b..constant = true ) )
23-
..name = '_Colors'
24-
..methods.addAll([
25-
..._getColorGetters(),
26-
]);
27-
});
28-
29-
lb.body.add( scope );
30-
3120
Class config = _buildAccessor();
3221

3322
lb.body.add( config );
@@ -36,20 +25,16 @@ class ColorWriter extends Writer {
3625

3726
}
3827

39-
List<Method> _getColorGetters([ bool useConfig = false ]) {
28+
List<Method> _getColorGetters() {
4029
return _colors.map((e) {
4130
return Method( ( builder ) {
4231
builder
4332
..name = e.name.canonicalize
4433
..type = MethodType.getter
45-
..returns = refer( useConfig ? 'Color' : 'String' )
34+
..returns = refer('Color')
4635
..lambda = true
4736
..body = Code( () {
48-
if ( useConfig ) {
49-
return '_config.colorValue( ${name}ConfigKeys.colors.${e.name} )';
50-
}
51-
52-
return 'map[ ${name}ConfigKeys.colors.${e.name.canonicalize} ] ?? \'\'';
37+
return '_config.colorValue( "${e.name}" )';
5338
}() );
5439
});
5540
}).toList();
@@ -79,7 +64,7 @@ class ColorWriter extends Writer {
7964
}),
8065
])
8166
..methods.addAll([
82-
..._getColorGetters( true ),
67+
..._getColorGetters(),
8368
]);
8469
});
8570
}

configurator/lib/src/writers/flag_writer.dart

+3-18
Original file line numberDiff line numberDiff line change
@@ -18,17 +18,6 @@ class FlagWriter extends Writer {
1818

1919
LibraryBuilder lb = LibraryBuilder();
2020

21-
Class scope = Class( ( builder ) {
22-
builder
23-
..constructors.add( Constructor( ( b ) => b..constant = true ) )
24-
..name = '_Flags'
25-
..methods.addAll([
26-
..._getGetters(),
27-
]);
28-
});
29-
30-
lb.body.add( scope );
31-
3221
Class config = _buildAccessor();
3322

3423
lb.body.add( config );
@@ -37,7 +26,7 @@ class FlagWriter extends Writer {
3726

3827
}
3928

40-
List<Method> _getGetters([ bool useConfig = false ]) {
29+
List<Method> _getGetters() {
4130
return _flags.map((e) {
4231
return Method( ( builder ) {
4332
builder
@@ -46,11 +35,7 @@ class FlagWriter extends Writer {
4635
..returns = refer( 'bool' )
4736
..lambda = true
4837
..body = Code( () {
49-
if ( useConfig ) {
50-
return '_config.flag( ${name}ConfigKeys.flags.${e.name} ) == true';
51-
}
52-
53-
return 'map[ ${name}ConfigKeys.flags.${e.name} ] == true';
38+
return '_config.flag("${e.name}")';
5439
}() );
5540
});
5641
}).toList();
@@ -80,7 +65,7 @@ class FlagWriter extends Writer {
8065
}),
8166
])
8267
..methods.addAll([
83-
..._getGetters( true ),
68+
..._getGetters(),
8469
]);
8570
});
8671
}

configurator/lib/src/writers/image_writer.dart

+5-20
Original file line numberDiff line numberDiff line change
@@ -16,17 +16,6 @@ class ImageWriter extends Writer {
1616
Spec write() {
1717
LibraryBuilder lb = LibraryBuilder();
1818

19-
Class scope = Class( ( builder ) {
20-
builder
21-
..constructors.add( Constructor( ( b ) => b..constant = true ) )
22-
..name = '_Images'
23-
..methods.addAll([
24-
..._getGetters(),
25-
]);
26-
});
27-
28-
lb.body.add( scope );
29-
3019
Class config = _buildAccessor();
3120

3221
lb.body.add( config );
@@ -35,7 +24,7 @@ class ImageWriter extends Writer {
3524

3625
}
3726

38-
List<Method> _getGetters([ bool useConfig = false ]) {
27+
List<Method> _getGetters() {
3928
return _images.map((e) {
4029
return Method( ( builder ) {
4130
builder
@@ -44,14 +33,10 @@ class ImageWriter extends Writer {
4433
..returns = refer( e.value is List ? 'List<String>' : 'String' )
4534
..lambda = true
4635
..body = Code( () {
47-
if ( useConfig ) {
48-
if ( e.value is List ) {
49-
return '_config.imageList( ${name}ConfigKeys.images.${e.name} )';
50-
}
51-
return '_config.image( ${name}ConfigKeys.images.${e.name} )';
36+
if ( e.value is List ) {
37+
return '_config.imageList("${e.name}")';
5238
}
53-
54-
return 'map[ ${name}ConfigKeys.images.${e.name} ] ?? \'/\'';
39+
return '_config.image("${e.name}")';
5540
}() );
5641
});
5742
}).toList();
@@ -81,7 +66,7 @@ class ImageWriter extends Writer {
8166
}),
8267
])
8368
..methods.addAll([
84-
..._getGetters( true ),
69+
..._getGetters(),
8570
]);
8671
});
8772
}

configurator/lib/src/writers/margin_writer.dart

+3-18
Original file line numberDiff line numberDiff line change
@@ -17,25 +17,14 @@ class MarginWriter extends Writer {
1717
Spec write() {
1818
LibraryBuilder lb = LibraryBuilder();
1919

20-
Class scope = Class( ( builder ) {
21-
builder
22-
..constructors.add( Constructor( ( b ) => b..constant = true ) )
23-
..name = '_Margins'
24-
..methods.addAll([
25-
..._getGetters(),
26-
]);
27-
});
28-
29-
lb.body.add( scope );
30-
3120
Class config = _buildAccessor();
3221

3322
lb.body.add( config );
3423

3524
return lb.build();
3625
}
3726

38-
List<Method> _getGetters([ bool useConfig = false ]) {
27+
List<Method> _getGetters() {
3928
return _sizes.map((e) {
4029
return Method( ( builder ) {
4130
builder
@@ -44,11 +33,7 @@ class MarginWriter extends Writer {
4433
..returns = refer( 'double' )
4534
..lambda = true
4635
..body = Code( () {
47-
if ( useConfig ) {
48-
return '_config.margin( ${name}ConfigKeys.margins.${e.name} )';
49-
}
50-
51-
return 'map[ ${name}ConfigKeys.margins.${e.name} ] ?? 0.0';
36+
return '_config.margin("${e.name}")';
5237
}() );
5338
});
5439
}).toList();
@@ -78,7 +63,7 @@ class MarginWriter extends Writer {
7863
}),
7964
])
8065
..methods.addAll([
81-
..._getGetters( true ),
66+
..._getGetters(),
8267
]);
8368
});
8469
}

configurator/lib/src/writers/misc_writer.dart

+16-19
Original file line numberDiff line numberDiff line change
@@ -17,17 +17,6 @@ class MiscWriter extends Writer {
1717
Spec write() {
1818
LibraryBuilder lb = LibraryBuilder();
1919

20-
Class scope = Class( ( builder ) {
21-
builder
22-
..constructors.add( Constructor( ( b ) => b..constant = true ) )
23-
..name = '_Misc'
24-
..methods.addAll([
25-
..._getGetters(),
26-
]);
27-
});
28-
29-
lb.body.add( scope );
30-
3120
Class config = _buildAccessor();
3221

3322
lb.body.add( config );
@@ -36,20 +25,28 @@ class MiscWriter extends Writer {
3625

3726
}
3827

39-
List<Method> _getGetters([ bool useConfig = false ]) {
28+
List<Method> _getGetters() {
4029
return _settings.map((e) {
4130
return Method( ( builder ) {
4231
builder
4332
..name = e.name.canonicalize
4433
..type = MethodType.getter
45-
..returns = refer( 'dynamic' )
46-
..lambda = true
47-
..body = Code( () {
48-
if ( useConfig ) {
49-
return '_config.misc( ${name}ConfigKeys.misc.${e.name} )';
34+
..returns = refer(() {
35+
if (e.value is String) {
36+
return 'String';
37+
} else if (e.value is int) {
38+
return 'int';
39+
} else if (e.value is double) {
40+
return 'double';
41+
} else if (e.value is bool) {
42+
return 'bool';
5043
}
5144

52-
return 'map[ ${name}ConfigKeys.misc.${e.name.canonicalize} ]';
45+
return 'dynamic';
46+
}())
47+
..lambda = true
48+
..body = Code( () {
49+
return '_config.misc("${e.name}")';
5350
}() );
5451
});
5552
}).toList();
@@ -79,7 +76,7 @@ class MiscWriter extends Writer {
7976
}),
8077
])
8178
..methods.addAll([
82-
..._getGetters( true ),
79+
..._getGetters(),
8380
]);
8481
});
8582
}

configurator/lib/src/writers/padding_writer.dart

+3-18
Original file line numberDiff line numberDiff line change
@@ -17,25 +17,14 @@ class PaddingWriter extends Writer {
1717
Spec write() {
1818
LibraryBuilder lb = LibraryBuilder();
1919

20-
Class scope = Class( ( builder ) {
21-
builder
22-
..constructors.add( Constructor( ( b ) => b..constant = true ) )
23-
..name = '_Padding'
24-
..methods.addAll([
25-
..._getGetters(),
26-
]);
27-
});
28-
29-
lb.body.add( scope );
30-
3120
Class config = _buildAccessor();
3221

3322
lb.body.add( config );
3423

3524
return lb.build();
3625
}
3726

38-
List<Method> _getGetters([ bool useConfig = false ]) {
27+
List<Method> _getGetters() {
3928
return _sizes.map((e) {
4029
return Method( ( builder ) {
4130
builder
@@ -44,11 +33,7 @@ class PaddingWriter extends Writer {
4433
..returns = refer( 'double' )
4534
..lambda = true
4635
..body = Code( () {
47-
if ( useConfig ) {
48-
return '_config.padding( ${name}ConfigKeys.padding.${e.name} )';
49-
}
50-
51-
return 'map[ ${name}ConfigKeys.padding.${e.name} ] ?? 0.0';
36+
return '_config.padding("${e.name}")';
5237
}() );
5338
});
5439
}).toList();
@@ -78,7 +63,7 @@ class PaddingWriter extends Writer {
7863
}),
7964
])
8065
..methods.addAll([
81-
..._getGetters( true ),
66+
..._getGetters(),
8267
]);
8368
});
8469
}

configurator/lib/src/writers/route_writer.dart

+3-18
Original file line numberDiff line numberDiff line change
@@ -15,25 +15,14 @@ class RouteWriter extends Writer {
1515
Spec write() {
1616
LibraryBuilder lb = LibraryBuilder();
1717

18-
Class scope = Class( ( builder ) {
19-
builder
20-
..constructors.add( Constructor( ( b ) => b..constant = true ) )
21-
..name = '_Routes'
22-
..methods.addAll([
23-
..._getGetters(),
24-
]);
25-
});
26-
27-
lb.body.add( scope );
28-
2918
Class config = _buildAccessor();
3019

3120
lb.body.add( config );
3221

3322
return lb.build();
3423
}
3524

36-
List<Method> _getGetters([ bool useConfig = false ]) {
25+
List<Method> _getGetters() {
3726
return _routes.map((e) {
3827
return Method( ( builder ) {
3928
builder
@@ -42,11 +31,7 @@ class RouteWriter extends Writer {
4231
..returns = refer( 'String' )
4332
..lambda = true
4433
..body = Code( () {
45-
if ( useConfig ) {
46-
return '_config.route( ${name}ConfigKeys.routes.${e.path.canonicalize} )';
47-
}
48-
49-
return 'map[ ${name}ConfigKeys.routes.${e.path.canonicalize} ] ?? \'/\'';
34+
return '_config.route(${e.id})';
5035
}() );
5136
});
5237
}).toList();
@@ -76,7 +61,7 @@ class RouteWriter extends Writer {
7661
}),
7762
])
7863
..methods.addAll([
79-
..._getGetters( true ),
64+
..._getGetters(),
8065
]);
8166
});
8267
}

0 commit comments

Comments
 (0)