Beispiel #1
0
 bool operator()(const value_type &b, const intrusive_compare_key_type &i) const
 {  
    std::size_t blen = b.name_length();
    return (blen < i.m_len) || 
             (blen == i.m_len &&
             std::char_traits<char_type>::compare 
                (b.name(), i.mp_str, i.m_len) < 0);
 }
 bool operator()(const value_type &b1, const value_type &b2) const
 {
    return (b1.name_length() == b2.name_length()) &&
             (std::char_traits<char_type>::compare
                (b1.name(), b2.name(), b1.name_length()) == 0);
 }
 std::size_t operator()(const value_type &val) const
 {
     const char_type *beg = ipcdetail::to_raw_pointer(val.name()),
                     *end = beg + val.name_length();
     return boost::hash_range(beg, end);
 }
 bool operator()(const value_type &b, const intrusive_compare_key_type &i) const
 {
    return (i.m_len == b.name_length()) &&
             (std::char_traits<char_type>::compare
                (i.mp_str, b.name(), i.m_len) == 0);
 }