6 releases

Uses old Rust 2015

0.3.0 Dec 9, 2019
0.2.2 Dec 13, 2018
0.1.0 Nov 30, 2018

#187 in Profiling

Download history 139/week @ 2024-11-13 331/week @ 2024-11-20 1703/week @ 2024-11-27 2903/week @ 2024-12-04 2554/week @ 2024-12-11 1866/week @ 2024-12-18 436/week @ 2024-12-25 464/week @ 2025-01-01 533/week @ 2025-01-08 1245/week @ 2025-01-15 671/week @ 2025-01-22 712/week @ 2025-01-29 1169/week @ 2025-02-05 760/week @ 2025-02-12 405/week @ 2025-02-19 702/week @ 2025-02-26

3,182 downloads per month

MIT/Apache

4KB

Advent of Code Runner

This is a simple project that aims to be a runner for the Advent of Code.

Implement your solution. Let us do the rest.

Features

  • Input downloading
  • Running your solution
  • Benchmarking of your solution (WIP)

Getting started

  • Create a lib project cargo new advent-of-code-2018 --lib
  • Add deps to your Cargo.toml:
aoc-runner = "0.1.0"
aoc-runner-derive = "0.1.0"
  • Include libs in your lib.rs
extern crate aoc_runner;

#[macro_use]
extern crate aoc_runner_derive;
  • Add aoc_lib!{ year = 2018 } at the end of your lib.rs
  • Start coding !

Flags your solutions

just add a #[aoc(day1, part1)] before your function !

#[aoc(day1, part1)]
fn part1(input: &str) -> i32 {
    ...
}

Supported signatures : &str or &[u8] as input, any type implementing display as output. For custom input, see below.

Custom Generators

You need to pre-process input in a separated function ? generators are for you !

#[aoc_generator(day2)]
fn input_generator(input: &str) -> Vec<Gift> {
    ...
}

#[aoc(day2, part1)]
fn part1(input: &[Gift]) -> u32 {
    ...
}

Run your code

See cargo-aoc

No runtime deps