std::Regular
From cppreference.com
                    
                                        
                    
                    
                                                            
                    |   Defined in header  <concepts>
  | 
||
|   template <class T> concept Regular = std::Semiregular<T> && std::EqualityComparable<T>;  | 
(since C++20) | |
The Regular concept specifies that a type is regular, that is, it is copyable, default constructible, and equality comparable. It is satisfied by types that behave similarly to built-in types like int, and that are comparable with ==.