| Home | Libraries | People | FAQ | More

## Struct template bucket_hash_t

boost::intrusive::bucket_hash_t

## Synopsis

    // In header: <boost/intrusive/hashtable.hpp>

    template<typename ValueTraits, typename VoidOrKeyOfValue,
             typename VoidOrKeyHash, typename BucketTraits, bool LinearBuckets>
    struct bucket_hash_t : public boost::intrusive::bucket_plus_vtraits< ValueTraits, BucketTraits, LinearBuckets >
    {
      // types
      typedef bucket_plus_vtraits< ValueTraits, BucketTraits, LinearBuckets >::value_traits value_traits;
      typedef value_traits::value_type                                                      value_type;
      typedef value_traits::node_traits                                                     node_traits;
      typedef hash_key_hash< value_type, VoidOrKeyOfValue, VoidOrKeyHash >                  hash_key_hash_t;
      typedef hash_key_hash_t::type                                                         hasher;
      typedef hash_key_types_base< value_type, VoidOrKeyOfValue >::key_of_value             key_of_value;
      typedef BucketTraits                                                                  bucket_traits;
      typedef bucket_plus_vtraits< ValueTraits, BucketTraits, LinearBuckets >               bucket_plus_vtraits_t;
      typedef unspecified                                                                   base_t;

      // public member functions
      bucket_hash_t(const ValueTraits &, const bucket_traits &, const hasher &);
      bucket_hash_t(bucket_hash_t &&);
      template<typename K> std::size_t priv_hash(const K &) const;
      const hasher & priv_hasher() const;
      hasher & priv_hasher();
      std::size_t priv_stored_or_compute_hash(const value_type &, unspecified) const;
    };

## Description

### `bucket_hash_t` public member functions

1.     bucket_hash_t(const ValueTraits & val_traits, const bucket_traits & b_traits,
                     const hasher & h);

2.     bucket_hash_t(bucket_hash_t && other);

3.     template<typename K> std::size_t priv_hash(const K & k) const;

4.     const hasher & priv_hasher() const;

5.     hasher & priv_hasher();

6.     std::size_t priv_stored_or_compute_hash(const value_type & v, unspecified) const;