diff --git a/build.gradle.kts b/build.gradle.kts index 4f9c6d8..0b3f7eb 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -16,4 +16,37 @@ tasks { wrapper { gradleVersion = "7.6" } + + task("generateNextDay") { + doLast { + val prevDayNum = fileTree("$projectDir/src").matching { + include("Day*.kt") + }.maxOf { + val (prevDayNum) = Regex("Day(\\d\\d)").find(it.name)!!.destructured + prevDayNum.toInt() + } + val newDayNum = String.format("%02d", prevDayNum + 1) + File("$projectDir/src", "Day$newDayNum.kt").writeText( + """ +fun main() { + fun part1(input: List): Int { + return 0 + } + + fun part2(input: List): Int { + return 0 + } + + // test if implementation meets criteria from the description, like: + val testInput = readInput("resources/Day${newDayNum}_test") + check(part1(testInput) == 0) + + val input = readInput("resources/Day$newDayNum") + println(part1(input)) + println(part2(input)) +} +""" + ) + } + } }