16 releases
0.1.15 | Jul 30, 2024 |
---|---|
0.1.14 | Mar 2, 2024 |
0.1.13 | Jul 16, 2023 |
0.1.12 | Mar 29, 2023 |
#2 in #vote
16KB
370 lines
majority
Rust crate to manage Majority Judgment polls
https://electowiki.org/wiki/Majority_Judgment
use majority::{Polls, Poll};
use anyhow::Result;
fn poll_demo() -> Result<()> {
// variables for readability
let poll_id: u64 = 1;
let user_1: u64 = 1;
let user_2: u64 = 2;
let mut polls = Polls::new("polls.db")?;
// create a poll
polls.add_poll(
poll_id,
user_1,
"Where shall we eat tomorrow ?",
vec!["Mama's Pizza", "Mega Sushi", "The Borgir", "Mec Don Hald"],
)?;
// user 2 assigns value 3 to "Mama's Pizza" (option 0)
polls.vote(poll_id, 0, user_2, 3)?;
// ... more votes ...
// get the poll results !
poll = polls.get_poll(poll_id)?;
}
Dependencies
~22MB
~429K SLoC