1 个稳定版本
1.0.0 | 2020年9月11日 |
---|
#4 in #fizz
13KB
185 代码行
extended_fizzbuzz
可配置的FizzBuzz库。
安装
[dependencies]
extended_fizzbuzz = "1"
用法
use extended_fizzbuzz::{fizzbuzz, Matcher};
fn main() {
let matchers = vec![
Matcher::new(3, "Fizz").expect("Failed to create `3=Fizz` matcher"),
Matcher::new(5, "Buzz").expect("Failed to create `5=Buzz` matcher"),
];
fizzbuzz(1, 100, &matchers).expect("FizzBuzzing failed");
}
许可证
有关详细信息,请参阅许可证文件。
作者
- Adrian Wannenmacher [email protected]
使用
lib.rs
:
本库提供了一种可配置的FizzBuzz实现。
示例
从1到15的FizzBuzz
use extended_fizzbuzz::{fizzbuzz, Matcher};
let matchers = vec![
Matcher::new(3, "Fizz").unwrap(),
Matcher::new(5, "Buzz").unwrap(),
];
fizzbuzz(1, 15, &matchers).unwrap();
输出
1
2
Fizz
4
Buzz
Fizz
7
8
Fizz
Buzz
11
Fizz
13
14
FizzBuzz
单个数字的FizzBuzz
use extended_fizzbuzz::{line, Matcher};
let matchers = vec![
Matcher::new(3, "Fizz").unwrap(),
Matcher::new(5, "Buzz").unwrap(),
];
assert_eq!(line(6, &matchers), "Fizz".to_string());
assert_eq!(line(7, &matchers), "7".to_string());
assert_eq!(line(10, &matchers), "Buzz".to_string());
assert_eq!(line(15, &matchers), "FizzBuzz".to_string());
依赖项
~315–780KB
~18K SLoC