cursor 2.3.0

A more free Rust-Iterator.
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
// Copyright 2021 Hwakyeom Kim(=just-do-halee)

#![allow(non_snake_case)]

/// returns (`abs`, `signum`)
#[inline]
pub fn isize_to_usize(i: isize) -> (usize, i8) {
    (i.abs() as usize, i.signum() as i8)
}

#[inline]
pub fn wrap<T, F: FnOnce() -> bool>(i: T, condition: F) -> Option<T> {
    if condition() {
        Some(i)
    } else {
        None
    }
}