21 lines
No EOL
519 B
TypeScript
21 lines
No EOL
519 B
TypeScript
import type { Solvable } from "./solvable.ts";
|
|
|
|
const solutionFiles = Deno.readDirSync('./solutions');
|
|
|
|
const solvables: Solvable[] = [];
|
|
|
|
// need to wrap this stuff in a function to not trip the top level await
|
|
(async () => {
|
|
// cool dynamic module loading
|
|
for (const solution of solutionFiles) {
|
|
await import('./solutions/' + solution.name)
|
|
}
|
|
|
|
if (import.meta.main) {
|
|
// only solve the latest day
|
|
solvables.toReversed()[0].part1().then(solvable => solvable.part2())
|
|
}
|
|
})()
|
|
|
|
|
|
export { solvables } |