BloombergLP::bdlc::FlatHashSet::FlatHashSet

Constructors

Synopses

Declared in <bdlc_flathashset.h>

Create an empty FlatHashSet object.

FlatHashSet();
» more...

Create an empty set with at least the specified capacity.

explicit
FlatHashSet(std::size_t capacity);
» more...

Create a set by moving from the specified original set.

FlatHashSet(bslmf::MovableRef<FlatHashSet> original);
» more...

Create an empty set using the specified basicAllocator.

explicit
FlatHashSet(bslma::Allocator* basicAllocator);
» more...

Create an empty set with at least the specified capacity, using the specified basicAllocator.

FlatHashSet(
    std::size_t capacity,
    bslma::Allocator* basicAllocator);
» more...

Create a set by moving from original using basicAllocator.

FlatHashSet(
    bslmf::MovableRef<FlatHashSet> original,
    bslma::Allocator* basicAllocator);
» more...

Create a set populated from the specified initializer list.

FlatHashSet(
    bsl::initializer_list<KEY> values,
    bslma::Allocator* basicAllocator = 0);
» more...

Create a set having the value of the specified original set.

FlatHashSet(
    FlatHashSet const& original,
    bslma::Allocator* basicAllocator = 0);
» more...

Create an empty set with at least the specified capacity and hash functor; optionally use basicAllocator.

FlatHashSet(
    std::size_t capacity,
    HASH const& hash,
    bslma::Allocator* basicAllocator = 0);
» more...

Same as the preceding overload, also requesting at least the specified capacity.

FlatHashSet(
    bsl::initializer_list<KEY> values,
    std::size_t capacity,
    bslma::Allocator* basicAllocator = 0);
» more...

Create a set populated from the specified iterator range.

template<class INPUT_ITERATOR>
FlatHashSet(
    INPUT_ITERATOR first,
    INPUT_ITERATOR last,
    bslma::Allocator* basicAllocator = 0);
» more...

Create an empty set with at least the specified capacity, hash, and equal predicate; optionally use basicAllocator.

FlatHashSet(
    std::size_t capacity,
    HASH const& hash,
    EQUAL const& equal,
    bslma::Allocator* basicAllocator = 0);
» more...

Same as the preceding overload, also using the specified hash.

FlatHashSet(
    bsl::initializer_list<KEY> values,
    std::size_t capacity,
    HASH const& hash,
    bslma::Allocator* basicAllocator = 0);
» more...

Same as the preceding overload, also requesting at least the specified capacity.

template<class INPUT_ITERATOR>
FlatHashSet(
    INPUT_ITERATOR first,
    INPUT_ITERATOR last,
    std::size_t capacity,
    bslma::Allocator* basicAllocator = 0);
» more...

Same as the preceding overload, also using the specified equal.

FlatHashSet(
    bsl::initializer_list<KEY> values,
    std::size_t capacity,
    HASH const& hash,
    EQUAL const& equal,
    bslma::Allocator* basicAllocator = 0);
» more...

Same as the preceding overload, also using the specified hash.

template<class INPUT_ITERATOR>
FlatHashSet(
    INPUT_ITERATOR first,
    INPUT_ITERATOR last,
    std::size_t capacity,
    HASH const& hash,
    bslma::Allocator* basicAllocator = 0);
» more...

Same as the preceding overload, also using the specified equal.

template<class INPUT_ITERATOR>
FlatHashSet(
    INPUT_ITERATOR first,
    INPUT_ITERATOR last,
    std::size_t capacity,
    HASH const& hash,
    EQUAL const& equal,
    bslma::Allocator* basicAllocator = 0);
» more...

Parameters

NameDescription
capacityminimum initial capacity of the underlying array
originalset to move from
basicAllocatormemory allocator; null uses the default
valuesinitializer list of elements to insert
hashhash functor used by this set
firstbeginning of the input range
lastend of the input range (exclusive)
equalkey-equality predicate used by this set