import "dart:convert"; import "dart:io"; import "package:args/command_runner.dart"; class Day2Command extends Command { // The [name] and [description] properties must be defined by every // subclass. @override final name = "day2"; @override final description = "Run Advent of Code 2025 Day 2"; Day2Command() { // we can add command specific arguments here. // [argParser] is automatically created by the parent class. } // [run] may also return a Future. @override Future run() async { // [argResults] is set before [run()] is called and contains the flags/options // passed to this command. if (argResults!.rest.length != 1) { print( "Expected 1 positional arguments, found ${argResults!.rest.length}", ); } var filePath = argResults!.rest[0]; print("Parsing file: $filePath"); var inputFile = File(filePath); var openFile = inputFile.openRead(); var lines = openFile.transform(utf8.decoder).transform(LineSplitter()); await for (var line in lines) { print(line); print('-------'); } } }