Skip to content

Follow-up from "add some switch defaults + some useless statements"

The following discussion from !827 (merged) should be addressed:

  • @graven started a discussion:

    How about

    return std::make_tuple( totalTime(), m_user, m_kernel, m_elapsed ) < 
           std::make_tuple( e.totalTime(), e.m_user, e.m_kernel, e.m_elapsed );

    instead? (it makes 'self comparison' slightly more expensive, but that is presumably not the common case, and that should now be slightly faster)

    Then, binary comparisons should preferably be done as friend functions so that they are symmetric wrt. conversions, so that would mean (inside the class scope!):

      friend bool operator<( const ChronoEntity& lhs, const ChronoEntity& rhs ) {
          return std::make_tuple( lhs.totalTime(), lhs.m_user, lhs.m_kernel, lhs.m_elapsed ) < 
                 std::make_tuple( rhs.totalTime(), rhs.m_user, rhs.m_kernel, rhs.m_elapsed );
    
      }
Edited by Marco Clemencic
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information