Files
sdk/benchmarks/MapLookup/generate_maps.dart
Robert Nystrom e4c8b49dcc Format benchmarks/.
Change-Id: I1362ada67a02b0ed352612fc29c727e94d8cd254
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/394901
Commit-Queue: Daco Harkes <dacoharkes@google.com>
Auto-Submit: Bob Nystrom <rnystrom@google.com>
Reviewed-by: Daco Harkes <dacoharkes@google.com>
2024-11-18 10:06:01 +00:00

47 lines
1.5 KiB
Dart

// Copyright (c) 2021, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
import 'dart:io';
void main() {
final buffer = StringBuffer();
buffer.write('''
// Copyright (c) 2021, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
''');
generateMap(buffer, 'const1', 1, isConst: true);
generateMap(buffer, 'final1', 1, isConst: false);
generateMap(buffer, 'const5', 5, isConst: true);
generateMap(buffer, 'final5', 5, isConst: false);
generateMap(buffer, 'const10', 10, isConst: true);
generateMap(buffer, 'final10', 10, isConst: false);
generateMap(buffer, 'const100', 100, isConst: true);
generateMap(buffer, 'final100', 100, isConst: false);
for (final folder in ['dart', 'dart2']) {
final path = Platform.script.resolve('$folder/maps.dart').toFilePath();
File(path).writeAsStringSync(buffer.toString());
Process.runSync(Platform.executable, ['format', path]);
print('Generated $path.');
}
}
void generateMap(
StringBuffer buffer,
String name,
int mapSize, {
bool isConst = true,
}) {
final constOrFinal = isConst ? 'const' : 'final';
buffer.write('$constOrFinal $name = <String, String>{');
for (int i = 0; i < mapSize; i++) {
buffer.write("'$i': '${i + 1}',");
}
buffer.write('};');
buffer.write('\n\n');
}