6 releases

Uses old Rust 2015

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

#208 in Profiling

Download history 489/week @ 2024-07-22 428/week @ 2024-07-29 406/week @ 2024-08-05 1154/week @ 2024-08-12 464/week @ 2024-08-19 449/week @ 2024-08-26 515/week @ 2024-09-02 397/week @ 2024-09-09 415/week @ 2024-09-16 516/week @ 2024-09-23 385/week @ 2024-09-30 19/week @ 2024-10-07 325/week @ 2024-10-14 313/week @ 2024-10-21 425/week @ 2024-10-28 342/week @ 2024-11-04

1,406 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