You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
28 lines
1002 B
Dart
28 lines
1002 B
Dart
import 'package:aoc2020/aoc2020.dart';
|
|
import 'package:args/args.dart';
|
|
|
|
ArgResults argResults;
|
|
|
|
const dayOption = 'day';
|
|
const listOption = 'list';
|
|
const runAllOption = 'runAll';
|
|
const runLastOption = 'runLast';
|
|
const testOnlyOption = 'testOnly';
|
|
void main(List<String> arguments) {
|
|
final parser = ArgParser()
|
|
..addOption(dayOption, abbr: 'd', help: 'Select the day')
|
|
..addFlag(listOption, abbr: 'l', help: 'List available days')
|
|
..addFlag(runAllOption, abbr: 'a', help: 'Run all available days')
|
|
..addFlag(runLastOption, abbr: 'r', help: 'Run last available day')
|
|
..addFlag(testOnlyOption, abbr: 't', defaultsTo: true, help: 'Run last available day in test only');
|
|
argResults = parser.parse(arguments);
|
|
if (argResults[dayOption] != null) {
|
|
} else if (argResults[listOption]) {
|
|
aoc2020.list();
|
|
} else if (argResults[runAllOption]) {
|
|
aoc2020.runAll(testOnly: argResults[testOnlyOption]);
|
|
} else {
|
|
aoc2020.runLast(testOnly: argResults[testOnlyOption]);
|
|
}
|
|
}
|