Drake
Drake C++ Documentation
type_safe_index.h File Reference
#include <limits>
#include <string>
#include <typeinfo>
#include "drake/common/drake_assert.h"
#include "drake/common/fmt_ostream.h"
#include "drake/common/hash.h"
Include dependency graph for type_safe_index.h:
This graph shows which files directly or indirectly include this file:

Classes

class  TypeSafeIndex< Tag >
 A type-safe non-negative index class. More...
 
struct  hash< drake::TypeSafeIndex< Tag > >
 Enables use of the type-safe index to serve as a key in STL containers. More...
 
struct  formatter< drake::TypeSafeIndex< Tag > >
 

Namespaces

 drake
 
 fmt
 

Functions

template<typename Tag , typename U >
std::enable_if_t< std::is_integral_v< U > &&std::is_unsigned_v< U >, bool > operator== (const U &value, const TypeSafeIndex< Tag > &tag)
 
template<typename Tag , typename U >
std::enable_if_t< std::is_integral_v< U > &&std::is_unsigned_v< U >, bool > operator!= (const U &value, const TypeSafeIndex< Tag > &tag)
 
template<typename Tag , typename U >
std::enable_if_t< std::is_integral_v< U > &&std::is_unsigned_v< U >, bool > operator< (const U &value, const TypeSafeIndex< Tag > &tag)
 
template<typename Tag , typename U >
std::enable_if_t< std::is_integral_v< U > &&std::is_unsigned_v< U >, bool > operator<= (const U &value, const TypeSafeIndex< Tag > &tag)
 
template<typename Tag , typename U >
std::enable_if_t< std::is_integral_v< U > &&std::is_unsigned_v< U >, bool > operator> (const U &value, const TypeSafeIndex< Tag > &tag)
 
template<typename Tag , typename U >
std::enable_if_t< std::is_integral_v< U > &&std::is_unsigned_v< U >, bool > operator>= (const U &value, const TypeSafeIndex< Tag > &tag)