1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
use std::os::raw::{c_double, c_uint};
/// For [`max_rgb`] to return max RGB value.
pub trait MaxRGB {
fn max_rgb() -> Self;
}
impl MaxRGB for c_uint {
fn max_rgb() -> Self {
graphicsmagick_sys::MaxRGB
}
}
impl MaxRGB for c_double {
fn max_rgb() -> Self {
graphicsmagick_sys::MaxRGBDouble
}
}
/// Wrapper of `graphicsmagick_sys::MaxRGB` and `graphicsmagick_sys::MaxRGBDouble`.
pub fn max_rgb<T: MaxRGB>() -> T {
<T>::max_rgb()
}