Change over to using command runner for arg parsing
This commit is contained in:
@@ -1,29 +1,15 @@
|
||||
import 'dart:io';
|
||||
|
||||
import 'package:adventofcode2025/day1/main.dart' as day1;
|
||||
import 'package:adventofcode2025/day1/command.dart' as day1;
|
||||
|
||||
import 'package:args/args.dart';
|
||||
import 'package:args/command_runner.dart';
|
||||
|
||||
const help = 'help';
|
||||
const dayNumber = 'day';
|
||||
|
||||
void main(List<String> arguments) {
|
||||
final parser = ArgParser()
|
||||
..addFlag(help, negatable: false, abbr: 'h')
|
||||
..addOption(dayNumber, mandatory: true, abbr: "d");
|
||||
var results = parser.parse(arguments);
|
||||
|
||||
if (results.flag(help)) {
|
||||
print(parser.usage);
|
||||
exit(0);
|
||||
}
|
||||
|
||||
var day = results.option(dayNumber);
|
||||
|
||||
switch (day) {
|
||||
case '1':
|
||||
day1.run();
|
||||
default:
|
||||
print("'$day' is not a valid value for option $dayNumber");
|
||||
}
|
||||
var runner =
|
||||
CommandRunner("adventofcode2025", "Advent of Code 2025 solutions")
|
||||
..addCommand(day1.Day1Command())
|
||||
..run(arguments);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user