william_ranges/
lib.rs

1use std::ops::Range;
2/// 如果两个范围重叠 就返回true
3/// ```
4///     asset_eq!(ranges::overlap(0..7,3..10),true);
5///     asset_eq!(ranges::overlap(0..7,10..13),false);
6/// ```
7/// 如果任意一个范围是空, 则他们不会被看作是重叠的
8/// ```
9///     asset_eq!(ranges::overlap(0..0,1..2),false);
10/// ```
11/// 
12pub fn overlap(r1: Range<usize>, r2: Range<usize>) -> bool {
13    r1.start < r2.end && r2.start < r1.end
14}
15pub fn add(left: u64, right: u64) -> u64 {
16    left + right
17}
18
19#[cfg(test)]
20mod tests {
21    use super::*;
22
23    #[test]
24    fn it_works() {
25        let result = add(2, 2);
26        assert_eq!(result, 4);
27    }
28}