#poll #voting #vote #judgment

majority

用于管理多数判断投票的 crate

16 个版本

0.1.15 2024年7月30日
0.1.14 2024年3月2日
0.1.13 2023年7月16日
0.1.12 2023年3月29日

#2 in #vote

Download history 2/week @ 2024-05-20 23/week @ 2024-07-01 224/week @ 2024-07-29

224 个月下载量

Unlicense 协议

16KB
370 行代码(不含注释)

majority

Rust crate 用于管理多数判断投票
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)?;
}

依赖项

~22MB
~425K SLoC