1use fixed::types::extra::*;
4use typenum::{uint, B0, IsLess};
5
6pub trait IsEven : uint::GetBit <U0, Output=B0> {}
7pub trait LtU8 : LeEqU8 + IsLess <U8, Output=True> {}
8pub trait LtU16 : LeEqU16 + IsLess <U16, Output=True> {}
9pub trait LtU32 : LeEqU32 + IsLess <U32, Output=True> {}
10pub trait LtU64 : LeEqU64 + IsLess <U64, Output=True> {}
11pub trait LtU128 : LeEqU128 + IsLess <U128, Output=True> {}
12
13impl <U> IsEven for U where U : uint::GetBit <U0, Output=B0> {}
14impl <U> LtU8 for U where U : LeEqU8 + IsLess <U8, Output=True> {}
15impl <U> LtU16 for U where U : LeEqU16 + IsLess <U16, Output=True> {}
16impl <U> LtU32 for U where U : LeEqU32 + IsLess <U32, Output=True> {}
17impl <U> LtU64 for U where U : LeEqU64 + IsLess <U64, Output=True> {}
18impl <U> LtU128 for U where U : LeEqU128 + IsLess <U128, Output=True> {}