std::experimental::ranges::UnsignedIntegral
From cppreference.com
                    
                                        
                    < cpp | experimental | ranges
                    
                                                            
                    | Defined in header  <experimental/ranges/concepts> | ||
| template < class T > concept bool UnsignedIntegral() { return Integral<T>() && !std::is_signed<T>::value; } | (ranges TS) | |
The concept UnsignedIntegral<T>() is satisfied if and only if T is an integral type and std::is_signed<T>::value is false.
[edit] Notes
UnsignedIntegral<T>() may be satisfied by a type that is not a unsigned integer type, for example, bool.
[edit] See also
| (C++11) | checks if a type is integral type (class template) | 
| (C++11) | checks if a type is signed arithmetic type (class template) | 


