6 releases

Uses old Rust 2015

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

#195 in Profiling

Download history 425/week @ 2024-09-12 484/week @ 2024-09-19 434/week @ 2024-09-26 232/week @ 2024-10-03 187/week @ 2024-10-10 289/week @ 2024-10-17 402/week @ 2024-10-24 352/week @ 2024-10-31 188/week @ 2024-11-07 144/week @ 2024-11-14 406/week @ 2024-11-21 2065/week @ 2024-11-28 2849/week @ 2024-12-05 2554/week @ 2024-12-12 1672/week @ 2024-12-19 257/week @ 2024-12-26

7,777 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