RCIR is a ranked choice instant runoff library written in rust. It's a work in progress. The library is in the rcir directory, and a sample binary is in the rcir_csv directory.
In the result of a tie for last place and no winner, all the last place candidates are removed, so it is not a 'Spoiler Proof' method Spoiler Effect + Resistance to tactical voting
RCIR will not mutate the input and aims to have as few restrictions on data types as possible
|Voter A||Voter B||Voter C||Voter D||Voter E|
This would result in an ElectionResult::Winner(&"sue")
|Voter A||Voter B|
This would result in an ElectionResult::Tie([&"Bob", &"Sue"])