| Crates.io | partial_const |
| lib.rs | partial_const |
| version | 0.2.1 |
| created_at | 2021-01-27 00:33:25.678746+00 |
| updated_at | 2021-03-26 08:45:45.588631+00 |
| description | This library provides a way to handle constant and non-constant values in a unified way. |
| homepage | |
| repository | https://github.com/White-Green/partial_const |
| max_upload_size | |
| id | 347102 |
| size | 43,017 |
This library provides a way to handle constant and non-constant values in a unified way. This library takes both flexibilities to take dynamic values and (partial) parameter checking by the compiler.
fn maybe_one<T: partial_const::MayBeConst<i32>>(i: T) -> bool
where T: partial_const::Equals<partial_const::ConstI32<1>> {
// where T: partial_const::Equals<partial_const::i32::Const<1>> { <- Alternative
i.value() == 1i32
}
assert!(maybe_one(partial_const::ConstI32::<1>::new()));
assert!(maybe_one::<partial_const::ConstI32<1>>(partial_const::ConstI32::new()));
assert!(maybe_one::<i32>(1));
assert!(!maybe_one::<i32>(2));
// assert!(maybe_one(partial_const::ConstI32::<2>::new())); <- Compile Error
License: MIT